Struggling to update Duet 2 Wifi
-
I started by trying to go through the upgrade steps for firmware as recommended.
I continued to have an issue where I couldn't stay connected to DWC.I eventually found myself down to fallback #2.
I was able to flash 3.5.4 successfully via that method.
M115 spits outFIRMWARE_NAME: RepRapFirmware for Duet 2 WiFi/Ethernet FIRMWARE_VERSION: 3.5.4 ELECTRONICS: Duet WiFi 1.02 or later FIRMWARE_DATE: 2024-11-24 10:43:42
I ran M122 and saw the wifi module is disabled. Fine.
M552 S0.ok WiFi module is started
I noticed my blue light never came on and it never connects to anything.
I ran a M587 and can see my networks.Remembered networks: TNCAP2FCC19 IP=192.168.1.14 GW=0.0.0.0 NM=0.0.0.0 GoPackGo IP=0.0.0.0 GW=0.0.0.0 NM=0.0.0.0 GoPackGoGuest IP=0.0.0.0 GW=0.0.0.0 NM=0.0.0.0
Ok...
So I thought maybe I should look at fallback #1.
I've got the SD card set up with a firmware folder containing only Duet2CombinedFirmware.bin and DuetWiFiServer.bin. Then in the sys folder I only have Duet2_SDiap32_WiFiEth.bin. The other folders exist and I put the contents of DWC.zip into the www folder. Looks similar to my backup card, but with less stuff in sys.I ran m997 s1
Trying to connect at 230400 baud: success, found ESP8266 Erasing 8192 bytes... Erasing 690688 bytes... Uploading file... 5% complete 10% complete 15% complete 20% complete 25% complete 30% complete 35% complete 40% complete 45% complete 50% complete 55% complete 60% complete 65% complete 70% complete 75% complete 80% complete 85% complete 90% complete 95% complete Upload successful ok
The blue light had a faint flicker so I figured ok that must have worked.
M552 S0 and no light, just ok wifi module started.So I found a command to enable debugging. M111 S1 P14.
I did an M552 S-1WiFi module stopped ok
Followed by another M552 S0.
m552 s0 WiFi: WiFi: ets Jan 8 2013,rst cause:2, boot mode:(3,6) WiFi: WiFi: load 0x40100000, len 5548, room 16 WiFi: tail 12 WiFi: chksum 0xf7 WiFi: ho 0 tail 12 room 4 WiFi: load 0x3ffe8008, len 24, room 12 WiFi: tail 12 WiFi: chksum 0x1e ok WiFi: ho 0 tail 12 room 4 WiFi: load 0x3ffe8020, len 2412, room 12 WiFi: tail 0 WiFi: chksum 0x2a WiFi: csum 0x2a WiFi: phy_version: 1163.0, 665d56c, Jun 24 2020, 10:00:08, RTOS new WiFi module started ESP reported status change ESP reported status change
Wondering where I've gone wrong. I noticed that in the SD Card docs (can't post link due to rep) it says the Duet2_SDiap32_WiFiEth.bin should be in the firmware folder and says nothing about the DuetWiFiServer.bin file.
Hoping I'm closer after that infuriating DWC disconnect mess. I understand that the issue may be related to my network. GoPackGo is 5Ghz/2.4Ghz with a different router than I had previously. I was hoping I could maybe try to connect to GoPackGoGuest which is strictly 2.4Ghz and used for other IoT devices in my house.
-
FWIW, I pulled the SD card out and checked it again, popped it in and it connected back to my GoPackGo network. I was able to navigate to the DWC with the provided IP, however it quickly disconnected me again.
So I did an M588 S"GoPackGo" to force it to switch to GoPackGoGuest.
And it did.
So I switched to GoPackGoGuest on my PC and navigated to the displayed IP and.... nothing. It just times out.So here's my m122 now. I'm going to bed and I'll see if sleep helps.
m122 === Diagnostics === RepRapFirmware for Duet 2 WiFi/Ethernet version 3.5.4 (2024-11-24 10:43:42) running on Duet WiFi 1.02 or later Board ID: 08DGM-917NK-F2MS4-7JTDJ-3SD6M-KDT8F Used output buffers: 1 of 26 (14 max) === RTOS === Static ram: 23488 Dynamic ram: 70940 of which 0 recycled Never used RAM 19048, free system stack 186 words Tasks: NETWORK(1,ready,26.8%,239) HEAT(3,nWait 5,0.0%,378) Move(4,nWait 5,0.0%,361) MAIN(1,running,73.2%,501) IDLE(0,ready,0.0%,29), total 100.0% Owned mutexes: USB(MAIN) === Platform === Last reset 00:09:18 ago, cause: power up Last software reset details not available Error status: 0x00 MCU temperature: min 26.9, current 29.7, max 30.2 Supply voltage: min 1.6, current 1.7, max 1.8, under voltage events: 0, over voltage events: 0, power good: no Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0 Events: 0 queued, 0 completed Driver 0: ok, SG min n/a Driver 1: ok, SG min n/a Driver 2: ok, SG min n/a Driver 3: ok, SG min n/a Driver 4: ok, SG min n/a Driver 5: Driver 6: Driver 7: Driver 8: Driver 9: Driver 10: Driver 11: Date/time: 2025-02-06 22:21:18 Cache data hit count 4294967295 Slowest loop: 99.26ms; fastest: 0.14ms I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0 === Storage === Free file entries: 10 SD card 0 detected, interface speed: 20.0MBytes/sec SD card longest read time 3.8ms, write time 0.0ms, max retries 0 === Move === DMs created 83, segments created 0, maxWait 0ms, bed compensation in use: none, height map offset 0.000, max steps late 0, min interval 0, bad calcs 0, ebfmin 0.00, ebfmax 0.00 no step interrupt scheduled Moves shaped first try 0, on retry 0, too short 0, wrong shape 0, maybepossible 0 === DDARing 0 === Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === Heat === Bed heaters -1 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0 === GCodes === Movement locks held by null HTTP is idle in state(s) 0 Telnet is idle in state(s) 0 File is idle in state(s) 0 USB is ready with "m122" in state(s) 0 Aux is idle in state(s) 0 Trigger is idle in state(s) 0 Queue is idle in state(s) 0 LCD is idle in state(s) 0 Daemon is idle in state(s) 0 Autopause is idle in state(s) 0 Q0 segments left 0 Code queue 0 is empty === Network === Slowest loop: 17.02ms; fastest: 0.00ms Responder states: HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) HTTP sessions: 0 of 8 === WiFi === Interface state: active Module is connected to access point Failed messages: pending 0, notrdy 0, noresp 0 Firmware version 2.2.0 MAC address 60:01:94:2e:9a:74 Module reset reason: Turned on by main processor, Vcc 3.43, flash size 4194304, free heap 46064 WiFi IP address 192.168.101.88 Signal strength -48dBm, channel 5, mode 802.11n, reconnections 0 Clock register 00002002 Socket states: 0 0 0 0 0 0 0 0 ok
-
@rschlachter I've upvoted your posts so you should have the rep to post links.
If you're using RRF 3.3 or later, all firmware files should be in the /firmware folder, including RRF and WiFi firmware, and the IAP file. See https://docs.duet3d.com/User_manual/RepRapFirmware/Updating_firmware#file-locations-on-the-duet-sd-card
It seems the main issue is that it can connect, but then disconnects after a short time. That would imply that the Duet and WiFi firmware are working, and the SD card www folder are set up correctly.
There are a number of things you can do to remedy this:
- Turn off unused network services, like ftp or telnet. Turn them off in your config.g, (see M586).
- Limit the number of browser sessions that connect to the Duet at the same time. Ideally no more than two.
- In DWC, increase the 'Number of maximum AJAX retries' to 4 in Settings > Machine specific > General > Communications
- If you have a PanelDue connected, update the firmware to the latest release: https://github.com/Duet3D/PanelDueFirmware/releases/latest (there are issues with the time it takes the PanelDue to retrieve data from the firmware, which interfere with network tasks).
- Consider updating to the latest WiFi firmware (Duet WiFi Server v2.2.1, you are on v2.2.0), which is coming with RRF 3.6. This also fixes a couple of bugs. https://github.com/Duet3D/WiFiSocketServerRTOS/releases/latest
Ian
-
@rschlachter said in Struggling to update Duet 2 Wifi:
So I switched to GoPackGoGuest on my PC and navigated to the displayed IP and.... nothing. It just times out.
It's likely that your guest network has client isolation enabled which prevents clients from seeing each other on the guest network as a safety measure.
On your router, look into whether you can force a client to specifically use only the 2.4ghz network. Or perhaps split the SSID for the 5ghz and 2.4ghz networks so that there is a dedicated 2.4ghz network.
-
@droftarts Thank you for the upvotes!
And thank you for the response. I moved the files accordingly and downloaded the new WiFi firmware and updated it and it currently holding a connection.
First headache over.
Now, I'm left wondering if I should update to 3.6 Beta straight away or get it all running on 3.5.4. I'm leaning towards the latter.
I am seeing some errors in the DWC console, but those may disappear as I work my way through as I imagine I'll need a new config, etc.
-
@droftarts It would appear I spoke too soon. At some point during the afternoon, it lost connection again. I had used the config generator to just generate some configs and dropped them in.
I then unplugged the board from my usb and plugged it back in and I only got maybe 20 seconds. When I plug it back in, I have to turn on the wifi module again (though that probably makes sense with no config.g)
I tried clearing out the configs and I'm still back to 20ish seconds before I get disconnected.
EDIT: Tried a new card and a new cable. Still the same thing.
It's weird. The wifi module doesn't appear to disconnect or drop in YAT.
Made sure the other network services are off...
Only one browser session connected.
Bumped the number of AJAX retries to 4
No PanelDue
And did the firmware upgrade.From the browser side I can see it works, then just doesn't. It's almost like the server just crashes? Assuming reprap must be a default password?
It also seems to become available briefly if I reset the wifi module.... It briefly connects after each m552 s1 and after DWC disconnects, M552 shows it's still connected.
-
undefined Phaedrux marked this topic as a question
-
For what it's worth, I might be closer to figuring this out?
We have some Govee string lights up around the room. I shut them off and I seem to be able to hold a connection for hours now. So it would appear interference is to blame!!
We also have some Amazon Firestick remotes, which I believe operate off of their own wifi network. We noticed using that remote messes with some twinkle lights in the windows as well.
So if anyone has any advice on handling interference and keeping that to a minimum, I'm all ears. I don't really want disconnects mid-print. I'll try to scan wifi channels and adjust accordingly, but I'm a bit skeptical.
I did see someone replaced their wifi module with a little solder work. I'm no stranger to that. https://clevercreations.org/fix-duet-wifi-esp8266-connection-problems/ But if I'm going that route, I'd want to replace it with something better. Not sure there's a drop in replacement that's better.
-
undefined Phaedrux marked this topic as a regular topic
-
@rschlachter does the WiFi module on your Duet 2 have the internal or external antenna?
-
@dc42
It is the internal antenna model.I wound up factory resetting my router (Asus) and making sure firmware was up to date.
I reconfigured my wireless networks and picked quiet channels. It's been up for 48 hours with no disconnects. So I think I'm alright moving forward.That said, it still might be interesting for anyone in the future. I would imagine the first suggestion would be going for an external antenna?
Thank you to all who responded here.
-
@rschlachter said in Struggling to update Duet 2 Wifi:
external antenna?
External antenna would help if it's an issue with signal strength, otherwise it's functionally identical.
-
@rschlachter as @Phaedrux an external antenna will help, it has higher gain than the internal antenna. Also, if the Duet is mounted horizontally then the internal antenna will be horizontal, which isn't ideal because wifi routers normally have vertical antennae.
I note that you have reconfigured your wireless channels. Was it previously using channel1? We've noticed that channel 1 seems to be more problematic than the others. Perhaps the internal antenna performs poorly at that end of the band, or maybe there's a harmonic of one of the clock signals on the Duet that interferes with it.
-
@rschlachter There's a WiFi troubleshooting page in the wiki that includes more advice: https://docs.duet3d.com/en/User_manual/Troubleshooting/WiFi_troubleshooting
Ian