Thanks for that in-depth explanation.
I am using an older Mode-S Beast solution using stock full Raspbian, Piaware, two invocations of modesmixer2, and the PlanePlotter sharing program ppup1090. A script in /etc/init.d sequences everything, except Piaware, which syncs up to the setup eventually.
First the Mode-S Beast switch overrides run in the script, as above.
Then the first instance of modesmixer2 runs to supply the regular dump1090 Beast output on port 30005 (although dump1090 itself is never run):
modesmixer2 --inSerial /dev/ttyUSB0:3000000:hardware --outServer beast:30005
I then start the Planeplotter sharing program, referencing the local IP of my Planeplotter PC:
ppup1090 --quiet --net-pp-ipaddr 192.168.1.130
Finally, I start the last instance of modesmixer 2 which combines the MLAT positions from Piaware from port 30104 with my receiver data on port 30005 and makes the combined stream available to Planeplotter or other program on port 30015. I also start the modesmixer2 web server, which also displays the combined streams/
modesmixer2 --inConnect localhost:30005 --inServer 30104 --outServer beast:30015 --web 8080 --location 41.xxxxxx:-88.xxxxxx
A bit complex, but allows displaying MLAT positions on Planeplotter while still servicing Planeplotters internal sharing system, allowing the Pi to act as a Planeplotter ground station. The second modesmixer2 instance prevents polluting the pseudo-dump1090 stream on port 30005 with MLAT data before feeding to Planeplotter’s sharing servers.
I can connect Planeplotter to port 30005 to see the output of only my receiver or port 30015 to see the combined receiver/MLAT feed, or even port 30105 (from Piaware) to view MLAT-only positions. Planeplotter recognizes the DF18 MLAT messages from Piaware and color codes the MLAT icons white on its display. Local receiver positions are yellow.
For more details:
I needed to rebuild this all from scratch as I recently lost my SD card after 3 years of service. My image backup did not include Piaware. The latest Piaware requires Raspbian Stretch to install and my image used Wheezy. Painful getting it back on-line, but all good now.
I use a homebrew GPS-disciplined NTP server for timing reference. I had to disable the odd NTP client that came on the latest Raspbian distro and install the proper NTP daemon, pointed to my server.