dirkhh / adsb-feeder-image

Easy to use turn-key SD card image for a number of popular single board computers to run a complete ADS-B feeder
https://adsb.im/home
GNU General Public License v3.0
130 stars 14 forks source link

Better support for Mode-S Beast serial output #245

Closed EvenAR closed 3 weeks ago

EvenAR commented 1 month ago

First of all, thank you for creating this amazing image - it makes sharing data incredibly easy!

I have a Mode-S Beast connected to a Raspberry Pi 4 via USB, and my current setup for using it with adsb.im involves the following steps:

  1. Adding the following config to /opt/adsb/config/docker-compose.yml. This gives the ultrafeeder container access to the Mode-S Beast serial output:
    services:
      ultrafeeder:
        devices:
          - /dev/ttyUSB0:/dev/ttyUSB0
  2. Adding the following environment variable on the "Expert" settings page. Ultrafeeder will then connect to the serial port /dev/ttyUSB0:
    READSB_DEVICE_TYPE=modesbeast

.. which took some time to figure out. What are your thoughts on adding this to the default docker-compose.yml? It would be even better if "Mode-S Beast over USB" were an option during initial setup :)

Best regards, Even

wiedehopf commented 1 month ago

Very few people with ModeS beast but i'll take a look.

wiedehopf commented 1 month ago

On the SDR page, can you toggle the lsusb output and post the full output here?

EvenAR commented 1 month ago

Thanks @wiedehopf !

lsusb: Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 0403:6001 Future Technology Devices International, Ltd FT232 Serial (UART) IC
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
wiedehopf commented 1 month ago

So i'm not quite sure yet about adding detection logic as this is quite rare. But we can at least make it unnecessary to edit the yml so only the env var is needed (which persists updates).

/opt/adsb/feeder-update origin/dev-wiede

could you test if your setup remains working after updating to this dev branch without having to edit the yml?

EvenAR commented 1 month ago

Removed the config from the yaml, pulled the update, rebooted and it works 👍

wiedehopf commented 4 weeks ago

Ok, so with beta and versions following, this will be the only thing required to run a modesbeast: Add this to environment variables:

READSB_DEVICE_TYPE=modesbeast

Currently not too eager to automate detection and things because it's a bit of a hassle. Maybe some day. Suppose this issue can stay open for other people trying to make it work.

EvenAR commented 3 weeks ago

That's fair. Not having to manually edit the configuration files is already a huge improvement. The fact that no one has asked about the Beast before (afaik) probably means there are quite few of us.. Anyways, thanks for your help!