Awesome
<a href="https://107-systems.org/"><img align="right" src="https://raw.githubusercontent.com/107-systems/.github/main/logo/107-systems.png" width="15%"></a>
:floppy_disk: l3xz-pressure-sensor-firmware
<a href="https://opencyphal.org/"><img align="right" src="https://raw.githubusercontent.com/107-systems/.github/main/logo/opencyphal.svg" width="25%"></a>
Firmware for the L3X-Z pressure sensor which is based on the CyphalPicoBase/CAN board.
<p align="center"> <a href="https://github.com/107-systems/l3xz"><img src="https://raw.githubusercontent.com/107-systems/.github/main/logo/l3xz-logo-memento-mori-github.png" width="40%"></a> </p>Schematic for conversion circuit
<p align="center"> <img src="pressure-sensor-current-voltage-conversion.png" width="60%"> </p>How-to-build/upload
arduino-cli compile -b rp2040:rp2040:rpipico -v .
arduino-cli upload -b rp2040:rp2040:rpipico -v . -p /dev/ttyACM0
or
arduino-cli compile -b rp2040:rp2040:rpipico -v . --build-property compiler.cpp.extra_flags="-DCYPHAL_NODE_INFO_GIT_VERSION=0x$(git rev-parse --short=16 HEAD)"
Adding argument --build-property compiler.cpp.extra_flags="-DCYPHAL_NODE_INFO_GIT_VERSION=0x$(git rev-parse --short=16 HEAD)"
allows to feed the Git hash of the current software version to 107-Arduino-Cyphal stack from where it can be retrieved via i.e. yakut.
How-to-yakut
Install and configure yakut
:
. setup_yakut.sh
Obtain pressure sensor value via yakut
(cyphal.pub.pressure_0/1.id
= 6001
, 6002
):
y sub 6001:uavcan.si.unit.pressure.Scalar.1.0 --with-metadata
...
y sub 6002:uavcan.si.unit.pressure.Scalar.1.0 --with-metadata