error after firmware update M98: expected a string expression
-
after upgrading to 3.5.0-rc.2 I'm getting the following error.
Error: in GCode file line 696 column 6: M98: expected a string expression Error: Bad command: g
my start gcode looks like this;
M104 S[first_layer_temperature] ; set extruder temp M140 S[first_layer_bed_temperature] ; set bed temp M109 S[first_layer_temperature] ; wait for extruder temp M190 S[first_layer_bed_temperature] ; wait for bed temp M557 X{first_layer_print_min[0]}:{first_layer_print_max[0]} Y{first_layer_print_min[1]}:{first_layer_print_max[1]} S20 ; define probe area M98 P"bed.g" ; perform bed leveling ;M98 P/sys/bed.g ; perform bed leveling G92 E0 ; reset extruder
I re-wrote the M98 command as it looks like the syntax in the docs changed at some point. the old code is commented out.
Now the print doesn't error, but seems to cause the board to restart.
this is bed.g
; bed.g ; called to perform automatic bed compensation via G32 ; ; generated by RepRapFirmware Configuration Tool v3.2.3 on Thu Jul 01 2021 15:51:11 GMT+0100 (British Summer Time) M561 ; clear any bed transform G28 ; home G30 P0 X5 Y155 Z-99999 ; probe near a leadscrew G30 P1 X300 Y45 Z-99999 ; probe near a leadscrew ; probe near a leadscrew G30 P2 X300 Y239 Z-99999 S3 ; probe near a leadscrew and calibrate 3 motors G29 ; probe the bed and enable compensation
any suggestions?
Thanks -
@nick9one1 post an M122 output after the reset
-
M122 === Diagnostics === RepRapFirmware for Duet 3 Mini 5+ version 3.5.0-rc.2 (2023-12-14 10:30:57) running on Duet 3 Mini5plus WiFi (standalone mode) Board ID: 27SYQ-GT9RL-D65J0-40KMA-K2X2Z-H3JS2 Used output buffers: 1 of 40 (40 max) Error in macro line 54 while starting up: invalid Z probe index === RTOS === Static ram: 102812 Dynamic ram: 120544 of which 260 recycled Never used RAM 14872, free system stack 156 words Tasks: NETWORK(1,ready,18.3%,173) HEAT(3,nWait,0.0%,353) Move(4,nWait,0.0%,243) CanReceiv(6,nWait,0.0%,797) CanSender(5,nWait,0.0%,336) CanClock(7,delaying,0.0%,350) TMC(4,nWait,0.7%,74) MAIN(1,running,79.0%,666) IDLE(0,ready,1.1%,29) AIN(4,delaying,0.8%,264), total 100.0% Owned mutexes: WiFi(NETWORK) HTTP(MAIN) === Platform === Last reset 00:48:13 ago, cause: software Last software reset time unknown, reason: User, Gcodes spinning, available RAM 27804, slot 0 Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00000000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a Error status: 0x04 Aux0 errors 0,0,0 MCU revision 3, ADC conversions started 2893410, completed 2893410, timed out 0, errs 0 MCU temperature: min 31.3, current 31.9, max 32.4 Supply voltage: min 23.9, current 24.1, max 24.2, under voltage events: 0, over voltage events: 0, power good: yes Heap OK, handles allocated/used 99/2, heap memory allocated/used/recyclable 2048/32/0, gc cycles 0 Events: 1 queued, 1 completed Driver 0: standstill, SG min 6, read errors 0, write errors 1, ifcnt 191, reads 21179, writes 13, timeouts 0, DMA errors 0, CC errors 0 Driver 1: standstill, SG min 8, read errors 0, write errors 1, ifcnt 192, reads 21179, writes 13, timeouts 0, DMA errors 0, CC errors 0 Driver 2: standstill, SG min 0, read errors 0, write errors 1, ifcnt 196, reads 21174, writes 18, timeouts 0, DMA errors 0, CC errors 0 Driver 3: standstill, SG min 0, read errors 0, write errors 1, ifcnt 196, reads 21173, writes 18, timeouts 0, DMA errors 0, CC errors 0 Driver 4: standstill, SG min 0, read errors 0, write errors 1, ifcnt 196, reads 21174, writes 18, timeouts 0, DMA errors 0, CC errors 0 Driver 5: not present Driver 6: not present Date/time: 2024-01-02 17:52:18 Cache data hit count 4294967295 Slowest loop: 999.80ms; fastest: 0.10ms === Storage === Free file entries: 20 SD card 0 detected, interface speed: 22.5MBytes/sec SD card longest read time 7.4ms, write time 61.9ms, max retries 0 === Move === DMs created 83, segments created 3, maxWait 313011ms, bed compensation in use: none, height map offset 0.000, max steps late 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 1, completed 1, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === DDARing 1 === Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === Heat === Bed heaters 0 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0 === GCodes === Movement locks held by null, null HTTP is ready with "M122" 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 SBC is idle in state(s) 0 Daemon is idle in state(s) 0 Aux2 is idle in state(s) 0 Autopause is idle in state(s) 0 File2 is idle in state(s) 0 Queue2 is idle in state(s) 0 Q0 segments left 0, axes/extruders owned 0x0000807 Code queue 0 is empty Q1 segments left 0, axes/extruders owned 0x0000000 Code queue 1 is empty === CAN === Messages queued 26102, received 57937, lost 0, errs 1, boc 0 Longest wait 2ms for reply type 6026, peak Tx sync delay 205, free buffers 26 (min 25), ts 14467/14466/0 Tx timeouts 0,0,0,0,0,0 === Network === Slowest loop: 247.80ms; fastest: 0.00ms Responder states: MQTT(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) HTTP sessions: 1 of 8 === WiFi === Interface state: active Module is connected to access point Failed messages: pending 0, notrdy 0, noresp 0 Firmware version 1.26 MAC address f0:08:d1:02:f0:b5 Module reset reason: Power up, Vcc 3.35, flash size 2097152, free heap 25224 WiFi IP address 192.168.1.82 Signal strength -47dBm, channel 0, mode 802.11n, reconnections 0 Clock register 00002002 Socket states: 0 0 0 0 0 0 0 0
-
You've jogged my memory.. I remember the 1LC doesn't always like to update.
M115 B121 Duet TOOL1LC rev 1.1 or later firmware version 3.5.0-rc.2 (2023-12-14 08:58:51) Board 121 starting firmware update M997 S0 B121 M115 B121 Duet TOOL1LC rev 1.1 or later firmware version 3.4.1 (2022-06-01 21:16:39)
but now I have;
Error: Board 121 does not have heater 1 Error: Board 121 does not have heater 1
-
; Configuration file for Duet 3 Mini 5+ (firmware version 3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.2.3 on Thu Jul 01 2021 17:21:30 GMT+0100 (British Summer Time) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"BLV MGN Cube" ; set printer name M669 K1 ; select CoreXY mode M80 C"nil" ; ATX PS_ON on ; Network M552 S1 ; enable network M586 P0 S1 ; enable HTTP M586 P1 S1 ; enable FTP M586 P2 S0 ; disable Telnet G4 S1 ;wait for expansion boards to start ; Drives M569 P0.0 S0 D2 ; X motor runs forwards M569 P0.1 S1 D2 ; Y motor runs forwards M569 P0.2 S1 D2 ; physical drive 0.2 goes backwards M569 P0.3 S1 D2 ; physical drive 0.2 goes backwards M569 P0.4 S1 D2 ; physical drive 0.2 goes backwards M569 P121.0 S1 D2 ; physical drive 121.0 goes backwards M584 X0.0 Y0.1 Z0.2:0.3:0.4 E121.0 ; set drive mapping M671 X0:290:290 Y155:62:255 S3 ; leadscrews at rear left, front middle and rear right M350 X16 Y16 Z16 I1 ; configure microstepping with interpolation M350 E16 I0 ; configure microstepping with interpolation M92 X200.00 Y200.00 Z3200.00 E700 ; set steps per mm M566 X2000.00 Y2000.00 Z150.00 E150.00 ; set maximum instantaneous speed changes (mm/min) (Jerk) M203 X30000.00 Y30000.00 Z300.00 E2000.00 ; set maximum speeds (mm/min) M201 X9000.00 Y9000.00 Z200.00 E200.00 ; set accelerations (mm/s^2) M906 X1400 Y1400 Z900 E800 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Pressure advance M572 D0 S0.07 ; Axis Limits M208 X-3:305 Y0:305 Z0.0:500.0 ; set axis limits ; Endstops M574 X1 S1 P"121.io1.in" ; configure active-high endstop for low end on X via pin io0.in M574 Y2 S1 P"io6.in" ; configure active-high endstop for HIGH end on Y via pin io6.in M564 H1 ; allow jog without homing ; Z-Probe M950 S0 C"^121.io0.out" ; create servo pin 0 for BLTouch M558 P9 C"^121.io0.in" H3 F120 T10000 ; set Z probe type to bltouch and the dive height + speeds G31 P500 X0 Y66 Z2.30 ; set Z probe trigger value, offset and trigger height (-0.15) M557 X-10:293 Y65:300 P8 ; define mesh grid ; Heaters M308 S0 P"temp0" Y"thermistor" T100000 B3950 ; configure sensor 0 as thermistor on pin temp0 M950 H0 C"out0" T0 ; create bed heater output on out0 and map it to sensor 0 M307 H0 R0.291 C1127.4 D26.90 S1.00 ; Set PID for bed values M140 H0 ; map heated bed to heater 0 M143 H0 S100 ; set temperature limit for heater 0 to 100C M308 S1 P"121.temp0" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 1 as thermistor on pin 121.temp0 M950 H1 C"121.out0" T1 ; create nozzle heater output on 121.out0 and map it to sensor 1 M307 H1 B0 R3.089 C258.2:154.4 D5.95 S1.00 V23.7 ; Set PID for hotend values M143 H1 S280 ; set temperature limit for heater 1 to 280C ; Fans M950 F0 C"121.out2" Q80 ; create hotend fan 0 on pin toolboard out1 and set its frequency M106 P0 S0 H1 T45 C"Hotend Fan" ; set fan 0 value. Thermostatic control is turned on M950 F1 C"121.out1" Q250 ; create cooling fan 1 on pin toolboard out1 and set its frequency M106 P1 S0 H-1 B1 C"Part Cooling Fan" ; set fan 1 value. Thermostatic control is turned off ; Tools M563 P0 D0 H1 F1 ; 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 D0 H1 F1 ; define tool 1 G10 P1 X0 Y0 Z0 ; set tool 1 axis offsets G10 P1 R0 S0 ; set initial tool 1 active and standby temperatures to 0C ; Accel M955 P121.0 I10 Input shaping ;M593 P"ei3" F90 ; use EI3 input shaping to cancel ringing at 90Hz ;M593 P"ei3" F50 ; Screen M575 P1 B57600 S1
-
@nick9one1 you need to update the toolboard to 3.5.0 RC2
-
Thanks. Yes I did that already. the Error: Board 121 does not have heater 1 was cleared by a restart. All working now, thanks!
-
-