RRF Update to 3.3 just killed my FW
-
Unfortunately... nothing seems to work at all. It acts like it cannot see the SD card and the extruder fan goes on. The update looks like it killed my whole setup!
Can't I simply take the SD card out and make changes? -
There are config changes required between 3.0 and above. Can you post your current config.g?
You can remove the SD card from the Duet and check the config.g on your PC.
A firmware update can't kill anything. We just need you to connect the board via USB terminal to see what is actually going on.
-
@phaedrux I was able top get the wifiserver running thanks to your post.
It looks like quite a bit of the config is no longer working. Great. -
The changes between 3.0 and up are pretty minor.
The change between RRF2 and RRF3 are more substantial. What firmware were you running before?
You can get an example config updated for 3.3 from the config tool to compare against. https://configtool.reprapfirmware.org/Start
-
@phaedrux I started with a late v2 and I'm lost with the new approach with the M950. Is there a web app I can use to gen the gcode?
-
@andy-cohen said in RRF Update to 3.3 just killed my FW:
Is there a web app I can use to gen the gcode?
Yes. I linked it in my last post.
You can get an example config updated for 3.3 from the config tool to compare against. https://configtool.reprapfirmware.org/Start
Here's what I normally tell people when they want to update from RRF2
If you still have access to DWC. Upload these 3 zip files, one at a time in the system tab. Don't extract them first. Reboot after each. Use M115 in the gcode console to verify the firmware has been applied.
https://github.com/Duet3D/RepRapFirmware/releases/download/2.05.1/Duet2Firmware-2.05.1.zip
https://github.com/Duet3D/RepRapFirmware/releases/download/3.0/Duet2and3Firmware-3.0.zip
https://github.com/Duet3D/RepRapFirmware/releases/download/3.3/Duet2and3Firmware-3.3.zip
That will get your firmware and DWC up to date.You can see the change logs here:
https://github.com/Duet3D/RepRapFirmware/wiki/Changelog-RRF-3.xFor your config, might be a good idea to run through the configurator tool and generate a fresh set for RRF3.
https://configtool.reprapfirmware.org/StartBackup your existing config files in the sys folder in case you want to switch back to RRF2. It’s easy to switch back and forth, just upload the zip file for the version you want and then upload your config files.
These documents will come in handy during the conversion.
https://duet3d.dozuki.com/Wiki/RepRapFirmware_3_overview
https://duet3d.dozuki.com/Wiki/Gcode -
Thanks for the help.
I was able to get it to kinda work. It still does not see my extruder heater, only the bed heater. This is the heater gcode in the config file I generated:; Heaters
M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin bedtemp
M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0
M307 H0 B1 S1.00 ; enable bang-bang mode for the bed heater and set PWM limit
M140 H0 ; map heated bed to heater 0
M143 H0 S120 ; set temperature limit for heater 0 to 120C
M308 S1 P"e0temp" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin e0temp
M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1
M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
M143 H1 S280 ; set temperature limit for heater 1 to 280C -
@andy-cohen Here's the tool def:
; Tools
M563 P0 D0 H1 F0 ; define tool 0
G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets
G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C -
@andy-cohen said in RRF Update to 3.3 just killed my FW:
It still does not see my extruder heater, only the bed heater.
What does not see it?
Can you send M122 and M98 P"config.g" in the gcode console or USB terminal and share the results?
-
@andy-cohen Yeah... I see it... The web app did not make the P1 tool.
-
@phaedrux OK... heaters and fans seem OK.
Now the motors. They won't home. Comparing with my original config, I see nothing that can be incorrect. Any ideas?
; Drives
M569 P0 S1 ; physical drive 0 goes forwards
M569 P1 S1 ; physical drive 1 goes forwards
M569 P2 S0 ; physical drive 2 goes forwards
M569 P3 S1 ; physical drive 3 goes forwards
M584 X0 Y1 Z2 E3 ; set drive mapping
M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
M92 X88.57 Y88.57 Z400.00 E125.459271 ; set steps per mm
M566 X900.00 Y900.00 Z12.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
M203 X6000.00 Y6000.00 Z180.00 E1200.00 ; set maximum speeds (mm/min)
M201 X1000.00 Y1000.00 Z20.00 E250.00 ; set accelerations (mm/s^2)
M906 X800 Y800 Z400 E800 I30 ; set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout; Axis Limits
M208 X0 Y0 Z0 S1 ; set axis minima
M208 X300 Y195 Z210 S0 ; set axis maxima; Endstops
M574 X2 S0 P"xstop" ; configure switch-type (e.g. microswitch) endstop for high end on X via pin xstop
M574 Y2 S0 P"ystop" ; configure switch-type (e.g. microswitch) endstop for high end on Y via pin ystop
M574 Z1 S0 P"zstop" ; configure switch-type (e.g. microswitch) endstop for low end on Z via pin zstop -
@andy-cohen said in RRF Update to 3.3 just killed my FW:
M574 X2 S0 P"xstop" ; configure switch-type (e.g. microswitch) endstop for high end on X via pin xstop
M574 Y2 S0 P"ystop" ; configure switch-type (e.g. microswitch) endstop for high end on Y via pin ystop
M574 Z1 S0 P"zstop" ; configure switch-type (e.g. microswitch) endstop for low end on Z via pin zstopS0 is incorrect.
If the signal needs to be inverted, use S1 and add a
!
to the front of the pin name.M574 X2 S1 P"!xstop"
-
@phaedrux It moves but the limit switches are ignored. When told to Home X it moves it on an angle. It's a coreXY machine so I got something wrong..
Why oh WHY was soooo much changed?!? -
You'll have to share your config and homing files at this point for any meaningful feedback.
Are you sure it's set to corexy kinematic?
-
@phaedrux Heck... at this point I'm not sure of anything!
I also suspect the wifiserver FW needs to be updated as well as the ManelDue.; Configuration file for Duet WiFi (firmware version 3.3)
; executed by the firmware on start-up
;
; generated by RepRapFirmware Configuration Tool v3.3.10 on Mon Jan 31 2022 16:37:49 GMT-0800 (PST); General preferences
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M550 P"My Printer" ; set printer name; Network
M550 P"CloneDuet" ; Set machine nameM552 S1 ; Enable network
M586 P0 S1 ; Enable HTTP
M586 P1 S0 ; Disable FTP
M586 P2 S0 ; Disable TelnetM552 S1 ; enable network
M586 P0 S1 ; enable HTTP
M586 P1 S0 ; disable FTP
M586 P2 S0 ; disable Telnet; Drives
M569 P0 S1 ; physical drive 0 goes forwards
M569 P1 S1 ; physical drive 1 goes forwards
M569 P2 S0 ; physical drive 2 goes forwards
M569 P3 S1 ; physical drive 3 goes forwards
M584 X0 Y1 Z2 E3 ; set drive mapping
M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
M92 X88.57 Y88.57 Z400.00 E125.459271 ; set steps per mm
M566 X900.00 Y900.00 Z12.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
M203 X6000.00 Y6000.00 Z180.00 E1200.00 ; set maximum speeds (mm/min)
M201 X1000.00 Y1000.00 Z20.00 E250.00 ; set accelerations (mm/s^2)
M906 X800 Y800 Z400 E800 I30 ; set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout; Axis Limits
M208 X0 Y0 Z0 S1 ; set axis minima
M208 X300 Y195 Z210 S0 ; set axis maxima; Endstops
M574 X2 S1 P"!xstop" ; configure switch-type (e.g. microswitch) endstop for high end on X via pin xstop
M574 Y2 S1 P"!ystop" ; configure switch-type (e.g. microswitch) endstop for high end on Y via pin ystop
M574 Z1 S1 P"!zstop" ; configure switch-type (e.g. microswitch) endstop for low end on Z via pin zstop; Z-Probe
M558 P1 C"zprobe.in" H5 F120 T6000 ; set Z probe type to unmodulated and the dive height + speeds
G31 P500 X0 Y0 Z2.5 ; set Z probe trigger value, offset and trigger height
M557 X10:300 Y-16.0:195 S20 ; define mesh grid; Heaters
M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin bedtemp
M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0
M307 H0 B1 S1.00 ; enable bang-bang mode for the bed heater and set PWM limit
M140 H0 ; map heated bed to heater 0
M143 H0 S120 ; set temperature limit for heater 0 to 120C
M308 S1 P"e0temp" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin e0temp
M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1
M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
M143 H1 S280 ; set temperature limit for heater 1 to 280C; Fans
M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency
M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off
M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency
M106 P1 S1 H1 T45 ; set fan 1 value. Thermostatic control is turned on; Tools
M563 P0 D0 H1 F0 ; define tool 0
G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets
G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C
M563 P1 ; Define tool 1
G10 P1 X35 Y0 Z0 ; Set tool 1 axis offsets
G10 P1 R0 S0 ; Set initial tool 1 active and standby temperatures to 0C; Custom settings are not defined
-
Yeah... you were correct.
There's no
"M669 K1 ; switch to CoreXY mode"
I added it and now it seems to work. -
Can you send m122 and share the results?
-
@phaedrux Attached.
In the meantime the PanelDue is a 5.0i but it does not seem to want to update via the Duet. It's 3 years old. Think I'll need to remove it from it's containment and hit a resent button?M122
=== Diagnostics ===
RepRapFirmware for Duet 2 WiFi/Ethernet version 3.3 (2021-06-15 21:44:54) running on Duet WiFi 1.02 or later
Board ID: 08DGM-917DA-G4MS8-6JKD0-3S06N-K9TVB
Used output buffers: 3 of 24 (12 max)
=== RTOS ===
Static ram: 23876
Dynamic ram: 75052 of which 0 recycled
Never used RAM 15488, free system stack 184 words
Tasks: NETWORK(ready,14.4%,244) HEAT(delaying,0.0%,326) Move(notifyWait,0.1%,364) MAIN(running,85.2%,417) IDLE(ready,0.4%,29), total 100.0%
Owned mutexes: WiFi(NETWORK)
=== Platform ===
Last reset 00:04:26 ago, cause: power up
Last software reset at 2022-01-31 19:16, reason: StuckInSpinLoop, GCodes spinning, available RAM 12280, slot 0
Software reset code 0x4083 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f80f BFAR 0xe000ed38 SP 0x2000254c Task MAIN Freestk 900 ok
Stack: 004534c9 00455180 810f0000 00000000 3f000000 369dc3a0 3edbc06f 3331bb4c 40000000 b5ddd98d 388ab355 bb360b61 3e2aaaab 3f800000 00000000 00000000 4354c416 00000000 00000000 60000010 004534c1 200080c8 00408da7 00000000 200182c8 20004c8c 0041872b
Error status: 0x00
Step timer max interval 0
MCU temperature: min 37.4, current 39.2, max 39.6
Supply voltage: min 23.9, current 24.1, max 24.3, under voltage events: 0, over voltage events: 0, power good: yes
Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0
Driver 0: position 0, standstill, SG min/max not available
Driver 1: position 0, standstill, SG min/max not available
Driver 2: position 0, standstill, SG min/max not available
Driver 3: position 0, standstill, SG min/max not available
Driver 4: position 0, standstill, SG min/max not available
Driver 5: position 0
Driver 6: position 0
Driver 7: position 0
Driver 8: position 0
Driver 9: position 0
Driver 10: position 0
Driver 11: position 0
Date/time: 2022-01-31 19:26:17
Cache data hit count 4294967295
Slowest loop: 7.69ms; fastest: 0.17ms
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 1.1ms, write time 0.0ms, max retries 0
=== Move ===
DMs created 83, maxWait 0ms, bed compensation in use: none, comp offset 0.000
=== MainDDARing ===
Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
=== AuxDDARing ===
Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
=== Heat ===
Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1 -1 -1
=== 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.
=== Network ===
Slowest loop: 182.04ms; fastest: 0.00ms
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 bc:dd:c2:89:a2:9b
WiFi Vcc 3.38, reset reason Turned on by main processor
WiFi flash size 4194304, free heap 24160
WiFi IP address 192.168.1.92
WiFi signal strength -37dBm, mode 802.11n, reconnections 0, sleep mode modem
Clock register 00002002
Socket states: 0 0 0 0 0 0 0 0
- WiFi -
-
@andy-cohen said in RRF Update to 3.3 just killed my FW:
In the meantime the PanelDue is a 5.0i but it does not seem to want to update via the Duet. It's 3 years old. Think I'll need to remove it from it's containment and hit a resent button?
I think you'll need to update it's firmware via usb as well so that it can communicate with RRF3 as well. I think the latest firmware is 3.4 for the paneldue. I think once you have it up to date with the firmware you'll actually be able to update it via DWC in the future.
https://duet3d.dozuki.com/Wiki/PanelDue_Firmware_update#Section_Firmware_update_via_USB
It looks like your main firmware and wifi firmware are up to date now. Can you confirm that DWC is also at 3.3?
-
@phaedrux Right. I'm already there.
Bossa does not work in the latest MacOS.
I'm forced to find a ... PC.BTW where do I find the DWC version?