Feature Request: Add an auto reconnect on network failures.
norbs12 last edited by norbs12
I've been having issues occasionally during high up times where wifi just stops responding.
I created a macro that disables the wifi card, waits 2 seconds and then connects. This fixes the issue for me but I'm wondering if this could somehow be automated into the OS.
Maybe ping the default gateway occasionally (or even make ping destination configurable), if the ping doesn't succeed, then do basically what my macro does to reconnect.
I am pretty sure this is already part of the ESP firmware aka Duet WiFi Server. AFAIR you can query the number of automatic reconnects via M122.
If this does not work for you, can you check this value by connecting to your board and sending M122 to it? Also, does the LED on the WiFi chip keep blinking when it disconnects or does it only remain off?
norbs12 last edited by norbs12
I've seen the web interface unresponsive in two states, either completely off or just solid blue but not actually working.
The toggle macro seems to work in either state and the printer is responsive from the paneldue.
M122 === Diagnostics === RepRapFirmware for Duet 2 WiFi/Ethernet version 2.01(RTOS) running on Duet WiFi 1.02 or later Board ID: *hiding this* Used output buffers: 3 of 20 (12 max) === RTOS === Static ram: 28476 Dynamic ram: 96328 of which 0 recycled Exception stack ram used: 476 Never used ram: 5792 Tasks: NETWORK(ready,328) HEAT(blocked,1248) MAIN(running,3132) Owned mutexes: === Platform === Last reset 00:48:07 ago, cause: power up Last software reset at 2018-08-02 00:10, reason: User, spinning module GCodes, available RAM 5904 bytes (slot 2) Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f000 BFAR 0xe000ed38 SP 0xffffffff Task 0x4e49414d Error status: 0 Free file entries: 9 SD card 0 detected, interface speed: 20.0MBytes/sec SD card longest block write time: 109.0ms, max retries 0 MCU temperature: min 44.5, current 52.1, max 52.6 Supply voltage: min 12.9, current 13.1, max 13.3, under voltage events: 0, over voltage events: 0 Driver 0: ok, SG min/max 0/224 Driver 1: ok, SG min/max 0/1023 Driver 2: ok, SG min/max 0/1023 Driver 3: ok, SG min/max 0/1023 Driver 4: ok, SG min/max 0/1023 Date/time: 2018-08-04 22:50:20 Slowest loop: 99.48ms; fastest: 0.07ms === Move === Hiccups: 0, StepErrors: 0, LaErrors: 1, FreeDm: 121, MinFreeDm: 120, MaxWait: 351710ms, Underruns: 0, 0 Scheduled moves: 110370, completed moves: 110341 Bed compensation in use: mesh Bed probe heights: -0.366 -0.309 -0.075 0.100 0.451 === Heat === Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1 Heater 0 is on, I-accum = 0.1 Heater 1 is on, I-accum = 0.3 === GCodes === Segments left: 1 Stack records: 3 allocated, 0 in use Movement lock held by null http is idle in state(s) 0 telnet is idle in state(s) 0 file is doing "G1 X197.219 Y150.128 E0.0194" in state(s) 0 serial is idle in state(s) 0 aux is idle in state(s) 0 daemon is idle in state(s) 0 queue is idle in state(s) 0 autopause is idle in state(s) 0 Code queue is empty. === Network === Slowest loop: 110.54ms; fastest: 0.01ms Responder states: HTTP(0) HTTP(4) HTTP(0) HTTP(0) FTP(0) Telnet(0) Telnet(0) HTTP sessions: 1 of 8 - WiFi - Network state is running WiFi module is connected to access point Failed messages: pending 0, notready 0, noresp 0 WiFi firmware version 1.21 WiFi MAC address 5c:cf:7f:76:62:d8 WiFi Vcc 3.35, reset reason Turned on by main processor WiFi flash size 4194304, free heap 13088 WiFi IP address 10.0.2.95 WiFi signal strength -12dBm, reconnections 0, sleep mode modem Socket states: 4 2 0 0 0 0 0 0