Skip to content

Commit 6f019c0

Browse files
Disable debug printing in processCommand
This runs inside an ISR, and the STM32 Arduino core HardwareSerial does not support printing with interrupts disabled yet. See stm32duino/Arduino_Core_STM32#1418 (comment)
1 parent 324896c commit 6f019c0

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

Diff for: src/Main.cpp

+4-3
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,8 @@ void resetSystem() {
7474

7575
// Note: This runs inside an ISR, so be sure to use volatile and disable
7676
// interrupts elsewhere as appropriate.
77+
// Also, debug prints that fill up the buffer will lock up the
78+
// firmware...
7779
cmd_result processCommand(uint8_t cmd, uint8_t * datain, uint8_t len, uint8_t *dataout, uint8_t maxLen) {
7880
switch (cmd) {
7981
case Commands::GET_LAST_STATUS: {
@@ -95,9 +97,8 @@ cmd_result processCommand(uint8_t cmd, uint8_t * datain, uint8_t len, uint8_t *d
9597
uint16_t speed = datain[0] << 8 | datain[1];
9698
bool enabled = datain[2];
9799
bool reversed = datain[3];
98-
#if defined(ENABLE_SERIAL)
99-
printf("SET_STATE enabled=%u, speed=%u, reversed=%u\n", enabled, speed, reversed);
100-
#endif
100+
//Disabled, locks up ISR
101+
//printf("SET_STATE enabled=%u, speed=%u, reversed=%u\n", enabled, speed, reversed);
101102
stepper.set_speed(speed);
102103
stepper.set_enabled(enabled);
103104
stepper.set_reversed(reversed);

0 commit comments

Comments
 (0)