Skip to content

An Arduino library to read sensor data from the Nicla Sense Env board and control its behaviour.

License

Notifications You must be signed in to change notification settings

arduino-libraries/Arduino_NiclaSenseEnv

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🤖 Nicla Sense Env Arduino Library

Arduino Lint Compile Examples Spell Check API Documentation

This library contains an API to read data from the Nicla Sense Env board and control its behaviour. The board host three different sensors which can be read simultaneously: ZMOD4410 (Indoor Air Quality), ZMOD4510 (Outdoor Air Quality), HS4001 (Temperature & Humidity).

✨ Features

This library supports the complete API exposed by the Nicla Sense Env sensor board over I2C.

  • 🌈 RGB LED control
  • 🟠 Orange LED control
  • 💤 Board control (sleep, reset, factory reset)
  • 🔧 Board configuration (e.g. changing the I2C address)
  • 🏠 Indoor Air Quality Sensor control
    • Change mode (Power down, cleaning, Indoor Air quality, sulfur detection)
    • Detect sulfur
    • Measure odor intensity
    • Measure ethanol level
    • Measure TVOC
    • Measure CO2
    • Measure air quality
  • 🌳 Outdoor Air Quality Sensor control
    • Change mode (Power down, cleaning, Outdoor Air quality)
    • Measure NO2
    • Measure O3
    • Measure air quality
  • 🌡 Temperature/Humidity Sensor Control
    • Change mode (Power down, temperature/humidity)
    • Read temperature
    • Read humidity
  • 📄 UART CSV output

📖 Documentation

For more information on the features of this library and how to use them please read the documentation here.

✅ Supported Boards

The library was tested on the Arduino Portenta, Nano and MKR board families but it likely works on other boards that come with a modern Arduino core. On Arduino boards, the default I2C interface is set to Wire. On other boards you may need to specify a different interface depending on the pinout. e.g.

 NiclaSenseEnv device = NiclaSenseEnv(Wire1);

⚙️ Installation

The easiest way is to use the Arduino IDE or the Arduino CLI. As for the latter option you can install it with arduino-cli lib install Arduino_NiclaSenseEnv. You may need to update the index beforehand arduino-cli lib update-index

🧑‍💻 Developer Installation

Clone the repository and then run any example using the Arduino CLI. e.g. arduino-cli compile examples/IndoorAirQuality/IndoorAirQuality.ino -b arduino:samd:mkrwifi1010 --library ./ -u -p /dev/cu.usbmodem14201

🐛 Reporting Issues

If you encounter any issue, please open a bug report here.

📕 Further Reading

💪 Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

🤙 Contact

For questions, comments, or feedback on this library, please create an issue on this repository.

⚖️ License

This library is released under the MPL-2.0 license.

About

An Arduino library to read sensor data from the Nicla Sense Env board and control its behaviour.

Resources

License

Stars

Watchers

Forks

Packages

No packages published