Skip to content

Farcom Industrial IoT environmental monitor — 11 sensors, MQTT, LCD display, live dashboard, SQLite logging

License

Notifications You must be signed in to change notification settings

farcomiot/enviroplus-python

 
 

Repository files navigation

Farcom Industrial — Enviro+ IoT Monitor

Fork maintained by Farcom Industrial for production environmental monitoring in Monterrey, Mexico.

Live Dashboard

farcomindustrial.com/enviropi — Real-time sensor data via MQTT over WebSocket.

What This Fork Adds

Feature Description
farcom-mqtt-enviro.py 886-line production script with 11-sensor MQTT publishing, LCD display (14 modes), SQLite logging, noise event detection
Live Dashboard WordPress-hosted real-time dashboard with sparklines, gauges, history charts, and map
MQTT History 1-minute aggregated time-series data (avg/min/max) published as retained message for instant dashboard hydration
Noise Monitoring ICS-43432 microphone with dB SPL conversion, night watch mode (22:00-07:00), event logging
LCD Modes 14 display modes: 11 sensor bar graphs + info screen (QR/status) + logo + system health
systemd Service Runs as farcom-enviro.service with auto-restart on failure

Documentation

Quick Start (Pi)

# Clone and deploy
git clone https://github.com/farcomiot/enviroplus-python.git
cd enviroplus-python/examples
sudo systemctl stop farcom-enviro.service
sudo cp farcom-mqtt-enviro.py /home/enviropi/enviroplus-python/examples/
sudo systemctl start farcom-enviro.service

Roadmap

See Issues for the development roadmap (Issues #1-#8).


Below is the original Pimoroni Enviro+ README:


Enviro+

Designed for environmental monitoring, Enviro+ lets you measure air quality (pollutant gases and particulates), temperature, pressure, humidity, light, and noise level. Learn more - https://shop.pimoroni.com/products/enviro-plus

Build Status Coverage Status PyPi Package Python Versions

Installing

You are best using the "One-line" install method if you want all of the UART serial configuration for the PMS5003 particulate matter sensor to run automatically.

Note The code in this repository supports both the Enviro+ and Enviro Mini boards. The Enviro Mini board does not have the Gas sensor or the breakout for the PM sensor.

Enviro Plus pHAT Enviro Mini pHAT

⚠️ This library now supports Python 3 only, Python 2 is EOL - https://www.python.org/doc/sunset-python-2/

One-line (Installs from GitHub)

curl -sSL https://get.pimoroni.com/enviroplus | bash

Note report issues with one-line installer here: https://github.com/pimoroni/get

Or... Install and configure dependencies from GitHub:

  • git clone https://github.com/pimoroni/enviroplus-python
  • cd enviroplus-python
  • sudo ./install.sh

Note Raspbian/Raspberry Pi OS Lite users may first need to install git: sudo apt install git

Or... Install from PyPi and configure manually:

  • Run sudo python3 -m pip install enviroplus

Note this will not perform any of the required configuration changes on your Pi, you may additionally need to:

  • Enable i2c: raspi-config nonint do_i2c 0
  • Enable SPI: raspi-config nonint do_spi 0

And if you're using a PMS5003 sensor you will need to:

  • Enable serial: raspi-config nonint set_config_var enable_uart 1 /boot/config.txt
  • Disable serial terminal: sudo raspi-config nonint do_serial 1
  • Add dtoverlay=pi3-miniuart-bt to your /boot/config.txt

And install additional dependencies:

sudo apt install python3-numpy python3-smbus python3-pil python3-setuptools

Alternate Software & User Projects

Help & Support

About

Farcom Industrial IoT environmental monitor — 11 sensors, MQTT, LCD display, live dashboard, SQLite logging

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 53.8%
  • Shell 38.2%
  • Makefile 8.0%