Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
306 commits
Select commit Hold shift + click to select a range
86f80f4
added optional support for hardware SPI
Mar 25, 2020
82f94cf
updated readme
Mar 25, 2020
05e0ac1
removing c++ violation
Mar 25, 2020
be7b3d5
more board testing and hwSPI demo
Mar 25, 2020
1d9cde8
updated CI
Mar 25, 2020
cdf897f
now build demos individually
Mar 25, 2020
52f2eb3
cleaner includes and removing avr
Mar 25, 2020
8370439
separating the boards into steps
Mar 25, 2020
e0fd3f6
Revert "separating the boards into steps"
Mar 25, 2020
b54c067
made the library work with any platform
Mar 26, 2020
0129316
more updated to increas compatibility
Mar 26, 2020
49893ad
updated readme and more boards in ci
Mar 26, 2020
e1ec67d
more readable ci scripts and removed old examples
Mar 26, 2020
b444e2e
installing board frameworks before compiling
Mar 26, 2020
605e9b1
removing install before build
Mar 27, 2020
f731091
made plain C functions always available
Mar 27, 2020
8992fa5
updated documentation
Mar 27, 2020
b65fbf8
fixing links and version 1.4.2
Mar 27, 2020
244a4de
updating tagged release
Mar 27, 2020
603d38b
The std functions now encapsulate the c functions
Mar 30, 2020
afbae9d
added more documentation
Mar 30, 2020
d45eab3
now building docs only with --build-docs in commit
Mar 30, 2020
d2f2d67
fixing doxygen job
Mar 30, 2020
a57d57a
version 1.5 and building 7-Segment in ci
Mar 30, 2020
0a37c4b
Activate instead of Shutdown on Setup
388298347 Apr 12, 2020
5f87ce8
Merge pull request #1 from 388298347/master
Apr 12, 2020
06b9ebd
Update FUNDING.yml
Apr 12, 2020
07bc350
Update allowable characters based on https://github.com/dmadison/LED-…
stephenhouser Apr 27, 2020
9feec84
Merge pull request #3 from stephenhouser/master
Apr 28, 2020
9cff27c
fixed moveUp and moveDown functions #2
Apr 28, 2020
06a404c
Merge branch 'master' of github.com:noah1510/LedController
Apr 28, 2020
43222d4
fixed reverse and rotate180 function #2
Apr 28, 2020
371b61c
improved include of pgmspace and array
Apr 28, 2020
fd46666
allow to set MAX_SEGMENTS before including lib
LennartHennigs Apr 29, 2020
8694894
better readability
Apr 29, 2020
91bc660
Merge pull request #5 from LennartHennigs/patch-3
Apr 29, 2020
db58da7
update to version 1.6
Apr 29, 2020
a80ec5d
added function to get a row of a segment #4
Apr 29, 2020
6a86f43
added ci and publishing of build artifacts
Apr 29, 2020
a01d4e7
fixed typo in ci
Apr 29, 2020
132b31b
only update row if there was a change
Apr 30, 2020
ac356fc
removed MAX_SEGMENT count #6
May 9, 2020
883696f
added automatic discord release notes
May 12, 2020
09b1a2e
Create SECURITY.md
May 15, 2020
a705dba
added function for seperate initilization
May 15, 2020
ed75101
added checks for isInitilized
May 15, 2020
51b2358
added copy constructor and removed std
May 15, 2020
df480bf
renamed C_ByteBlock to ByteBlock
May 15, 2020
aa329b1
updated description and small ci improvements
May 15, 2020
2a59184
using pip3 instead of pip
May 15, 2020
c0d0ce5
ci install missing setuptools
May 15, 2020
4bbc3ca
fixing typo and missing nullptr check
May 15, 2020
85b0792
small fixes
CallMeElle May 15, 2020
25540c4
Getting LedController to display stuff again
CallMeElle May 17, 2020
81c11f1
version 1.7.0
May 17, 2020
93b50da
funding.yaml with paypal and github sponsors
May 25, 2020
a76c7a4
added codeinspector to action
May 26, 2020
be1b2a5
added conde-inspector to stable release
May 26, 2020
ade1bb9
Update SECURITY.md
May 29, 2020
93c93c5
Update README.md
Jun 9, 2020
c2c038f
clearing segment before refresh
CallMeElle Aug 2, 2020
a1f3b25
Merge branch 'master' of github.com:noah1510/LedController
CallMeElle Aug 2, 2020
999fa48
updating refreshSegments and adding updateSegments
Aug 6, 2020
9ca4a5c
updating version to 1.7.1
Aug 6, 2020
8bdcff9
Merge branch 'master' into 1.7.x
Aug 6, 2020
6fa980a
added seperate class for configuration
Aug 7, 2020
f2d179c
using controller_configuration for init
Aug 7, 2020
1eadda4
version 1.7.2
Aug 7, 2020
8d723ff
Restyled by astyle
restyled-commits Aug 7, 2020
fc2f180
Restyled by clang-format
restyled-commits Aug 7, 2020
0544105
Restyled by whitespace
restyled-commits Aug 7, 2020
3ab9717
Merge pull request #8 from noah1510/restyled/1.7.x
Aug 7, 2020
ffab162
moving check to configuration
Aug 7, 2020
4bad08d
assigning MOSI and CLK in the right place
Aug 7, 2020
6f73249
updated ci and using const&
Aug 7, 2020
7a6a56c
co ignoring restyled
Aug 7, 2020
9f0eeca
Restyled by astyle
restyled-commits Aug 7, 2020
88f5bcc
Restyled by clang-format
restyled-commits Aug 7, 2020
019e9bc
Merge pull request #9 from noah1510/restyled/1.7.x
Aug 7, 2020
fdcfba6
Merge pull request #7 from noah1510/1.7.x
Aug 7, 2020
a4037e2
allowing to send all date even if no change
Aug 17, 2020
e2c66ab
allowing to change spi transfer speed
Aug 17, 2020
aa09c98
get multi row support working
Aug 17, 2020
93cf51b
updated ci and split init function
Aug 17, 2020
49eecd3
splitting init in more parts
Aug 17, 2020
3fef7a2
fixing row calculation in SPI Transfer function
CallMeElle Sep 24, 2020
f118f38
adding a getRow function to the configuration
Sep 25, 2020
ae34c0e
added unit testing and first unit test
Oct 5, 2020
8440200
creating a common test
Oct 5, 2020
ee69b80
more unit test and minor fixes
Oct 7, 2020
e9e6e3b
fixed move Right to work correctly with multi row
Oct 7, 2020
d00b3c6
improving code quality of tests
Oct 7, 2020
f09f14b
more improvements to the tests
Oct 7, 2020
456801a
added multirow display and get Segment functions
Oct 7, 2020
1603f71
allow disable of config output and more tests
Oct 8, 2020
6f06f41
added 2.0.x~dev migration note to readme
Oct 11, 2020
301de25
more documentation updates
Oct 11, 2020
111db1d
Update README.md
Nov 27, 2020
fb3d2f5
Update README.md
Dec 13, 2020
09251f4
adding byteblock class #13
Dec 19, 2020
f233223
Merge branch 'master' of github.com:noah1510/LedController
Dec 19, 2020
3ddaf77
adding assignment operator to get ci working
Dec 19, 2020
a2b5bb9
finally getting initilizer list to work
Dec 19, 2020
676cf2e
added function that return ByteBlock as type #13
Dec 19, 2020
d111a48
added initial byterow and byteblock as child #14
Dec 20, 2020
8b2313e
small improvement to local test script
Dec 20, 2020
88b2a66
LedController as template
Dec 20, 2020
e080e39
reqritten tests for template classes
Dec 20, 2020
025f733
removing numSegments from constructor and init
Dec 20, 2020
b6ad736
more progress on rewrite as template class
Dec 21, 2020
f4efaa6
added deprecation information for functions
Dec 21, 2020
fe5498f
minor additions and updates
Dec 21, 2020
3754d69
improvements to movement functions
Dec 21, 2020
5570053
fixed wrapping in moveLeft multirow
Dec 29, 2020
b188f62
fully working moveLeft and moveRight
Dec 29, 2020
13c7522
updated documentation pages
Dec 29, 2020
e7d1a29
2.0.0-rc1 --build-docs
Dec 29, 2020
957e47e
moving some tests around
Dec 30, 2020
b0bc45b
new example
Dec 30, 2020
4bad113
split LedController definitions even more
Dec 30, 2020
11fcf53
small fix to automatically use real MultiRow
Dec 30, 2020
49cc2f8
added examples to doxygen --build-docs
Dec 30, 2020
c933653
simplified ci and updated mainpage
Dec 30, 2020
1010120
updated docs and rc1
Dec 30, 2020
5d92894
documentation updates; prepare for multi lang doc
Jan 17, 2021
34cd581
more documentation updates
Jan 17, 2021
94819fa
finished multi_row doc
Jan 17, 2021
5a27d83
german translation of controller_configuration
Jan 17, 2021
b329f25
documented ByteRow & ByteBlock
Jan 17, 2021
24a5225
building multi lang docs --build-docs
Jan 18, 2021
67fecb7
manuallly create doc/html in ci --build-docs
Jan 18, 2021
005d0bb
added language selection
Jan 18, 2021
9b69c1b
moving pages
Jan 18, 2021
05d6428
finishing english movement documentation
Jan 18, 2021
de6f2d1
more german pages
Jan 18, 2021
68a563a
german install instructions --build-docs
Jan 18, 2021
c297453
Tweaking the 7_Segement Example #24
Jan 24, 2021
792756e
finished translation of LedController class #11
Jan 24, 2021
227a625
Merge branch 'master' of github.com:noah1510/LedController
Jan 24, 2021
ea8a571
german multi_row doc
Jan 24, 2021
8c2700b
german movement page
Jan 24, 2021
4914d22
preparations for multilingual examples
Jan 24, 2021
63eee2e
v2.0.0-rc2
Jan 24, 2021
8bda246
updating ci script to use correct path again
Jan 24, 2021
3fafab2
german usage page --build-docs
Jan 24, 2021
d882c10
fixing doxygen warnings & warning for all langs
Jan 25, 2021
bef9bc5
german demo Countine #11
Jan 25, 2021
05af422
german Demo Hardware SPI #11
Jan 25, 2021
63ace99
german demo Rocket #11
Jan 25, 2021
39543da
German Demo Rocket Multi #11
Jan 25, 2021
aad3d52
german 7-Segment #11 --build-docs
Jan 25, 2021
3e96fe3
fixing a compiler warning and parallel scripts
Jan 25, 2021
1f4d441
adding arduino library badge & fixed link
Feb 12, 2021
0847cd4
added operator overloads to ByteRow
Feb 13, 2021
5c78123
Merge branch 'master' of github.com:noah1510/LedController
Feb 16, 2021
885f397
fixing behaviour of makeColumns (this breaks code)
Feb 16, 2021
02752b7
a new example for LedMatrix use
Feb 16, 2021
1834f5c
changed naming scheme of examples
Feb 16, 2021
c52090b
added new 7-Segment example
Feb 16, 2021
99e2172
making led-matrix-rocket smaller
Feb 16, 2021
5400142
added controller_configuration page
Feb 16, 2021
caa370b
minor fixes and rc3
Feb 16, 2021
f24966b
updated board list in README
Feb 19, 2021
5a43768
ByteRow equal comparison and small fixes
Feb 22, 2021
166632a
allowing user defined debug output function
Feb 22, 2021
d05c68f
Merge branch 'master' of github.com:noah1510/LedController
Feb 22, 2021
469fae4
moving opcodes and chartable into class
Feb 22, 2021
f784013
moving implementations to src/implementations
Feb 23, 2021
0c5be22
untracking .vscode contents
Feb 23, 2021
11bac7a
small improvemnts to movement & better unit tests
Feb 23, 2021
c00b6c3
moved reverse unit tests to transfomration.Xpp
Feb 23, 2021
be6d694
added restyled options
Feb 23, 2021
2ebd5ca
Restyled by astyle
restyled-commits Feb 23, 2021
821c9a6
Merge pull request #33 from noah1510/restyled/master
Feb 23, 2021
5c7c447
manually adding .ino
Feb 23, 2021
2480486
Merge branch 'master' of github.com:noah1510/LedController
Feb 23, 2021
6ffda4a
more improvements to style.yaml
Feb 23, 2021
70c8f78
more restructuring of .restyled.xaml
Feb 23, 2021
d970705
even more changes to restyled config
Feb 23, 2021
0443b7b
once again a fix for restyled
Feb 23, 2021
f6c2644
removing recursive option for astyle
Feb 23, 2021
628128e
Restyled by astyle
restyled-commits Feb 23, 2021
0ea741c
Restyled by astyle
restyled-commits Feb 23, 2021
ce5d0cd
Merge pull request #34 from noah1510/restyled/master
Feb 23, 2021
49eaa94
Merge pull request #32 from noah1510/master
Feb 23, 2021
0a39282
moving transformation operations into ByteBlock
Feb 23, 2021
1d481a1
added documentation to ByteBlock class
Feb 23, 2021
8e3d6b6
updated examples with new ByteBlock functions
Feb 23, 2021
ab3f4b6
added unit test for rotate180
Feb 23, 2021
6864bea
getteing Led-matrix-rocket to wrok again
Feb 23, 2021
2e6fd1b
working virtual multi row
Feb 23, 2021
8811dfb
moving classes into sakurajin namespace
Feb 23, 2021
b3a50a8
moving LedController to sakurajin namespace
Feb 23, 2021
5a374c9
Update Crowdin configuration file
Feb 24, 2021
f7aa20d
Delete crowdin.yml
Feb 24, 2021
80bcb45
MAX72XX as own class, charTable class
Feb 28, 2021
5edd1de
getting ci_local to exit on error
Feb 28, 2021
d13b90e
adding LedController c++20 module file
Feb 28, 2021
3c9cc4d
updated docs with namespace & rc4 prep
Feb 28, 2021
bf7f123
fixing wrong byte order in movement
Feb 28, 2021
a3b6798
fixing rocket in all examples
Feb 28, 2021
df8d667
better controller_configuration.isValid check
Feb 28, 2021
c8d87bd
build system updates
Feb 28, 2021
3cff5f4
improved unit tests
Feb 28, 2021
a8880e7
Restyled by astyle
restyled-commits Feb 28, 2021
b122543
Restyled by astyle
restyled-commits Feb 28, 2021
77b7ecf
Merge pull request #38 from noah1510/restyled/2.0.x
Feb 28, 2021
09013f5
Merge pull request #37 from noah1510/2.0.x
Feb 28, 2021
a820e8f
removing discord notifications and small doc fix
Feb 28, 2021
d83b1b2
making every function as noexcept
Mar 5, 2021
ded81e3
building pdf reference manual
Mar 5, 2021
38a0788
fixing syntax in ci files
Mar 5, 2021
35ad9ed
Installing more latex packages in CI
Mar 5, 2021
71d0450
fixing and testing setColumn and setLED
Mar 6, 2021
3039652
small improvements to the doxygen output
Mar 6, 2021
94cde13
adding example images
Mar 6, 2021
f4a9f6c
[ImgBot] Optimize images
ImgBotApp Mar 6, 2021
33af12b
Merge pull request #39 from noah1510/imgbot
Mar 7, 2021
66583ad
new example and updated doxyfile
Mar 18, 2021
00508d6
improvements to the new example
Mar 18, 2021
90a0f06
Merge branch 'master' of https://github.com/noah1510/LedController
Mar 18, 2021
6d0b530
installing lib needed for new example in ci
Mar 18, 2021
390db36
adding all boards from ci as env
Mar 18, 2021
c01e475
manually install adafruit unified sensor in ci
Mar 18, 2021
246858d
installing lib globally
Mar 19, 2021
6cc865b
adding assert.h to fix ci
Mar 19, 2021
ce00946
removing assert statement
Mar 19, 2021
e578518
Fix the argument order for LedController
milesdai May 21, 2021
8f3427b
Restyled by astyle
restyled-commits May 21, 2021
7f0b0ae
Merge pull request #43 from noah1510/restyled/pull-42
May 30, 2021
d37e541
same as #43 just for german example
May 30, 2021
17ce7f6
updating the version number in libraries.properties
Jun 1, 2021
b6b9a72
bumping the version to 2.0.1 to rerelease 2.0.0
Jun 1, 2021
957259f
Restyled by astyle
restyled-commits Jun 1, 2021
a955098
Merge pull request #45 from noah1510/restyled/master
Jun 1, 2021
5e6b205
fixing move up and down
Jun 23, 2022
a7053d6
switching to new code-inspector api
Jun 24, 2022
5766f13
bumping version to 2.0.2
Jun 24, 2022
54aca23
change variable name for spi pins
noah1510 Dec 13, 2022
972fec1
removing non api/HardwareSPI.h functions
noah1510 Dec 15, 2022
0e868b8
replace Bxxxxxxxx with 0bxxxxxxxx in controller code
noah1510 Dec 15, 2022
4bb55de
replace byte literals in all examples
noah1510 Dec 15, 2022
0277ef5
Adding CI build action
aentinger Nov 17, 2022
4e1489f
Add CI compile badge and required dependencies
aentinger Nov 18, 2022
8da41cb
Disable -Werror for ESP32; sktech path to english examples
aentinger Nov 30, 2022
d60d0e1
merge ci and latest actions file into compile-examples
noah1510 Dec 15, 2022
6d1e229
merge rc and stable ci files into compile-examples
noah1510 Dec 15, 2022
5a40568
removing the no longer existing badge from the readme
noah1510 Dec 15, 2022
e3c89cb
caching pio installation in ci
noah1510 Dec 15, 2022
cf7c2e0
adding pyserial to pip cache
noah1510 Dec 15, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# These are supported funding model platforms

github: ['noah1510'] # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
patreon: noasakurajin
open_collective: # Replace with a single Open Collective username
ko_fi: # Replace with a single Ko-fi username
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
liberapay: # Replace with a single Liberapay username
issuehunt: # Replace with a single IssueHunt username
otechie: # Replace with a single Otechie username
custom: ['https://www.paypal.me/noasakurajin'] # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
257 changes: 257 additions & 0 deletions .github/workflows/compile-examples.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,257 @@
name: Compile Examples

on:
pull_request:
paths:
- ".github/workflows/compile-examples.yml"
- "examples/**"
- "src/**"
push:
tags:
- 'v*'
branches:
- 'master'
paths:
- ".github/workflows/compile-examples.yml"
- "examples/**"
- "src/**"

jobs:
build-arduino:
runs-on: ubuntu-latest

env:
SKETCHES_REPORTS_PATH: sketches-reports
LIBRARIES: |
# Install the library from the local path.
- source-path: ./
- name: Adafruit Unified Sensor
- name: DHT sensor library

strategy:
fail-fast: false

matrix:
board:
- fqbn: arduino:avr:uno
platforms: |
- name: arduino:avr

- fqbn: arduino:samd:mkr1000
platforms: |
- name: arduino:samd
- fqbn: arduino:samd:mkrzero
platforms: |
- name: arduino:samd
- fqbn: arduino:samd:mkrwifi1010
platforms: |
- name: arduino:samd
- fqbn: arduino:samd:mkrfox1200
platforms: |
- name: arduino:samd
- fqbn: arduino:samd:mkrwan1300
platforms: |
- name: arduino:samd
- fqbn: arduino:samd:mkrwan1310
platforms: |
- name: arduino:samd
- fqbn: arduino:samd:mkrgsm1400
platforms: |
- name: arduino:samd
- fqbn: arduino:samd:mkrnb1500
platforms: |
- name: arduino:samd
- fqbn: arduino:samd:mkrvidor4000
platforms: |
- name: arduino:samd
- fqbn: arduino:mbed_portenta:envie_m7
platforms: |
- name: arduino:mbed_portenta
- fqbn: arduino:mbed_portenta:envie_m4
platforms: |
- name: arduino:mbed_portenta
- fqbn: arduino:mbed_nano:nano33ble
platforms: |
- name: arduino:mbed_nano
- fqbn: arduino:mbed_nano:nanorp2040connect
platforms: |
- name: arduino:mbed_nano
- fqbn: arduino:mbed_edge:edge_control
platforms: |
- name: arduino:mbed_edge
- fqbn: esp32:esp32:esp32
platforms: |
- name: esp32:esp32
source-url: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
- fqbn: rp2040:rp2040:rpipico
platforms: |
- name: rp2040:rp2040
source-url: https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json

steps:
- name: Checkout
uses: actions/checkout@v3

- name: setup python
uses: actions/setup-python@v4
with:
python-version: '3.9'
cache: 'pip'
- name: install pip dependencies
run: pip install pyserial

- name: Compile examples
uses: arduino/compile-sketches@v1
with:
fqbn: ${{ matrix.board.fqbn }}
platforms: ${{ matrix.board.platforms }}
libraries: ${{ env.LIBRARIES }}
enable-deltas-report: true
sketch-paths: "examples/english"
sketches-report-path: ${{ env.SKETCHES_REPORTS_PATH }}
cli-compile-flags: |
- --warnings
- default

- name: Save memory usage change report as artifact
if: github.event_name == 'pull_request'
uses: actions/upload-artifact@v3
with:
name: ${{ env.SKETCHES_REPORTS_PATH }}
path: ${{ env.SKETCHES_REPORTS_PATH }}

- uses: actions/upload-artifact@v1
if: failure()
with:
name: build-artifact
path: .

build-pio:
runs-on: ubuntu-latest

strategy:
fail-fast: false

matrix:
boards:
- name: esp32dev
- name: d1_mini
- name: uno
- name: ATmega1280
- name: leonardo
- name: due
- name: teensy41
- name: bluefruitmicro

examples:
- name: Led-matrix-rocket
- name: Led-matrix-rocket-multi
- name: Led-matrix-counting
- name: Led-matrix-rocket-hwSPI
- name: Led-matrix-message
- name: 7-Segment-counting
- name: 7-Segment-DHT-temp-humid

steps:
- name: Checkout
uses: actions/checkout@v3
- name: setup python
uses: actions/setup-python@v4
with:
python-version: '3.9'
cache: 'pip'
- name: install pip dependencies
run: pip install -r ./.scripts/requirements.txt
- name: setup pio
run: |
python3 -m platformio update
python3 -m platformio lib -g install "adafruit/DHT sensor library"
python3 -m platformio lib -g install "adafruit/Adafruit Unified Sensor"

- name: compile examples
run: PLATFORMIO_CI_SRC="examples/english/${{ matrix.examples.name }}/${{ matrix.examples.name }}.ino" python3 -m platformio ci --lib="." -b ${{ matrix.boards.name }}

- uses: actions/upload-artifact@v1
if: failure()
with:
name: build-artifact
path: .

update-release:
name: "update the latest release"
runs-on: ubuntu-latest
needs: [build-pio, build-arduino]

steps:
- name: Checkout
uses: actions/checkout@v3

- name: install doc deps
run: sudo apt-get install --yes doxygen graphviz latexmk texlive-latex-extra

- name: prepare for building docs
run: |
mkdir -p doc/html
mkdir -p doc/latex

- name: build documentation
run: bash .scripts/doxygen_multilang.sh

- name: pack repo
run: |
zip -r latest.zip src License README.md library.properties keywords.txt .vscode examples src

- name: Check code meets quality standards
id: codiga
uses: codiga/github-action@master
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
codiga_api_token: ${{ secrets.CODIGA_API_TOKEN }}
min_quality_grade: 'EXCELLENT'
min_quality_score: '99'
max_defects_rate: '0.01'
max_complex_functions_rate: '0.01'
max_long_functions_rate: '0.01'
project_name: 'LedController'
max_timeout_sec: '600'

- name: update latest release
if: ${{ github.ref_name == 'master' }}
uses: "marvinpinto/action-automatic-releases@latest"
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
automatic_release_tag: "latest"
prerelease: true
title: "Development Build"
files: |
License
latest.zip
refman_english.pdf
refman_german.pdf

- name: update stable release
if: ${{ github.ref_type == 'tag' }}
uses: "marvinpinto/action-automatic-releases@latest"
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
prerelease: ${{ endsWith( github.ref_name, 'rc') }}
files: |
License
release.zip
refman_english.pdf
refman_german.pdf

- name: Deploy to pages
if: ${{ contains(github.event.head_commit.message, '--build-docs') }}
uses: s0/git-publish-subdir-action@master
env:
REPO: self
BRANCH: gh-pages
FOLDER: doc/html
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- uses: actions/upload-artifact@v1
if: failure()
with:
name: build-artifact-${{ matrix.os }}-${{ matrix.compiler }}
path: .
13 changes: 13 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
doc/html
doc/man
doc/latex
doxywarn*.txt
refman_*.pdf

.vscode
.idea
logs
.pio
src/*.ino
*.~*#
*.orig
13 changes: 13 additions & 0 deletions .restyled.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
restylers:
- name: astyle
enabled: true
arguments: ["--style=google","--indent-namespaces", "--indent-col1-comments"]
include:
- "**/*.hpp"
- "**/*.cpp"
- name: astyle
enabled: true
arguments: ["--style=attach","--indent=spaces=2", "--indent-col1-comments"]
include:
- "**/*.ino"

86 changes: 86 additions & 0 deletions .scripts/ci_local.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
#!/bin/bash

BUILDMODE="full"
MAX_CORES="4"

if [ $1 ]
then
if [ $1 == '--fast' ]
then
BUILDMODE="fast"
fi

if [ $1 == '--test-only' ]
then
BUILDMODE="test-only"
fi

if [ $1 == '--scan-only' ]
then
BUILDMODE="scan-only"
fi

if [ $1 == '--all-esp32' ]
then
BUILDMODE="all-esp32"
fi
fi

if [ $BUILDMODE == "fast" ]
then
echo "doing the fast test with 2 boards and 2 examples"
boards=("esp32dev" "ATmega1280")
examples=("7-Segment-counting" "Led-matrix-rocket-hwSPI")
else
if [ $BUILDMODE == "full" ]
then
echo "doing the full test with 5 boards and 6 examles"
boards=("esp32dev" "d1_mini" "uno" "ATmega1280" "leonardo" "due" "teensy41" "bluefruitmicro")
else
echo "doing the full test with 1 board and 6 examles"
boards=("esp32dev")
fi
examples=("Led-matrix-rocket" "Led-matrix-rocket-multi" "Led-matrix-counting" "Led-matrix-rocket-hwSPI" "Led-matrix-message" "7-Segment-counting" "7-Segment-DHT-temp-humid")
fi

function build(){
local ex=$1
local board=$2
PLATFORMIO_CI_SRC="examples/english/$ex/$ex.ino" python3 -m platformio ci --lib="." -b $board > >(tee logs/$ex-$board.log) 2> >(tee logs/$ex-$board.error.log >&2)
if [ $? -eq 1 ]
then
echo "error while building $ex"
touch error.tmp
fi
}

if [ $BUILDMODE != "test-only" ] && [ $BUILDMODE != "scan-only" ]
then
rm -rf logs
mkdir logs
for ex in "${examples[@]}"; do
for board in "${boards[@]}"; do
((i=i%MAX_CORES)); ((i++==0)) && wait
build "$ex" "$board" &
done
done
wait

if [ -f "error.tmp" ]
then
echo "error while building"
rm error.tmp
exit 1
fi
fi

if [ $BUILDMODE != "scan-only" ]
then
echo "running the native unit tests"
python3 -m platformio test -e native > >(tee logs/tests.log) 2> >(tee logs/tests.error.log >&2)
fi

echo "The following warnings/error are about the LedController:"
grep LedController logs/*error.log

exit 0
Loading