Skip to content

Extended NO_LED_FEEDBACK_CODE to NO_LED_RECEIVE_FEEDBACK_CODE and NO_… #1106

Extended NO_LED_FEEDBACK_CODE to NO_LED_RECEIVE_FEEDBACK_CODE and NO_…

Extended NO_LED_FEEDBACK_CODE to NO_LED_RECEIVE_FEEDBACK_CODE and NO_… #1106

Workflow file for this run

# https://github.com/Arduino-IRremote/Arduino-IRremote/blob/master/.github/workflows/LibraryBuild.yml
# Github workflow script to test compile all examples of an Arduino library repository.
#
# Copyright (C) 2020-2023 Armin Joachimsmeyer
# https://github.com/ArminJo/Github-Actions
#
# Before being able to push to my .github\workflows directories,
# I had to create a new personal token with workflow enabled at https://github.com/settings/tokens
# This is the name of the workflow, visible on GitHub UI.
name: LibraryBuild
on:
workflow_dispatch: # To run it manually
description: 'manual build check'
push: # see: https://help.github.com/en/actions/reference/events-that-trigger-workflows#pull-request-event-pull_request
paths:
- '**.ino'
- '**.cpp'
- '**.hpp'
- '**.h'
- '**LibraryBuild.yml'
pull_request:
paths:
- '**.ino'
- '**.cpp'
- '**.hpp'
- '**.h'
- '**LibraryBuild.yml'
jobs:
build:
name: ${{ matrix.arduino-boards-fqbn }} - test compiling examples
runs-on: ubuntu-22.04 # I picked Ubuntu to use shell scripts.
strategy:
matrix:
# The matrix will produce one job for each configuration parameter of type `arduino-boards-fqbn`
# In the Arduino IDE, the fqbn is printed in the first line of the verbose output for compilation as parameter -fqbn=... for the "arduino-builder -dump-prefs" command
#
# Examples: arduino:avr:uno, arduino:avr:leonardo, arduino:avr:nano, arduino:avr:mega
# arduino:sam:arduino_due_x, arduino:samd:arduino_zero_native"
# ATTinyCore:avr:attinyx5:chip=85,clock=1internal
# STMicroelectronics:stm32:GenF1:pnum=BLUEPILL_F103C8
# esp8266:esp8266:huzzah:eesz=4M3M,xtal=80, esp32:esp32:featheresp32:FlashFreq=80
# You may add a suffix behind the fqbn with "|" to specify one board for e.g. different compile options like arduino:avr:uno|trace
#############################################################################################################
arduino-boards-fqbn:
- arduino:avr:uno
- arduino:avr:uno|DEBUG_TRACE
- arduino:avr:uno|USE_NO_SEND_PWM
- arduino:avr:uno|SEND_PWM_BY_TIMER
- arduino:avr:uno|USE_OPEN_DRAIN_OUTPUT_FOR_SEND_PIN
- arduino:avr:mega:cpu=atmega2560
- arduino:avr:leonardo
- arduino:megaavr:nona4809:mode=off
- arduino:samd:arduino_zero_native
- arduino:renesas_uno:unor4wifi
- adafruit:samd:adafruit_metro_m4:cache=on,speed=120,opt=small,maxqspi=50,usbstack=arduino,debug=off
- adafruit:samd:adafruit_itsybitsy_m4
- arduino:mbed:nano33ble
- arduino:mbed_rp2040:pico
- rp2040:rp2040:arduino_nano_connect
- ATTinyCore:avr:attinyx5micr:LTO=enable,sketchclock=16pll
- ATTinyCore:avr:attinyx7micr:LTO=enable,sketchclock=16external,pinmapping=new,millis=enabled
- ATTinyCore:avr:attinyx8micr:LTO=enable,sketchclock=16external,pinmapping=mhtiny,millis=enabled # ATtiny88 China clone board @16 MHz
- MegaCore:avr:128:bootloader=no_bootloader,eeprom=keep,BOD=2v7,LTO=Os_flto,clock=8MHz_internal # ATmega128
- SparkFun:avr:promicro
- megaTinyCore:megaavr:atxy4:chip=1604,clock=16internal
- megaTinyCore:megaavr:atxy7:chip=3217,clock=16internal
- esp8266:esp8266:d1_mini:eesz=4M3M,xtal=80
- esp32:esp32:featheresp32:FlashFreq=80
- esp32:esp32:esp32c3
- STMicroelectronics:stm32:GenF1:pnum=BLUEPILL_F103C8
- STMicroelectronics:stm32:GenL0:pnum=THUNDERPACK_L072
- stm32duino:STM32F1:genericSTM32F103C
- sandeepmistry:nRF5:BBCmicrobit
- Seeeduino:samd:seeed_XIAO_m0:usbstack=arduino,debug=off,sercom4=include
# Specify parameters for each board.
# With sketches-exclude you may exclude specific examples for a board. Use a comma separated list.
#############################################################################################################
include:
- arduino-boards-fqbn: arduino:avr:uno
build-properties: # the flags were put in compiler.cpp.extra_flags
ReceiveDemo: -DIR_REMOTE_DISABLE_RECEIVE_COMPLETE_CALLBACK
IRremoteExtensionTest: -DRAW_BUFFER_LENGTH=1200 -DIR_SEND_PIN=3
- arduino-boards-fqbn: arduino:avr:uno|DEBUG_TRACE
build-properties: # the flags were put in compiler.cpp.extra_flags
IRremoteExtensionTest: -DRAW_BUFFER_LENGTH=750 -DIR_SEND_PIN=3
TinyReceiver: -DUSE_CALLBACK_FOR_TINY_RECEIVER
All: -DEBUG -DTRACE
- arduino-boards-fqbn: arduino:avr:uno|USE_NO_SEND_PWM
build-properties: # the flags were put in compiler.cpp.extra_flags
IRremoteExtensionTest: -DRAW_BUFFER_LENGTH=750 -DIR_SEND_PIN=3
TinyReceiver: -DUSE_FAST_PROTOCOL
TinySender: -DUSE_FAST_PROTOCOL
All: -DUSE_NO_SEND_PWM
- arduino-boards-fqbn: arduino:avr:uno|SEND_PWM_BY_TIMER
sketches-exclude: UnitTest,MultipleSendPins
build-properties: # the flags were put in compiler.cpp.extra_flags
IRremoteExtensionTest: -DRAW_BUFFER_LENGTH=750 -DIR_SEND_PIN=3 -DSEND_PWM_BY_TIMER
ReceiveDemo: -DDECODE_ONKYO
TinyReceiver: -DUSE_ONKYO_PROTOCOL
TinySender: -DUSE_ONKYO_PROTOCOL
All: -DSEND_PWM_BY_TIMER
- arduino-boards-fqbn: arduino:avr:uno|USE_OPEN_DRAIN_OUTPUT_FOR_SEND_PIN
build-properties: # the flags were put in compiler.cpp.extra_flags
IRremoteExtensionTest: -DRAW_BUFFER_LENGTH=750 -DIR_SEND_PIN=3 -DUSE_OPEN_DRAIN_OUTPUT_FOR_SEND_PIN
SimpleSender: -DSEND_PWM_BY_TIMER
TinyReceiver: -DENABLE_NEC2_REPEATS
TinySender: -DENABLE_NEC2_REPEATS
All: -DUSE_OPEN_DRAIN_OUTPUT_FOR_SEND_PIN
- arduino-boards-fqbn: arduino:avr:mega:cpu=atmega2560
build-properties: # the flags were put in compiler.cpp.extra_flags
IRremoteExtensionTest: -DRAW_BUFFER_LENGTH=750
SimpleSender: -DSEND_PWM_BY_TIMER
TinyReceiver: -DDISABLE_PARITY_CHECKS
TinySender: -DDISABLE_PARITY_CHECKS
- arduino-boards-fqbn: arduino:avr:leonardo
build-properties: # the flags were put in compiler.cpp.extra_flags
IRremoteExtensionTest: -DRAW_BUFFER_LENGTH=750
TinyReceiver: -DNO_LED_FEEDBACK_CODE
TinySender: -DNO_LED_FEEDBACK_CODE
sketches-exclude: UnitTest # Sketch uses 28764 bytes (100%) of program storage space. Maximum is 28672 bytes
- arduino-boards-fqbn: arduino:megaavr:nona4809:mode=off
sketches-exclude: TinyReceiver,IRDispatcherDemo
build-properties: # the flags were put in compiler.cpp.extra_flags
IRremoteExtensionTest: -DRAW_BUFFER_LENGTH=750
SimpleSender: -DSEND_PWM_BY_TIMER
TinyReceiver: -DUSE_ONKYO_PROTOCOL -DENABLE_NEC2_REPEATS -DNO_LED_FEEDBACK_CODE -DUSE_CALLBACK_FOR_TINY_RECEIVER
TinySender: -DUSE_ONKYO_PROTOCOL -DENABLE_NEC2_REPEATS -DNO_LED_FEEDBACK_CODE
- arduino-boards-fqbn: arduino:samd:arduino_zero_native
sketches-exclude: TinyReceiver,IRDispatcherDemo
build-properties: # the flags were put in compiler.cpp.extra_flags
IRremoteExtensionTest: -DRAW_BUFFER_LENGTH=750
- arduino-boards-fqbn: arduino:renesas_uno:unor4wifi
sketches-exclude: TinyReceiver,IRDispatcherDemo
build-properties: # the flags were put in compiler.cpp.extra_flags
IRremoteExtensionTest: -DRAW_BUFFER_LENGTH=750
- arduino-boards-fqbn: adafruit:samd:adafruit_metro_m4:cache=on,speed=120,opt=small,maxqspi=50,usbstack=arduino,debug=off
platform-url: https://adafruit.github.io/arduino-board-index/package_adafruit_index.json
sketches-exclude: TinyReceiver,IRDispatcherDemo
build-properties: # the flags were put in compiler.cpp.extra_flags
IRremoteExtensionTest: -DRAW_BUFFER_LENGTH=750
- arduino-boards-fqbn: adafruit:samd:adafruit_itsybitsy_m4
platform-url: https://adafruit.github.io/arduino-board-index/package_adafruit_index.json
sketches-exclude: TinyReceiver,IRDispatcherDemo
build-properties: # the flags were put in compiler.cpp.extra_flags
IRremoteExtensionTest: -DRAW_BUFFER_LENGTH=750
- arduino-boards-fqbn: arduino:mbed:nano33ble
build-properties: # the flags were put in compiler.cpp.extra_flags
IRremoteExtensionTest: -DRAW_BUFFER_LENGTH=750
SimpleSender: -DSEND_PWM_BY_TIMER
#
# RP2040
#
- arduino-boards-fqbn: arduino:mbed_rp2040:pico
build-properties: # the flags were put in compiler.cpp.extra_flags
IRremoteExtensionTest: -DRAW_BUFFER_LENGTH=750
SimpleSender: -DSEND_PWM_BY_TIMER
- arduino-boards-fqbn: rp2040:rp2040:arduino_nano_connect
platform-url: https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json
build-properties: # the flags were put in compiler.cpp.extra_flags
IRremoteExtensionTest: -DSEND_PWM_BY_TIMER
SimpleSender: -DSEND_PWM_BY_TIMER
All: -DRAW_BUFFER_LENGTH=750
#
# megaTinyCore
#
- arduino-boards-fqbn: megaTinyCore:megaavr:atxy4:chip=1604,clock=16internal
arduino-platform: megaTinyCore:megaavr
platform-url: http://drazzy.com/package_drazzy.com_index.json
sketches-exclude: AllProtocolsOnLCD,UnitTest # UnitTest region `text' overflowed by 997 bytes
build-properties: # the flags were put in compiler.cpp.extra_flags
IRremoteExtensionTest: -DRAW_BUFFER_LENGTH=360
- arduino-boards-fqbn: megaTinyCore:megaavr:atxy7:chip=3217,clock=16internal
arduino-platform: megaTinyCore:megaavr
platform-url: http://drazzy.com/package_drazzy.com_index.json
sketches-exclude: AllProtocolsOnLCD
build-properties: # the flags were put in compiler.cpp.extra_flags
IRremoteExtensionTest: -DRAW_BUFFER_LENGTH=360
#
# ATTinyCore
#
- arduino-boards-fqbn: ATTinyCore:avr:attinyx5micr:LTO=enable,sketchclock=16pll
platform-url: http://drazzy.com/package_drazzy.com_index.json
required-libraries: ATtinySerialOut
sketch-names: TinyReceiver.ino,IRremoteInfo.ino,SimpleReceiver.ino,ReceiveDemo.ino,ControlRelay.ino,SimpleSender.ino,SendDemo.ino,SendRawDemo.ino,SendAndReceive.ino,SimpleReceiverForHashCodes.ino
build-properties: # the flags were put in compiler.cpp.extra_flags
SimpleSender: -DSEND_PWM_BY_TIMER
SimpleReceiver: -DDECODE_NEC
- arduino-boards-fqbn: ATTinyCore:avr:attinyx7micr:LTO=enable,sketchclock=16external,pinmapping=new,millis=enabled
platform-url: http://drazzy.com/package_drazzy.com_index.json
required-libraries: ATtinySerialOut
sketch-names: TinyReceiver.ino,IRremoteInfo.ino,SimpleReceiver.ino,ReceiveDemo.ino,ControlRelay.ino,SimpleSender.ino,SendDemo.ino,SendRawDemo.ino,SendAndReceive.ino,SimpleReceiverForHashCodes.ino
build-properties: # the flags were put in compiler.cpp.extra_flags
SimpleSender: -DSEND_PWM_BY_TIMER
- arduino-boards-fqbn: ATTinyCore:avr:attinyx8micr:LTO=enable,sketchclock=16external,pinmapping=mhtiny,millis=enabled # ATtiny88 China clone board @16 MHz
platform-url: http://drazzy.com/package_drazzy.com_index.json
required-libraries: ATtinySerialOut
sketch-names: TinyReceiver.ino,IRremoteInfo.ino,SimpleReceiver.ino,ReceiveDemo.ino,ControlRelay.ino,SimpleSender.ino,SendDemo.ino,SendRawDemo.ino,SendAndReceive.ino,SimpleReceiverForHashCodes.ino
build-properties: # the flags were put in compiler.cpp.extra_flags
SimpleSender: -DSEND_PWM_BY_TIMER
SimpleReceiver: -DDECODE_NEC
#
# MegaCore
#
- arduino-boards-fqbn: MegaCore:avr:128:bootloader=no_bootloader,eeprom=keep,BOD=2v7,LTO=Os_flto,clock=8MHz_internal
platform-url: https://mcudude.github.io/MegaCore/package_MCUdude_MegaCore_index.json
arduino-platform: arduino:avr,MegaCore:avr # gcc is taken from arduino:avr
build-properties: # the flags were put in compiler.cpp.extra_flags
SimpleSender: -DSEND_PWM_BY_TIMER
All: -DRAW_BUFFER_LENGTH=750
#
# ESP
#
- arduino-boards-fqbn: esp8266:esp8266:d1_mini:eesz=4M3M,xtal=80
platform-url: https://arduino.esp8266.com/stable/package_esp8266com_index.json
sketches-exclude: TinyReceiver
build-properties: # the flags were put in compiler.cpp.extra_flags
All: -DRAW_BUFFER_LENGTH=750
- arduino-boards-fqbn: esp32:esp32:featheresp32:FlashFreq=80
platform-url: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
sketches-exclude: TinyReceiver # undefined reference to `TwoWire::onReceive(void (*)(int))'
build-properties: # the flags were put in compiler.cpp.extra_flags. SEND_PWM_BY_TIMER is always enabled!
IRremoteExtensionTest: -MMD -c # see https://github.com/espressif/arduino-esp32/issues/8815
All: -DRAW_BUFFER_LENGTH=750 -MMD -c
- arduino-boards-fqbn: esp32:esp32:esp32c3
platform-url: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
sketches-exclude: TinyReceiver # undefined reference to `TwoWire::onReceive(void (*)(int))'
build-properties: # the flags were put in compiler.cpp.extra_flags. SEND_PWM_BY_TIMER is always enabled!
IRremoteExtensionTest: -MMD -c # see https://github.com/espressif/arduino-esp32/issues/8815
All: -DRAW_BUFFER_LENGTH=750 -MMD -c
#
# STM
#
- arduino-boards-fqbn: STMicroelectronics:stm32:GenF1:pnum=BLUEPILL_F103C8 # ST version
platform-url: https://raw.githubusercontent.com/stm32duino/BoardManagerFiles/main/package_stmicroelectronics_index.json
sketches-exclude: TinyReceiver
build-properties: # the flags were put in compiler.cpp.extra_flags
All: -DRAW_BUFFER_LENGTH=750
- arduino-boards-fqbn: STMicroelectronics:stm32:GenL0:pnum=THUNDERPACK_L072 # ST version
platform-url: https://raw.githubusercontent.com/stm32duino/BoardManagerFiles/main/package_stmicroelectronics_index.json
sketches-exclude: TinyReceiver,IRDispatcherDemo
build-properties: # the flags were put in compiler.cpp.extra_flags
All: -DRAW_BUFFER_LENGTH=750
- arduino-boards-fqbn: stm32duino:STM32F1:genericSTM32F103C # Roger Clark version
platform-url: http://dan.drown.org/stm32duino/package_STM32duino_index.json
sketches-exclude: TinyReceiver
build-properties: # the flags were put in compiler.cpp.extra_flags
All: -DRAW_BUFFER_LENGTH=750
#
# Others
#
- arduino-boards-fqbn: SparkFun:avr:promicro
arduino-platform: arduino:avr,SparkFun:avr
platform-url: https://raw.githubusercontent.com/sparkfun/Arduino_Boards/master/IDE_Board_Manager/package_sparkfun_index.json # Arduino URL is not required here
build-properties: # the flags were put in compiler.cpp.extra_flags. SEND_PWM_BY_TIMER is always enabled!
All: -DRAW_BUFFER_LENGTH=750
sketches-exclude: UnitTest # Sketch uses 28762 bytes (100%) of program storage space. Maximum is 28672 bytes.
- arduino-boards-fqbn: sandeepmistry:nRF5:BBCmicrobit
platform-url: https://sandeepmistry.github.io/arduino-nRF5/package_nRF5_boards_index.json
sketches-exclude: IRDispatcherDemo,MicroGirs,TinyReceiver
build-properties: # the flags were put in compiler.cpp.extra_flags
All: -DRAW_BUFFER_LENGTH=750
- arduino-boards-fqbn: Seeeduino:samd:seeed_XIAO_m0:usbstack=arduino,debug=off,sercom4=include
platform-url: https://files.seeedstudio.com/arduino/package_seeeduino_boards_index.json
sketches-exclude: AllProtocolsOnLCD,UnitTest,ReceiveAndSendDistanceWidth,ReceiveDemo,SimpleReceiverForHashCodes # No print(uint64_t,.) available
build-properties: # the flags were put in compiler.cpp.extra_flags
All: -DRAW_BUFFER_LENGTH=750
# fail-fast: false # false -> do not cancel all jobs / architectures if one job fails
steps:
- name: Checkout
uses: actions/checkout@master
- name: Compile all examples using the arduino-test-compile action
uses: ArminJo/arduino-test-compile@master
with:
arduino-board-fqbn: ${{ matrix.arduino-boards-fqbn }}
arduino-platform: ${{ matrix.arduino-platform }} # for MegaCore
platform-url: ${{ matrix.platform-url }}
required-libraries: ${{ matrix.required-libraries }}
sketch-names: ${{ matrix.sketch-names }} # Comma separated list of sketch names (without path, but with extension) or patterns to use in build
sketches-exclude: ${{ matrix.sketches-exclude }}
build-properties: ${{ toJson(matrix.build-properties) }}
# cli-version: 0.33.0 # to avoid errors for ATTinyCore
# debug-install: true
# debug-compile: true