All Projects → flyte → Mqtt Io

flyte / Mqtt Io

Licence: mit
Expose GPIO modules (Raspberry Pi, Beaglebone, PCF8754, PiFace2 etc.) and digital sensors (LM75 etc.) to an MQTT server for remote control and monitoring.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Mqtt Io

Smarthome
@skalavala 👍 Nothing But Smarthome Stuff! - By Mahasri Kalavala
Stars: ✭ 437 (+86.75%)
Mutual labels:  home-assistant, raspberry-pi, mqtt
Home Assistant
Home-Assistant-Config
Stars: ✭ 182 (-22.22%)
Mutual labels:  home-assistant, raspberry-pi, mqtt
Home Assistant Config Fr
🏠Configuration de Home Assistant en français. 👨🏻‍💻 N'hésitez pas à ⭐ mon repo et à copier les bonnes idées ! 🇨🇵
Stars: ✭ 175 (-25.21%)
Mutual labels:  home-assistant, raspberry-pi, mqtt
Hassio Zigbee2mqtt
Hass.io add-on for zigbee2mqtt
Stars: ✭ 547 (+133.76%)
Mutual labels:  home-assistant, raspberry-pi, mqtt
Rpi gpio
Ruby conversion of RPi.GPIO Python module
Stars: ✭ 185 (-20.94%)
Mutual labels:  raspberry-pi, rpi, gpio
System sensors
Logging of system sensor specific for the RPI and sending them to a MQTT broker
Stars: ✭ 134 (-42.74%)
Mutual labels:  home-assistant, rpi, mqtt
Make
📖📖📖📖📖 写给软件工程师看的硬件编程指南
Stars: ✭ 170 (-27.35%)
Mutual labels:  raspberry-pi, rpi
Johnny Five
JavaScript Robotics and IoT programming framework, developed at Bocoup.
Stars: ✭ 12,498 (+5241.03%)
Mutual labels:  raspberry-pi, gpio
Openmqttgateway
MQTT gateway for ESP8266, ESP32, Sonoff RF Bridge or Arduino with bidirectional 433mhz/315mhz/868mhz, Infrared communications, BLE, Bluetooth, beacons detection, mi flora, mi jia, LYWSD02, LYWSD03MMC, Mi Scale, TPMS, BBQ thermometer compatibility, SMS & LORA.
Stars: ✭ 2,413 (+931.2%)
Mutual labels:  home-assistant, mqtt
Home assistant files
Here are my Home Assistant configuration files
Stars: ✭ 159 (-32.05%)
Mutual labels:  home-assistant, raspberry-pi
Blynk Server
Blynk is an Internet of Things Platform aimed to simplify building mobile and web applications for the Internet of Things. Easily connect 400+ hardware models like Arduino, ESP8266, ESP32, Raspberry Pi and similar MCUs and drag-n-drop IOT mobile apps for iOS and Android in 5 minutes
Stars: ✭ 8 (-96.58%)
Mutual labels:  raspberry-pi, mqtt
Platypush
A versatile and extensible platform for home and life automation with hundreds of supported integrations
Stars: ✭ 192 (-17.95%)
Mutual labels:  raspberry-pi, mqtt
Homeassistant
Example Home Assistant Configs
Stars: ✭ 168 (-28.21%)
Mutual labels:  home-assistant, raspberry-pi
Diozero
Java Device I/O library that is portable across Single Board Computers. Tested with Raspberry Pi, Odroid C2, BeagleBone Black, Next Thing CHIP, Asus Tinker Board and Arduinos. Supports GPIO, I2C, SPI as well as Serial communication. Also known to work with Udoo Quad.
Stars: ✭ 167 (-28.63%)
Mutual labels:  raspberry-pi, gpio
Zm1
斐讯M1空气检测仪个人固件公开项目. 此项目为公开release+讨论
Stars: ✭ 165 (-29.49%)
Mutual labels:  home-assistant, mqtt
Boombeastic
A Raspberry Pi based smart connected speaker with support for airplay, spotify, mpd and local playback
Stars: ✭ 195 (-16.67%)
Mutual labels:  raspberry-pi, rpi
Arilux al Lc0x
Alternative firmware for Arilux AL-LC0X LED controllers, based on the MQTT protocol and a TLS connection
Stars: ✭ 194 (-17.09%)
Mutual labels:  home-assistant, mqtt
Hass Workstation Service
Provide useful sensors and services from your workstation to Home Assistant.
Stars: ✭ 198 (-15.38%)
Mutual labels:  home-assistant, mqtt
Brad Homeassistant Config
Home Assistant configuration
Stars: ✭ 212 (-9.4%)
Mutual labels:  home-assistant, raspberry-pi
Temper Esp8266
Temper is a compact temperature sensor based on ESP8266 and SHT30 with large 13x7 pixel led display.
Stars: ✭ 155 (-33.76%)
Mutual labels:  home-assistant, mqtt

MQTT IO

Discord

Exposes general purpose inputs and outputs (GPIO), hardware sensors and serial devices to an MQTT server. Ideal for single-board computers such as the Raspberry Pi.

Visit the documentation for more detailed information.

Supported Hardware

Hardware support is provided by specific GPIO, Sensor and Stream modules. It's easy to add support for new hardware and the list is growing fast.

GPIO Modules

  • Beaglebone GPIO (beaglebone)
  • Linux Kernel 4.8+ libgpiod (gpiod)
  • MCP23017 IO expander (mcp23017)
  • Orange Pi GPIO (orangepi)
  • PCF8574 IO expander (pcf8574)
  • PCF8575 IO expander (pcf8575)
  • PiFace Digital IO 2 (piface2)
  • Raspberry Pi GPIO (raspberrypi)

Sensors

  • AHT20 temperature and humidity sensor (aht20)
  • BH1750 light level sensor (bh1750)
  • BME280 temperature, humidity and pressure sensor (bme280)
  • BME680 temperature, humidity and pressure sensor (bme680)
  • DHT11/DHT22/AM2302 temperature and humidity sensors (dht22)
  • DS18S20/DS1822/DS18B20/DS1825/DS28EA00/MAX31850K temperature sensors (ds18b)
  • HCSR04 ultrasonic range sensor (connected to the Raspberry Pi on-board GPIO) (hcsr04)
  • LM75 temperature sensor (lm75)
  • MCP3008 analog to digital converter (mcp3008)

Streams

  • Serial port (serial)

Installation

Requires Python 3.6+

pip3 install mqtt-io

Execution

python3 -m mqtt_io config.yml

Configuration Example

Configuration is written in a YAML file which is passed as an argument to the server on startup.

See the full configuration documentation for details.

The following example will configure the software to do the following:

  • Publish MQTT messages on the home/input/doorbell topic when the doorbell is pushed and released.
  • Subscribe to the MQTT topic home/output/port_light/set and change the output when messages are received on it.
  • Periodically read the value of the LM75 sensor and publish it on the MQTT topic home/sensor/porch_temperature.
  • Publish any data received on the /dev/ttyUSB0 serial port to the MQTT topic home/serial/alarm_system.
  • Subscribe to the MQTT topic home/serial/alarm_system/send and send any data received on that topic to the serial port.
mqtt:
  host: localhost
  topic_prefix: home

# GPIO
gpio_modules:
  # Use the Raspberry Pi built-in GPIO
  - name: rpi
    module: raspberrypi

digital_inputs:
  # Pin 0 is an input connected to a doorbell button
  - name: doorbell
    module: rpi
    pin: 0

digital_outputs:
  # Pin 1 is an output connected to a light
  - name: porch_light
    module: rpi
    pin: 1

# Sensors
sensor_modules:
  # An LM75 sensor attached to the I2C bus
  - name: lm75_sensor
    module: lm75
    i2c_bus_num: 1
    chip_addr: 0x48

sensor_inputs:
  # The configuration of the specific sensor value to use (LM75 only has temperature)
  - name: porch_temperature
    module: lm75_sensor

# Streams
stream_modules:
  # A serial port to communicate with the house alarm system
  - name: alarm_system
    module: serial
    device: /dev/ttyUSB0
    baud: 9600
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].