Skip to content

add 3-phase; add interrupt method/flag; add yield #37

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 11 commits into
base: master
Choose a base branch
from

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