Toolboard 1.1, error with Accelerometer
-
@nuramori do you have a 1 second or longer G4 delay command in config.g, earlier than the M955 line? It's often needed to allow the expansion boards time to start up or (in this case) reset.
-
@dc42 I do. I added that based on the latest documentation. Could it have something to do with me using a SBC? Running a macro to "use" it, results in a similar message.
-
OK, I will look into it.
When you get that error, if you subsequently send that M955 command, does it work?
If you send M98 P"config.g", do you get any error messages?
-
@dc42 sending a M955 P20.0 results in an error that the accelerometer was not found. While the message does not show on a cold start, it will be generated with that command. Immediately entering M122 B20 will show that the accelerometer is in fact detected.
I am using a Pi4. Here is some diagnostic, including my config.g
M122 B20...
5/7/2021, 4:00:35 AM M122 B20 Diagnostics for board 20: Duet TOOL1LC firmware version 3.3RC1 (2021-04-29 10:21:18) Bootloader ID: SAMC21 bootloader version 2.3 (2021-01-26b1) Never used RAM 3228, free system stack 0 words Tasks: Move(notifyWait,0.0%,153) HEAT(delaying,0.2%,81) CanAsync(notifyWait,0.0%,66) CanRecv(notifyWait,0.0%,79) CanClock(notifyWait,0.0%,66) ACCEL(notifyWait,0.0%,61) TMC(delaying,2.8%,57) MAIN(running,92.0%,349) IDLE(ready,0.0%,26) AIN(delaying,4.9%,62), total 100.0% Last reset 00:02:23 ago, cause: power up Last software reset data not available Driver 0: position 0, 1299.0 steps/mm, standstill, SG min/max 0/0, read errors 0, write errors 0, ifcnt 12, reads 6400, writes 12, timeouts 0, DMA errors 0, steps req 0 done 0 Moves scheduled 0, completed 0, in progress 0, hiccups 0, step errors 0, maxPrep 0, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0 Peak sync jitter 9, peak Rx sync delay 595, resyncs 0, no step interrupt scheduled VIN: 23.5V MCU temperature: min 41.4C, current 42.0C, max 42.0C Ticks since heat task active 176, ADC conversions started 143920, completed 143919, timed out 0, errs 0 Last sensors broadcast 0x00000002 found 1 180 ticks ago, loop time 0 CAN messages queued 1410, send timeouts 0, received 1202, lost 0, free buffers 36, min 36, error reg 0 dup 0, oos 0, bm 0, wbm 0 Accelerometer detected: yes, status: 00 I2C bus errors 0, naks 0, other errors 0
M122...
5/7/2021, 4:02:26 AM M122 === Diagnostics === RepRapFirmware for Duet 3 MB6HC version 3.3RC1+1 (2021-05-01 21:43:52) running on Duet 3 MB6HC v0.6 or 1.0 (SBC mode) Board ID: 08DJM-956L2-G43S4-6J1F2-3SJ6T-1A6QH Used output buffers: 1 of 40 (10 max) === RTOS === Static ram: 150680 Dynamic ram: 61800 of which 532 recycled Never used RAM 125180, free system stack 174 words Tasks: SBC(ready,5.6%,300) HEAT(delaying,0.0%,301) Move(notifyWait,0.0%,300) CanReceiv(notifyWait,0.0%,798) CanSender(notifyWait,0.0%,373) CanClock(delaying,0.0%,341) TMC(notifyWait,7.6%,93) MAIN(running,86.7%,924) IDLE(ready,0.0%,29), total 100.0% Owned mutexes: HTTP(MAIN) === Platform === Last reset 00:04:15 ago, cause: power up Last software reset at 2021-05-07 08:59, reason: User, none spinning, available RAM 125228, slot 1 Software reset code 0x0012 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0044a000 BFAR 0x00000000 SP 0x00000000 Task SBC Freestk 0 n/a Error status: 0x00 Aux0 errors 0,0,0 Aux1 errors 0,0,0 Step timer max interval 155 MCU temperature: min 36.4, current 40.8, max 40.9 Supply voltage: min 23.2, current 23.3, max 23.3, under voltage events: 0, over voltage events: 0, power good: yes 12V rail voltage: min 12.0, current 12.0, max 12.1, under voltage events: 0 Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0 Driver 0: position 0, standstill, reads 41421, writes 14 timeouts 0, SG min/max 0/0 Driver 1: position 0, standstill, reads 41421, writes 14 timeouts 0, SG min/max 0/0 Driver 2: position 0, standstill, reads 41421, writes 14 timeouts 0, SG min/max 0/0 Driver 3: position 0, standstill, reads 41421, writes 14 timeouts 0, SG min/max 0/0 Driver 4: position 0, standstill, reads 41421, writes 14 timeouts 0, SG min/max 0/0 Driver 5: position 0, standstill, reads 41424, writes 11 timeouts 0, SG min/max 0/0 Date/time: 2021-05-07 09:04:58 Slowest loop: 26.79ms; fastest: 0.04ms === Storage === Free file entries: 10 SD card 0 not detected, interface speed: 37.5MBytes/sec SD card longest read time 0.0ms, write time 0.0ms, max retries 0 === Move === DMs created 125, 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 -1 -1 -1 -1 -1 -1 -1 -1, chamberHeaters = -1 -1 -1 -1 Heater 1 is on, I-accum = 0.0 === GCodes === Segments left: 0 Movement lock held by null HTTP* is doing "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 Code queue is empty. === CAN === Messages queued 2204, send timeouts 0, received 2751, lost 0, longest wait 6ms for reply type 6024, peak Tx sync delay 37120, free buffers 49 (min 48) === SBC interface === State: 4, failed transfers: 0 Last transfer: 1ms ago RX/TX seq numbers: 8306/8306 SPI underruns 0, overruns 0 Number of disconnects: 0, IAP RAM available 0x2c8dc Buffer RX/TX: 0/0-0 === Duet Control Server === Duet Control Server v3.3-rc1 Code buffer space: 4096 Configured SPI speed: 8000000 Hz Full transfers per second: 19.53 Codes per second: 0.16 Maximum length of RX/TX data transfers: 2676/560 5/7/2021, 4:00:35 AM M122 B20 Diagnostics for board 20: Duet TOOL1LC firmware version 3.3RC1 (2021-04-29 10:21:18) Bootloader ID: SAMC21 bootloader version 2.3 (2021-01-26b1) Never used RAM 3228, free system stack 0 words Tasks: Move(notifyWait,0.0%,153) HEAT(delaying,0.2%,81) CanAsync(notifyWait,0.0%,66) CanRecv(notifyWait,0.0%,79) CanClock(notifyWait,0.0%,66) ACCEL(notifyWait,0.0%,61) TMC(delaying,2.8%,57) MAIN(running,92.0%,349) IDLE(ready,0.0%,26) AIN(delaying,4.9%,62), total 100.0% Last reset 00:02:23 ago, cause: power up Last software reset data not available Driver 0: position 0, 1299.0 steps/mm, standstill, SG min/max 0/0, read errors 0, write errors 0, ifcnt 12, reads 6400, writes 12, timeouts 0, DMA errors 0, steps req 0 done 0 Moves scheduled 0, completed 0, in progress 0, hiccups 0, step errors 0, maxPrep 0, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0 Peak sync jitter 9, peak Rx sync delay 595, resyncs 0, no step interrupt scheduled VIN: 23.5V MCU temperature: min 41.4C, current 42.0C, max 42.0C Ticks since heat task active 176, ADC conversions started 143920, completed 143919, timed out 0, errs 0 Last sensors broadcast 0x00000002 found 1 180 ticks ago, loop time 0 CAN messages queued 1410, send timeouts 0, received 1202, lost 0, free buffers 36, min 36, error reg 0 dup 0, oos 0, bm 0, wbm 0 Accelerometer detected: yes, status: 00 I2C bus errors 0, naks 0, other errors 0
config.g
; Configuration file for Duet3 (firmware version 3.3 RC1+1) ; executed by the firmware on start-up ; ; --------------- Pin/connection Mapping Legend ------------------- ; 0.out0 - Bed heater ; 0.out1 ; 0.out2 ; 0.out3 ; 0.out4 - Radiator cooling fan - WC heatsink ; 0.out5 ; 0.out6 ; 0.out7 ; 0.out8 ; 0.out9 - Duet board cooling fan ; 0.out4.tach - Radiator cooling fan rpm wire - WC heatsink ; 0.out5.tach ; 0.out6.tach ; 0.io0.in ; 0.io1.in - Emergency stop switch ; 0.io2.in - Y max active low endstop switch ; 0.io3.in ; 0.io4.in ; 0.io5.in ; 0.io6.in ; 0.io7.in ; 0.io8.in ; 0.io0.out ; 0.io1.out ; 0.io2.out ; 0.io3.out ; 0.io4.out ; 0.io5.out ; 0.io6.out ; 0.io7.out ; 0.io8.out ; 0.servo, out10 (only on v0.5, not on v0.6) ; 0.pson ; 0.spi.cs0 ; 0.spi.cs1 ; 0.spi.cs2 ; 0.spi.cs3 ; 0.temp0 - Bed Thermistor ; 0.temp1 ; 0.temp2 ; 0.temp3 - Coolant Temp Sensor ; 0.mcu-temp - MCU sensor ; ;----------Toolboard 1 (CAN ID#20) ; 20.out0 - Hotend Heater ; 20.out1 ; 20.out2 - Parts cooler on printhead ; 20.out1.tach ; 20.out2.tach ; 20.io0.in - Z probe type to bltouch current - Piezo future ; 20.io1.in - X min active low endstop switch ; 20.io0.out - GPIO port 0 on toolboard io0, servo mode - BLTouch Z-Probe ; 20.temp0 - Extruder Thermistor ; 20.temp1 ; 20.button0 ; 20.button1 ; ; ----------------------------------------------------------------- ; ; General preferences M81 ; Turn on the Power (inverted for Meanwell) G4 P2000 ; Hold your Horses. G90 ; send absolute coordinates... M83 ; ...but relative extruder moves G21 ; Set units to Millimeters M550 P"DUET3" ; set printer name M575 P1 S1 B57600 ; Set things up for the PanelDue G4 S6 ; Wait for toolboard to start M584 X0.3 Y0.2 Z0.0:0.1:0.4 E20.0 ; set drive mapping to each axis M669 K1 ; Select CoreXY mode - New format ; Network ; M552 S1 ; enable network ; M586 P0 S1 ; enable HTTP ; M586 P1 S0 ; disable FTP ; M586 P2 S0 ; disable Telnet ; Drives M569 P0.0 S0 ; physical drive 0 goes backwards - Z Axis Left (1) M569 P0.1 S0 ; physical drive 1 goes backwards - Z Axis Right Back (2) M569 P0.2 S0 ; physical drive 2 goes backwards - Y Axis, activate Stealthchop M569 P0.3 S0 ; physical drive 3 goes backwards - X Axis, activate Stealthchop M569 P0.4 S0 ; physical drive 4 goes backwards - Z Axis Right Front (3) M569 P20.0 S1 ; physical drive 5 goes forwards - Extruder 1 ; Set up three Z-axis location M671 X-6:362:362 Y186:299:60 S5 ; Pivot Points at 1 - left, 2 - rear right and 3 - front right M92 X199 Y198 Z1585 E1299 ; set steps per mm M350 X16 Y16 Z16 E16 I1 ; configure micro-stepping with interpolation M566 X600.00 Y600.00 Z100.00 E240.00 ; set maximum instantaneous speed changes (mm/min) M203 X16000.00 Y16000.00 Z400.00 E1200.00 ; set maximum speeds (mm/min) M201 X4000.00 Y4000.00 Z400.00 E800.00 ; set accelerations (mm/s^2) M906 X800 Y800 Z800 E800 I30 ; set motor currents (mA) and motor idle factor in percent*100 ; Set up Stealthcop Parameters ; M569 P0.0 V40 H5 ; M569 P0.1 V40 H5 ; M569 P0.2 V40 H5 ; M569 P0.3 V40 H5 ; M569 P0.4 V40 H5 ; M569 P20.0 V40 H5 ; M915 X Y Z E T1 M84 S30 ; Set idle timeout ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X315 Y315 Z325 S0 ; set axis maxima ; Endstops M574 X1 S1 P"20.io1.in" ; X min active high endstop switch M574 Y2 S1 P"0.io2.in" ; Y max active high endstop switch ; Z-Probe - BLTouch - *CURRENT* M574 Z1 S2 ; set endstops controlled by probe M558 P9 C"^20.io0.in" H5 F2000 T12000 ; set Z probe type to bltouch and the dive height + speeds (bltouch NEEDS pullup) G31 P100 X0 Y-20 Z3.85 ; set Z probe trigger value, offset and trigger height - 0.40MM NOZZLE FIXED Kv1 G30 ; Probe Z ; Configure Heaters and Sensors M308 S0 P"0.temp0" Y"thermistor" A"Bed Heat" T100000 B3950 ; Configure bed temperature sensor M950 H0 C"0.out0" T0 ; Define heater 0 (bed heater) - bed_heat pin and Temp Sensor 0 M143 H0 S120 A2 ; set temperature limit for heater 0 to 120c M140 H0 ; Map heated bed to heater 0 M308 S1 P"20.temp0" Y"thermistor" A"Mosquito" T500000 B4723 C1.196220e-7 ; Configure extruder 1 temperature sensor - Mosquito M950 H1 C"20.out0" T1 ; Define heater 1 (hot-end E0) to use the "20.out0" pin and Temp Sensor 1 M143 H1 S270 A2 ; set temperature limit for heater 1 to 270C M308 S2 P"mcu-temp" Y"mcu-temp" A"Duet Board" ; Configure MCU sensor M308 S3 P"temp3" Y"thermistor" T10000 B3988 A"Coolant" ; Configure coolant sensor ; Configure Fans M950 F0 C"20.out2" Q100 ; Define Fan_0 for use - Parts Cooler on Printhead - 5015 fan M950 F1 C"0.out9" Q25000 ; Define Fan_1 for use - Duet board cooling fan M950 F2 C"!0.out4+^0.out4.tach" Q25000 ; Define Fan_1 for use - Radiator cooling - WC heatsink. - PWM fan M950 S0 C"20.io0.out" ; Define GPIO port 0 on IO0, servo mode - BLTouch Z-Probe - *CURRENT* M950 J0 C"^!0.io1.in" ; Input 0 uses 0.io1.in pin, pullup enabled ; Fans M106 P0 S0 ; set fan 0. Parts Cooler on Printhead M106 P1 T45:50 H2 ; Set fan 1. Manages Duet board fan. M106 P2 T20:40 H3 ; Set fan 1. Manages Radiator fan for water-cooled loop. ;Set PID values M307 H0 B0 R0.720 C713.5 D2.13 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit M307 H1 B0 R2.487 C249.5:190.7 D5.51 S1.00 V23.1 ; disable bang-bang mode for the extruder heater and set PWM limit ; Pressure Advance M572 D0 S0.05 ; Set pressure advance to offset elasticity ; Dynamic Acceleration Adjustment and Non-linear M592 D0 A0.015 B0.0012 L0.2 M593 F21 P4 ; Set Movement Queue M595 P100 ; Set up Accelerometer M955 P20.0 I12 ; Accelerometer on toolboard, oriented counter clockwise 90 Enable for RRF 3.3 Stable ; Tools M563 P0 S"Printhead" D0 H1 F0 ; define tool 0. Fan 0 operates with an active hot-end G10 L1 P0 X0 Y0 Z0 ; set tool 0 axis offsets - - - X15 Y18 - Bed 0,0 G10 P0 R0 S0 ; set active and standby temperatures to 0C ; Emergency Stop M574 S1 P"^!0.io1.in" ; Define Emergency endstop - emergency stop switch condition M581 P0 S1 T0 ; Define action to be taken with activation of emergency stop switch ; Miscellaneous T0 ; select first tool
-
@nuramori I think the problem is that DSF on the Pi needs to treat the M955 P parameter the same as it treats the M569 P parameter. I will ask @chrishamm to take a look.
-
@dc42 the one message I did notice was that the error said something like parameter P”.0 not found. The quote mark was unusual.
-
@nuramori said in Toolboard 1.1, error with Accelerometer:
P”.0 not found. The quote mark was unusual.
With the curly looking double quote mark? Does your system use "smart quotes"? Where did you see that error?
-
@phaedrux that was from the top of my head, so the accuracy of the actual character is suspect. I’ve been away on a family trip but will take a screenshot when I return.
[UPDATE] : It's not the message error I thought it was; I mistook the macro statement to read as an error, and it's not. Ignore my P"0.20 error comment.
The "accelerometer not found" error remains
-
I'm seeing the same error response, but with the M956 command when trying to actually read from the accelerometer.
I saw in multiple places notes that the accelerometer only works with the Duet3 running in standalone mode - is this still the case? https://duet3d.dozuki.com/Wiki/Accelerometers is one place ; if that's still true, I expect my issue (and possibly Nuramori's) is from running in SBC mode. If it's just a dumb configuration mistake, please let me know X)
Error (by itself here, but the same error happens when using the example "move, wait and test" gcode snippet):
5/14/2021, 11:56:16 AM M956 P121.0 S1000 A0 Error: M956: Accelerometer not found
M122 B121 and M122 responses, not long after a reset for testing:
5/14/2021, 11:55:33 AM M122 B121 Diagnostics for board 121: Duet TOOL1LC firmware version 3.3RC2 (2021-05-11 14:59:50) Bootloader ID: SAMC21 bootloader version 2.3 (2021-01-26b1) Never used RAM 3140, free system stack 0 words Tasks: Move(notifyWait,0.0%,153) HEAT(delaying,0.2%,81) CanAsync(notifyWait,0.0%,66) CanRecv(notifyWait,0.0%,79) CanClock(notifyWait,0.0%,66) ACCEL(notifyWait,0.0%,61) TMC(delaying,2.8%,57) MAIN(running,92.0%,349) IDLE(ready,0.0%,26) AIN(delaying,4.9%,62), total 100.0% Last reset 00:02:41 ago, cause: software Last software reset data not available Driver 0: position 0, 80.0 steps/mm, standstill, SG min/max 0/0, read errors 0, write errors 1, ifcnt 69, reads 15357, writes 9, timeouts 0, DMA errors 0, steps req 0 done 0 Moves scheduled 0, completed 0, in progress 0, hiccups 0, step errors 0, maxPrep 0, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0 Peak sync jitter 9, peak Rx sync delay 210, resyncs 0, no step interrupt scheduled VIN: 24.5V MCU temperature: min 38.8C, current 39.5C, max 39.5C Ticks since heat task active 85, ADC conversions started 161830, completed 161829, timed out 0, errs 0 Last sensors broadcast 0x00000002 found 1 90 ticks ago, loop time 0 CAN messages queued 1944, send timeouts 0, received 1467, lost 0, free buffers 36, min 36, error reg 0 dup 0, oos 0, bm 0, wbm 0 Accelerometer detected: yes, status: 00 I2C bus errors 0, naks 0, other errors 0 5/14/2021, 11:55:29 AM M122 === Diagnostics === RepRapFirmware for Duet 3 Mini 5+ version 3.3RC2 (2021-05-11 14:55:40) running on Duet 3 Mini5plus Ethernet (SBC mode) Board ID: W53WL-F396U-D65J0-40KM2-LA03Z-RAFMP Used output buffers: 1 of 40 (10 max) === RTOS === Static ram: 102476 Dynamic ram: 92608 of which 0 recycled Never used RAM 48620, free system stack 194 words Tasks: SBC(ready,4.8%,300) HEAT(delaying,0.0%,356) Move(notifyWait,0.1%,338) CanReceiv(notifyWait,0.0%,773) CanSender(notifyWait,0.0%,371) CanClock(delaying,0.0%,353) TMC(notifyWait,0.7%,115) MAIN(running,93.5%,566) IDLE(ready,0.1%,29) AIN(delaying,0.8%,266), total 100.0% Owned mutexes: HTTP(MAIN) === Platform === Last reset 00:02:42 ago, cause: software Last software reset at 2021-05-14 16:52, reason: User, none spinning, available RAM 45732, slot 2 Software reset code 0x0012 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00000000 BFAR 0xe000ed38 SP 0x00000000 Task SBC Freestk 0 n/a Error status: 0x00 Aux0 errors 0,0,0 Aux1 errors 0,0,0 MCU revision 3, ADC conversions started 162712, completed 162711, timed out 0, errs 0 Step timer max interval 753 MCU temperature: min 38.2, current 38.4, max 39.1 Supply voltage: min 23.8, current 24.3, max 24.4, 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 0/0, read errors 0, write errors 1, ifcnt 40, reads 8530, writes 11, timeouts 0, DMA errors 0 Driver 1: position 0, standstill, SG min/max 2/2, read errors 0, write errors 1, ifcnt 38, reads 8530, writes 11, timeouts 0, DMA errors 0 Driver 2: position 0, standstill, SG min/max 0/0, read errors 0, write errors 1, ifcnt 38, reads 8530, writes 11, timeouts 0, DMA errors 0 Driver 3: position 0, standstill, SG min/max 0/0, read errors 0, write errors 1, ifcnt 35, reads 8529, writes 11, timeouts 0, DMA errors 0 Driver 4: position 0, standstill, SG min/max 0/0, read errors 0, write errors 1, ifcnt 29, reads 8532, writes 9, timeouts 0, DMA errors 0 Driver 5: position 0, assumed not present Driver 6: position 0, assumed not present Date/time: 2021-05-14 16:55:28 Cache data hit count 388839009 Slowest loop: 1.22ms; fastest: 0.08ms === Storage === Free file entries: 10 SD card 0 not detected, interface speed: 0.0MBytes/sec SD card longest read time 0.0ms, 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, chamberHeaters = -1 -1 Heater 0 is on, I-accum = 0.5 Heater 1 is on, I-accum = 0.0 === GCodes === Segments left: 0 Movement lock held by null HTTP* is doing "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 Code queue is empty. === CAN === Messages queued 1451, send timeouts 0, received 1939, lost 0, longest wait 2ms for reply type 6049, peak Tx sync delay 259, free buffers 17 (min 16) === SBC interface === State: 4, failed transfers: 0 Last transfer: 3ms ago RX/TX seq numbers: 5736/5736 SPI underruns 0, overruns 0 Number of disconnects: 0, IAP RAM available 0x10c14 Buffer RX/TX: 0/0-0 === Duet Control Server === Duet Control Server v3.3-rc2 Code buffer space: 4096 Configured SPI speed: 8000000 Hz Full transfers per second: 35.61 Codes per second: 0.39 Maximum length of RX/TX data transfers: 3260/736
In case it helps, config.g (M955 added now, but earlier testing with it only sent manually had the same behavior):
; 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 Mon Mar 15 2021 11:42:33 GMT-0400 (Eastern Daylight Time) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"duet35m3" ; set printer name ; Network ;M552 S0 ; disable network M999 B121 G4 S3 ;wait for expansion boards to start ; Drives M569 P0.0 S1 ; physical drive 0.0 goes forwards M569 P0.1 S0 ; physical drive 0.1 goes forwards M569 P0.2 S0 ; physical drive 0.2 goes backwards M569 P0.3 S1 ; physical drive 0.3 goes forwards M569 P121.0 S0 ;toolboard extruder motor (maybe) - flipped from original setup because I basically made a crossover motor cable... - josh 4/7/2021 M584 X0.0 Y0.1 Z0.2 E0.3 ; set drive mapping ;M584 X0.0 Y0.1 Z0.2 E121.0 ; set drive mapping (toolboard, maybe) M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X80.1 Y80.1 Z1007.70 E471.50 S16 ; set steps per mm M566 X300.00 Y900.00 Z60.00 E600.00 ; set maximum instantaneous speed changes (mm/min) M203 X18000.00 Y18000.00 Z1200.00 E1800.00 ; set maximum speeds (mm/min) M201 X1200.00 Y1200.00 Z10.00 E2000.00 ; set accelerations (mm/s^2) M906 X400 Y400 Z1500 E800 I60 ; set motor currents (mA) and motor idle factor in per cent ; changed X and Y from 800 to 1200 to test perimeter quality - Josh 4/28/2021; changed to X400 Y400 for further testing - Josh 4/29/2021 M84 S30 ; Set idle timeout ; Axis Limits M208 X-4 Y0 Z-15 S1 ; set axis minima M208 X205 Y255 Z212 S0 ; set axis maxima ; Endstops M574 X1 S1 P"io0.in" ; configure active-high endstop for low end on X via pin io0.in M574 Y1 S1 P"io1.in" ; configure active-high endstop for low end on Y via pin io1.in M574 Z2 S1 P"io2.in" ; configure active-high endstop for high end on Z via pin io2.in ; Z-Probe M558 P0 H5 F120 T6000 ; disable Z probe but set dive height, probe speed and travel speed M557 X15:190 Y15:195 S20 ; define mesh grid ; Heaters ;M308 S0 P"temp1" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin temp1 M308 S0 P"temp1" Y"thermistor" T100000 B4072 ; configure sensor 0 as thermistor on pin temp1 M950 H0 C"out0" T0 ; create bed heater output on out0 and map it to sensor 0 M307 H0 B0 S1.00 ; enable bang-bang mode for the bed heater and set PWM limit M307 H0 R0.164 C781.6 D19.38 S1.00 V23.8 M140 H0 ; map heated bed to heater 0 M143 H0 S120 ; set temperature limit for heater 0 to 120C M570 H0 S120 ; added by Josh 3/15/2021 to prevent bed heating timeout. ;M308 S1 P"temp0" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin temp0 ;M950 H1 C"out1" T1 ; create nozzle heater output on out1 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 ;below four lines copied for implementing toolboard control - 4/7/2021 Josh M308 S1 P"121.temp0" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin temp0 M950 H1 C"121.out0" T1 ; create nozzle heater output on out1 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"out5" Q500 ; create fan 0 on pin out5 and set its frequency ;M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off ;M950 F1 C"out6" Q500 ; create fan 1 on pin out6 and set its frequency ;M106 P1 S1 H1 T45 ; set fan 1 value. Thermostatic control is turned on ; Fans ; the below four lines copied for implementing toolboard control - 4/7/2021 Josh M950 F0 C"!121.out1+out1.tach" Q500 ; create fan 0 on pin out5 and set its frequency M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off M950 F1 C"121.out2+out2.tach" Q500 ; create fan 1 on pin out6 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 ; Custom settings are not defined ; Miscellaneous T0 ; select first tool M950 J2 C"121.button0" ; removed the "!" from the beginning of this pin name so that now the toolboard buttons trigger on press, not release - this way I can check the state at the end of the trigger file and keep extruding/retracting if the button is still pressed. 5/11/2021 Josh M950 J3 C"121.button1" M581 T2 P2 S1 M581 T3 P3 S1 M955 P121.0 I05 ; configure toolboard v1.1 accelerometer - 5/14/2021 Josh
And finally the result of running config.g; I didn't see these "input handle" errors during my previous resets today, but they may have been silent - I have seen them before, but I think only when the Duet3 Mini5+ and Toolboard firmware versions didn't match perfectly:
5/14/2021, 12:02:15 PM M98 P"config.g" Board 121 resetting Heater 0 allowed excursion 15.0°C, fault trigger time 5.0 seconds Warning: Board 121 does not have input handle 2080 Warning: Board 121 does not have input handle 20c0 5/14/2021, 12:02:15 PM Accelerometer 121:0 with orientation 5 samples at 1344Hz with 10-bit resolution
-
@mgjosh said in Toolboard 1.1, error with Accelerometer:
And finally the result of running config.g; I didn't see these "input handle" errors during my previous resets today, but they may have been silent - I have seen them before, but I think only when the Duet3 Mini5+ and Toolboard firmware versions didn't match perfectly:
5/14/2021, 12:02:15 PM M98 P"config.g" Board 121 resetting Heater 0 allowed excursion 15.0°C, fault trigger time 5.0 seconds Warning: Board 121 does not have input handle 2080 Warning: Board 121 does not have input handle 20c0 5/14/2021, 12:02:15 PM Accelerometer 121:0 with orientation 5 samples at 1344Hz with 10-bit resolutionThat's expected. If you reset an expansion board without also resetting the main board, then the configuration of the expansion board is lost. So when the main board tries to delete heaters, sensors etc. so that it can recreate them, the expansion board replies that it doesn't know about them.
Remove the M999 B121 command from your config.g file.
-
@dc42 Thanks for pointing that out, commenting the toolboard reset does indeed remove the input handle errors; if the input handle error is the worst that happens, though, I might just keep it in there, as I added the toolboard reset to deal with the issue I posted about here: https://forum.duet3d.com/topic/22612/mini5-and-1lc-revealed-minor-firmware-default-config-bug . Though now that you've explained more about the boot/definition process, the actual issue from that post might be that the M950 command isn't correctly deleting the manually defined pins on the toolboard...
Removing the toolboard reset did not resolve the M956 error, however - same result:
5/21/2021, 8:49:09 AM G1 X-50 G4 S2 M956 P121.0 S1000 A0 G4 P10 G1 X50 F20000 Error: M956: Accelerometer not found
Accelerometer is still detected by the M122 B121:
5/21/2021, 8:57:39 AM M122 B121 Diagnostics for board 121: Duet TOOL1LC firmware version 3.3RC2 (2021-05-11 14:59:50) Bootloader ID: SAMC21 bootloader version 2.3 (2021-01-26b1) Never used RAM 3140, free system stack 0 words Tasks: Move(notifyWait,0.2%,147) HEAT(delaying,29.7%,81) CanAsync(notifyWait,0.0%,66) CanRecv(notifyWait,1.9%,79) CanClock(notifyWait,2.8%,66) ACCEL(notifyWait,0.0%,61) TMC(notifyWait,139.2%,57) MAIN(running,55.7%,349) IDLE(ready,0.0%,26) AIN(delaying,17.5%,62), total 247.1% Last reset 164:55:34 ago, cause: software Last software reset data not available Driver 0: position 0, 80.0 steps/mm, standstill, SG min/max 0/0, read errors 0, write errors 1, ifcnt 79, reads 53027, writes 9, timeouts 288, DMA errors 0, failedOp 0x72, steps req 0 done 0 Moves scheduled 0, completed 0, in progress 0, hiccups 0, step errors 0, maxPrep 0, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0 Peak sync jitter 12, peak Rx sync delay 594, resyncs 803, no step interrupt scheduled VIN: 24.4V MCU temperature: min 35.0C, current 37.8C, max 46.9C Ticks since heat task active 70, ADC conversions started 593734064, completed 593734063, timed out 0, errs 0 Last sensors broadcast 0x00000002 found 1 75 ticks ago, loop time 0 CAN messages queued 7124992, send timeouts 0, received 5343723, lost 0, free buffers 36, min 36, error reg 110000 dup 0, oos 0, bm 0, wbm 0 Accelerometer detected: yes, status: 00 I2C bus errors 0, naks 0, other errors 0
I'm not sure if you saw above, but I am running in SBC mode - does the accelerometer tuning work in SBC mode on this firmware set?
5/21/2021, 9:00:51 AM M115 B121 Duet TOOL1LC firmware version 3.3RC2 (2021-05-11 14:59:50) 5/21/2021, 9:00:48 AM M115 FIRMWARE_NAME: RepRapFirmware for Duet 3 Mini 5+ FIRMWARE_VERSION: 3.3RC2 ELECTRONICS: Duet 3 Mini5plus Ethernet FIRMWARE_DATE: 2021-05-11 14:55:40
-
@mgjosh the "Accelerometer not found" error is because you are running in SBC mode. That is fixed in the imminent 3.3RC3 release. However, you will still need to be in standalone mode to collect accelerometer data.
-