Home

Awesome

Sensirion UART SEN44 Arduino Library

This is the Sensirion SEN44 library for Arduino using the modules UART interface.

<center><img src="images/SEN4x.png" width="500px"></center>

Installation

To install, download the latest release as .zip file and add it to your Arduino IDE via

Sketch => Include Library => Add .ZIP Library...

Don't forget to install the dependencies listed below the same way via Add .ZIP Library

Note: Installation via the Arduino Library Manager is coming soon.

Dependencies

Quick Start

  1. Connect the SEN44 Sensor to one of your Arduino board's UART buses. We recommend using Serial1. Check the pinout of your Arduino board to find the correct pins. The pinout of the SEN44 Sensor board can be found in the data sheet.

    • VDD of the SEK-SEN44 to the 5V of your Arduino board
    • GND of the SEK-SEN44 to the GND of your Arduino board
    • RX of the SEK-SEN44 to the UART1-TX of your Arduino board
    • TX of the SEK-SEN44 to the UART1-RX of your Arduino board
    <center><img src="images/SEN44_pinout.png" width="300px"></center>
    PinNameDescriptionComments
    1VDDSupply Voltage5V ±10%
    2GNDGround
    3RXUART: Receiving pin for communicationTTL 5V and LVTTL 3.3V compatible
    SDAI2C: Serial data input / outputTTL 5V and LVTTL 3.3V compatible
    4TXUART: Transmission pin for communicationTTL 5V and LVTTL 3.3V compatible
    SCLI2C: Serial clock inputTTL 5V and LVTTL 3.3V compatible
    5SELInterface selectLeave floating or pull to VDD to select UART
    Pull to GND to select I2C
    6NCDo not connect
  2. Open the exampleUsage sample project within the Arduino IDE

    File => Examples => Sensirion UART SEN44 => exampleUsage
    
  3. Depending on your Arduino board you may need to adapt the #define SENSOR_SERIAL_INTERFACE to choose the correct serial interface.

  4. Click the Upload button in the Arduino IDE or

    Sketch => Upload
    
  5. When the upload process has finished, open the Serial Monitor or Serial Plotter via the Tools menu to observe the measurement values. Note that the Baud Rate in the corresponding window has to be set to 115200 baud.

Contributing

Contributions are welcome!

We develop and test this driver using our company internal tools (version control, continuous integration, code review etc.) and automatically synchronize the master branch with GitHub. But this doesn't mean that we don't respond to issues or don't accept pull requests on GitHub. In fact, you're very welcome to open issues or create pull requests :)

This Sensirion library uses clang-format to standardize the formatting of all our .cpp and .h files. Make sure your contributions are formatted accordingly:

The -i flag will apply the format changes to the files listed.

clang-format -i src/*.cpp src/*.h

Note that differences from this formatting will result in a failed build until they are fixed.

License

See LICENSE.