bluerobotics / bluerobotics/BlueOS
propose: Change in BlueOS's default communication behavior
- Dominant language
- Vue
- Stars
- 453
- Forks
- 151
- Avg merge
- 1d 3h
- Merged PRs (30d)
- 174
Description
We are currently using a hardcoded UDP client endpoint (`192.168.2.1`) for the top machine on BlueOS-docker. This is the same behavior we have on companion0. There are some problems with this approach. Two are the main ones:
- We need the user to configure it's top machine with a static IP
- With `mavlink-router`, if there's no UDP server online with this hardcoded IP on the local network, it will fail to route all mavlink communication
My proposal for a new behavior is the following:
- Remove the hardcoded IP from BlueOS
- Create a default UDP server endpoint
- Make BlueOS start as a DHCP server by default if it hasn't received a DHCP handshake from an external route. This allows someone to just connect BlueOS with an ethernet cable to it's top computer, which will receive a dynamic IP and enter BlueOS's network
- Make BlueOS start a Wifi hotspot with a DHCP server whenever there's no known network around for more than 10 seconds. This allows the same behavior as the ethernet DHCP server, but with wifi.
This way anyone receiving a brand new companion is able to connect to it just by connecting to it's Wifi hotspot or pluging a ethernet cable. No configuration needed.
From this, to connect QGroundControl on companion one just need to add on QGC an UDP connection with port 14550 pointing to `companion.local`.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.