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

Overload begin, abstract some docs, & patch printf for mbed #750

Merged
merged 62 commits into from
Apr 11, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
62 commits
Select commit Hold shift + click to select a range
84f5104
abstract related pages from header
2bndy5 Mar 15, 2021
91e0814
convert _SPI calls to pointers where applicable
2bndy5 Mar 15, 2021
87fee96
typo made BCM driver fail
2bndy5 Mar 15, 2021
3369dae
overload begin() and amended docs about begin()
2bndy5 Mar 15, 2021
4bb27dc
fix faulty #ifdef logic
2bndy5 Mar 15, 2021
576e004
doxygen v1.9.1 deprecated COLS_IN_ALPHA_INDEX tag
2bndy5 Mar 15, 2021
06a3625
bump version to v1.4.0
2bndy5 Mar 15, 2021
0d5497a
exclude only RF24_LINUX
2bndy5 Mar 16, 2021
6faebc2
apply ptr treatment to Teensy, LittleWire, & Due
2bndy5 Mar 18, 2021
252dfb4
trigger ArduinoCLI action
2bndy5 Mar 18, 2021
95d73d1
doxygen action shouldn't create a docs folder
2bndy5 Mar 18, 2021
3ee4ab6
no need to specify output dir in doxygen action
2bndy5 Mar 19, 2021
0bbf5f4
make my life simpler: use new RF24_SPI_PTR macro
2bndy5 Mar 19, 2021
d2f9402
trigger ArduinoCLI action
2bndy5 Mar 19, 2021
7d20a60
forgot about c'tor; fix 2-space indent in begin()
2bndy5 Mar 19, 2021
cf2a6c2
abstract SPI::begin() from _init_pins()
2bndy5 Mar 19, 2021
4c77eb2
adjust csn_pin before SPI.begin() on BCM driver
2bndy5 Mar 19, 2021
7c86f8a
conforming whitespace
2bndy5 Mar 19, 2021
155f991
add printf.h fix from @TonioChingon in #739
2bndy5 Mar 19, 2021
4a7e282
rename atxmega.md & add link to supported product
2bndy5 Mar 19, 2021
1abbdab
add Due to ArduinoCLI action
2bndy5 Mar 19, 2021
9066a83
fix teensy support; add PIO CI for teensy
2bndy5 Mar 20, 2021
926ee5f
[PIO CI] use quoted matrix entries
2bndy5 Mar 20, 2021
eb530db
[PIO CI] use single quotes?
2bndy5 Mar 20, 2021
d280fbe
I hate YML
2bndy5 Mar 20, 2021
8fe0864
Gimme that badge
2bndy5 Mar 20, 2021
200d1d1
add MRAA to Linux CI action
2bndy5 Mar 20, 2021
4e462ea
typo
2bndy5 Mar 20, 2021
f2f317f
[Linux CI] MRAA install needs special permission
2bndy5 Mar 20, 2021
468bbc6
try with "sudo bash -c"
2bndy5 Mar 20, 2021
6ca0107
[Linux CI] MRAA not cross compiling (I think)
2bndy5 Mar 20, 2021
09ec150
add example code snippets to Arduino support pg
2bndy5 Mar 20, 2021
c0b4794
doc typos
2bndy5 Mar 20, 2021
340f319
Due can't use SPI_PTR; delete ATXMEGA/readme.md
2bndy5 Mar 21, 2021
179deb4
fix #414; note need mbed example in arduino.md
2bndy5 Mar 21, 2021
0f47bdf
fix printf() only for adafruit/ArduinoCore-SAMD
2bndy5 Mar 21, 2021
5428a00
add msg about COMMON_ISSUES to README
2bndy5 Mar 21, 2021
cf90932
add estimated mbed example to arduino.md
2bndy5 Mar 22, 2021
776cab2
avr/pgmspace.h was added to Due core in 2013
2bndy5 Mar 22, 2021
4fbf77b
oops, undo my testing change
2bndy5 Mar 22, 2021
9adccec
remove useless Due config file #752
2bndy5 Mar 23, 2021
8f45321
ammend support for SPI_UART in csn()
2bndy5 Mar 23, 2021
e9c45d5
Confirm working 2nd SPI bus on esp8266 #648
2bndy5 Mar 28, 2021
08eda02
fix indent
2bndy5 Mar 28, 2021
627d8e7
c-n-p artifact; more indent inconcsistencies
2bndy5 Mar 28, 2021
e14aba6
comment out theroretical example snippets
2bndy5 Mar 28, 2021
ce54545
add pinout img from RF24Audio repo
2bndy5 Mar 30, 2021
07d247c
doxygen sux at reading imgs
2bndy5 Mar 30, 2021
e8ed75d
implement #539
2bndy5 Mar 31, 2021
8c5e887
my CnP skills are lacking
2bndy5 Mar 31, 2021
bbefcc0
need to test py wrapper
2bndy5 Mar 31, 2021
d14818c
[py_wrap] begin fails to compile
2bndy5 Mar 31, 2021
e3aec2b
[py wrap] oops left the old begin still in there
2bndy5 Mar 31, 2021
8a0929c
[py wrap] use thin wrapper for begin_w/_pins
2bndy5 Mar 31, 2021
1cc1147
[pr wrap] try explicit begin(void)
2bndy5 Mar 31, 2021
89e0482
boost.py docs suck
2bndy5 Mar 31, 2021
c7e61e6
[py wrap] try using same name for begin(pin, pin)
2bndy5 Mar 31, 2021
374bbd3
[py wrap] c'tor overload is bad
2bndy5 Mar 31, 2021
c813965
[py wrap] "optional<>" template didn't take
2bndy5 Mar 31, 2021
6932941
[py wrap] unmatched parenthesis
2bndy5 Mar 31, 2021
eaded4d
advise that teensy doesn't need overloaded begin()
2bndy5 Mar 31, 2021
74b653b
docs review
2bndy5 Mar 31, 2021
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
2 changes: 2 additions & 0 deletions .github/workflows/build_arduino.yml
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,7 @@ jobs:
- "arduino:samd:tian"
- "arduino:megaavr:uno2018"
# - "arduino:megaavr:nano4809" # board not found
- "arduino:sam:arduino_due_x_dbg"

steps:
- name: Checkout
Expand All @@ -97,6 +98,7 @@ jobs:
- examples/StreamingData
- examples/MulticeiverDemo
- examples/InterruptConfigure
# The following examples still exist for posterity
# - examples/old_backups/GettingStarted_HandlingFailures
# - examples/old_backups/pingpair_dyn
# - examples/old_backups/pingpair_irq
Expand Down
15 changes: 13 additions & 2 deletions .github/workflows/build_linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ jobs:
- "--soc=BCM2836 --driver=RPi"
# - "--soc=BCM2835 --driver=wiringPi --extra-cflags=-I/usr/local/include"
- "--driver=SPIDEV"
# - "--driver=MRAA"

steps:
- uses: actions/checkout@v1
Expand All @@ -24,14 +25,24 @@ jobs:
sudo apt-get install binutils-arm-linux-gnueabi gcc-arm-linux-gnueabihf g++-arm-linux-gnueabihf
arm-linux-gnueabihf-gcc -v
arm-linux-gnueabihf-g++ -v
python3 --version
- name: provide WiringPi
if: ${{ matrix.config-options == '--soc=BCM2835 --driver=wiringPi --extra-cflags=-I/usr/local/include' }}
run: |
git clone https://github.com/WiringPi/WiringPi
cd WiringPi/wiringPi
CC="arm-linux-gnueabihf-gcc -marm -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard" V=1 make -j5
sudo make install
- name: provide MRAA
if: ${{ matrix.config-options == '--driver=MRAA' }}
run: |
git clone https://github.com/intel-iot-devkit/mraa.git
cd mraa
mkdir build
cd build
cmake .. -DBUILDSWIGNODE=OFF
sudo make install
sudo bash -c 'echo "/usr/local/lib/arm-linux-gnueabihf" >> /etc/ld.so.conf'
sudo ldconfig
- name: library configure
run: ./configure ${{ matrix.config-options }}
- name: library make
Expand All @@ -40,7 +51,7 @@ jobs:
run: sudo make install
- name: make linux examples
# compiling examples for wiringPi is broken see nRF24#669 issue
if: ${{ matrix.config-options != '--soc=BCM2835 --driver=wiringPi --extra-cflags=-I/usr/local/include' }}
# if: ${{ matrix.config-options != '--soc=BCM2835 --driver=wiringPi --extra-cflags=-I/usr/local/include' }}
run: |
cd examples_linux
make
Expand Down
81 changes: 81 additions & 0 deletions .github/workflows/build_platformIO.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
name: PlatformIO build

on:
pull_request:
paths:
- ".github/workflows/build_platformIO.yml"
- "examples/**"
- "!examples/old_backups/recipes/pingpair_maple/**"

push:
paths:
- ".github/workflows/build_platformIO.yml"
- "examples/**"
- "!examples/old_backups/recipes/pingpair_maple/**"

jobs:
check_formatting:
runs-on: ubuntu-latest

steps:
- name: Checkout
uses: actions/checkout@v2
- name: Check code formatting
uses: per1234/artistic-style-action@main
with:
options-file-path: ./examples/examples_formatter.conf
name-patterns: |
- '*.ino'
- '*.cpp'
- '*.hpp'
- '*.h'
target-paths: |
- examples

build:
needs: check_formatting
runs-on: ubuntu-latest

strategy:
fail-fast: false

matrix:
example:
- "examples/GettingStarted/GettingStarted.ino"
- "examples/AcknowledgementPayloads/AcknowledgementPayloads.ino"
- "examples/ManualAcknowledgements/ManualAcknowledgements.ino"
- "examples/StreamingData/StreamingData.ino"
- "examples/MulticeiverDemo/MulticeiverDemo.ino"
- "examples/InterruptConfigure/InterruptConfigure.ino"
board:
- "teensy31"
- "teensy35"
- "teensy36"
- "teensy40"
- "teensy41"
- "teensylc"

steps:
- uses: actions/checkout@v2
- name: Cache pip
uses: actions/cache@v2
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
restore-keys: |
${{ runner.os }}-pip-
- name: Cache PlatformIO
uses: actions/cache@v2
with:
path: ~/.platformio
key: ${{ runner.os }}-${{ hashFiles('**/lockfiles') }}
- name: Set up Python
uses: actions/setup-python@v2
- name: Install PlatformIO
run: |
python -m pip install --upgrade pip
pip install --upgrade platformio
- name: Run PlatformIO
run: pio ci --lib="." --board=${{ matrix.board }}
env:
PLATFORMIO_CI_SRC: ${{ matrix.example }}
2 changes: 0 additions & 2 deletions .github/workflows/doxygen.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,10 +28,8 @@ jobs:
uses: actions/checkout@v2
- name: overwrite doxygen tags
run: |
mkdir docs
touch doxygenAction
echo "PROJECT_NUMBER = ${{ steps.latest_ver.outputs.release }}" >> doxygenAction
echo "OUTPUT_DIRECTORY = ./docs" >> doxygenAction
echo "@INCLUDE = doxygenAction" >> Doxyfile
- name: build doxygen
uses: mattnotmitt/doxygen-action@v1
Expand Down
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,8 @@
.*.swp
*.orig
.swp
docs/
docs/html/
docs/xml/
output/
ojam/
out/
Expand Down Expand Up @@ -32,4 +33,5 @@ examples_linux/**/*
doxygenAction
.vscode/
*venv
*env
*.pyc
17 changes: 5 additions & 12 deletions Doxyfile
Original file line number Diff line number Diff line change
Expand Up @@ -825,7 +825,8 @@ WARN_LOGFILE =
# Note: If this tag is empty the current directory is searched.

INPUT = ./ \
./utility/Template
./utility/Template \
./docs

# This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
Expand Down Expand Up @@ -967,7 +968,7 @@ EXAMPLE_RECURSIVE = YES
# that contain images that are to be included in the documentation (see the
# \image command).

IMAGE_PATH =
IMAGE_PATH = images

# The INPUT_FILTER tag can be used to specify a program that doxygen should
# invoke to filter for each input file. Doxygen will invoke the filter program
Expand Down Expand Up @@ -1023,7 +1024,7 @@ FILTER_SOURCE_PATTERNS =
# (index.html). This can be useful if you have a project on for instance GitHub
# and want to reuse the introduction page also for the doxygen output.

USE_MDFILE_AS_MAINPAGE =
USE_MDFILE_AS_MAINPAGE = ./docs/main_page.md

#---------------------------------------------------------------------------
# Configuration options related to source browsing
Expand Down Expand Up @@ -1151,13 +1152,6 @@ CLANG_DATABASE_PATH =

ALPHABETICAL_INDEX = YES

# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in
# which the alphabetical index list will be split.
# Minimum value: 1, maximum value: 20, default value: 5.
# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.

COLS_IN_ALPHA_INDEX = 10

# In case all classes in a project start with a common prefix, all classes will
# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag
# can be used to specify a prefix (or a list of prefixes) that should be ignored
Expand Down Expand Up @@ -2207,7 +2201,7 @@ INCLUDE_FILE_PATTERNS =
# recursively expanded use the := operator instead of the = operator.
# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.

PREDEFINED =
PREDEFINED = DOXYGEN_FORCED

# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
# tag can be used to specify a list of macro names that should be expanded. The
Expand Down Expand Up @@ -2583,4 +2577,3 @@ GENERATE_LEGEND = YES
# This tag requires that the tag HAVE_DOT is set to YES.

DOT_CLEANUP = YES

7 changes: 6 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
[![Arduino CLI build](https://github.com/nRF24/RF24/workflows/Arduino%20CLI%20build/badge.svg)](https://github.com/nRF24/RF24/actions?query=workflow%3A%22Arduino+CLI+build%22)
[![Linux build](https://github.com/nRF24/RF24/workflows/Linux%20build/badge.svg)](https://github.com/nRF24/RF24/actions?query=workflow%3A%22Linux+build%22)
[![PlatformIO build](https://github.com/nRF24/RF24/actions/workflows/build_platformIO.yml/badge.svg)](https://github.com/nRF24/RF24/actions/workflows/build_platformIO.yml)

# See http://nRF24.github.io/RF24 for all documentation

### Check our [contributing guidelines](CONTRIBUTING.md) before opening a pull request
## Having problems?
Please read our **[solutions to common problems](COMMON_ISSUES.md)**. If that doesn't help, then open an issue describing your problem with as much detail as possible.

### Want to contribute?
Awesome! However, please check our [contributing guidelines](CONTRIBUTING.md) before opening a pull request.
Loading