Commit Graph
105 Commits
Author SHA1 Message Date
Andrew Tridgell bcc5be1e0d AP_Networking: support multiple PPP links
this allows for multiple PPP interfaces, so we can have a
PPP<->ethernet bridge and an LTE modem (or other PPP device) at the
same time
2025-07-13 13:31:59 +10:00
Andrew Tridgell ba82b6815d AP_Networking: add options to control PPP timeouts
some PPP daemons are sensitive to how we handle timeouts. This gives
options to disable the data timeout and echo limit to maximise
compatibility with a range of PPP daemon implementations
2025-06-28 09:24:42 +09:00
Christian Clauss dc9446af62 wscript: Add # flake8: noqa linter directive 2025-06-20 20:30:15 +10:00
Andrew Tridgell 565fc9ae08 AP_Networking: make PPP much more robust
this fixes two key issues with PPP:

 - if we lost the link (eg. serial cable unplugged) then it did not
   properly restart the link when the cable is plugged back in

 - if using hardware flow control and the UART write buffer fills up
   then we would loop sleeping with the TCPIP lock held, which means if
   the main thread tries to send an IPv4 packet then it could block on
   the TCPIP lock, and we would watchdog. This is now limited to 1ms max
2025-06-16 10:24:38 +10:00
bugobliterator 7be24009c7 AP_Networking: fallback to PPP backend when ethernet PHY based backend is unavailable on ChibiOS boards 2025-04-25 12:09:49 +10:00
Randy Mackay 2a5bc6223e AP_Networking: parm fix for ipaddr 3rd octet
colcon build/test / build-test (push) Has been cancelled
Cygwin Build / build (push) Has been cancelled
ESP32 Build / build (esp32buzz, 10) (push) Has been cancelled
ESP32 Build / build (esp32s3empty, 10) (push) Has been cancelled
Macos Build / build (CubeOrange) (push) Has been cancelled
Macos Build / build (sitl) (push) Has been cancelled
QURT Build / build (push) Has been cancelled
test ccache / build (10, chibios) (push) Has been cancelled
test chibios / build (CubeOrange-ODID, 10, chibios) (push) Has been cancelled
test chibios / build (CubeOrange-PPP, 10, chibios) (push) Has been cancelled
test chibios / build (CubeOrange-bootloader, 10, chibios) (push) Has been cancelled
test chibios / build (CubeRed-EKF2, 10, chibios) (push) Has been cancelled
test chibios / build (CubeRedPrimary-bootloader, 10, chibios) (push) Has been cancelled
test chibios / build (MatekF405-Wing, 10, chibios) (push) Has been cancelled
test chibios / build (Pixhawk6X-PPPGW, 10, chibios) (push) Has been cancelled
test chibios / build (SOHW, 10, chibios) (push) Has been cancelled
test chibios / build (build-options-defaults-test, 10, chibios) (push) Has been cancelled
test chibios / build (configure-all, 10, chibios) (push) Has been cancelled
test chibios / build (fmuv2-plane, 10, chibios) (push) Has been cancelled
test chibios / build (fmuv3, 10, chibios) (push) Has been cancelled
test chibios / build (fmuv3-bootloader, 10, chibios) (push) Has been cancelled
test chibios / build (iofirmware, 10, chibios) (push) Has been cancelled
test chibios / build (new-check, 10, chibios) (push) Has been cancelled
test chibios / build (periph-build, 10, chibios) (push) Has been cancelled
test chibios / build (revo-bootloader, 10, chibios) (push) Has been cancelled
test chibios / build (revo-mini, 10, chibios) (push) Has been cancelled
test chibios / build (signing, 10, chibios) (push) Has been cancelled
test chibios / build (stm32f7, 10, chibios) (push) Has been cancelled
test chibios / build (stm32h7, 10, chibios) (push) Has been cancelled
test chibios / build (stm32h7-debug, 10, chibios) (push) Has been cancelled
test dds / build (sitl) (push) Has been cancelled
test dds / build (stm32h7) (push) Has been cancelled
test Linux SBC / build (bbbmini, armhf) (push) Has been cancelled
test Linux SBC / build (bebop, armhf) (push) Has been cancelled
test Linux SBC / build (bhat, armhf) (push) Has been cancelled
test Linux SBC / build (canzero, armhf) (push) Has been cancelled
test Linux SBC / build (erlebrain2, armhf) (push) Has been cancelled
test Linux SBC / build (linux, base) (push) Has been cancelled
test Linux SBC / build (navigator, armhf-musl) (push) Has been cancelled
test Linux SBC / build (navigator64, aarch64) (push) Has been cancelled
test Linux SBC / build (navio, armhf) (push) Has been cancelled
test Linux SBC / build (navio2, armhf) (push) Has been cancelled
test Linux SBC / build (pxf, armhf) (push) Has been cancelled
test Linux SBC / build (pxfmini, armhf) (push) Has been cancelled
test replay / build (replay, base) (push) Has been cancelled
test replay / build (replay, clang) (push) Has been cancelled
test scripts / build (astyle-cleanliness) (push) Has been cancelled
test scripts / build (check_autotest_options) (push) Has been cancelled
test scripts / build (logger_metadata) (push) Has been cancelled
test scripts / build (param_parse) (push) Has been cancelled
test scripts / build (python-cleanliness) (push) Has been cancelled
test scripts / build (validate_board_list) (push) Has been cancelled
test blimp / build (base) (push) Has been cancelled
test blimp / build (clang) (push) Has been cancelled
test copter / build (base) (push) Has been cancelled
test copter / build (clang) (push) Has been cancelled
test copter / build-gcc-heli (push) Has been cancelled
test ap_periph / build-gcc-ap_periph (push) Has been cancelled
test plane / build (base) (push) Has been cancelled
test plane / build (clang) (push) Has been cancelled
test rover / build (base) (push) Has been cancelled
test rover / build (clang) (push) Has been cancelled
test sub / build (base) (push) Has been cancelled
test sub / build (clang) (push) Has been cancelled
test tracker / build (base) (push) Has been cancelled
test tracker / build (clang) (push) Has been cancelled
test unit tests and sitl building / build (examples, base) (push) Has been cancelled
test unit tests and sitl building / build (examples, clang) (push) Has been cancelled
test unit tests and sitl building / build (sitl, base) (push) Has been cancelled
test unit tests and sitl building / build (sitl, clang) (push) Has been cancelled
test unit tests and sitl building / build (unit-tests, base) (push) Has been cancelled
test unit tests and sitl building / build (unit-tests, clang) (push) Has been cancelled
test blimp / autotest (sitltest-blimp) (push) Has been cancelled
test copter / autotest (sitltest-copter-tests1a) (push) Has been cancelled
test copter / autotest (sitltest-copter-tests1b) (push) Has been cancelled
test copter / autotest (sitltest-copter-tests1c) (push) Has been cancelled
test copter / autotest (sitltest-copter-tests1d) (push) Has been cancelled
test copter / autotest (sitltest-copter-tests1e) (push) Has been cancelled
test copter / autotest (sitltest-copter-tests2a) (push) Has been cancelled
test copter / autotest (sitltest-copter-tests2b) (push) Has been cancelled
test copter / autotest-heli (sitltest-heli) (push) Has been cancelled
test ap_periph / autotest-can (sitltest-can) (push) Has been cancelled
test plane / autotest (sitltest-plane-tests1a) (push) Has been cancelled
test plane / autotest (sitltest-plane-tests1b) (push) Has been cancelled
test plane / autotest (sitltest-quadplane) (push) Has been cancelled
test rover / autotest (sitltest-balancebot) (push) Has been cancelled
test rover / autotest (sitltest-rover) (push) Has been cancelled
test rover / autotest (sitltest-sailboat) (push) Has been cancelled
test sub / autotest (sitltest-sub) (push) Has been cancelled
test tracker / autotest (sitltest-tracker) (push) Has been cancelled
test environment setup / build (bookworm, debian) (push) Has been cancelled
test environment setup / build (bullseye, debian) (push) Has been cancelled
test environment setup / build (focal, ubuntu) (push) Has been cancelled
test environment setup / build (jammy, ubuntu) (push) Has been cancelled
test environment setup / build (latest, archlinux) (push) Has been cancelled
test environment setup / build (noble, ubuntu) (push) Has been cancelled
test environment setup / build-alpine (push) Has been cancelled
test coverage / build (coverage, base, coverage) (push) Has been cancelled
test coverage / build (sitltest-can, periph) (push) Has been cancelled
test coverage / finish (push) Has been cancelled
2025-03-28 13:35:13 +09:00
Iampete1 4c32f4173a AP_Networking: Port: track stats 2025-03-12 18:28:51 +11:00
bugobliterator 51471a0a7e AP_Networking: make can multicast an endpoint by default
also add option to enable multicast with bridging to CAN bus in application
and disabled in bootloader
2025-02-05 10:23:46 +11:00
Peter Barker 226fc5c53c AP_Networking: correct closing comment on #if 2025-01-07 12:39:42 +11:00
bugobliterator 42e2e23464 AP_Networking: fix memory error generated by CAN mcast driver 2024-12-18 21:48:54 +11:00
Randy Mackay 9d9eaa3150 AP_Networking: default IP to 192.168.144.x 2024-12-10 10:37:30 +11:00
bugobliterator bd7bb59021 AP_Networking: make connector loopback test priority to be PRIORITY_IO-1 2024-11-20 19:14:38 +11:00
bugobliterator 5acf25973e AP_Networking: add connector loopback test for Ethernet 2024-09-19 11:44:22 +10:00
Andrew Tridgell cd14b2e1c5 AP_Networking: added multicast UDP CAN server
this allows for operation of CAN interfaces over UDP multicast
networking
2024-09-17 10:02:29 +10:00
Andrew Tridgell 96cf157df9 AP_Networking: update comment 2024-09-11 16:11:22 +10:00
Peter Barker f32f3beceb AP_Networking: correct compilation when network port registering disabled
ports doesn't exist if this condition is false
2024-08-13 10:46:45 +10:00
bugobliterator 4909ad4e4f AP_Networking: add debug code for PPP 2024-07-25 09:37:16 +10:00
bugobliterator 5a54d9a2ec AP_Networking: allow reconnection to TCP server or client 2024-07-17 18:20:14 +10:00
Andrew Tridgell 5a795ccba0 AP_Networking: added TCP reflection test
TCP to an echo server, testing bi-directional transfer
2024-06-27 10:11:14 +10:00
bugobliterator 96682b1b1b AP_Networking: add timeout to swap the UDP Server client target 2024-06-21 20:31:31 +10:00
bugobliterator d07e8d16df AP_Networking: use IP4_STR_LEN instead of value 16 2024-06-21 20:31:31 +10:00
bugobliterator a82729589c AP_Networking: allow UDP Server to talk to different clients on the same run 2024-06-21 20:31:31 +10:00
Andrew Tridgell ceac4969d5 AP_Networking: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Andrew Tridgell 4d5aa1b8e3 AP_Networking: use NEW_NOTHROW for new(std::nothrow) 2024-06-04 09:20:21 +10:00
Tom Pittenger 9669699405 AP_Networking: enable Socket IP reuse 2024-05-29 18:29:03 +10:00
Tom Pittenger d3125fe8aa AP_Networking: change NET_ENABLED to NET_ENABLE 2024-03-20 19:08:31 +11:00
Tim Tuxworth 1941313201 AP_Networking: change NET_ENABLED to NET_ENABLE 2024-03-20 19:08:31 +11:00
Andrew Tridgell 1be9c79e35 AP_Networking: fixed network bootloader without serial manager 2024-01-30 12:32:23 +11:00
Andrew Tridgell e9b84fa94d AP_Networking: allow hwdef.dat to override more options 2024-01-21 12:30:08 +11:00
Andrew Tridgell 9f646c8238 AP_Networking: allow reuse of some of AP_Networking in bootloader 2024-01-21 12:30:08 +11:00
Andrew Tridgell 30546f2903 AP_Networking: added address_to_str() for scripting 2024-01-12 19:06:49 -08:00
Andrew Tridgell 39a1fc9dbd AP_Networking: added option for PPP<->ethernet bridge
when NET_OPTIONS is set to enable PPP bridging both an ethernet and a
PPP link will be brought up, with IP forwarding making the PPP remote
endpoint available on the ethernet LAN
2024-01-12 14:23:34 -08:00
Rhys Mainwaring ad3cf26338 AP_Networking: enable networking on macOS
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-01-11 06:58:41 +11:00
Rhys Mainwaring a66dc31fbc AP_Networking: update lwipopts for macOS
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-01-11 06:58:41 +11:00
Andrew Tridgell 2ba3ac0a9e AP_Networking: fixed a lockup bug in network ports
we need to not hold the write semaphore when calling network socket
calls. This fixes a critical error where network sockets block due to
low level PPP issues while main thread is going mavlink sends
2024-01-10 18:07:29 +11:00
Andrew Tridgell 7292c89766 AP_Networking: auto-restart PPP on error
this makes it easier to handle startup timing with PPP
2024-01-07 13:07:24 -08:00
Henry Wurzburg ce4a450d3a AP_Network:add reboot req'd metadata to params missing it 2024-01-07 01:15:34 -08:00
Andrew Tridgell 535a6a3316 AP_Networking: fixed build of evtimer.c on firmware server
the firmware server uses --out option to waf configure which changes
the include paths
2024-01-06 09:20:47 +11:00
Andrew Tridgell fa2b87b05a AP_Networking: hide unused params for PPP 2024-01-05 06:52:11 -08:00
Andrew Tridgell b0bbed01c6 AP_Networking: speed up sendfile download
use a multiple of sector size and DMA safe memory
2024-01-05 06:52:11 -08:00
Andrew Tridgell b1f1ea7859 AP_Networking: don't build lwip code if not needed
this saves a bit of compile time, but also means devs not doing
networking don't need to update the submodules
2024-01-04 11:02:14 +11:00
Andrew Tridgell 791a0a3230 AP_Networking: use HAL objects more directly
and fix a ms/us bug
2024-01-03 12:14:47 +11:00
Andrew Tridgell f5bee94cba AP_Networking: added evtimer wrapper 2024-01-03 12:14:47 +11:00
Andrew Tridgell f0a1a19f8b AP_Networking: allow discard test to be paused 2024-01-03 12:14:47 +11:00
Andrew Tridgell ab24d8768f AP_Networking: disable on MacOSX 2024-01-03 12:14:47 +11:00
Andrew Tridgell 702fe9c18d AP_Networking: only enable networking on Linux, ChibiOS and SITL 2024-01-03 12:14:47 +11:00
Andrew Tridgell 983a680b2b AP_Networking: small improvement to ethernet throughput 2024-01-03 12:14:47 +11:00
Andrew Tridgell af47beebfc AP_Networking: fixed discard test on PPP
and fixed byte order bug
2024-01-03 12:14:47 +11:00
Andrew Tridgell 8fcc7d5a51 AP_Networking: fixed ChibiOS backend with 16 bit timer 2024-01-03 12:14:47 +11:00
Andrew Tridgell 229a527fed AP_Networking: use BinarySemaphore 2024-01-03 12:14:47 +11:00