WiFi unstable in Release 2.0/1.21?



  • Spent a good portion of the evening last night fighting WiFi connectivity on the DuetWifi. Originally purchased the board in Oct 2017, had hooked it up to a single motor/rail to play with it while waited for the rest of the mechanical parts. Those parts never developed so I gave a printer a brain transplant with the DuetWifi last night (July 2018). That's when things went all wonky and the board wouldn't stay connected. Near the end I realized I had done all the updates to 2.0/1.21.1 shortly after bringing the board live as if I had just pulled it out the box. Doing the good dutiful thing of updating all the firmware. It then dawned on me finally that the connectivity issue hadn't been there before in Oct '17 so I got out a new SD card loaded it up with 1.19, reflashed all the firmware back to 1.19 and the unit is stable again. Not sure what's up with 2.0/1.21 but here are some of the M122 diag's I got back from it. I also have some pics of the PanelDue console showing that it was disconnecting and reconnecting every few minutes. In the troubleshooting process I had stripped the board down to just the board and power, and in fact used 2 different power supplies and even just powered the board via a 5v battery over USB for a bit, because I thought I was chasing ground loops or bad/noisy motors, all sorts of things in the connectivity troubleshooting. In the end rolling back to 1.19 resolved everything. I'm not sure if my board is of the age it can't be upgraded to the latest firmware or what but hopefully the attached M122 queries will shed some light.

    Thanks for your time,
    Keith


    9:21:50 PMM122
    === Diagnostics ===
    RepRapFirmware for Duet 2 WiFi/Ethernet version 2.0(RTOS) running on Duet WiFi 1.02 or later
    Board ID: 08DDM-9FAM2-LW4S4-6JTD0-3SN6N-T2VZY
    Used output buffers: 3 of 20 (8 max)
    === RTOS ===
    Static ram: 28380
    Dynamic ram: 95740 of which 0 recycled
    Exception stack ram used: 284
    Never used ram: 6668
    Task NETWORK ready, free stack 440
    Task HEAT blocked, free stack 1256
    Task MAIN running, free stack 3624
    === Platform ===
    Last reset 00:01:08 ago, cause: reset button or watchdog
    Last software reset details not available
    Error status: 0
    Free file entries: 10
    SD card 0 detected, interface speed: 20.0MBytes/sec
    SD card longest block write time: 0.0ms
    MCU temperature: min 31.6, current 37.0, max 37.0
    Supply voltage: min 23.9, current 24.0, max 24.2, under voltage events: 0, over voltage events: 0
    Driver 0: standstill, SG min/max not available
    Driver 1: standstill, SG min/max not available
    Driver 2: standstill, SG min/max not available
    Driver 3: standstill, SG min/max not available
    Driver 4: standstill, SG min/max not available
    Date/time: 2018-07-10 21:21:50
    Slowest loop: 3.73ms; fastest: 0.07ms
    === Move ===
    Hiccups: 0, StepErrors: 0, LaErrors: 0, FreeDm: 240, MinFreeDm 240, MaxWait: 0ms, Underruns: 0, 0
    Scheduled moves: 0, completed moves: 0
    Bed compensation in use: none
    Bed probe heights: 0.000 0.000 0.000 0.000 0.000
    === Heat ===
    Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1
    === GCodes ===
    Segments left: 0
    Stack records: 1 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 idle 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: 14.22ms; fastest: 0.01ms
    Responder states: HTTP(0) HTTP(0) 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 2c:3a:e8:0a:f5:5f
      WiFi Vcc 3.35, reset reason Turned on by main processor
      WiFi flash size 4194304, free heap 15960
      WiFi IP address 192.168.1.95
      WiFi signal strength -49dBm, reconnections 0, sleep mode modem
      Failed to request ESP stats
      Socket states: 0 0 0 0 0 0 0 0
      === Expansion ===
      9:21:44 PMConnection established!
      9:15:04 PMDisconnected.
      9:14:45 PMM122
      === Diagnostics ===
      RepRapFirmware for Duet 2 WiFi/Ethernet version 2.0(RTOS) running on Duet WiFi 1.02 or later
      Board ID: 08DDM-9FAM2-LW4S4-6JTD0-3SN6N-T2VZY
      Used output buffers: 1 of 20 (13 max)
      === RTOS ===
      Static ram: 28380
      Dynamic ram: 95784 of which 0 recycled
      Exception stack ram used: 356
      Never used ram: 6552
      Task NETWORK ready, free stack 460
      Task HEAT blocked, free stack 1256
      Task MAIN running, free stack 3560
      === Platform ===
      Last reset 00:02:41 ago, cause: reset button or watchdog
      Last software reset details not available
      Error status: 0
      Free file entries: 10
      SD card 0 detected, interface speed: 20.0MBytes/sec
      SD card longest block write time: 0.0ms
      MCU temperature: min 38.6, current 39.3, max 39.5
      Supply voltage: min 23.9, current 23.9, max 24.2, under voltage events: 0, over voltage events: 0
      Driver 0: standstill, SG min/max 0/216
      Driver 1: standstill, SG min/max not available
      Driver 2: standstill, SG min/max 0/589
      Driver 3: standstill, SG min/max not available
      Driver 4: standstill, SG min/max not available
      Date/time: 2018-07-10 21:14:45
      Slowest loop: 9.64ms; fastest: 0.08ms
      === Move ===
      Hiccups: 0, StepErrors: 0, LaErrors: 0, FreeDm: 240, MinFreeDm 238, MaxWait: 4294915897ms, Underruns: 0, 0
      Scheduled moves: 10, completed moves: 10
      Bed compensation in use: none
      Bed probe heights: 0.000 0.000 0.000 0.000 0.000
      === Heat ===
      Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1
      === GCodes ===
      Segments left: 0
      Stack records: 1 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 idle 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: 3.01ms; fastest: 0.07ms
      Responder states: HTTP(0) HTTP(0) 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 2c:3a:e8:0a:f5:5f
      WiFi Vcc 3.35, reset reason Turned on by main processor
      WiFi flash size 4194304, free heap 15640
      WiFi IP address 192.168.1.95
      WiFi signal strength -47dBm, reconnections 0, sleep mode modem
      Socket states: 0 0 0 0 0 0 0 0
      === Expansion ===
      9:12:21 PMM122
      === Diagnostics ===
      RepRapFirmware for Duet 2 WiFi/Ethernet version 2.0(RTOS) running on Duet WiFi 1.02 or later
      Board ID: 08DDM-9FAM2-LW4S4-6JTD0-3SN6N-T2VZY
      Used output buffers: 3 of 20 (8 max)
      === RTOS ===
      Static ram: 28380
      Dynamic ram: 95740 of which 0 recycled
      Exception stack ram used: 284
      Never used ram: 6668
      Task NETWORK ready, free stack 460
      Task HEAT blocked, free stack 1256
      Task MAIN running, free stack 3560
      === Platform ===
      Last reset 00:00:17 ago, cause: reset button or watchdog
      Last software reset details not available
      Error status: 0
      Free file entries: 10
      SD card 0 detected, interface speed: 20.0MBytes/sec
      SD card longest block write time: 0.0ms
      MCU temperature: min 36.7, current 38.8, max 38.9
      Supply voltage: min 23.8, current 23.9, max 24.1, under voltage events: 0, over voltage events: 0
      Driver 0: standstill, SG min/max not available
      Driver 1: standstill, SG min/max not available
      Driver 2: standstill, SG min/max not available
      Driver 3: standstill, SG min/max not available
      Driver 4: standstill, SG min/max not available
      Date/time: 2018-07-10 21:12:20
      Slowest loop: 3.73ms; fastest: 0.07ms
      === Move ===
      Hiccups: 0, StepErrors: 0, LaErrors: 0, FreeDm: 240, MinFreeDm 240, MaxWait: 0ms, Underruns: 0, 0
      Scheduled moves: 0, completed moves: 0
      Bed compensation in use: none
      Bed probe heights: 0.000 0.000 0.000 0.000 0.000
      === Heat ===
      Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1
      === GCodes ===
      Segments left: 0
      Stack records: 1 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 idle 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: 14.25ms; fastest: 0.01ms
      Responder states: HTTP(0) HTTP(0) 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
      Failed to get WiFi status
      Socket states: 0 0 0 0 0 0 0 0
      === Expansion ===
      9:12:14 PMConnection established!
      9:11:16 PMDisconnected.
      9:02:48 PMConnection established!
      9:02:25 PMDisconnected.
      9:02:09 PMConnection established!
      8:56:48 PMDisconnected.
      8:56:38 PMConnection established!
      8:55:52 PMDisconnected.
      8:55:40 PMConnection established!

  • administrators

    Can you try assigning the Duet a static IP address that is acceptable to your router? The IP address is an optional parameter in the M587 command.



  • Thank you for the response, I will try that down the road. For the moment I'm happy the board is operational and the machine is running so I don't want to go back down that rabbit hole at the moment.


  • administrators

    @tinkerz are you still having connection issues?



  • @t3p3tony Yes, very much so. I did order another DuetWifi for another system and to further troubleshoot I've placed the new board in place of the old one. And no connection issues so far. Significantly more stable. No loss of connection via USB, no drops via wifi, no issues communicating with the PanelDue. All comms instability has disappeared. Looks to be pointing to an issue on the board. GIven the number of times I've updated it. downgraded it and even completely erased it and reinstalled everything I'm beginning to suspect it's the board.


  • administrators

    If the new board works much better than the old one in exactly the same machine, there could be a problem with the WiFi module on the old board. Do you know anyone with hot air desoldering equipment who could replace it? It should also be possible to replace it using a soldering iron and ChipQuik, but that's not something I have tried.



  • Thanks for getting back so fast. Agreed, I believe the whole issue on the old board is the WiFi module. If you were to send a replacement for that I'll get it swapped out, whether it be giving the ChipQuik a try for the experience or having someone with desoldering equipment do it I'll get it accomplished.


  • administrators

    The WiFi module is an ESP-12S, readily available at low cost on eBay; or you can use the ESP-07S + external antenna instead if you prefer. Make sure you get the S version. Your board is older so it may have the ESP-12F instead; but the -12S is fully compatible and is claimed by the manufacturer to perform better.



  • Thanks, will do. Though I was hoping to get that module replaced under warranty. Yes I know it's outside the 6 month window but the board did sit quite some time before I got to use it to the point where I could see it had problems. Just hoping for a little good will on the replacement. If not, no worries!

    Also, a quick question regarding the external antenna WiFi, can the Duet board be ordered with that installed, or is there a product variant without the WiFi chip installed so that we can add the antenna mount version? Asking for future development as it was posed to me by other engineers being concerned about essentially locking the board inside a faraday cage by burying it inside a box of metal. Or will we just need to plan to desolder and resolder each one?

    Thanks again,
    Keith


  • administrators

    To send you a replacement WiFi module, we'd first need to have our assembly subcontractor send us one, then send it on to you which could take a while and involve customs paperwork depending on which country you are in. As it's such a low cost item, it probably makes more sense for you to source it locally. If you are in the UK and can accept a 12F instead of a 12S, then I can send you one FOC.



  • That all makes sense. More hassle than it's worth. Thanks for the transparency.

    Keith



  • Greetings all! Operation WiFiSwap via ChipQuik was a success. Board seems significantly more responsive and stable now. I'll have a better idea once I upgrade the Zortrax M300 with it. But for now I'm happy to report that a WiFi module can be desoldered via ChipQuik and a new one installed.

    Maybe some documentation on this would be nice. Or at least let people know to copy the DuetWiFiServer.bin file to the /sys folder and perform a M997 S1 to get the WiFi chip firmware loaded. Initially I was a bit sad to only see the light flicker once on the WiFi module. But once I tried poking it with commands I started to get the feeling it might not know how to respond appropriately so I flashed it's firmware. And all set. Connected!!

    Yay! Thanks again folks.
    Keith



  • This is interesting to know. And external antenna would solve a lot of my problems, I think.


Locked
 

Looks like your connection to Duet3D was lost, please wait while we try to reconnect.