Solved Duet 2 Wifi will not automatically connect to WAP
-
This is a bit of a strange one so I am going to post what I am seeing and see if anyone else has seen the issue. Seems the issue only occurred after the upgrade to version RRF 3.4.2. I do not recall it happening on 3.3 although I did not stay there long as I was upgrading to the latest. This is a new build but a known good configuration on other printers.
I have worked through this thread https://forum.duet3d.com/topic/22157/wifi-reported-error-network-scan-failed/8
The problem seems very similar but not quite the same.when I start the printer I get the following error message on the console
WiFi reported error: network scan failed (50 or so times) then it simply says connected but no IP address appears.When I run M552 S0 and then M552 S1 it connects not an issue and gives me the IP.
In my config file, you will see additional M552 commands that have been commented out, I tried to not start the network at the beginning of the config file and only start it at the end, Does not matter when I start or stop the network. I have tried stopping (S0) at the end of the config and (S1) to restart it. Still no luck. Will only work flawlessly when I stop and restart the network from the console after boot.
new Build printer from a manufacturer, config files are from them,
The printer will boot up, I get repeated messages but no automatic connection.
Any suggestions would be appricated.
M122
=== Diagnostics ===
RepRapFirmware for Duet 2 WiFi/Ethernet version 3.4.2 (2022-09-13 15:11:16) running on Duet WiFi 1.02 or later + DueX5v0.11
Board ID: 0JD0M-9P6B2-NJ4S4-6J9D4-3SD6T-9U1UM
Used output buffers: 1 of 26 (14 max)
=== RTOS ===
Static ram: 23860
Dynamic ram: 76660 of which 0 recycled
Never used RAM 8560, free system stack 132 words
Tasks: NETWORK(ready,264.5%,242) HEAT(notifyWait,1.2%,333) Move(notifyWait,0.1%,292) DUEX(notifyWait,0.0%,24) MAIN(running,182.6%,442) IDLE(ready,0.3%,30), total 448.7%
Owned mutexes:
=== Platform ===
Last reset 16:54:30 ago, cause: power upDuet Web Control 3.4.1
Config.g below
; General preferences_________________________________________________________
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M555 P2 ; Set output to look like Marlin
M575 P1 B57600 S1 ; Set auxiliary serial port baud rate and require checksum (for PanelDue); Network_____________________________________________________________________
M550 P"Big Meter" ; set printer name
;M551 P"MODIX3D" ; Set password (optional)
M552 S1 ; enable network
;M552 S0 ; disable network
;M552 P0.0.0.0 ; Uncomment this command for using Duet Ethernet board; Drives_________________________________________________________________________
;Main board______________________________________________________________________
M569 P0 S0 ; Physical drive 0 . X1
M569 P1 S1 ; Physical drive 1 . X2
M569 P2 R-1 ; Physical drive 2 . Canceled
M569 P3 S0 ; Physical drive 3 goes backwards. E0-Extruder.
M569 P4 S0 ; Physical drive 4 goes forwards. E1-Extruder.
;Duex5 board_____________________________________________________________________
M569 P5 S0 ; Physical drive 5 . Y
M569 P6 S0 ; Physical drive 6 . Z1 (0,1000)
M569 P7 S0 ; Physical drive 7 . Z2 (0,0)
M569 P8 S0 ; Physical drive 8 . Z3 (1000,0)
M569 P9 S0 ; Physical drive 9 . Z4 (1000,1000);Settings_________________________________________________________
M584 X0:1 Y5 Z6:7:8:9 E3:4 P3 ; Driver mapping
M671 X-185:-185:1068:1068 Y1068:-46:-46:1068 S30 ; Anticlockwise
;___________________________________________________________________
M350 X16 Y16 Z16 E16:16 I1 ; Configure microstepping with interpolation
M92 X100 Y100 Z2000 E418.5:418.5 ; Set steps per mm
M566 X360 Y360 Z120 E3600:3600 P1 ; Set maximum instantaneous speed changes (mm/min)
M203 X9000 Y9000 Z200 E12000:12000 ; Set maximum speeds (mm/min)
M201 X1000 Y1000 Z120 E1000:1000 ; Set accelerations (mm/s^2)
M204 P500 ; Set print and travel accelerations (mm/s^2)
M906 X1800 Y1800 E1000:1000 I50 ; Set motor currents (mA) and motor idle factor in per cent
M906 Z1800 I50 ; set Z motor currents
M84 S100 ; Set idle timeout - 100 seconds; Axis Limits
M208 X0 Y0 Z-2 S1 ; set axis minima
M208 X1000 Y1000 Z1000 S0 ; set axis maxima; Endstops
M574 X1 S1 P"xstop + e0stop" ; configure switch-type (e.g. microswitch) endstop for low end on X via pin xstop
M574 Y2 S1 P"ystop" ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin ystop; Z-Probe
M558 P9 C"zprobe.in" H5 F120 T6000 A1 R0.7 ; BLTouch probing settings
M950 S0 C"duex.pwm5" ; sets the BLTouch probe
M376 H100 ; Height (mm) over which to taper off the bed compensation
G31 P500 X-25.5 Y26.9 ; BLTouch X and Y offset
M557 X{move.axes[0].min + sensors.probes[0].offsets[0] + 1, move.axes[0].max + sensors.probes[0].offsets[0] - 1} Y{move.axes[1].min + sensors.probes[0].offsets[1] + 1, move.axes[1].max + sensors.probes[0].offsets[1] - 1} P15:15
; The M557 is used to define the mesh grid area. It uses the P parameter to set the amount of probing points. P10:10 would be a 10x10 grid. Supports up to a 21x21 grid.
M98 P"config_probe.g" ; Load the Z-offset from the config_probe.g file
; The Z_offset value is now set in config_probe.g, not in config.g
; Adjust the values there, do not adjust anything here.; Heaters___________________________________________________________
M140 H-1 ; disable heated bed (overrides default heater mapping);E0_________________________________________________________________
;M308 S0 P"e0temp" Y"thermistor" T100000 B4725 ; configure sensor 0 as thermistor on pin e0temp
;M308 S0 P"spi.cs1" Y"rtd-max31865" ; Configure sensor 0 as PT100 via the daughterboard
M308 S0 P"e0temp" Y"pt1000" ; Configure sensor 0 as PT1000 on pin e0temp
M950 H0 C"e0heat" T0 ; create nozzle heater output on e0heat and map it to sensor 0
M98 P"PID_tune_E0.g" R1 ; PID calibration
M143 H0 S285 ; set temperature limit for heater 0 to 285C;E1_________________________________________________________________
;M308 S1 P"e1temp" Y"thermistor" T100000 B4725 ; configure sensor 1 as thermistor on pin e1temp
;M308 S1 P"spi.cs2" Y"rtd-max31865" ; Configure sensor 1 as PT100 via the daughterboard
M308 S1 P"e1temp" Y"pt1000" ; Configure sensor 1 as PT1000 on pin e1temp
M950 H1 C"e1heat" T1 ; create nozzle heater output on e1heat and map it to sensor 1
M98 P"PID_tune_E1.g" R1 ; PID calibration
M143 H1 S285 ; set temperature limit for heater 1 to 285C; Fans______________________________________________________________
M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency
M106 P0 S0 H-1 C"Primary blower fan" ; set fan 0 value. Thermostatic control is turned on
M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency
M106 P1 S0 H-1 C"Secondary blower fan" ; set fan 1 value. Thermostatic control is turned on
M950 F2 C"duex.fan7" Q500 ; create LED on pin fan2 and set its frequency
M106 P2 S0 H-1 C"LED" ; Disable fan channel for LED
M106 P2 S255 ; LED on by default
M950 F3 C"duex.fan5" Q500 ; create fan 3 on pin fan1 and set its frequency
M106 P3 S255 H0 T45 ; set fan 3 value. Thermostatic control is turned on
M950 F4 C"duex.fan6" Q500 ; create fan 4 on pin fan1 and set its frequency
M106 P4 S255 H1 T45 ; set fan 4 value. Thermostatic control is turned on; Tools______________________________________________________________
;T0_________________________________________________________________
M563 P0 S"E0 Primary" D0 H0 F0 ; define tool 0
G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets
G10 P0 R0 S210 ; set initial tool 0 active and standby temperatures to 0C;T1_________________________________________________________________
M563 P1 S"E1 Secondary" D1 H1 F1 ; define tool 1
G10 P1 X0 Y74.3 Z0 ; set tool 1 axis offsets
G10 P1 R0 S210 ; set initial tool 1 active and standby temperatures to 0C; Automatic power saving____________________________________________
M911 S22.5 R29.0 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; Set voltage thresholds and actions to run on power loss. Power Failure Pause; Custom settings__________________________________________________
M591 D0 P1 C"duex.e2stop" S1 ; Regular filament sensor for E0
M591 D1 P1 C"duex.e3stop" S1 ; Regular filament sensor for E1; Add-on settings__________________________________________________
;M552 S1 ; enable network
; Primary hotend Clog detector__________________________________________________
;M950 J0 C"duex.e2stop" ; create Input Pin 0 on pin E2 to for M581 Command.
;M581 T1 P0 S0 R1 ; Runout switch for E0 As External Trigger
;M591 D0 P7 C"e1stop" S1 L4.2 E10 R10:1000 ; Clog Detector E0 [Add-On];Secondary hotend Clog detector__________________________________________________
;M950 J1 C"exp.e3stop" ; create Input Pin 1 on pin E3 to for M581 Command.
;M581 T1 P1 S0 R1 ; Runout switch for E1 As External Trigger
;M591 D1 P7 C"zstop" S1 L3.14 E10 R10:300 ; Clog Detector E1 [Add-On]; Crash detector__________________________________________________
;M950 J2 C"duex.e4stop" ; create Input Pin 2 on pin E4 to for M581 Command.
;M581 P2 T0 S0 R0 ; Crash Detector [Add-On]; Emergency stop button__________________________________________________
M950 J3 C"duex.e6stop" ; create Input Pin 2 on pin E4 to for M581 Command.
M581 P3 T0 S1 R0 ; Emergency stop [Add-On]
;M581 P3 T1 S1 R1 ; Emergency stop, pause the print [Add-On]
;M581 P3 T1 S1 R0 ; Emergency stop, pause always [Add-On]; Automatic Z Offset Calibration____________________________________
M574 Z1 S1 P"!duex.e5stop" ; configure switch-type for Automatic z-offset
M501 -
@macgyver any chance you can grab an M122 output so we can see what wifi firmware version you are running?
-
sure not an issue, Posted a smaller chunk of it but here is the whole output, Including the M115 as well.
9/27/2022, 10:48:22 AM M115
FIRMWARE_NAME: RepRapFirmware for Duet 2 WiFi/Ethernet FIRMWARE_VERSION: 3.4.2 ELECTRONICS: Duet WiFi 1.02 or later + DueX5v0.11 FIRMWARE_DATE: 2022-09-13 15:11:169/27/2022, 10:47:19 AM M122
=== Diagnostics ===
RepRapFirmware for Duet 2 WiFi/Ethernet version 3.4.2 (2022-09-13 15:11:16) running on Duet WiFi 1.02 or later + DueX5v0.11
Board ID: 0JD0M-9P6B2-NJ4S4-6J9D4-3SD6T-9U1UM
Used output buffers: 3 of 26 (26 max)
=== RTOS ===
Static ram: 23860
Dynamic ram: 76660 of which 0 recycled
Never used RAM 8560, free system stack 132 words
Tasks: NETWORK(ready,14.7%,242) HEAT(notifyWait,0.0%,333) Move(notifyWait,0.0%,292) DUEX(notifyWait,0.0%,24) MAIN(running,85.3%,442) IDLE(ready,0.0%,30), total 100.0%
Owned mutexes: WiFi(NETWORK)
=== Platform ===
Last reset 17:01:49 ago, cause: power up
Last software reset time unknown, reason: User, GCodes spinning, available RAM 8768, slot 1
Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a
Error status: 0x08
Aux0 errors 0,0,0
Step timer max interval 0
MCU temperature: min 30.9, current 31.4, max 31.9
Supply voltage: min 24.0, current 24.2, max 24.5, under voltage events: 0, over voltage events: 0, power good: yes
Heap OK, handles allocated/used 99/0, heap memory allocated/used/recyclable 2048/8/8, gc cycles 0
Events: 0 queued, 0 completed
Driver 0: standstill, SG min n/a
Driver 1: standstill, SG min n/a
Driver 2: standstill, SG min n/a
Driver 3: standstill, SG min n/a
Driver 4: standstill, SG min n/a
Driver 5: standstill, SG min n/a
Driver 6: standstill, SG min n/a
Driver 7: standstill, SG min n/a
Driver 8: standstill, SG min n/a
Driver 9: standstill, SG min n/a
Driver 10:
Driver 11:
Date/time: 2022-09-27 10:47:18
Cache data hit count 4294967295
Slowest loop: 7.25ms; fastest: 0.19ms
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 0.5ms, write time 0.0ms, max retries 0
=== Move ===
DMs created 83, segments created 6, maxWait 0ms, bed compensation in use: mesh, comp offset 0.000
=== MainDDARing ===
Scheduled moves 700, completed 700, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
=== AuxDDARing ===
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 ===
Segments left: 0
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
USB is idle 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
Code queue is empty
=== Filament sensors ===
Extruder 0 sensor: ok
Extruder 1 sensor: ok
=== DueX ===
Read count 0, 0.00 reads/min
=== Network ===
Slowest loop: 242.70ms; fastest: 0.07ms
Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions
HTTP sessions: 1 of 8
= WiFi =
Network state is active
WiFi module is connected to access point
Failed messages: pending 0, notready 0, noresp 0
WiFi firmware version 1.26
WiFi MAC address c8:c9:a3:40:90:f4
WiFi Vcc 3.40, reset reason Power up
WiFi flash size 2097152, free heap 25456
WiFi IP address 192.168.66.104
WiFi signal strength -54dBm, mode 802.11n, reconnections 0, sleep mode modem
Clock register 00002002
Socket states: 0 0 0 0 0 0 0 0 -
@macgyver you could try updating the wifi firmware to 1.27 (from 1.26).
I don't think it'll make a difference but reflashing the wifi doesn't hurt.
https://github.com/Duet3D/RepRapFirmware/releases/download/3.4.2/DuetWiFiServer.binon a side note, you should always keep DWC and RRF running the same versions as theres always a chance that a fix in RRF breaks something in DWC. version 3.4.2 can be found here https://github.com/Duet3D/RepRapFirmware/releases/download/3.4.2/DuetWebControl-SD.zip
to update both just upload them to the system tab -
ok, will do that now, In process of commissioning this printer so want to have it running without an issue.
I will post the results shortly.
-
HI @jay_s_uk , thanks for the reply
After installing just the Wifi update, Came up with the same scrolling error and then a message connected to the access point, IP address 255.255.255.255,
That was weird because that is a broadcast address. Anyway did the S0 and S1 again and it connected properly. Error is basically still happening.
I updated the DWC as a separate step to help anyone else troubleshoot,
First time I power cycled the printer, Came up perfectly, Connected properly and gave me the proper IP address.
Power cycled it again and back to the same error message.
However, If I just do nothing Eventually it does come online itself. Sometimes takes 2 mins to connect and give me the IP.So I started thinking maybe there may be some other networks in the configuration that is toying with it. I ran the procedure listed in this Post
https://forum.duet3d.com/topic/9888/how-to-erase-remembered-networks/4basically the M588 S"*"
I set up my network again from scratch with the M587 and now after 10 power cycles, It seems to be working ok.If I was to guess what may be going on as you apply firmware versions it may be adding "default" or "beta" networks that it has to scan and see that they are not there before it will move on to the next one. That is strictly my guess but the version of the DWC definitely had the biggest effect.
For me, I just like to try and understand the source of the error but for anyone else troubleshooting this error take @jay_s_uk 's advice and ensure your firmware versions match.
-
undefined Phaedrux marked this topic as a question
-
undefined Phaedrux has marked this topic as solved