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

pkg/arduino_sdi_12: support the remote-revb board #17119

Merged
merged 6 commits into from Nov 6, 2021

Conversation

jdavid
Copy link
Contributor

@jdavid jdavid commented Nov 3, 2021

Contribution description

Add support for the remote-revb board to the arduino_sdi_12 package.

Testing procedure

Testing that the test program builds:

BOARD=remote-revb make -C tests/pkg_arduino_sdi_12/

This is a test I've done using RE-Mote board and the Decagon CTD-10 sensor:

$ BOARD=remote-revb make -C tests/pkg_arduino_sdi_12/ all flash term
[...]
Building application "tests_pkg_arduino_sdi_12" for "remote-revb" with MCU "cc2538".
[...]
Welcome to pyterm!
Type '/exit' to exit.
2021-11-03 08:50:49,480 # main(): This is RIOT! (Version: 2022.01-devel-338-gb2761-sdi12-remote)
2021-11-03 08:50:49,480 # Testing the Arduino-SDI-12 package
2021-11-03 08:50:49,480 # 
2021-11-03 08:50:49,481 # Send: ?!
2021-11-03 08:50:49,695 # Recv: 0
2021-11-03 08:50:49,695 # Send: 0I!
2021-11-03 08:50:50,046 # Recv: 013DECAGON CTD-103991059303507
2021-11-03 08:50:50,046 # Send: 0M!
2021-11-03 08:50:50,393 # Recv: 00013
2021-11-03 08:50:51,394 # Send: 0D0!
2021-11-03 08:50:51,750 # Recv: 0+32+22.2+0
2021-11-03 08:50:56,751 # 
2021-11-03 08:50:56,751 # Send: ?!
2021-11-03 08:50:57,090 # Recv: 0
2021-11-03 08:50:57,091 # Send: 0I!
2021-11-03 08:50:57,442 # Recv: 013DECAGON CTD-103991059303507
2021-11-03 08:50:57,442 # Send: 0M!
2021-11-03 08:50:57,788 # Recv: 00013
2021-11-03 08:50:58,789 # Send: 0D0!
2021-11-03 08:50:59,146 # Recv: 0+32+22.2+0

Issues/PRs references

This is a follow-up of PR #16587

@github-actions github-actions bot added Area: pkg Area: External package ports Area: tests Area: tests and testing framework labels Nov 3, 2021
@benpicco benpicco added the CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR label Nov 4, 2021
Patch the library to use micros() for timing, when sending a command,
for boards not supported by the library.

Use cpp11-compat with the remote-revb board. This fixes the link error
"undefined reference to __dso_handle"
Because it does not have enough memory.
@jdavid
Copy link
Contributor Author

jdavid commented Nov 4, 2021

@benpicco
Copy link
Contributor

benpicco commented Nov 4, 2021

For BOARD_INSUFFICIENT_MEMORY please add those to Makefile.ci.
This file can be automatically updated if new boards are added that don't fit the requirements for the test. (I also have a PR to auto-generate the file (I also have a PR to auto-generate the file #16109)

The hifive1b failure is strange, the function should come from the arduino package - does examples/arduino_hello-world build for you on that board?

This fixes building tests/pkg_arduino_sdi_12 for the hifive1b board.

The problem is, in build/pkg/arduino_api/api/Common.h millis is defined
within an extern "C" block. While in sys/arduino/include/arduino.hpp it
was not.
@github-actions github-actions bot added Area: arduino API Area: Arduino wrapper API Area: sys Area: System labels Nov 5, 2021
@jdavid
Copy link
Contributor Author

jdavid commented Nov 5, 2021

Done (Makefile.ci)

examples/arduino_hello-world builds, tests/pkg_arduino_sdi_12 doesn't.
I have fixed this error in commit 77df3ee

@maribu maribu added CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR and removed CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR labels Nov 5, 2021
Copy link
Contributor

@benpicco benpicco left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me!

@benpicco benpicco merged commit 1f11780 into RIOT-OS:master Nov 6, 2021
@fjmolinas fjmolinas added this to the Release 2022.01 milestone Nov 18, 2021
@jdavid jdavid deleted the sdi12-remote branch December 24, 2021 13:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area: arduino API Area: Arduino wrapper API Area: pkg Area: External package ports Area: sys Area: System Area: tests Area: tests and testing framework CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants