Skip to content
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

Fix bug in analogWrite when accessing 16 bit register #94

Merged
merged 2 commits into from
Oct 14, 2021

Conversation

landret
Copy link
Contributor

@landret landret commented Dec 29, 2020

This fix solves bug #91 which only affects timer B.

I also added a save/clear/restore interrupt flag sequence for timer A around the non-atomic 16-bit write operation, to avoid data corruption if an interrupt occurs when writing the 16-bit register.

@github-actions
Copy link

Memory usage change @ c68af81

Board flash % RAM for global variables %
arduino:megaavr:nona4809 🔺 0 - +18 0.0 - +0.04 0 - 0 0.0 - 0.0
arduino:megaavr:uno2018:mode=off 🔺 0 - +18 0.0 - +0.04 0 - 0 0.0 - 0.0
arduino:megaavr:uno2018:mode=on 🔺 0 - +18 0.0 - +0.04 0 - 0 0.0 - 0.0
Click for full report table
Board extras/examples/01.Basics/AnalogReadSerial
flash
% extras/examples/01.Basics/AnalogReadSerial
RAM for global variables
% extras/examples/01.Basics/BareMinimum
flash
% extras/examples/01.Basics/BareMinimum
RAM for global variables
% extras/examples/01.Basics/Blink
flash
% extras/examples/01.Basics/Blink
RAM for global variables
% extras/examples/01.Basics/DigitalReadSerial
flash
% extras/examples/01.Basics/DigitalReadSerial
RAM for global variables
% extras/examples/01.Basics/Fade
flash
% extras/examples/01.Basics/Fade
RAM for global variables
% extras/examples/01.Basics/ReadAnalogVoltage
flash
% extras/examples/01.Basics/ReadAnalogVoltage
RAM for global variables
% extras/examples/02.Digital/BlinkWithoutDelay
flash
% extras/examples/02.Digital/BlinkWithoutDelay
RAM for global variables
% extras/examples/02.Digital/Button
flash
% extras/examples/02.Digital/Button
RAM for global variables
% extras/examples/02.Digital/Debounce
flash
% extras/examples/02.Digital/Debounce
RAM for global variables
% extras/examples/02.Digital/DigitalInputPullup
flash
% extras/examples/02.Digital/DigitalInputPullup
RAM for global variables
% extras/examples/02.Digital/StateChangeDetection
flash
% extras/examples/02.Digital/StateChangeDetection
RAM for global variables
% extras/examples/02.Digital/toneKeyboard
flash
% extras/examples/02.Digital/toneKeyboard
RAM for global variables
% extras/examples/02.Digital/toneMelody
flash
% extras/examples/02.Digital/toneMelody
RAM for global variables
% extras/examples/02.Digital/toneMultiple
flash
% extras/examples/02.Digital/toneMultiple
RAM for global variables
% extras/examples/02.Digital/tonePitchFollower
flash
% extras/examples/02.Digital/tonePitchFollower
RAM for global variables
% extras/examples/03.Analog/AnalogInOutSerial
flash
% extras/examples/03.Analog/AnalogInOutSerial
RAM for global variables
% extras/examples/03.Analog/AnalogInput
flash
% extras/examples/03.Analog/AnalogInput
RAM for global variables
% extras/examples/03.Analog/AnalogWriteMega
flash
% extras/examples/03.Analog/AnalogWriteMega
RAM for global variables
% extras/examples/03.Analog/Calibration
flash
% extras/examples/03.Analog/Calibration
RAM for global variables
% extras/examples/03.Analog/Fading
flash
% extras/examples/03.Analog/Fading
RAM for global variables
% extras/examples/03.Analog/Smoothing
flash
% extras/examples/03.Analog/Smoothing
RAM for global variables
% extras/examples/04.Communication/ASCIITable
flash
% extras/examples/04.Communication/ASCIITable
RAM for global variables
% extras/examples/04.Communication/Dimmer
flash
% extras/examples/04.Communication/Dimmer
RAM for global variables
% extras/examples/04.Communication/Graph
flash
% extras/examples/04.Communication/Graph
RAM for global variables
% extras/examples/04.Communication/Midi
flash
% extras/examples/04.Communication/Midi
RAM for global variables
% extras/examples/04.Communication/MultiSerial
flash
% extras/examples/04.Communication/MultiSerial
RAM for global variables
% extras/examples/04.Communication/PhysicalPixel
flash
% extras/examples/04.Communication/PhysicalPixel
RAM for global variables
% extras/examples/04.Communication/ReadASCIIString
flash
% extras/examples/04.Communication/ReadASCIIString
RAM for global variables
% extras/examples/04.Communication/SerialCallResponse
flash
% extras/examples/04.Communication/SerialCallResponse
RAM for global variables
% extras/examples/04.Communication/SerialCallResponseASCII
flash
% extras/examples/04.Communication/SerialCallResponseASCII
RAM for global variables
% extras/examples/04.Communication/SerialEvent
flash
% extras/examples/04.Communication/SerialEvent
RAM for global variables
% extras/examples/04.Communication/SerialPassthrough
flash
% extras/examples/04.Communication/SerialPassthrough
RAM for global variables
% extras/examples/04.Communication/VirtualColorMixer
flash
% extras/examples/04.Communication/VirtualColorMixer
RAM for global variables
% extras/examples/05.Control/Arrays
flash
% extras/examples/05.Control/Arrays
RAM for global variables
% extras/examples/05.Control/ForLoopIteration
flash
% extras/examples/05.Control/ForLoopIteration
RAM for global variables
% extras/examples/05.Control/IfStatementConditional
flash
% extras/examples/05.Control/IfStatementConditional
RAM for global variables
% extras/examples/05.Control/WhileStatementConditional
flash
% extras/examples/05.Control/WhileStatementConditional
RAM for global variables
% extras/examples/05.Control/switchCase
flash
% extras/examples/05.Control/switchCase
RAM for global variables
% extras/examples/05.Control/switchCase2
flash
% extras/examples/05.Control/switchCase2
RAM for global variables
% extras/examples/06.Sensors/ADXL3xx
flash
% extras/examples/06.Sensors/ADXL3xx
RAM for global variables
% extras/examples/06.Sensors/Knock
flash
% extras/examples/06.Sensors/Knock
RAM for global variables
% extras/examples/06.Sensors/Memsic2125
flash
% extras/examples/06.Sensors/Memsic2125
RAM for global variables
% extras/examples/06.Sensors/Ping
flash
% extras/examples/06.Sensors/Ping
RAM for global variables
% extras/examples/07.Display/RowColumnScanning
flash
% extras/examples/07.Display/RowColumnScanning
RAM for global variables
% extras/examples/07.Display/barGraph
flash
% extras/examples/07.Display/barGraph
RAM for global variables
% extras/examples/08.Strings/CharacterAnalysis
flash
% extras/examples/08.Strings/CharacterAnalysis
RAM for global variables
% extras/examples/08.Strings/StringAdditionOperator
flash
% extras/examples/08.Strings/StringAdditionOperator
RAM for global variables
% extras/examples/08.Strings/StringAppendOperator
flash
% extras/examples/08.Strings/StringAppendOperator
RAM for global variables
% extras/examples/08.Strings/StringCaseChanges
flash
% extras/examples/08.Strings/StringCaseChanges
RAM for global variables
% extras/examples/08.Strings/StringCharacters
flash
% extras/examples/08.Strings/StringCharacters
RAM for global variables
% extras/examples/08.Strings/StringComparisonOperators
flash
% extras/examples/08.Strings/StringComparisonOperators
RAM for global variables
% extras/examples/08.Strings/StringConstructors
flash
% extras/examples/08.Strings/StringConstructors
RAM for global variables
% extras/examples/08.Strings/StringIndexOf
flash
% extras/examples/08.Strings/StringIndexOf
RAM for global variables
% extras/examples/08.Strings/StringLength
flash
% extras/examples/08.Strings/StringLength
RAM for global variables
% extras/examples/08.Strings/StringLengthTrim
flash
% extras/examples/08.Strings/StringLengthTrim
RAM for global variables
% extras/examples/08.Strings/StringReplace
flash
% extras/examples/08.Strings/StringReplace
RAM for global variables
% extras/examples/08.Strings/StringStartsWithEndsWith
flash
% extras/examples/08.Strings/StringStartsWithEndsWith
RAM for global variables
% extras/examples/08.Strings/StringSubstring
flash
% extras/examples/08.Strings/StringSubstring
RAM for global variables
% extras/examples/08.Strings/StringToInt
flash
% extras/examples/08.Strings/StringToInt
RAM for global variables
% extras/examples/10.StarterKit_BasicKit/p02_SpaceshipInterface
flash
% extras/examples/10.StarterKit_BasicKit/p02_SpaceshipInterface
RAM for global variables
% extras/examples/10.StarterKit_BasicKit/p03_LoveOMeter
flash
% extras/examples/10.StarterKit_BasicKit/p03_LoveOMeter
RAM for global variables
% extras/examples/10.StarterKit_BasicKit/p04_ColorMixingLamp
flash
% extras/examples/10.StarterKit_BasicKit/p04_ColorMixingLamp
RAM for global variables
% extras/examples/10.StarterKit_BasicKit/p05_ServoMoodIndicator
flash
% extras/examples/10.StarterKit_BasicKit/p05_ServoMoodIndicator
RAM for global variables
% extras/examples/10.StarterKit_BasicKit/p06_LightTheremin
flash
% extras/examples/10.StarterKit_BasicKit/p06_LightTheremin
RAM for global variables
% extras/examples/10.StarterKit_BasicKit/p07_Keyboard
flash
% extras/examples/10.StarterKit_BasicKit/p07_Keyboard
RAM for global variables
% extras/examples/10.StarterKit_BasicKit/p08_DigitalHourglass
flash
% extras/examples/10.StarterKit_BasicKit/p08_DigitalHourglass
RAM for global variables
% extras/examples/10.StarterKit_BasicKit/p09_MotorizedPinwheel
flash
% extras/examples/10.StarterKit_BasicKit/p09_MotorizedPinwheel
RAM for global variables
% extras/examples/10.StarterKit_BasicKit/p10_Zoetrope
flash
% extras/examples/10.StarterKit_BasicKit/p10_Zoetrope
RAM for global variables
% extras/examples/10.StarterKit_BasicKit/p12_KnockLock
flash
% extras/examples/10.StarterKit_BasicKit/p12_KnockLock
RAM for global variables
% extras/examples/10.StarterKit_BasicKit/p14_TweakTheArduinoLogo
flash
% extras/examples/10.StarterKit_BasicKit/p14_TweakTheArduinoLogo
RAM for global variables
% extras/examples/10.StarterKit_BasicKit/p15_HackingButtons
flash
% extras/examples/10.StarterKit_BasicKit/p15_HackingButtons
RAM for global variables
% extras/examples/11.ArduinoISP/ArduinoISP
flash
% extras/examples/11.ArduinoISP/ArduinoISP
RAM for global variables
% libraries/Wire/examples/SFRRanger_reader
flash
% libraries/Wire/examples/SFRRanger_reader
RAM for global variables
% libraries/Wire/examples/digital_potentiometer
flash
% libraries/Wire/examples/digital_potentiometer
RAM for global variables
% libraries/Wire/examples/master_reader
flash
% libraries/Wire/examples/master_reader
RAM for global variables
% libraries/Wire/examples/master_writer
flash
% libraries/Wire/examples/master_writer
RAM for global variables
% libraries/Wire/examples/slave_receiver
flash
% libraries/Wire/examples/slave_receiver
RAM for global variables
% libraries/Wire/examples/slave_sender
flash
% libraries/Wire/examples/slave_sender
RAM for global variables
% libraries/SPI/examples/BarometricPressureSensor
flash
% libraries/SPI/examples/BarometricPressureSensor
RAM for global variables
% libraries/SPI/examples/DigitalPotControl
flash
% libraries/SPI/examples/DigitalPotControl
RAM for global variables
% libraries/SoftwareSerial/examples/SoftwareSerialExample
flash
% libraries/SoftwareSerial/examples/SoftwareSerialExample
RAM for global variables
% libraries/SoftwareSerial/examples/TwoPortReceive
flash
% libraries/SoftwareSerial/examples/TwoPortReceive
RAM for global variables
% libraries/EEPROM/examples/eeprom_clear
flash
% libraries/EEPROM/examples/eeprom_clear
RAM for global variables
% libraries/EEPROM/examples/eeprom_crc
flash
% libraries/EEPROM/examples/eeprom_crc
RAM for global variables
% libraries/EEPROM/examples/eeprom_get
flash
% libraries/EEPROM/examples/eeprom_get
RAM for global variables
% libraries/EEPROM/examples/eeprom_iteration
flash
% libraries/EEPROM/examples/eeprom_iteration
RAM for global variables
% libraries/EEPROM/examples/eeprom_put
flash
% libraries/EEPROM/examples/eeprom_put
RAM for global variables
% libraries/EEPROM/examples/eeprom_read
flash
% libraries/EEPROM/examples/eeprom_read
RAM for global variables
% libraries/EEPROM/examples/eeprom_update
flash
% libraries/EEPROM/examples/eeprom_update
RAM for global variables
% libraries/EEPROM/examples/eeprom_write
flash
% libraries/EEPROM/examples/eeprom_write
RAM for global variables
% /github/home/Arduino/libraries/Servo/examples/Knob
flash
% /github/home/Arduino/libraries/Servo/examples/Knob
RAM for global variables
% /github/home/Arduino/libraries/Servo/examples/Sweep
flash
% /github/home/Arduino/libraries/Servo/examples/Sweep
RAM for global variables
% /github/home/Arduino/libraries/LiquidCrystal/examples/Autoscroll
flash
% /github/home/Arduino/libraries/LiquidCrystal/examples/Autoscroll
RAM for global variables
% /github/home/Arduino/libraries/LiquidCrystal/examples/Blink
flash
% /github/home/Arduino/libraries/LiquidCrystal/examples/Blink
RAM for global variables
% /github/home/Arduino/libraries/LiquidCrystal/examples/Cursor
flash
% /github/home/Arduino/libraries/LiquidCrystal/examples/Cursor
RAM for global variables
% /github/home/Arduino/libraries/LiquidCrystal/examples/CustomCharacter
flash
% /github/home/Arduino/libraries/LiquidCrystal/examples/CustomCharacter
RAM for global variables
% /github/home/Arduino/libraries/LiquidCrystal/examples/Display
flash
% /github/home/Arduino/libraries/LiquidCrystal/examples/Display
RAM for global variables
% /github/home/Arduino/libraries/LiquidCrystal/examples/HelloWorld
flash
% /github/home/Arduino/libraries/LiquidCrystal/examples/HelloWorld
RAM for global variables
% /github/home/Arduino/libraries/LiquidCrystal/examples/Scroll
flash
% /github/home/Arduino/libraries/LiquidCrystal/examples/Scroll
RAM for global variables
% /github/home/Arduino/libraries/LiquidCrystal/examples/SerialDisplay
flash
% /github/home/Arduino/libraries/LiquidCrystal/examples/SerialDisplay
RAM for global variables
% /github/home/Arduino/libraries/LiquidCrystal/examples/TextDirection
flash
% /github/home/Arduino/libraries/LiquidCrystal/examples/TextDirection
RAM for global variables
% /github/home/Arduino/libraries/LiquidCrystal/examples/setCursor
flash
% /github/home/Arduino/libraries/LiquidCrystal/examples/setCursor
RAM for global variables
% /github/home/Arduino/libraries/MFRC522/examples/AccessControl
flash
% /github/home/Arduino/libraries/MFRC522/examples/AccessControl
RAM for global variables
% /github/home/Arduino/libraries/MFRC522/examples/ChangeUID
flash
% /github/home/Arduino/libraries/MFRC522/examples/ChangeUID
RAM for global variables
% /github/home/Arduino/libraries/MFRC522/examples/DumpInfo
flash
% /github/home/Arduino/libraries/MFRC522/examples/DumpInfo
RAM for global variables
% /github/home/Arduino/libraries/MFRC522/examples/FixBrickedUID
flash
% /github/home/Arduino/libraries/MFRC522/examples/FixBrickedUID
RAM for global variables
% /github/home/Arduino/libraries/MFRC522/examples/MifareClassicValueBlock
flash
% /github/home/Arduino/libraries/MFRC522/examples/MifareClassicValueBlock
RAM for global variables
% /github/home/Arduino/libraries/MFRC522/examples/MinimalInterrupt
flash
% /github/home/Arduino/libraries/MFRC522/examples/MinimalInterrupt
RAM for global variables
% /github/home/Arduino/libraries/MFRC522/examples/Ntag216_AUTH
flash
% /github/home/Arduino/libraries/MFRC522/examples/Ntag216_AUTH
RAM for global variables
% /github/home/Arduino/libraries/MFRC522/examples/RFID-Cloner
flash
% /github/home/Arduino/libraries/MFRC522/examples/RFID-Cloner
RAM for global variables
% /github/home/Arduino/libraries/MFRC522/examples/ReadAndWrite
flash
% /github/home/Arduino/libraries/MFRC522/examples/ReadAndWrite
RAM for global variables
% /github/home/Arduino/libraries/MFRC522/examples/ReadNUID
flash
% /github/home/Arduino/libraries/MFRC522/examples/ReadNUID
RAM for global variables
% /github/home/Arduino/libraries/MFRC522/examples/ReadUidMultiReader
flash
% /github/home/Arduino/libraries/MFRC522/examples/ReadUidMultiReader
RAM for global variables
% /github/home/Arduino/libraries/MFRC522/examples/firmware_check
flash
% /github/home/Arduino/libraries/MFRC522/examples/firmware_check
RAM for global variables
% /github/home/Arduino/libraries/MFRC522/examples/rfid_default_keys
flash
% /github/home/Arduino/libraries/MFRC522/examples/rfid_default_keys
RAM for global variables
% /github/home/Arduino/libraries/MFRC522/examples/rfid_read_personal_data
flash
% /github/home/Arduino/libraries/MFRC522/examples/rfid_read_personal_data
RAM for global variables
% /github/home/Arduino/libraries/MFRC522/examples/rfid_write_personal_data
flash
% /github/home/Arduino/libraries/MFRC522/examples/rfid_write_personal_data
RAM for global variables
% /github/home/Arduino/libraries/Ethernet/examples/AdvancedChatServer
flash
% /github/home/Arduino/libraries/Ethernet/examples/AdvancedChatServer
RAM for global variables
% /github/home/Arduino/libraries/Ethernet/examples/BarometricPressureWebServer
flash
% /github/home/Arduino/libraries/Ethernet/examples/BarometricPressureWebServer
RAM for global variables
% /github/home/Arduino/libraries/Ethernet/examples/ChatServer
flash
% /github/home/Arduino/libraries/Ethernet/examples/ChatServer
RAM for global variables
% /github/home/Arduino/libraries/Ethernet/examples/DhcpAddressPrinter
flash
% /github/home/Arduino/libraries/Ethernet/examples/DhcpAddressPrinter
RAM for global variables
% /github/home/Arduino/libraries/Ethernet/examples/DhcpChatServer
flash
% /github/home/Arduino/libraries/Ethernet/examples/DhcpChatServer
RAM for global variables
% /github/home/Arduino/libraries/Ethernet/examples/LinkStatus
flash
% /github/home/Arduino/libraries/Ethernet/examples/LinkStatus
RAM for global variables
% /github/home/Arduino/libraries/Ethernet/examples/TelnetClient
flash
% /github/home/Arduino/libraries/Ethernet/examples/TelnetClient
RAM for global variables
% /github/home/Arduino/libraries/Ethernet/examples/UDPSendReceiveString
flash
% /github/home/Arduino/libraries/Ethernet/examples/UDPSendReceiveString
RAM for global variables
% /github/home/Arduino/libraries/Ethernet/examples/UdpNtpClient
flash
% /github/home/Arduino/libraries/Ethernet/examples/UdpNtpClient
RAM for global variables
% /github/home/Arduino/libraries/Ethernet/examples/WebClient
flash
% /github/home/Arduino/libraries/Ethernet/examples/WebClient
RAM for global variables
% /github/home/Arduino/libraries/Ethernet/examples/WebClientRepeating
flash
% /github/home/Arduino/libraries/Ethernet/examples/WebClientRepeating
RAM for global variables
% /github/home/Arduino/libraries/Ethernet/examples/WebServer
flash
% /github/home/Arduino/libraries/Ethernet/examples/WebServer
RAM for global variables
% /github/home/Arduino/libraries/Adafruit_MQTT_Library/examples/mqtt_ethernet
flash
% /github/home/Arduino/libraries/Adafruit_MQTT_Library/examples/mqtt_ethernet
RAM for global variables
% /github/home/Arduino/libraries/ArduinoBearSSL/examples/SHA1
flash
% /github/home/Arduino/libraries/ArduinoBearSSL/examples/SHA1
RAM for global variables
% /github/home/Arduino/libraries/ArduinoBearSSL/examples/SHA256
flash
% /github/home/Arduino/libraries/ArduinoBearSSL/examples/SHA256
RAM for global variables
% /github/home/Arduino/libraries/Arduino_LSM9DS1/examples/SimpleAccelerometer
flash
% /github/home/Arduino/libraries/Arduino_LSM9DS1/examples/SimpleAccelerometer
RAM for global variables
% /github/home/Arduino/libraries/Arduino_LSM9DS1/examples/SimpleGyroscope
flash
% /github/home/Arduino/libraries/Arduino_LSM9DS1/examples/SimpleGyroscope
RAM for global variables
% /github/home/Arduino/libraries/Arduino_LSM9DS1/examples/SimpleMagnetometer
flash
% /github/home/Arduino/libraries/Arduino_LSM9DS1/examples/SimpleMagnetometer
RAM for global variables
% /github/home/Arduino/libraries/SD/examples/CardInfo
flash
% /github/home/Arduino/libraries/SD/examples/CardInfo
RAM for global variables
% /github/home/Arduino/libraries/SD/examples/Datalogger
flash
% /github/home/Arduino/libraries/SD/examples/Datalogger
RAM for global variables
% /github/home/Arduino/libraries/SD/examples/DumpFile
flash
% /github/home/Arduino/libraries/SD/examples/DumpFile
RAM for global variables
% /github/home/Arduino/libraries/SD/examples/Files
flash
% /github/home/Arduino/libraries/SD/examples/Files
RAM for global variables
% /github/home/Arduino/libraries/SD/examples/NonBlockingWrite
flash
% /github/home/Arduino/libraries/SD/examples/NonBlockingWrite
RAM for global variables
% /github/home/Arduino/libraries/SD/examples/ReadWrite
flash
% /github/home/Arduino/libraries/SD/examples/ReadWrite
RAM for global variables
% /github/home/Arduino/libraries/SD/examples/listfiles
flash
% /github/home/Arduino/libraries/SD/examples/listfiles
RAM for global variables
% /github/home/Arduino/libraries/Arduino_JSON/examples/JSONArray
flash
% /github/home/Arduino/libraries/Arduino_JSON/examples/JSONArray
RAM for global variables
% /github/home/Arduino/libraries/Arduino_JSON/examples/JSONKitchenSink
flash
% /github/home/Arduino/libraries/Arduino_JSON/examples/JSONKitchenSink
RAM for global variables
% /github/home/Arduino/libraries/Arduino_JSON/examples/JSONObject
flash
% /github/home/Arduino/libraries/Arduino_JSON/examples/JSONObject
RAM for global variables
% /github/home/Arduino/libraries/TFT/examples/Arduino/TFTBitmapLogo
flash
% /github/home/Arduino/libraries/TFT/examples/Arduino/TFTBitmapLogo
RAM for global variables
% /github/home/Arduino/libraries/TFT/examples/Arduino/TFTColorPicker
flash
% /github/home/Arduino/libraries/TFT/examples/Arduino/TFTColorPicker
RAM for global variables
% /github/home/Arduino/libraries/TFT/examples/Arduino/TFTDisplayText
flash
% /github/home/Arduino/libraries/TFT/examples/Arduino/TFTDisplayText
RAM for global variables
% /github/home/Arduino/libraries/TFT/examples/Arduino/TFTEtchASketch
flash
% /github/home/Arduino/libraries/TFT/examples/Arduino/TFTEtchASketch
RAM for global variables
% /github/home/Arduino/libraries/TFT/examples/Arduino/TFTGraph
flash
% /github/home/Arduino/libraries/TFT/examples/Arduino/TFTGraph
RAM for global variables
% /github/home/Arduino/libraries/TFT/examples/Arduino/TFTPong
flash
% /github/home/Arduino/libraries/TFT/examples/Arduino/TFTPong
RAM for global variables
% /github/home/Arduino/libraries/Arduino_CRC32/examples/CRC32
flash
% /github/home/Arduino/libraries/Arduino_CRC32/examples/CRC32
RAM for global variables
% /github/home/Arduino/libraries/Arduino_LSM6DS3/examples/SimpleAccelerometer
flash
% /github/home/Arduino/libraries/Arduino_LSM6DS3/examples/SimpleAccelerometer
RAM for global variables
% /github/home/Arduino/libraries/Arduino_LSM6DS3/examples/SimpleGyroscope
flash
% /github/home/Arduino/libraries/Arduino_LSM6DS3/examples/SimpleGyroscope
RAM for global variables
% /github/home/Arduino/libraries/Stepper/examples/MotorKnob
flash
% /github/home/Arduino/libraries/Stepper/examples/MotorKnob
RAM for global variables
% /github/home/Arduino/libraries/Stepper/examples/stepper_oneRevolution
flash
% /github/home/Arduino/libraries/Stepper/examples/stepper_oneRevolution
RAM for global variables
% /github/home/Arduino/libraries/Stepper/examples/stepper_oneStepAtATime
flash
% /github/home/Arduino/libraries/Stepper/examples/stepper_oneStepAtATime
RAM for global variables
% /github/home/Arduino/libraries/Stepper/examples/stepper_speedControl
flash
% /github/home/Arduino/libraries/Stepper/examples/stepper_speedControl
RAM for global variables
% /github/home/Arduino/libraries/Arduino_HTS221/examples/ReadSensors
flash
% /github/home/Arduino/libraries/Arduino_HTS221/examples/ReadSensors
RAM for global variables
% /github/home/Arduino/libraries/Arduino_HTS221/examples/ReadSensorsImperial
flash
% /github/home/Arduino/libraries/Arduino_HTS221/examples/ReadSensorsImperial
RAM for global variables
% /github/home/Arduino/libraries/Arduino_DebugUtils/examples/Arduino_Debug_Advance
flash
% /github/home/Arduino/libraries/Arduino_DebugUtils/examples/Arduino_Debug_Advance
RAM for global variables
% /github/home/Arduino/libraries/Arduino_DebugUtils/examples/Arduino_Debug_Basic
flash
% /github/home/Arduino/libraries/Arduino_DebugUtils/examples/Arduino_Debug_Basic
RAM for global variables
% /github/home/Arduino/libraries/Arduino_LPS22HB/examples/ReadPressure
flash
% /github/home/Arduino/libraries/Arduino_LPS22HB/examples/ReadPressure
RAM for global variables
% /github/home/Arduino/libraries/Arduino_LPS22HB/examples/ReadPressureImperial
flash
% /github/home/Arduino/libraries/Arduino_LPS22HB/examples/ReadPressureImperial
RAM for global variables
% /github/home/Arduino/libraries/ArduinoDMX/examples/DMXBlink
flash
% /github/home/Arduino/libraries/ArduinoDMX/examples/DMXBlink
RAM for global variables
% /github/home/Arduino/libraries/ArduinoDMX/examples/DMXFade
flash
% /github/home/Arduino/libraries/ArduinoDMX/examples/DMXFade
RAM for global variables
% /github/home/Arduino/libraries/ArduinoRS485/examples/RS485Passthrough
flash
% /github/home/Arduino/libraries/ArduinoRS485/examples/RS485Passthrough
RAM for global variables
% /github/home/Arduino/libraries/ArduinoRS485/examples/RS485Receiver
flash
% /github/home/Arduino/libraries/ArduinoRS485/examples/RS485Receiver
RAM for global variables
% /github/home/Arduino/libraries/ArduinoRS485/examples/RS485Sender
flash
% /github/home/Arduino/libraries/ArduinoRS485/examples/RS485Sender
RAM for global variables
% /github/home/Arduino/libraries/WiFiNINA/examples/AP_SimpleWebServer
flash
% /github/home/Arduino/libraries/WiFiNINA/examples/AP_SimpleWebServer
RAM for global variables
% /github/home/Arduino/libraries/WiFiNINA/examples/ConnectNoEncryption
flash
% /github/home/Arduino/libraries/WiFiNINA/examples/ConnectNoEncryption
RAM for global variables
% /github/home/Arduino/libraries/WiFiNINA/examples/ConnectWithWEP
flash
% /github/home/Arduino/libraries/WiFiNINA/examples/ConnectWithWEP
RAM for global variables
% /github/home/Arduino/libraries/WiFiNINA/examples/ConnectWithWPA
flash
% /github/home/Arduino/libraries/WiFiNINA/examples/ConnectWithWPA
RAM for global variables
% /github/home/Arduino/libraries/WiFiNINA/examples/ConnectWithWPA2Enterprise
flash
% /github/home/Arduino/libraries/WiFiNINA/examples/ConnectWithWPA2Enterprise
RAM for global variables
% /github/home/Arduino/libraries/WiFiNINA/examples/ScanNetworks
flash
% /github/home/Arduino/libraries/WiFiNINA/examples/ScanNetworks
RAM for global variables
% /github/home/Arduino/libraries/WiFiNINA/examples/ScanNetworksAdvanced
flash
% /github/home/Arduino/libraries/WiFiNINA/examples/ScanNetworksAdvanced
RAM for global variables
% /github/home/Arduino/libraries/WiFiNINA/examples/SimpleWebServerWiFi
flash
% /github/home/Arduino/libraries/WiFiNINA/examples/SimpleWebServerWiFi
RAM for global variables
% /github/home/Arduino/libraries/WiFiNINA/examples/Tools/CheckFirmwareVersion
flash
% /github/home/Arduino/libraries/WiFiNINA/examples/Tools/CheckFirmwareVersion
RAM for global variables
% /github/home/Arduino/libraries/WiFiNINA/examples/Tools/FirmwareUpdater
flash
% /github/home/Arduino/libraries/WiFiNINA/examples/Tools/FirmwareUpdater
RAM for global variables
% /github/home/Arduino/libraries/WiFiNINA/examples/Tools/SerialNINAPassthrough
flash
% /github/home/Arduino/libraries/WiFiNINA/examples/Tools/SerialNINAPassthrough
RAM for global variables
% /github/home/Arduino/libraries/WiFiNINA/examples/WiFiChatServer
flash
% /github/home/Arduino/libraries/WiFiNINA/examples/WiFiChatServer
RAM for global variables
% /github/home/Arduino/libraries/WiFiNINA/examples/WiFiPing
flash
% /github/home/Arduino/libraries/WiFiNINA/examples/WiFiPing
RAM for global variables
% /github/home/Arduino/libraries/WiFiNINA/examples/WiFiSSLClient
flash
% /github/home/Arduino/libraries/WiFiNINA/examples/WiFiSSLClient
RAM for global variables
% /github/home/Arduino/libraries/WiFiNINA/examples/WiFiStorage
flash
% /github/home/Arduino/libraries/WiFiNINA/examples/WiFiStorage
RAM for global variables
% /github/home/Arduino/libraries/WiFiNINA/examples/WiFiUdpNtpClient
flash
% /github/home/Arduino/libraries/WiFiNINA/examples/WiFiUdpNtpClient
RAM for global variables
% /github/home/Arduino/libraries/WiFiNINA/examples/WiFiUdpSendReceiveString
flash
% /github/home/Arduino/libraries/WiFiNINA/examples/WiFiUdpSendReceiveString
RAM for global variables
% /github/home/Arduino/libraries/WiFiNINA/examples/WiFiWebClient
flash
% /github/home/Arduino/libraries/WiFiNINA/examples/WiFiWebClient
RAM for global variables
% /github/home/Arduino/libraries/WiFiNINA/examples/WiFiWebClientRepeating
flash
% /github/home/Arduino/libraries/WiFiNINA/examples/WiFiWebClientRepeating
RAM for global variables
% /github/home/Arduino/libraries/WiFiNINA/examples/WiFiWebServer
flash
% /github/home/Arduino/libraries/WiFiNINA/examples/WiFiWebServer
RAM for global variables
% /github/home/Arduino/libraries/ArduinoMqttClient/examples/WiFiAdvancedCallback
flash
% /github/home/Arduino/libraries/ArduinoMqttClient/examples/WiFiAdvancedCallback
RAM for global variables
% /github/home/Arduino/libraries/ArduinoMqttClient/examples/WiFiEcho
flash
% /github/home/Arduino/libraries/ArduinoMqttClient/examples/WiFiEcho
RAM for global variables
% /github/home/Arduino/libraries/ArduinoMqttClient/examples/WiFiEchoCallback
flash
% /github/home/Arduino/libraries/ArduinoMqttClient/examples/WiFiEchoCallback
RAM for global variables
% /github/home/Arduino/libraries/ArduinoMqttClient/examples/WiFiSimpleReceive
flash
% /github/home/Arduino/libraries/ArduinoMqttClient/examples/WiFiSimpleReceive
RAM for global variables
% /github/home/Arduino/libraries/ArduinoMqttClient/examples/WiFiSimpleReceiveCallback
flash
% /github/home/Arduino/libraries/ArduinoMqttClient/examples/WiFiSimpleReceiveCallback
RAM for global variables
% /github/home/Arduino/libraries/ArduinoMqttClient/examples/WiFiSimpleSender
flash
% /github/home/Arduino/libraries/ArduinoMqttClient/examples/WiFiSimpleSender
RAM for global variables
% /github/home/Arduino/libraries/Arduino_OAuth/examples/Tweeter
flash
% /github/home/Arduino/libraries/Arduino_OAuth/examples/Tweeter
RAM for global variables
%
arduino:megaavr:nona4809 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 14 0.03 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 6 0.01 0 0.0 0 0.0 0 0.0 16 0.03 0 0.0 6 0.01 0 0.0 16 0.03 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 6 0.01 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 18 0.04 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 6 0.01 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 16 0.03 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 6 0.01 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 6 0.01 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0
arduino:megaavr:uno2018:mode=off 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 14 0.03 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 6 0.01 0 0.0 0 0.0 0 0.0 16 0.03 0 0.0 6 0.01 0 0.0 18 0.04 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 6 0.01 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 18 0.04 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 6 0.01 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 16 0.03 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 6 0.01 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 6 0.01 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0
arduino:megaavr:uno2018:mode=on 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 14 0.03 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 6 0.01 0 0.0 0 0.0 0 0.0 16 0.03 0 0.0 6 0.01 0 0.0 18 0.04 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 6 0.01 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 18 0.04 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 6 0.01 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 16 0.03 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 6 0.01 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 6 0.01 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0
Click for full report CSV
Board,extras/examples/01.Basics/AnalogReadSerial<br>flash,%,extras/examples/01.Basics/AnalogReadSerial<br>RAM for global variables,%,extras/examples/01.Basics/BareMinimum<br>flash,%,extras/examples/01.Basics/BareMinimum<br>RAM for global variables,%,extras/examples/01.Basics/Blink<br>flash,%,extras/examples/01.Basics/Blink<br>RAM for global variables,%,extras/examples/01.Basics/DigitalReadSerial<br>flash,%,extras/examples/01.Basics/DigitalReadSerial<br>RAM for global variables,%,extras/examples/01.Basics/Fade<br>flash,%,extras/examples/01.Basics/Fade<br>RAM for global variables,%,extras/examples/01.Basics/ReadAnalogVoltage<br>flash,%,extras/examples/01.Basics/ReadAnalogVoltage<br>RAM for global variables,%,extras/examples/02.Digital/BlinkWithoutDelay<br>flash,%,extras/examples/02.Digital/BlinkWithoutDelay<br>RAM for global variables,%,extras/examples/02.Digital/Button<br>flash,%,extras/examples/02.Digital/Button<br>RAM for global variables,%,extras/examples/02.Digital/Debounce<br>flash,%,extras/examples/02.Digital/Debounce<br>RAM for global variables,%,extras/examples/02.Digital/DigitalInputPullup<br>flash,%,extras/examples/02.Digital/DigitalInputPullup<br>RAM for global variables,%,extras/examples/02.Digital/StateChangeDetection<br>flash,%,extras/examples/02.Digital/StateChangeDetection<br>RAM for global variables,%,extras/examples/02.Digital/toneKeyboard<br>flash,%,extras/examples/02.Digital/toneKeyboard<br>RAM for global variables,%,extras/examples/02.Digital/toneMelody<br>flash,%,extras/examples/02.Digital/toneMelody<br>RAM for global variables,%,extras/examples/02.Digital/toneMultiple<br>flash,%,extras/examples/02.Digital/toneMultiple<br>RAM for global variables,%,extras/examples/02.Digital/tonePitchFollower<br>flash,%,extras/examples/02.Digital/tonePitchFollower<br>RAM for global variables,%,extras/examples/03.Analog/AnalogInOutSerial<br>flash,%,extras/examples/03.Analog/AnalogInOutSerial<br>RAM for global variables,%,extras/examples/03.Analog/AnalogInput<br>flash,%,extras/examples/03.Analog/AnalogInput<br>RAM for global variables,%,extras/examples/03.Analog/AnalogWriteMega<br>flash,%,extras/examples/03.Analog/AnalogWriteMega<br>RAM for global variables,%,extras/examples/03.Analog/Calibration<br>flash,%,extras/examples/03.Analog/Calibration<br>RAM for global variables,%,extras/examples/03.Analog/Fading<br>flash,%,extras/examples/03.Analog/Fading<br>RAM for global variables,%,extras/examples/03.Analog/Smoothing<br>flash,%,extras/examples/03.Analog/Smoothing<br>RAM for global variables,%,extras/examples/04.Communication/ASCIITable<br>flash,%,extras/examples/04.Communication/ASCIITable<br>RAM for global variables,%,extras/examples/04.Communication/Dimmer<br>flash,%,extras/examples/04.Communication/Dimmer<br>RAM for global variables,%,extras/examples/04.Communication/Graph<br>flash,%,extras/examples/04.Communication/Graph<br>RAM for global variables,%,extras/examples/04.Communication/Midi<br>flash,%,extras/examples/04.Communication/Midi<br>RAM for global variables,%,extras/examples/04.Communication/MultiSerial<br>flash,%,extras/examples/04.Communication/MultiSerial<br>RAM for global variables,%,extras/examples/04.Communication/PhysicalPixel<br>flash,%,extras/examples/04.Communication/PhysicalPixel<br>RAM for global variables,%,extras/examples/04.Communication/ReadASCIIString<br>flash,%,extras/examples/04.Communication/ReadASCIIString<br>RAM for global variables,%,extras/examples/04.Communication/SerialCallResponse<br>flash,%,extras/examples/04.Communication/SerialCallResponse<br>RAM for global variables,%,extras/examples/04.Communication/SerialCallResponseASCII<br>flash,%,extras/examples/04.Communication/SerialCallResponseASCII<br>RAM for global variables,%,extras/examples/04.Communication/SerialEvent<br>flash,%,extras/examples/04.Communication/SerialEvent<br>RAM for global variables,%,extras/examples/04.Communication/SerialPassthrough<br>flash,%,extras/examples/04.Communication/SerialPassthrough<br>RAM for global variables,%,extras/examples/04.Communication/VirtualColorMixer<br>flash,%,extras/examples/04.Communication/VirtualColorMixer<br>RAM for global variables,%,extras/examples/05.Control/Arrays<br>flash,%,extras/examples/05.Control/Arrays<br>RAM for global variables,%,extras/examples/05.Control/ForLoopIteration<br>flash,%,extras/examples/05.Control/ForLoopIteration<br>RAM for global variables,%,extras/examples/05.Control/IfStatementConditional<br>flash,%,extras/examples/05.Control/IfStatementConditional<br>RAM for global variables,%,extras/examples/05.Control/WhileStatementConditional<br>flash,%,extras/examples/05.Control/WhileStatementConditional<br>RAM for global variables,%,extras/examples/05.Control/switchCase<br>flash,%,extras/examples/05.Control/switchCase<br>RAM for global variables,%,extras/examples/05.Control/switchCase2<br>flash,%,extras/examples/05.Control/switchCase2<br>RAM for global variables,%,extras/examples/06.Sensors/ADXL3xx<br>flash,%,extras/examples/06.Sensors/ADXL3xx<br>RAM for global variables,%,extras/examples/06.Sensors/Knock<br>flash,%,extras/examples/06.Sensors/Knock<br>RAM for global variables,%,extras/examples/06.Sensors/Memsic2125<br>flash,%,extras/examples/06.Sensors/Memsic2125<br>RAM for global variables,%,extras/examples/06.Sensors/Ping<br>flash,%,extras/examples/06.Sensors/Ping<br>RAM for global variables,%,extras/examples/07.Display/RowColumnScanning<br>flash,%,extras/examples/07.Display/RowColumnScanning<br>RAM for global variables,%,extras/examples/07.Display/barGraph<br>flash,%,extras/examples/07.Display/barGraph<br>RAM for global variables,%,extras/examples/08.Strings/CharacterAnalysis<br>flash,%,extras/examples/08.Strings/CharacterAnalysis<br>RAM for global variables,%,extras/examples/08.Strings/StringAdditionOperator<br>flash,%,extras/examples/08.Strings/StringAdditionOperator<br>RAM for global variables,%,extras/examples/08.Strings/StringAppendOperator<br>flash,%,extras/examples/08.Strings/StringAppendOperator<br>RAM for global variables,%,extras/examples/08.Strings/StringCaseChanges<br>flash,%,extras/examples/08.Strings/StringCaseChanges<br>RAM for global variables,%,extras/examples/08.Strings/StringCharacters<br>flash,%,extras/examples/08.Strings/StringCharacters<br>RAM for global variables,%,extras/examples/08.Strings/StringComparisonOperators<br>flash,%,extras/examples/08.Strings/StringComparisonOperators<br>RAM for global variables,%,extras/examples/08.Strings/StringConstructors<br>flash,%,extras/examples/08.Strings/StringConstructors<br>RAM for global variables,%,extras/examples/08.Strings/StringIndexOf<br>flash,%,extras/examples/08.Strings/StringIndexOf<br>RAM for global variables,%,extras/examples/08.Strings/StringLength<br>flash,%,extras/examples/08.Strings/StringLength<br>RAM for global variables,%,extras/examples/08.Strings/StringLengthTrim<br>flash,%,extras/examples/08.Strings/StringLengthTrim<br>RAM for global variables,%,extras/examples/08.Strings/StringReplace<br>flash,%,extras/examples/08.Strings/StringReplace<br>RAM for global variables,%,extras/examples/08.Strings/StringStartsWithEndsWith<br>flash,%,extras/examples/08.Strings/StringStartsWithEndsWith<br>RAM for global variables,%,extras/examples/08.Strings/StringSubstring<br>flash,%,extras/examples/08.Strings/StringSubstring<br>RAM for global variables,%,extras/examples/08.Strings/StringToInt<br>flash,%,extras/examples/08.Strings/StringToInt<br>RAM for global variables,%,extras/examples/10.StarterKit_BasicKit/p02_SpaceshipInterface<br>flash,%,extras/examples/10.StarterKit_BasicKit/p02_SpaceshipInterface<br>RAM for global variables,%,extras/examples/10.StarterKit_BasicKit/p03_LoveOMeter<br>flash,%,extras/examples/10.StarterKit_BasicKit/p03_LoveOMeter<br>RAM for global variables,%,extras/examples/10.StarterKit_BasicKit/p04_ColorMixingLamp<br>flash,%,extras/examples/10.StarterKit_BasicKit/p04_ColorMixingLamp<br>RAM for global variables,%,extras/examples/10.StarterKit_BasicKit/p05_ServoMoodIndicator<br>flash,%,extras/examples/10.StarterKit_BasicKit/p05_ServoMoodIndicator<br>RAM for global variables,%,extras/examples/10.StarterKit_BasicKit/p06_LightTheremin<br>flash,%,extras/examples/10.StarterKit_BasicKit/p06_LightTheremin<br>RAM for global variables,%,extras/examples/10.StarterKit_BasicKit/p07_Keyboard<br>flash,%,extras/examples/10.StarterKit_BasicKit/p07_Keyboard<br>RAM for global variables,%,extras/examples/10.StarterKit_BasicKit/p08_DigitalHourglass<br>flash,%,extras/examples/10.StarterKit_BasicKit/p08_DigitalHourglass<br>RAM for global variables,%,extras/examples/10.StarterKit_BasicKit/p09_MotorizedPinwheel<br>flash,%,extras/examples/10.StarterKit_BasicKit/p09_MotorizedPinwheel<br>RAM for global variables,%,extras/examples/10.StarterKit_BasicKit/p10_Zoetrope<br>flash,%,extras/examples/10.StarterKit_BasicKit/p10_Zoetrope<br>RAM for global variables,%,extras/examples/10.StarterKit_BasicKit/p12_KnockLock<br>flash,%,extras/examples/10.StarterKit_BasicKit/p12_KnockLock<br>RAM for global variables,%,extras/examples/10.StarterKit_BasicKit/p14_TweakTheArduinoLogo<br>flash,%,extras/examples/10.StarterKit_BasicKit/p14_TweakTheArduinoLogo<br>RAM for global variables,%,extras/examples/10.StarterKit_BasicKit/p15_HackingButtons<br>flash,%,extras/examples/10.StarterKit_BasicKit/p15_HackingButtons<br>RAM for global variables,%,extras/examples/11.ArduinoISP/ArduinoISP<br>flash,%,extras/examples/11.ArduinoISP/ArduinoISP<br>RAM for global variables,%,libraries/Wire/examples/SFRRanger_reader<br>flash,%,libraries/Wire/examples/SFRRanger_reader<br>RAM for global variables,%,libraries/Wire/examples/digital_potentiometer<br>flash,%,libraries/Wire/examples/digital_potentiometer<br>RAM for global variables,%,libraries/Wire/examples/master_reader<br>flash,%,libraries/Wire/examples/master_reader<br>RAM for global variables,%,libraries/Wire/examples/master_writer<br>flash,%,libraries/Wire/examples/master_writer<br>RAM for global variables,%,libraries/Wire/examples/slave_receiver<br>flash,%,libraries/Wire/examples/slave_receiver<br>RAM for global variables,%,libraries/Wire/examples/slave_sender<br>flash,%,libraries/Wire/examples/slave_sender<br>RAM for global variables,%,libraries/SPI/examples/BarometricPressureSensor<br>flash,%,libraries/SPI/examples/BarometricPressureSensor<br>RAM for global variables,%,libraries/SPI/examples/DigitalPotControl<br>flash,%,libraries/SPI/examples/DigitalPotControl<br>RAM for global variables,%,libraries/SoftwareSerial/examples/SoftwareSerialExample<br>flash,%,libraries/SoftwareSerial/examples/SoftwareSerialExample<br>RAM for global variables,%,libraries/SoftwareSerial/examples/TwoPortReceive<br>flash,%,libraries/SoftwareSerial/examples/TwoPortReceive<br>RAM for global variables,%,libraries/EEPROM/examples/eeprom_clear<br>flash,%,libraries/EEPROM/examples/eeprom_clear<br>RAM for global variables,%,libraries/EEPROM/examples/eeprom_crc<br>flash,%,libraries/EEPROM/examples/eeprom_crc<br>RAM for global variables,%,libraries/EEPROM/examples/eeprom_get<br>flash,%,libraries/EEPROM/examples/eeprom_get<br>RAM for global variables,%,libraries/EEPROM/examples/eeprom_iteration<br>flash,%,libraries/EEPROM/examples/eeprom_iteration<br>RAM for global variables,%,libraries/EEPROM/examples/eeprom_put<br>flash,%,libraries/EEPROM/examples/eeprom_put<br>RAM for global variables,%,libraries/EEPROM/examples/eeprom_read<br>flash,%,libraries/EEPROM/examples/eeprom_read<br>RAM for global variables,%,libraries/EEPROM/examples/eeprom_update<br>flash,%,libraries/EEPROM/examples/eeprom_update<br>RAM for global variables,%,libraries/EEPROM/examples/eeprom_write<br>flash,%,libraries/EEPROM/examples/eeprom_write<br>RAM for global variables,%,/github/home/Arduino/libraries/Servo/examples/Knob<br>flash,%,/github/home/Arduino/libraries/Servo/examples/Knob<br>RAM for global variables,%,/github/home/Arduino/libraries/Servo/examples/Sweep<br>flash,%,/github/home/Arduino/libraries/Servo/examples/Sweep<br>RAM for global variables,%,/github/home/Arduino/libraries/LiquidCrystal/examples/Autoscroll<br>flash,%,/github/home/Arduino/libraries/LiquidCrystal/examples/Autoscroll<br>RAM for global variables,%,/github/home/Arduino/libraries/LiquidCrystal/examples/Blink<br>flash,%,/github/home/Arduino/libraries/LiquidCrystal/examples/Blink<br>RAM for global variables,%,/github/home/Arduino/libraries/LiquidCrystal/examples/Cursor<br>flash,%,/github/home/Arduino/libraries/LiquidCrystal/examples/Cursor<br>RAM for global variables,%,/github/home/Arduino/libraries/LiquidCrystal/examples/CustomCharacter<br>flash,%,/github/home/Arduino/libraries/LiquidCrystal/examples/CustomCharacter<br>RAM for global variables,%,/github/home/Arduino/libraries/LiquidCrystal/examples/Display<br>flash,%,/github/home/Arduino/libraries/LiquidCrystal/examples/Display<br>RAM for global variables,%,/github/home/Arduino/libraries/LiquidCrystal/examples/HelloWorld<br>flash,%,/github/home/Arduino/libraries/LiquidCrystal/examples/HelloWorld<br>RAM for global variables,%,/github/home/Arduino/libraries/LiquidCrystal/examples/Scroll<br>flash,%,/github/home/Arduino/libraries/LiquidCrystal/examples/Scroll<br>RAM for global variables,%,/github/home/Arduino/libraries/LiquidCrystal/examples/SerialDisplay<br>flash,%,/github/home/Arduino/libraries/LiquidCrystal/examples/SerialDisplay<br>RAM for global variables,%,/github/home/Arduino/libraries/LiquidCrystal/examples/TextDirection<br>flash,%,/github/home/Arduino/libraries/LiquidCrystal/examples/TextDirection<br>RAM for global variables,%,/github/home/Arduino/libraries/LiquidCrystal/examples/setCursor<br>flash,%,/github/home/Arduino/libraries/LiquidCrystal/examples/setCursor<br>RAM for global variables,%,/github/home/Arduino/libraries/MFRC522/examples/AccessControl<br>flash,%,/github/home/Arduino/libraries/MFRC522/examples/AccessControl<br>RAM for global variables,%,/github/home/Arduino/libraries/MFRC522/examples/ChangeUID<br>flash,%,/github/home/Arduino/libraries/MFRC522/examples/ChangeUID<br>RAM for global variables,%,/github/home/Arduino/libraries/MFRC522/examples/DumpInfo<br>flash,%,/github/home/Arduino/libraries/MFRC522/examples/DumpInfo<br>RAM for global variables,%,/github/home/Arduino/libraries/MFRC522/examples/FixBrickedUID<br>flash,%,/github/home/Arduino/libraries/MFRC522/examples/FixBrickedUID<br>RAM for global variables,%,/github/home/Arduino/libraries/MFRC522/examples/MifareClassicValueBlock<br>flash,%,/github/home/Arduino/libraries/MFRC522/examples/MifareClassicValueBlock<br>RAM for global variables,%,/github/home/Arduino/libraries/MFRC522/examples/MinimalInterrupt<br>flash,%,/github/home/Arduino/libraries/MFRC522/examples/MinimalInterrupt<br>RAM for global variables,%,/github/home/Arduino/libraries/MFRC522/examples/Ntag216_AUTH<br>flash,%,/github/home/Arduino/libraries/MFRC522/examples/Ntag216_AUTH<br>RAM for global variables,%,/github/home/Arduino/libraries/MFRC522/examples/RFID-Cloner<br>flash,%,/github/home/Arduino/libraries/MFRC522/examples/RFID-Cloner<br>RAM for global variables,%,/github/home/Arduino/libraries/MFRC522/examples/ReadAndWrite<br>flash,%,/github/home/Arduino/libraries/MFRC522/examples/ReadAndWrite<br>RAM for global variables,%,/github/home/Arduino/libraries/MFRC522/examples/ReadNUID<br>flash,%,/github/home/Arduino/libraries/MFRC522/examples/ReadNUID<br>RAM for global variables,%,/github/home/Arduino/libraries/MFRC522/examples/ReadUidMultiReader<br>flash,%,/github/home/Arduino/libraries/MFRC522/examples/ReadUidMultiReader<br>RAM for global variables,%,/github/home/Arduino/libraries/MFRC522/examples/firmware_check<br>flash,%,/github/home/Arduino/libraries/MFRC522/examples/firmware_check<br>RAM for global variables,%,/github/home/Arduino/libraries/MFRC522/examples/rfid_default_keys<br>flash,%,/github/home/Arduino/libraries/MFRC522/examples/rfid_default_keys<br>RAM for global variables,%,/github/home/Arduino/libraries/MFRC522/examples/rfid_read_personal_data<br>flash,%,/github/home/Arduino/libraries/MFRC522/examples/rfid_read_personal_data<br>RAM for global variables,%,/github/home/Arduino/libraries/MFRC522/examples/rfid_write_personal_data<br>flash,%,/github/home/Arduino/libraries/MFRC522/examples/rfid_write_personal_data<br>RAM for global variables,%,/github/home/Arduino/libraries/Ethernet/examples/AdvancedChatServer<br>flash,%,/github/home/Arduino/libraries/Ethernet/examples/AdvancedChatServer<br>RAM for global variables,%,/github/home/Arduino/libraries/Ethernet/examples/BarometricPressureWebServer<br>flash,%,/github/home/Arduino/libraries/Ethernet/examples/BarometricPressureWebServer<br>RAM for global variables,%,/github/home/Arduino/libraries/Ethernet/examples/ChatServer<br>flash,%,/github/home/Arduino/libraries/Ethernet/examples/ChatServer<br>RAM for global variables,%,/github/home/Arduino/libraries/Ethernet/examples/DhcpAddressPrinter<br>flash,%,/github/home/Arduino/libraries/Ethernet/examples/DhcpAddressPrinter<br>RAM for global variables,%,/github/home/Arduino/libraries/Ethernet/examples/DhcpChatServer<br>flash,%,/github/home/Arduino/libraries/Ethernet/examples/DhcpChatServer<br>RAM for global variables,%,/github/home/Arduino/libraries/Ethernet/examples/LinkStatus<br>flash,%,/github/home/Arduino/libraries/Ethernet/examples/LinkStatus<br>RAM for global variables,%,/github/home/Arduino/libraries/Ethernet/examples/TelnetClient<br>flash,%,/github/home/Arduino/libraries/Ethernet/examples/TelnetClient<br>RAM for global variables,%,/github/home/Arduino/libraries/Ethernet/examples/UDPSendReceiveString<br>flash,%,/github/home/Arduino/libraries/Ethernet/examples/UDPSendReceiveString<br>RAM for global variables,%,/github/home/Arduino/libraries/Ethernet/examples/UdpNtpClient<br>flash,%,/github/home/Arduino/libraries/Ethernet/examples/UdpNtpClient<br>RAM for global variables,%,/github/home/Arduino/libraries/Ethernet/examples/WebClient<br>flash,%,/github/home/Arduino/libraries/Ethernet/examples/WebClient<br>RAM for global variables,%,/github/home/Arduino/libraries/Ethernet/examples/WebClientRepeating<br>flash,%,/github/home/Arduino/libraries/Ethernet/examples/WebClientRepeating<br>RAM for global variables,%,/github/home/Arduino/libraries/Ethernet/examples/WebServer<br>flash,%,/github/home/Arduino/libraries/Ethernet/examples/WebServer<br>RAM for global variables,%,/github/home/Arduino/libraries/Adafruit_MQTT_Library/examples/mqtt_ethernet<br>flash,%,/github/home/Arduino/libraries/Adafruit_MQTT_Library/examples/mqtt_ethernet<br>RAM for global variables,%,/github/home/Arduino/libraries/ArduinoBearSSL/examples/SHA1<br>flash,%,/github/home/Arduino/libraries/ArduinoBearSSL/examples/SHA1<br>RAM for global variables,%,/github/home/Arduino/libraries/ArduinoBearSSL/examples/SHA256<br>flash,%,/github/home/Arduino/libraries/ArduinoBearSSL/examples/SHA256<br>RAM for global variables,%,/github/home/Arduino/libraries/Arduino_LSM9DS1/examples/SimpleAccelerometer<br>flash,%,/github/home/Arduino/libraries/Arduino_LSM9DS1/examples/SimpleAccelerometer<br>RAM for global variables,%,/github/home/Arduino/libraries/Arduino_LSM9DS1/examples/SimpleGyroscope<br>flash,%,/github/home/Arduino/libraries/Arduino_LSM9DS1/examples/SimpleGyroscope<br>RAM for global variables,%,/github/home/Arduino/libraries/Arduino_LSM9DS1/examples/SimpleMagnetometer<br>flash,%,/github/home/Arduino/libraries/Arduino_LSM9DS1/examples/SimpleMagnetometer<br>RAM for global variables,%,/github/home/Arduino/libraries/SD/examples/CardInfo<br>flash,%,/github/home/Arduino/libraries/SD/examples/CardInfo<br>RAM for global variables,%,/github/home/Arduino/libraries/SD/examples/Datalogger<br>flash,%,/github/home/Arduino/libraries/SD/examples/Datalogger<br>RAM for global variables,%,/github/home/Arduino/libraries/SD/examples/DumpFile<br>flash,%,/github/home/Arduino/libraries/SD/examples/DumpFile<br>RAM for global variables,%,/github/home/Arduino/libraries/SD/examples/Files<br>flash,%,/github/home/Arduino/libraries/SD/examples/Files<br>RAM for global variables,%,/github/home/Arduino/libraries/SD/examples/NonBlockingWrite<br>flash,%,/github/home/Arduino/libraries/SD/examples/NonBlockingWrite<br>RAM for global variables,%,/github/home/Arduino/libraries/SD/examples/ReadWrite<br>flash,%,/github/home/Arduino/libraries/SD/examples/ReadWrite<br>RAM for global variables,%,/github/home/Arduino/libraries/SD/examples/listfiles<br>flash,%,/github/home/Arduino/libraries/SD/examples/listfiles<br>RAM for global variables,%,/github/home/Arduino/libraries/Arduino_JSON/examples/JSONArray<br>flash,%,/github/home/Arduino/libraries/Arduino_JSON/examples/JSONArray<br>RAM for global variables,%,/github/home/Arduino/libraries/Arduino_JSON/examples/JSONKitchenSink<br>flash,%,/github/home/Arduino/libraries/Arduino_JSON/examples/JSONKitchenSink<br>RAM for global variables,%,/github/home/Arduino/libraries/Arduino_JSON/examples/JSONObject<br>flash,%,/github/home/Arduino/libraries/Arduino_JSON/examples/JSONObject<br>RAM for global variables,%,/github/home/Arduino/libraries/TFT/examples/Arduino/TFTBitmapLogo<br>flash,%,/github/home/Arduino/libraries/TFT/examples/Arduino/TFTBitmapLogo<br>RAM for global variables,%,/github/home/Arduino/libraries/TFT/examples/Arduino/TFTColorPicker<br>flash,%,/github/home/Arduino/libraries/TFT/examples/Arduino/TFTColorPicker<br>RAM for global variables,%,/github/home/Arduino/libraries/TFT/examples/Arduino/TFTDisplayText<br>flash,%,/github/home/Arduino/libraries/TFT/examples/Arduino/TFTDisplayText<br>RAM for global variables,%,/github/home/Arduino/libraries/TFT/examples/Arduino/TFTEtchASketch<br>flash,%,/github/home/Arduino/libraries/TFT/examples/Arduino/TFTEtchASketch<br>RAM for global variables,%,/github/home/Arduino/libraries/TFT/examples/Arduino/TFTGraph<br>flash,%,/github/home/Arduino/libraries/TFT/examples/Arduino/TFTGraph<br>RAM for global variables,%,/github/home/Arduino/libraries/TFT/examples/Arduino/TFTPong<br>flash,%,/github/home/Arduino/libraries/TFT/examples/Arduino/TFTPong<br>RAM for global variables,%,/github/home/Arduino/libraries/Arduino_CRC32/examples/CRC32<br>flash,%,/github/home/Arduino/libraries/Arduino_CRC32/examples/CRC32<br>RAM for global variables,%,/github/home/Arduino/libraries/Arduino_LSM6DS3/examples/SimpleAccelerometer<br>flash,%,/github/home/Arduino/libraries/Arduino_LSM6DS3/examples/SimpleAccelerometer<br>RAM for global variables,%,/github/home/Arduino/libraries/Arduino_LSM6DS3/examples/SimpleGyroscope<br>flash,%,/github/home/Arduino/libraries/Arduino_LSM6DS3/examples/SimpleGyroscope<br>RAM for global variables,%,/github/home/Arduino/libraries/Stepper/examples/MotorKnob<br>flash,%,/github/home/Arduino/libraries/Stepper/examples/MotorKnob<br>RAM for global variables,%,/github/home/Arduino/libraries/Stepper/examples/stepper_oneRevolution<br>flash,%,/github/home/Arduino/libraries/Stepper/examples/stepper_oneRevolution<br>RAM for global variables,%,/github/home/Arduino/libraries/Stepper/examples/stepper_oneStepAtATime<br>flash,%,/github/home/Arduino/libraries/Stepper/examples/stepper_oneStepAtATime<br>RAM for global variables,%,/github/home/Arduino/libraries/Stepper/examples/stepper_speedControl<br>flash,%,/github/home/Arduino/libraries/Stepper/examples/stepper_speedControl<br>RAM for global variables,%,/github/home/Arduino/libraries/Arduino_HTS221/examples/ReadSensors<br>flash,%,/github/home/Arduino/libraries/Arduino_HTS221/examples/ReadSensors<br>RAM for global variables,%,/github/home/Arduino/libraries/Arduino_HTS221/examples/ReadSensorsImperial<br>flash,%,/github/home/Arduino/libraries/Arduino_HTS221/examples/ReadSensorsImperial<br>RAM for global variables,%,/github/home/Arduino/libraries/Arduino_DebugUtils/examples/Arduino_Debug_Advance<br>flash,%,/github/home/Arduino/libraries/Arduino_DebugUtils/examples/Arduino_Debug_Advance<br>RAM for global variables,%,/github/home/Arduino/libraries/Arduino_DebugUtils/examples/Arduino_Debug_Basic<br>flash,%,/github/home/Arduino/libraries/Arduino_DebugUtils/examples/Arduino_Debug_Basic<br>RAM for global variables,%,/github/home/Arduino/libraries/Arduino_LPS22HB/examples/ReadPressure<br>flash,%,/github/home/Arduino/libraries/Arduino_LPS22HB/examples/ReadPressure<br>RAM for global variables,%,/github/home/Arduino/libraries/Arduino_LPS22HB/examples/ReadPressureImperial<br>flash,%,/github/home/Arduino/libraries/Arduino_LPS22HB/examples/ReadPressureImperial<br>RAM for global variables,%,/github/home/Arduino/libraries/ArduinoDMX/examples/DMXBlink<br>flash,%,/github/home/Arduino/libraries/ArduinoDMX/examples/DMXBlink<br>RAM for global variables,%,/github/home/Arduino/libraries/ArduinoDMX/examples/DMXFade<br>flash,%,/github/home/Arduino/libraries/ArduinoDMX/examples/DMXFade<br>RAM for global variables,%,/github/home/Arduino/libraries/ArduinoRS485/examples/RS485Passthrough<br>flash,%,/github/home/Arduino/libraries/ArduinoRS485/examples/RS485Passthrough<br>RAM for global variables,%,/github/home/Arduino/libraries/ArduinoRS485/examples/RS485Receiver<br>flash,%,/github/home/Arduino/libraries/ArduinoRS485/examples/RS485Receiver<br>RAM for global variables,%,/github/home/Arduino/libraries/ArduinoRS485/examples/RS485Sender<br>flash,%,/github/home/Arduino/libraries/ArduinoRS485/examples/RS485Sender<br>RAM for global variables,%,/github/home/Arduino/libraries/WiFiNINA/examples/AP_SimpleWebServer<br>flash,%,/github/home/Arduino/libraries/WiFiNINA/examples/AP_SimpleWebServer<br>RAM for global variables,%,/github/home/Arduino/libraries/WiFiNINA/examples/ConnectNoEncryption<br>flash,%,/github/home/Arduino/libraries/WiFiNINA/examples/ConnectNoEncryption<br>RAM for global variables,%,/github/home/Arduino/libraries/WiFiNINA/examples/ConnectWithWEP<br>flash,%,/github/home/Arduino/libraries/WiFiNINA/examples/ConnectWithWEP<br>RAM for global variables,%,/github/home/Arduino/libraries/WiFiNINA/examples/ConnectWithWPA<br>flash,%,/github/home/Arduino/libraries/WiFiNINA/examples/ConnectWithWPA<br>RAM for global variables,%,/github/home/Arduino/libraries/WiFiNINA/examples/ConnectWithWPA2Enterprise<br>flash,%,/github/home/Arduino/libraries/WiFiNINA/examples/ConnectWithWPA2Enterprise<br>RAM for global variables,%,/github/home/Arduino/libraries/WiFiNINA/examples/ScanNetworks<br>flash,%,/github/home/Arduino/libraries/WiFiNINA/examples/ScanNetworks<br>RAM for global variables,%,/github/home/Arduino/libraries/WiFiNINA/examples/ScanNetworksAdvanced<br>flash,%,/github/home/Arduino/libraries/WiFiNINA/examples/ScanNetworksAdvanced<br>RAM for global variables,%,/github/home/Arduino/libraries/WiFiNINA/examples/SimpleWebServerWiFi<br>flash,%,/github/home/Arduino/libraries/WiFiNINA/examples/SimpleWebServerWiFi<br>RAM for global variables,%,/github/home/Arduino/libraries/WiFiNINA/examples/Tools/CheckFirmwareVersion<br>flash,%,/github/home/Arduino/libraries/WiFiNINA/examples/Tools/CheckFirmwareVersion<br>RAM for global variables,%,/github/home/Arduino/libraries/WiFiNINA/examples/Tools/FirmwareUpdater<br>flash,%,/github/home/Arduino/libraries/WiFiNINA/examples/Tools/FirmwareUpdater<br>RAM for global variables,%,/github/home/Arduino/libraries/WiFiNINA/examples/Tools/SerialNINAPassthrough<br>flash,%,/github/home/Arduino/libraries/WiFiNINA/examples/Tools/SerialNINAPassthrough<br>RAM for global variables,%,/github/home/Arduino/libraries/WiFiNINA/examples/WiFiChatServer<br>flash,%,/github/home/Arduino/libraries/WiFiNINA/examples/WiFiChatServer<br>RAM for global variables,%,/github/home/Arduino/libraries/WiFiNINA/examples/WiFiPing<br>flash,%,/github/home/Arduino/libraries/WiFiNINA/examples/WiFiPing<br>RAM for global variables,%,/github/home/Arduino/libraries/WiFiNINA/examples/WiFiSSLClient<br>flash,%,/github/home/Arduino/libraries/WiFiNINA/examples/WiFiSSLClient<br>RAM for global variables,%,/github/home/Arduino/libraries/WiFiNINA/examples/WiFiStorage<br>flash,%,/github/home/Arduino/libraries/WiFiNINA/examples/WiFiStorage<br>RAM for global variables,%,/github/home/Arduino/libraries/WiFiNINA/examples/WiFiUdpNtpClient<br>flash,%,/github/home/Arduino/libraries/WiFiNINA/examples/WiFiUdpNtpClient<br>RAM for global variables,%,/github/home/Arduino/libraries/WiFiNINA/examples/WiFiUdpSendReceiveString<br>flash,%,/github/home/Arduino/libraries/WiFiNINA/examples/WiFiUdpSendReceiveString<br>RAM for global variables,%,/github/home/Arduino/libraries/WiFiNINA/examples/WiFiWebClient<br>flash,%,/github/home/Arduino/libraries/WiFiNINA/examples/WiFiWebClient<br>RAM for global variables,%,/github/home/Arduino/libraries/WiFiNINA/examples/WiFiWebClientRepeating<br>flash,%,/github/home/Arduino/libraries/WiFiNINA/examples/WiFiWebClientRepeating<br>RAM for global variables,%,/github/home/Arduino/libraries/WiFiNINA/examples/WiFiWebServer<br>flash,%,/github/home/Arduino/libraries/WiFiNINA/examples/WiFiWebServer<br>RAM for global variables,%,/github/home/Arduino/libraries/ArduinoMqttClient/examples/WiFiAdvancedCallback<br>flash,%,/github/home/Arduino/libraries/ArduinoMqttClient/examples/WiFiAdvancedCallback<br>RAM for global variables,%,/github/home/Arduino/libraries/ArduinoMqttClient/examples/WiFiEcho<br>flash,%,/github/home/Arduino/libraries/ArduinoMqttClient/examples/WiFiEcho<br>RAM for global variables,%,/github/home/Arduino/libraries/ArduinoMqttClient/examples/WiFiEchoCallback<br>flash,%,/github/home/Arduino/libraries/ArduinoMqttClient/examples/WiFiEchoCallback<br>RAM for global variables,%,/github/home/Arduino/libraries/ArduinoMqttClient/examples/WiFiSimpleReceive<br>flash,%,/github/home/Arduino/libraries/ArduinoMqttClient/examples/WiFiSimpleReceive<br>RAM for global variables,%,/github/home/Arduino/libraries/ArduinoMqttClient/examples/WiFiSimpleReceiveCallback<br>flash,%,/github/home/Arduino/libraries/ArduinoMqttClient/examples/WiFiSimpleReceiveCallback<br>RAM for global variables,%,/github/home/Arduino/libraries/ArduinoMqttClient/examples/WiFiSimpleSender<br>flash,%,/github/home/Arduino/libraries/ArduinoMqttClient/examples/WiFiSimpleSender<br>RAM for global variables,%,/github/home/Arduino/libraries/Arduino_OAuth/examples/Tweeter<br>flash,%,/github/home/Arduino/libraries/Arduino_OAuth/examples/Tweeter<br>RAM for global variables,%
arduino:megaavr:nona4809,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,14,0.03,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,6,0.01,0,0.0,0,0.0,0,0.0,16,0.03,0,0.0,6,0.01,0,0.0,16,0.03,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,6,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,18,0.04,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,6,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,16,0.03,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,6,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,6,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0
arduino:megaavr:uno2018:mode=off,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,14,0.03,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,6,0.01,0,0.0,0,0.0,0,0.0,16,0.03,0,0.0,6,0.01,0,0.0,18,0.04,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,6,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,18,0.04,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,6,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,16,0.03,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,6,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,6,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0
arduino:megaavr:uno2018:mode=on,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,14,0.03,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,6,0.01,0,0.0,0,0.0,0,0.0,16,0.03,0,0.0,6,0.01,0,0.0,18,0.04,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,6,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,18,0.04,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,6,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,16,0.03,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,6,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,6,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0

@facchinm
Copy link
Member

LGTM! Can someone else (thinking about @SpenceKonde and @MCUdude 😉 ) test this patch and report if it works fine? Thanks a lot!

@facchinm facchinm self-requested a review December 30, 2020 11:26
@CLAassistant
Copy link

CLAassistant commented Apr 9, 2021

CLA assistant check
All committers have signed the CLA.

@landret
Copy link
Contributor Author

landret commented May 22, 2021

LGTM! Can someone else (thinking about @SpenceKonde and @MCUdude wink ) test this patch and report if it works fine? Thanks a lot!

Just wanted to know if this patch was successfully tested by someone else. Thanks

@SpenceKonde
Copy link
Contributor

Haven't had a chance, too busty lately, It looks sound though. I'm just going to take it as is into DxCore (which does do PWM with type B timers, much as it pains me to see such capable3 utility timers reduced to 8-bit PWM) and see if anyone complains.

MCUdude added a commit to MCUdude/MegaCoreX that referenced this pull request May 23, 2021
@landret
Copy link
Contributor Author

landret commented Jun 13, 2021

Haven't had a chance, too busty lately, It looks sound though. I'm just going to take it as is into DxCore (which does do PWM with type B timers, much as it pains me to see such capable3 utility timers reduced to 8-bit PWM) and see if anyone complains.

@SpenceKonde did anyone complain since the integration into DxCore?

@landret
Copy link
Contributor Author

landret commented Jul 4, 2021

Haven't had a chance, too busty lately, It looks sound though. I'm just going to take it as is into DxCore (which does do PWM with type B timers, much as it pains me to see such capable3 utility timers reduced to 8-bit PWM) and see if anyone complains.

@SpenceKonde did anyone complain since the integration into DxCore?

Hi @SpenceKonde. Did you have feedback from DxCore users about this change?

@SpenceKonde
Copy link
Contributor

Nope. But... i also never remembered to do it. So that is less than helpful isn't it?
@MCUdude implemented it in his MegaCoreX though - he may have tested it.

The Dx-series, with 14 other, better PWM pins in the 48+ pin versions, and most of the type B timers not used by a pin at all (because there are better timers there) doesn't make for a place where this would be tested often....

@landret
Copy link
Contributor Author

landret commented Jul 5, 2021

Nope. But... i also never remembered to do it. So that is less than helpful isn't it?
@MCUdude implemented it in his MegaCoreX though - he may have tested it.

The Dx-series, with 14 other, better PWM pins in the 48+ pin versions, and most of the type B timers not used by a pin at all (because there are better timers there) doesn't make for a place where this would be tested often....

Hi @MCUdude. Did you implement this patch in MegaCoreX and did you have feedback from users?

Hi @MCUdude. Did you have complaints from users since you installed the patch in MegaCoreX ? Your feedback would be great so that we can move forward on this pull request. Thanks

@SpenceKonde
Copy link
Contributor

SpenceKonde commented Oct 2, 2021

I just realized why nobody ever complained about this bug on DxCore....

What value will the TEMP register be expected to have in it? When the timer was set up, if you set it to 8-bit PWM mode, the period gets written to the low byte, but actually will be written to the TCBn.TEMP register, before an initial value gets written to the high byte as a default duty cycle.

Each TCB has it's own TEMP register. So there are only four cases, that could cause an issue here, but most either don't, or are a wacky use case.

  • User wrote CCMPL to set the period, (50% chance they ran into the errata, and presumably figured it out and also set CCMPH). No problem. That's now the value in TEMP which gets written to the low byte, That's what the period is set to now, and they will be unsurprised to see that it didn't change the duty cycle though happy of that fact no doubt.
  • User reads the low byte. high byte copied to temp. Harmless, because that's probably what it already contains.
  • User writes a value to CNT, the other 16-bit register. Now, if they wrote just an 8-bit value to the low byte specifically, they will likely recognize that something is up because.... well, it didn't have any effect. If they wrote a 16-bit value, likely one under 255 (since it's in 8-bit pwm mode, why would they write a larger value?) - the value will be changed but they are now primed for disaster because now TEMP holds 0. The next analogWrite will set the timer period to 0, at which point either the pwm will likely be off continuously and other sketch functions intact, (if there's no ISR enabled) or OVF interrupts will fire every TCB clock, and only a small ISR would finish before the next one fires. Writing to the count register of a timer used for PWM is not a normal thing to do when analogWrite() is being used to control it, and is unusual even when it is.
  • User has read from CNT, which will have the same effect outlined above. Again, this requires a strange user action: Reading from the counter of a timer used for PWM. The only case where I can imagine this being relevant is if someone like, configured the type B timer to both output PWM and function as the timer for millis timekeeping, in which case another read from CNT is likely to happen (I don't think millis() iteself does, but micros will), and the millis ISR does take longer than 64 clocks, making for a dramatic and total failure.

Does the official core use a TCB configured for PWM as the millis timer? If so, this should be rectified posthaste, as micros() followed by analogWrite on the wrong pin would be expected to cause breakage, and is kinda not a rare thing to do.

The other things that can cause breakage are real wacky corner cases.

DxCore does not permit users to use the millis timer for PWM,

It also configures the timer very differently (I count to F_CPU/1000-1 - so I get exactly one millisecond per overflow, makes life easier and the mess of math to do the necessary division via bitshifts tractable.

Anyway, on DxCore, analogWrite treats a pin only driven by the a TCB used as millis timer as not having PWM available while megaTinyCore doesn't support the TCB for PWM at all (nobody has asked for it and pushed back on "We don't support that because it rarely gives you an extra pin, we don't have enough TCBs, and it would waste flash for everyone even those who didn't use it" and they've asked for about every wacky feature you can think of and plenty of things that you can't. Putting TCA0 into split mode gives people enough PWM pins that they rarely run out of PWM pins. 6 PWM channels on a part with 11 usable I/O pins, or 8 on a part with 17 or 21 usable I/O pins seems to be enough to keep people happy! (most use 1-series with 2 more from TCD0.... And I don't think I've even cleaned up and checked in the example of how to beat a third independent channel (same frequency) out of TCD0 using the CCL.... I also use every opportunity to disparage capability of the TCBs as PWM sources, since they, uh, do kinda suck at it.

The code suggested above is sound, sane and simple, fully consistent with datasheet guidelines. and I have no reservations about that implementation, which is going into DxCore now, though I was definitely tempted to just ignore it for the sake of saving... what, 5 clocks and 4 instruction words? when I realized the hoops one needs to jump through for it to be a problem and why nobody complained about it.

@landret
Copy link
Contributor Author

landret commented Oct 13, 2021

Thanks @SpenceKonde for your detailed feedback. Do you think Arduino will use AVR DA and DB processors for some of their future boards?

@facchinm this patch has been successfully tested in DxCore and is now part of it. Are there any additional tests or actions to do before implementing it in the megaavr lib?

@facchinm facchinm merged commit c31614b into arduino:master Oct 14, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants