I've upgraded my board to SKR1.4 Turbo with RepRap firmware. Everything works, but motors move double the request. M112
reports them as 'no-driver-detected'.
M112
=== Diagnostics ===
RepRapFirmware for LPC176x based Boards (biquskr_1.4) version 3.2.2_2 running on LPC176x at 120Mhz
Used output buffers: 3 of 16 (16 max)
=== RTOS ===
Static ram: 4956
Dynamic Memory (RTOS Heap 5): 8232 free, 8192 never used
Allocations: 188 Frees: 34
Never used RAM 256, free system stack 18 words
Tasks: NETWORK(ready,195) HEAT(blocked,243) MAIN(running,358) IDLE(ready,21)
Owned mutexes: WiFi(NETWORK)
=== Platform ===
Last reset 00:05:40 ago, cause: [software]
Last software reset at 2021-07-06 23:53, reason: User, GCodes spinning, available RAM 80, slot 2
Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00425000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a
Error status: 0x04
Aux0 errors 0,0,0
Supply voltage: under voltage events: 0
Driver 0: position 37762, no-driver-detected
Driver 1: position 37762, no-driver-detected
Driver 2: position 37762, no-driver-detected
Driver 3: position 0, no-driver-detected
Driver 4: position 0
Driver 5: position 0
Driver 6: position 0
Date/time: 2021-07-06 23:59:06
Slowest loop: 9.08ms; fastest: 0.10ms
Step timer: target 197699275 count 340845874 delta -143146599 late 0
USBSerial connected 0
ADC not ready 2 ADC error threshold 10 ADC Init 1
Ints: 0; Calls 0; fast: 4294967295uS; slow 0uS adj 0 bad 0 big delta 0
PWM Channels
Delta -1660064855 Start -1 End -1
=== Storage ===
Free file entries: 6
SD card 0 detected
SD card longest read time 1.5ms, write time 0.0ms, max retries 0
=== Move ===
DMs created 40, maxWait 159279ms, bed compensation in use: none, comp offset 0.000
=== DDARing ===
Scheduled moves 21, completed moves 21, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 12], CDDA state -1
=== Heat ===
Bed heaters = 0, chamberHeaters = -1
=== GCodes ===
Segments left: 0
Movement lock held by null
HTTP 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
Daemon is idle in state(s) 0
Autopause is idle in state(s) 0
Code queue is empty.
=== Network ===
Slowest loop: 191.40ms; fastest: 0.00ms
Responder states: HTTP(2) HTTP(0)
HTTP sessions: 1 of 2
- WiFi -
Network state is active
WiFi module is connected to access point
Failed messages: pending 0, notready 0, noresp 0
WiFi firmware version 1.25-01LE-D
WiFi MAC address 74:59:09:3b:82:bd
WiFi Vcc 2.93, reset reason Turned on by main processor
WiFi flash size 4194304, free heap 36360
WiFi IP address 192.168.0.200
WiFi signal strength -80dBm, mode 802.11n, reconnections 0, sleep mode modem
Clock register 00181001
Socket states: 0 0
But M569
seems to be able to communicate with the drivers:
M569 P0
Drive 0 runs in reverse, active low enable, timing fast, mode stealthChop, ccr 0x00053, toff 3, tblank 0, tpwmthrs 2000 (4.7 mm/sec), pwmScaleSum 0, pwmScaleAuto 0, pwmOfsAuto 0, pwmGradAuto 0, pos 0
M569 P0 D2
M569 P0
Drive 0 runs in reverse, active low enable, timing fast, mode spreadCycle, ccr 0x00053, toff 3, tblank 0, hstart/hend/hdec 5/0/0, pos 0
As you can see, I managed to change the setting from 'stealthChop' to 'spreadCycle'.
I also tried editing the config.g
to check if the stepping is set correctly and, unfortunately, it is.
Both M350 X16 Y16 Z16 E16 I1
and M350 X256 Y256 Z256 E256
make the stepper motors run twice the distance in mm required.
I can fix this problem by setting the steps per mm from 80 to 40, but I always ran 80 and online calculators say that my steps/mm are 80.
Is there something that I missed checking? How is it possible that the motors spin twice the required?