Skip to content

Conversation

JosephBrendler
Copy link

@JosephBrendler JosephBrendler commented Dec 14, 2022

3-phase motor such as common HDD or FDD motor
Note: tie common wire LOW, or invert control signals and tie common to +V

interrupt() method allows external user code to interrupt long-running otherwise-blocking while() loop in
void Stepper::step(int steps_to_move)

yield() in same while loop avoids WDT-timeout crashes on some controllers, such as Heltec's wifi kit 32

-------------------------------[ outline future example ]---------------------------------

  • Example for three-phase motor, using these changes to follow, by simplification of
    this code which currently also uses OLED display on wifi kit 32.
  • Button-press interrupt handler calls Stepper::interrupt() which sets flag that will stop
    the long-running while() loop in Stepper::step()
  • Note: images.h contains my xbm logo, displayed on OLED initialization

Added example 3-phase pot-adjustable-speed, interruptible stepper in folder
"stepper_3ph_knob_interrupt_oneRevolution"

3-phase motor such as common HDD or FDD motor
  Note: tie common wire LOW, or invert control signals and tie common to +V

interrupt() method allows external user code to interrupt long-running otherwise-blocking while() loop in void Stepper::step(int steps_to_move)

yield() in same while loop avoids WDT-timeout crashes on some controllers, such as Heltec's wifi kit 32
add 3-phase; add interrupt method/flag; add yield
@CLAassistant
Copy link

CLAassistant commented Dec 14, 2022

CLA assistant check
All committers have signed the CLA.

@github-actions
Copy link

Memory usage change @ 1c8624f

Board flash % RAM for global variables %
arduino:avr:leonardo 🔺 +164 - +178 +0.57 - +0.62 🔺 +1 - +1 +0.04 - +0.04
arduino:avr:mega 🔺 +162 - +178 +0.06 - +0.07 🔺 +1 - +1 +0.01 - +0.01
arduino:avr:nano 🔺 +162 - +178 +0.53 - +0.58 🔺 +1 - +1 +0.05 - +0.05
arduino:mbed_nano:nano33ble 🔺 +192 - +256 +0.02 - +0.03 🔺 0 - +8 0.0 - 0.0
arduino:mbed_nano:nanorp2040connect 🔺 +262 - +262 0.0 - 0.0 🔺 +4 - +4 0.0 - 0.0
arduino:mbed_portenta:envie_m4 🔺 +192 - +256 +0.02 - +0.02 🔺 0 - +8 0.0 - 0.0
arduino:mbed_portenta:envie_m7 🔺 +192 - +256 +0.02 - +0.03 🔺 0 - +8 0.0 - 0.0
arduino:megaavr:nona4809 🔺 +188 - +202 +0.38 - +0.41 🔺 +1 - +1 +0.02 - +0.02
arduino:megaavr:uno2018 🔺 +188 - +202 +0.39 - +0.42 🔺 +1 - +1 +0.02 - +0.02
arduino:sam:arduino_due_x_dbg 🔺 +120 - +128 +0.02 - +0.02 N/A N/A
arduino:samd:arduino_zero_edbg 🔺 +140 - +144 +0.05 - +0.05 🔺 +4 - +4 +0.01 - +0.01
arduino:samd:mkrzero 🔺 +140 - +144 +0.05 - +0.05 🔺 +4 - +4 +0.01 - +0.01
arduino:samd:nano_33_iot 🔺 +140 - +144 +0.05 - +0.05 🔺 +4 - +4 +0.01 - +0.01
Click for full report table
Board examples/MotorKnob
flash
% examples/MotorKnob
RAM for global variables
% examples/stepper_oneRevolution
flash
% examples/stepper_oneRevolution
RAM for global variables
% examples/stepper_oneStepAtATime
flash
% examples/stepper_oneStepAtATime
RAM for global variables
% examples/stepper_speedControl
flash
% examples/stepper_speedControl
RAM for global variables
%
arduino:avr:leonardo 164 0.57 1 0.04 178 0.62 1 0.04 170 0.59 1 0.04 164 0.57 1 0.04
arduino:avr:mega 168 0.07 1 0.01 178 0.07 1 0.01 162 0.06 1 0.01 166 0.07 1 0.01
arduino:avr:nano 168 0.55 1 0.05 178 0.58 1 0.05 162 0.53 1 0.05 166 0.54 1 0.05
arduino:mbed_nano:nano33ble 256 0.03 8 0.0 192 0.02 8 0.0 256 0.03 0 0.0 192 0.02 0 0.0
arduino:mbed_nano:nanorp2040connect 262 0.0 4 0.0 262 0.0 4 0.0 262 0.0 4 0.0 262 0.0 4 0.0
arduino:mbed_portenta:envie_m4 256 0.02 0 0.0 192 0.02 8 0.0 256 0.02 0 0.0 256 0.02 8 0.0
arduino:mbed_portenta:envie_m7 256 0.03 0 0.0 192 0.02 8 0.0 256 0.03 0 0.0 192 0.02 8 0.0
arduino:megaavr:nona4809 190 0.39 1 0.02 202 0.41 1 0.02 188 0.38 1 0.02 190 0.39 1 0.02
arduino:megaavr:uno2018 192 0.39 1 0.02 202 0.42 1 0.02 188 0.39 1 0.02 190 0.39 1 0.02
arduino:sam:arduino_due_x_dbg 128 0.02 N/A N/A 128 0.02 N/A N/A 128 0.02 N/A N/A 120 0.02 N/A N/A
arduino:samd:arduino_zero_edbg 140 0.05 4 0.01 140 0.05 4 0.01 144 0.05 4 0.01 140 0.05 4 0.01
arduino:samd:mkrzero 140 0.05 4 0.01 140 0.05 4 0.01 144 0.05 4 0.01 140 0.05 4 0.01
arduino:samd:nano_33_iot 140 0.05 4 0.01 140 0.05 4 0.01 144 0.05 4 0.01 140 0.05 4 0.01
Click for full report CSV
Board,examples/MotorKnob<br>flash,%,examples/MotorKnob<br>RAM for global variables,%,examples/stepper_oneRevolution<br>flash,%,examples/stepper_oneRevolution<br>RAM for global variables,%,examples/stepper_oneStepAtATime<br>flash,%,examples/stepper_oneStepAtATime<br>RAM for global variables,%,examples/stepper_speedControl<br>flash,%,examples/stepper_speedControl<br>RAM for global variables,%
arduino:avr:leonardo,164,0.57,1,0.04,178,0.62,1,0.04,170,0.59,1,0.04,164,0.57,1,0.04
arduino:avr:mega,168,0.07,1,0.01,178,0.07,1,0.01,162,0.06,1,0.01,166,0.07,1,0.01
arduino:avr:nano,168,0.55,1,0.05,178,0.58,1,0.05,162,0.53,1,0.05,166,0.54,1,0.05
arduino:mbed_nano:nano33ble,256,0.03,8,0.0,192,0.02,8,0.0,256,0.03,0,0.0,192,0.02,0,0.0
arduino:mbed_nano:nanorp2040connect,262,0.0,4,0.0,262,0.0,4,0.0,262,0.0,4,0.0,262,0.0,4,0.0
arduino:mbed_portenta:envie_m4,256,0.02,0,0.0,192,0.02,8,0.0,256,0.02,0,0.0,256,0.02,8,0.0
arduino:mbed_portenta:envie_m7,256,0.03,0,0.0,192,0.02,8,0.0,256,0.03,0,0.0,192,0.02,8,0.0
arduino:megaavr:nona4809,190,0.39,1,0.02,202,0.41,1,0.02,188,0.38,1,0.02,190,0.39,1,0.02
arduino:megaavr:uno2018,192,0.39,1,0.02,202,0.42,1,0.02,188,0.39,1,0.02,190,0.39,1,0.02
arduino:sam:arduino_due_x_dbg,128,0.02,N/A,N/A,128,0.02,N/A,N/A,128,0.02,N/A,N/A,120,0.02,N/A,N/A
arduino:samd:arduino_zero_edbg,140,0.05,4,0.01,140,0.05,4,0.01,144,0.05,4,0.01,140,0.05,4,0.01
arduino:samd:mkrzero,140,0.05,4,0.01,140,0.05,4,0.01,144,0.05,4,0.01,140,0.05,4,0.01
arduino:samd:nano_33_iot,140,0.05,4,0.01,140,0.05,4,0.01,144,0.05,4,0.01,140,0.05,4,0.01

@per1234 per1234 added type: enhancement Proposed improvement topic: code Related to content of the project itself labels Dec 14, 2022
@github-actions
Copy link

Memory usage change @ b29ac84

Board flash % RAM for global variables %
arduino:avr:leonardo 🔺 +164 - +178 +0.57 - +0.62 🔺 +1 - +1 +0.04 - +0.04
arduino:avr:mega 🔺 +162 - +178 +0.06 - +0.07 🔺 +1 - +1 +0.01 - +0.01
arduino:avr:nano 🔺 +162 - +178 +0.53 - +0.58 🔺 +1 - +1 +0.05 - +0.05
arduino:mbed_nano:nano33ble 🔺 +192 - +256 +0.02 - +0.03 🔺 0 - +8 0.0 - 0.0
arduino:mbed_nano:nanorp2040connect 🔺 +262 - +262 0.0 - 0.0 🔺 +4 - +4 0.0 - 0.0
arduino:mbed_portenta:envie_m4 🔺 +192 - +256 +0.02 - +0.02 🔺 0 - +8 0.0 - 0.0
arduino:mbed_portenta:envie_m7 🔺 +192 - +256 +0.02 - +0.03 🔺 0 - +8 0.0 - 0.0
arduino:megaavr:nona4809 🔺 +188 - +202 +0.38 - +0.41 🔺 +1 - +1 +0.02 - +0.02
arduino:megaavr:uno2018 🔺 +188 - +202 +0.39 - +0.42 🔺 +1 - +1 +0.02 - +0.02
arduino:sam:arduino_due_x_dbg 🔺 +120 - +128 +0.02 - +0.02 N/A N/A
arduino:samd:arduino_zero_edbg 🔺 +140 - +144 +0.05 - +0.05 🔺 +4 - +4 +0.01 - +0.01
arduino:samd:mkrzero 🔺 +140 - +144 +0.05 - +0.05 🔺 +4 - +4 +0.01 - +0.01
arduino:samd:nano_33_iot 🔺 +140 - +144 +0.05 - +0.05 🔺 +4 - +4 +0.01 - +0.01
Click for full report table
Board examples/MotorKnob
flash
% examples/MotorKnob
RAM for global variables
% examples/stepper_oneRevolution
flash
% examples/stepper_oneRevolution
RAM for global variables
% examples/stepper_oneStepAtATime
flash
% examples/stepper_oneStepAtATime
RAM for global variables
% examples/stepper_speedControl
flash
% examples/stepper_speedControl
RAM for global variables
%
arduino:avr:leonardo 164 0.57 1 0.04 178 0.62 1 0.04 170 0.59 1 0.04 164 0.57 1 0.04
arduino:avr:mega 168 0.07 1 0.01 178 0.07 1 0.01 162 0.06 1 0.01 166 0.07 1 0.01
arduino:avr:nano 168 0.55 1 0.05 178 0.58 1 0.05 162 0.53 1 0.05 166 0.54 1 0.05
arduino:mbed_nano:nano33ble 256 0.03 8 0.0 192 0.02 8 0.0 256 0.03 0 0.0 192 0.02 0 0.0
arduino:mbed_nano:nanorp2040connect 262 0.0 4 0.0 262 0.0 4 0.0 262 0.0 4 0.0 262 0.0 4 0.0
arduino:mbed_portenta:envie_m4 256 0.02 0 0.0 192 0.02 8 0.0 256 0.02 0 0.0 256 0.02 8 0.0
arduino:mbed_portenta:envie_m7 256 0.03 0 0.0 192 0.02 8 0.0 256 0.03 0 0.0 192 0.02 8 0.0
arduino:megaavr:nona4809 190 0.39 1 0.02 202 0.41 1 0.02 188 0.38 1 0.02 190 0.39 1 0.02
arduino:megaavr:uno2018 192 0.39 1 0.02 202 0.42 1 0.02 188 0.39 1 0.02 190 0.39 1 0.02
arduino:sam:arduino_due_x_dbg 128 0.02 N/A N/A 128 0.02 N/A N/A 128 0.02 N/A N/A 120 0.02 N/A N/A
arduino:samd:arduino_zero_edbg 140 0.05 4 0.01 140 0.05 4 0.01 144 0.05 4 0.01 140 0.05 4 0.01
arduino:samd:mkrzero 140 0.05 4 0.01 140 0.05 4 0.01 144 0.05 4 0.01 140 0.05 4 0.01
arduino:samd:nano_33_iot 140 0.05 4 0.01 140 0.05 4 0.01 144 0.05 4 0.01 140 0.05 4 0.01
Click for full report CSV
Board,examples/MotorKnob<br>flash,%,examples/MotorKnob<br>RAM for global variables,%,examples/stepper_oneRevolution<br>flash,%,examples/stepper_oneRevolution<br>RAM for global variables,%,examples/stepper_oneStepAtATime<br>flash,%,examples/stepper_oneStepAtATime<br>RAM for global variables,%,examples/stepper_speedControl<br>flash,%,examples/stepper_speedControl<br>RAM for global variables,%
arduino:avr:leonardo,164,0.57,1,0.04,178,0.62,1,0.04,170,0.59,1,0.04,164,0.57,1,0.04
arduino:avr:mega,168,0.07,1,0.01,178,0.07,1,0.01,162,0.06,1,0.01,166,0.07,1,0.01
arduino:avr:nano,168,0.55,1,0.05,178,0.58,1,0.05,162,0.53,1,0.05,166,0.54,1,0.05
arduino:mbed_nano:nano33ble,256,0.03,8,0.0,192,0.02,8,0.0,256,0.03,0,0.0,192,0.02,0,0.0
arduino:mbed_nano:nanorp2040connect,262,0.0,4,0.0,262,0.0,4,0.0,262,0.0,4,0.0,262,0.0,4,0.0
arduino:mbed_portenta:envie_m4,256,0.02,0,0.0,192,0.02,8,0.0,256,0.02,0,0.0,256,0.02,8,0.0
arduino:mbed_portenta:envie_m7,256,0.03,0,0.0,192,0.02,8,0.0,256,0.03,0,0.0,192,0.02,8,0.0
arduino:megaavr:nona4809,190,0.39,1,0.02,202,0.41,1,0.02,188,0.38,1,0.02,190,0.39,1,0.02
arduino:megaavr:uno2018,192,0.39,1,0.02,202,0.42,1,0.02,188,0.39,1,0.02,190,0.39,1,0.02
arduino:sam:arduino_due_x_dbg,128,0.02,N/A,N/A,128,0.02,N/A,N/A,128,0.02,N/A,N/A,120,0.02,N/A,N/A
arduino:samd:arduino_zero_edbg,140,0.05,4,0.01,140,0.05,4,0.01,144,0.05,4,0.01,140,0.05,4,0.01
arduino:samd:mkrzero,140,0.05,4,0.01,140,0.05,4,0.01,144,0.05,4,0.01,140,0.05,4,0.01
arduino:samd:nano_33_iot,140,0.05,4,0.01,140,0.05,4,0.01,144,0.05,4,0.01,140,0.05,4,0.01

@github-actions
Copy link

Memory usage change @ bca3e16

Board flash % RAM for global variables %
arduino:avr:leonardo 🔺 +164 - +178 +0.57 - +0.62 🔺 +1 - +1 +0.04 - +0.04
arduino:avr:mega 🔺 +162 - +178 +0.06 - +0.07 🔺 +1 - +1 +0.01 - +0.01
arduino:avr:nano 🔺 +162 - +178 +0.53 - +0.58 🔺 +1 - +1 +0.05 - +0.05
arduino:mbed_nano:nano33ble 🔺 +192 - +256 +0.02 - +0.03 🔺 0 - +8 0.0 - 0.0
arduino:mbed_nano:nanorp2040connect 🔺 +262 - +262 0.0 - 0.0 🔺 +4 - +4 0.0 - 0.0
arduino:mbed_portenta:envie_m4 🔺 +192 - +256 +0.02 - +0.02 🔺 0 - +8 0.0 - 0.0
arduino:mbed_portenta:envie_m7 🔺 +192 - +256 +0.02 - +0.03 🔺 0 - +8 0.0 - 0.0
arduino:megaavr:nona4809 🔺 +188 - +202 +0.38 - +0.41 🔺 +1 - +1 +0.02 - +0.02
arduino:megaavr:uno2018 🔺 +188 - +202 +0.39 - +0.42 🔺 +1 - +1 +0.02 - +0.02
arduino:sam:arduino_due_x_dbg 🔺 +120 - +128 +0.02 - +0.02 N/A N/A
arduino:samd:arduino_zero_edbg 🔺 +140 - +144 +0.05 - +0.05 🔺 +4 - +4 +0.01 - +0.01
arduino:samd:mkrzero 🔺 +140 - +144 +0.05 - +0.05 🔺 +4 - +4 +0.01 - +0.01
arduino:samd:nano_33_iot 🔺 +140 - +144 +0.05 - +0.05 🔺 +4 - +4 +0.01 - +0.01
Click for full report table
Board examples/MotorKnob
flash
% examples/MotorKnob
RAM for global variables
% examples/stepper_oneRevolution
flash
% examples/stepper_oneRevolution
RAM for global variables
% examples/stepper_oneStepAtATime
flash
% examples/stepper_oneStepAtATime
RAM for global variables
% examples/stepper_speedControl
flash
% examples/stepper_speedControl
RAM for global variables
%
arduino:avr:leonardo 164 0.57 1 0.04 178 0.62 1 0.04 170 0.59 1 0.04 164 0.57 1 0.04
arduino:avr:mega 168 0.07 1 0.01 178 0.07 1 0.01 162 0.06 1 0.01 166 0.07 1 0.01
arduino:avr:nano 168 0.55 1 0.05 178 0.58 1 0.05 162 0.53 1 0.05 166 0.54 1 0.05
arduino:mbed_nano:nano33ble 256 0.03 8 0.0 192 0.02 8 0.0 256 0.03 0 0.0 192 0.02 0 0.0
arduino:mbed_nano:nanorp2040connect 262 0.0 4 0.0 262 0.0 4 0.0 262 0.0 4 0.0 262 0.0 4 0.0
arduino:mbed_portenta:envie_m4 256 0.02 0 0.0 192 0.02 8 0.0 256 0.02 0 0.0 256 0.02 8 0.0
arduino:mbed_portenta:envie_m7 256 0.03 0 0.0 192 0.02 8 0.0 256 0.03 0 0.0 192 0.02 8 0.0
arduino:megaavr:nona4809 190 0.39 1 0.02 202 0.41 1 0.02 188 0.38 1 0.02 190 0.39 1 0.02
arduino:megaavr:uno2018 192 0.39 1 0.02 202 0.42 1 0.02 188 0.39 1 0.02 190 0.39 1 0.02
arduino:sam:arduino_due_x_dbg 128 0.02 N/A N/A 128 0.02 N/A N/A 128 0.02 N/A N/A 120 0.02 N/A N/A
arduino:samd:arduino_zero_edbg 140 0.05 4 0.01 140 0.05 4 0.01 144 0.05 4 0.01 140 0.05 4 0.01
arduino:samd:mkrzero 140 0.05 4 0.01 140 0.05 4 0.01 144 0.05 4 0.01 140 0.05 4 0.01
arduino:samd:nano_33_iot 140 0.05 4 0.01 140 0.05 4 0.01 144 0.05 4 0.01 140 0.05 4 0.01
Click for full report CSV
Board,examples/MotorKnob<br>flash,%,examples/MotorKnob<br>RAM for global variables,%,examples/stepper_oneRevolution<br>flash,%,examples/stepper_oneRevolution<br>RAM for global variables,%,examples/stepper_oneStepAtATime<br>flash,%,examples/stepper_oneStepAtATime<br>RAM for global variables,%,examples/stepper_speedControl<br>flash,%,examples/stepper_speedControl<br>RAM for global variables,%
arduino:avr:leonardo,164,0.57,1,0.04,178,0.62,1,0.04,170,0.59,1,0.04,164,0.57,1,0.04
arduino:avr:mega,168,0.07,1,0.01,178,0.07,1,0.01,162,0.06,1,0.01,166,0.07,1,0.01
arduino:avr:nano,168,0.55,1,0.05,178,0.58,1,0.05,162,0.53,1,0.05,166,0.54,1,0.05
arduino:mbed_nano:nano33ble,256,0.03,8,0.0,192,0.02,8,0.0,256,0.03,0,0.0,192,0.02,0,0.0
arduino:mbed_nano:nanorp2040connect,262,0.0,4,0.0,262,0.0,4,0.0,262,0.0,4,0.0,262,0.0,4,0.0
arduino:mbed_portenta:envie_m4,256,0.02,0,0.0,192,0.02,8,0.0,256,0.02,0,0.0,256,0.02,8,0.0
arduino:mbed_portenta:envie_m7,256,0.03,0,0.0,192,0.02,8,0.0,256,0.03,0,0.0,192,0.02,8,0.0
arduino:megaavr:nona4809,190,0.39,1,0.02,202,0.41,1,0.02,188,0.38,1,0.02,190,0.39,1,0.02
arduino:megaavr:uno2018,192,0.39,1,0.02,202,0.42,1,0.02,188,0.39,1,0.02,190,0.39,1,0.02
arduino:sam:arduino_due_x_dbg,128,0.02,N/A,N/A,128,0.02,N/A,N/A,128,0.02,N/A,N/A,120,0.02,N/A,N/A
arduino:samd:arduino_zero_edbg,140,0.05,4,0.01,140,0.05,4,0.01,144,0.05,4,0.01,140,0.05,4,0.01
arduino:samd:mkrzero,140,0.05,4,0.01,140,0.05,4,0.01,144,0.05,4,0.01,140,0.05,4,0.01
arduino:samd:nano_33_iot,140,0.05,4,0.01,140,0.05,4,0.01,144,0.05,4,0.01,140,0.05,4,0.01

@github-actions
Copy link

Memory usage change @ 01dee92

Board flash % RAM for global variables %
arduino:avr:leonardo 🔺 +164 - +178 +0.57 - +0.62 🔺 +1 - +1 +0.04 - +0.04
arduino:avr:mega 🔺 +162 - +178 +0.06 - +0.07 🔺 +1 - +1 +0.01 - +0.01
arduino:avr:nano 🔺 +162 - +178 +0.53 - +0.58 🔺 +1 - +1 +0.05 - +0.05
arduino:mbed_nano:nano33ble 🔺 +192 - +256 +0.02 - +0.03 🔺 0 - +8 0.0 - 0.0
arduino:mbed_nano:nanorp2040connect 🔺 +262 - +262 0.0 - 0.0 🔺 +4 - +4 0.0 - 0.0
arduino:mbed_portenta:envie_m4 🔺 +192 - +256 +0.02 - +0.02 🔺 0 - +8 0.0 - 0.0
arduino:mbed_portenta:envie_m7 🔺 +192 - +256 +0.02 - +0.03 🔺 0 - +8 0.0 - 0.0
arduino:megaavr:nona4809 🔺 +188 - +202 +0.38 - +0.41 🔺 +1 - +1 +0.02 - +0.02
arduino:megaavr:uno2018 🔺 +188 - +202 +0.39 - +0.42 🔺 +1 - +1 +0.02 - +0.02
arduino:sam:arduino_due_x_dbg 🔺 +120 - +128 +0.02 - +0.02 N/A N/A
arduino:samd:arduino_zero_edbg 🔺 +140 - +144 +0.05 - +0.05 🔺 +4 - +4 +0.01 - +0.01
arduino:samd:mkrzero 🔺 +140 - +144 +0.05 - +0.05 🔺 +4 - +4 +0.01 - +0.01
arduino:samd:nano_33_iot 🔺 +140 - +144 +0.05 - +0.05 🔺 +4 - +4 +0.01 - +0.01
Click for full report table
Board examples/MotorKnob
flash
% examples/MotorKnob
RAM for global variables
% examples/stepper_3ph_knob_interrupt_oneRevolution
flash
% examples/stepper_3ph_knob_interrupt_oneRevolution
RAM for global variables
% examples/stepper_oneRevolution
flash
% examples/stepper_oneRevolution
RAM for global variables
% examples/stepper_oneStepAtATime
flash
% examples/stepper_oneStepAtATime
RAM for global variables
% examples/stepper_speedControl
flash
% examples/stepper_speedControl
RAM for global variables
%
arduino:avr:leonardo 164 0.57 1 0.04 N/A N/A N/A N/A 178 0.62 1 0.04 170 0.59 1 0.04 164 0.57 1 0.04
arduino:avr:mega 168 0.07 1 0.01 N/A N/A N/A N/A 178 0.07 1 0.01 162 0.06 1 0.01 166 0.07 1 0.01
arduino:avr:nano 168 0.55 1 0.05 N/A N/A N/A N/A 178 0.58 1 0.05 162 0.53 1 0.05 166 0.54 1 0.05
arduino:mbed_nano:nano33ble 256 0.03 8 0.0 N/A N/A N/A N/A 192 0.02 8 0.0 256 0.03 0 0.0 192 0.02 0 0.0
arduino:mbed_nano:nanorp2040connect 262 0.0 4 0.0 N/A N/A N/A N/A 262 0.0 4 0.0 262 0.0 4 0.0 262 0.0 4 0.0
arduino:mbed_portenta:envie_m4 256 0.02 0 0.0 N/A N/A N/A N/A 192 0.02 8 0.0 256 0.02 0 0.0 256 0.02 8 0.0
arduino:mbed_portenta:envie_m7 256 0.03 0 0.0 N/A N/A N/A N/A 192 0.02 8 0.0 256 0.03 0 0.0 192 0.02 8 0.0
arduino:megaavr:nona4809 190 0.39 1 0.02 N/A N/A N/A N/A 202 0.41 1 0.02 188 0.38 1 0.02 190 0.39 1 0.02
arduino:megaavr:uno2018 192 0.39 1 0.02 N/A N/A N/A N/A 202 0.42 1 0.02 188 0.39 1 0.02 190 0.39 1 0.02
arduino:sam:arduino_due_x_dbg 128 0.02 N/A N/A N/A N/A N/A N/A 128 0.02 N/A N/A 128 0.02 N/A N/A 120 0.02 N/A N/A
arduino:samd:arduino_zero_edbg 140 0.05 4 0.01 N/A N/A N/A N/A 140 0.05 4 0.01 144 0.05 4 0.01 140 0.05 4 0.01
arduino:samd:mkrzero 140 0.05 4 0.01 N/A N/A N/A N/A 140 0.05 4 0.01 144 0.05 4 0.01 140 0.05 4 0.01
arduino:samd:nano_33_iot 140 0.05 4 0.01 N/A N/A N/A N/A 140 0.05 4 0.01 144 0.05 4 0.01 140 0.05 4 0.01
Click for full report CSV
Board,examples/MotorKnob<br>flash,%,examples/MotorKnob<br>RAM for global variables,%,examples/stepper_3ph_knob_interrupt_oneRevolution<br>flash,%,examples/stepper_3ph_knob_interrupt_oneRevolution<br>RAM for global variables,%,examples/stepper_oneRevolution<br>flash,%,examples/stepper_oneRevolution<br>RAM for global variables,%,examples/stepper_oneStepAtATime<br>flash,%,examples/stepper_oneStepAtATime<br>RAM for global variables,%,examples/stepper_speedControl<br>flash,%,examples/stepper_speedControl<br>RAM for global variables,%
arduino:avr:leonardo,164,0.57,1,0.04,N/A,N/A,N/A,N/A,178,0.62,1,0.04,170,0.59,1,0.04,164,0.57,1,0.04
arduino:avr:mega,168,0.07,1,0.01,N/A,N/A,N/A,N/A,178,0.07,1,0.01,162,0.06,1,0.01,166,0.07,1,0.01
arduino:avr:nano,168,0.55,1,0.05,N/A,N/A,N/A,N/A,178,0.58,1,0.05,162,0.53,1,0.05,166,0.54,1,0.05
arduino:mbed_nano:nano33ble,256,0.03,8,0.0,N/A,N/A,N/A,N/A,192,0.02,8,0.0,256,0.03,0,0.0,192,0.02,0,0.0
arduino:mbed_nano:nanorp2040connect,262,0.0,4,0.0,N/A,N/A,N/A,N/A,262,0.0,4,0.0,262,0.0,4,0.0,262,0.0,4,0.0
arduino:mbed_portenta:envie_m4,256,0.02,0,0.0,N/A,N/A,N/A,N/A,192,0.02,8,0.0,256,0.02,0,0.0,256,0.02,8,0.0
arduino:mbed_portenta:envie_m7,256,0.03,0,0.0,N/A,N/A,N/A,N/A,192,0.02,8,0.0,256,0.03,0,0.0,192,0.02,8,0.0
arduino:megaavr:nona4809,190,0.39,1,0.02,N/A,N/A,N/A,N/A,202,0.41,1,0.02,188,0.38,1,0.02,190,0.39,1,0.02
arduino:megaavr:uno2018,192,0.39,1,0.02,N/A,N/A,N/A,N/A,202,0.42,1,0.02,188,0.39,1,0.02,190,0.39,1,0.02
arduino:sam:arduino_due_x_dbg,128,0.02,N/A,N/A,N/A,N/A,N/A,N/A,128,0.02,N/A,N/A,128,0.02,N/A,N/A,120,0.02,N/A,N/A
arduino:samd:arduino_zero_edbg,140,0.05,4,0.01,N/A,N/A,N/A,N/A,140,0.05,4,0.01,144,0.05,4,0.01,140,0.05,4,0.01
arduino:samd:mkrzero,140,0.05,4,0.01,N/A,N/A,N/A,N/A,140,0.05,4,0.01,144,0.05,4,0.01,140,0.05,4,0.01
arduino:samd:nano_33_iot,140,0.05,4,0.01,N/A,N/A,N/A,N/A,140,0.05,4,0.01,144,0.05,4,0.01,140,0.05,4,0.01

Copy link

Memory usage change @ 1d49699

Board flash % RAM for global variables %
arduino:avr:leonardo 🔺 +164 - +178 +0.57 - +0.62 🔺 +1 - +1 +0.04 - +0.04
arduino:avr:mega 🔺 +162 - +178 +0.06 - +0.07 🔺 +1 - +1 +0.01 - +0.01
arduino:avr:nano 🔺 +166 - +178 +0.54 - +0.58 🔺 +1 - +1 +0.05 - +0.05
arduino:mbed_nano:nano33ble 🔺 +128 - +192 +0.01 - +0.02 🔺 0 - +8 0.0 - 0.0
arduino:mbed_nano:nanorp2040connect 🔺 +142 - +142 0.0 - 0.0 🔺 0 - +8 0.0 - 0.0
arduino:mbed_portenta:envie_m7 N/A N/A N/A N/A
arduino:mbed_portenta:envie_m7:target_core=cm4 N/A N/A N/A N/A
arduino:megaavr:nona4809 🔺 +188 - +202 +0.38 - +0.41 🔺 +1 - +1 +0.02 - +0.02
arduino:megaavr:uno2018 🔺 +188 - +202 +0.39 - +0.42 🔺 +1 - +1 +0.02 - +0.02
arduino:sam:arduino_due_x_dbg 🔺 +120 - +128 +0.02 - +0.02 N/A N/A
arduino:samd:arduino_zero_edbg 🔺 +140 - +144 +0.05 - +0.05 🔺 +4 - +4 +0.01 - +0.01
arduino:samd:mkrzero 🔺 +140 - +144 +0.05 - +0.05 🔺 +4 - +4 +0.01 - +0.01
arduino:samd:nano_33_iot 🔺 +140 - +144 +0.05 - +0.05 🔺 +4 - +4 +0.01 - +0.01
Click for full report table
Board examples/MotorKnob
flash
% examples/MotorKnob
RAM for global variables
% examples/stepper_3ph_knob_interrupt_oneRevolution
flash
% examples/stepper_3ph_knob_interrupt_oneRevolution
RAM for global variables
% examples/stepper_oneRevolution
flash
% examples/stepper_oneRevolution
RAM for global variables
% examples/stepper_oneStepAtATime
flash
% examples/stepper_oneStepAtATime
RAM for global variables
% examples/stepper_speedControl
flash
% examples/stepper_speedControl
RAM for global variables
%
arduino:avr:leonardo 164 0.57 1 0.04 N/A N/A N/A N/A 178 0.62 1 0.04 166 0.58 1 0.04 164 0.57 1 0.04
arduino:avr:mega 168 0.07 1 0.01 N/A N/A N/A N/A 178 0.07 1 0.01 162 0.06 1 0.01 166 0.07 1 0.01
arduino:avr:nano 168 0.55 1 0.05 N/A N/A N/A N/A 178 0.58 1 0.05 166 0.54 1 0.05 166 0.54 1 0.05
arduino:mbed_nano:nano33ble 128 0.01 8 0.0 N/A N/A N/A N/A 128 0.01 8 0.0 192 0.02 0 0.0 128 0.01 0 0.0
arduino:mbed_nano:nanorp2040connect 142 0.0 8 0.0 N/A N/A N/A N/A 142 0.0 0 0.0 142 0.0 8 0.0 142 0.0 0 0.0
arduino:mbed_portenta:envie_m7 N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A
arduino:mbed_portenta:envie_m7:target_core=cm4 N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A
arduino:megaavr:nona4809 190 0.39 1 0.02 N/A N/A N/A N/A 202 0.41 1 0.02 188 0.38 1 0.02 190 0.39 1 0.02
arduino:megaavr:uno2018 192 0.39 1 0.02 N/A N/A N/A N/A 202 0.42 1 0.02 188 0.39 1 0.02 190 0.39 1 0.02
arduino:sam:arduino_due_x_dbg 128 0.02 N/A N/A N/A N/A N/A N/A 128 0.02 N/A N/A 128 0.02 N/A N/A 120 0.02 N/A N/A
arduino:samd:arduino_zero_edbg 140 0.05 4 0.01 N/A N/A N/A N/A 140 0.05 4 0.01 144 0.05 4 0.01 140 0.05 4 0.01
arduino:samd:mkrzero 140 0.05 4 0.01 N/A N/A N/A N/A 140 0.05 4 0.01 144 0.05 4 0.01 140 0.05 4 0.01
arduino:samd:nano_33_iot 140 0.05 4 0.01 N/A N/A N/A N/A 140 0.05 4 0.01 144 0.05 4 0.01 140 0.05 4 0.01
Click for full report CSV
Board,examples/MotorKnob<br>flash,%,examples/MotorKnob<br>RAM for global variables,%,examples/stepper_3ph_knob_interrupt_oneRevolution<br>flash,%,examples/stepper_3ph_knob_interrupt_oneRevolution<br>RAM for global variables,%,examples/stepper_oneRevolution<br>flash,%,examples/stepper_oneRevolution<br>RAM for global variables,%,examples/stepper_oneStepAtATime<br>flash,%,examples/stepper_oneStepAtATime<br>RAM for global variables,%,examples/stepper_speedControl<br>flash,%,examples/stepper_speedControl<br>RAM for global variables,%
arduino:avr:leonardo,164,0.57,1,0.04,N/A,N/A,N/A,N/A,178,0.62,1,0.04,166,0.58,1,0.04,164,0.57,1,0.04
arduino:avr:mega,168,0.07,1,0.01,N/A,N/A,N/A,N/A,178,0.07,1,0.01,162,0.06,1,0.01,166,0.07,1,0.01
arduino:avr:nano,168,0.55,1,0.05,N/A,N/A,N/A,N/A,178,0.58,1,0.05,166,0.54,1,0.05,166,0.54,1,0.05
arduino:mbed_nano:nano33ble,128,0.01,8,0.0,N/A,N/A,N/A,N/A,128,0.01,8,0.0,192,0.02,0,0.0,128,0.01,0,0.0
arduino:mbed_nano:nanorp2040connect,142,0.0,8,0.0,N/A,N/A,N/A,N/A,142,0.0,0,0.0,142,0.0,8,0.0,142,0.0,0,0.0
arduino:mbed_portenta:envie_m7,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A
arduino:mbed_portenta:envie_m7:target_core=cm4,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A
arduino:megaavr:nona4809,190,0.39,1,0.02,N/A,N/A,N/A,N/A,202,0.41,1,0.02,188,0.38,1,0.02,190,0.39,1,0.02
arduino:megaavr:uno2018,192,0.39,1,0.02,N/A,N/A,N/A,N/A,202,0.42,1,0.02,188,0.39,1,0.02,190,0.39,1,0.02
arduino:sam:arduino_due_x_dbg,128,0.02,N/A,N/A,N/A,N/A,N/A,N/A,128,0.02,N/A,N/A,128,0.02,N/A,N/A,120,0.02,N/A,N/A
arduino:samd:arduino_zero_edbg,140,0.05,4,0.01,N/A,N/A,N/A,N/A,140,0.05,4,0.01,144,0.05,4,0.01,140,0.05,4,0.01
arduino:samd:mkrzero,140,0.05,4,0.01,N/A,N/A,N/A,N/A,140,0.05,4,0.01,144,0.05,4,0.01,140,0.05,4,0.01
arduino:samd:nano_33_iot,140,0.05,4,0.01,N/A,N/A,N/A,N/A,140,0.05,4,0.01,144,0.05,4,0.01,140,0.05,4,0.01

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
topic: code Related to content of the project itself type: enhancement Proposed improvement
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants