Extended NO_LED_FEEDBACK_CODE to NO_LED_RECEIVE_FEEDBACK_CODE and NO_… #1106
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# 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 |