muwerk mupplet Core Library
muwerk applets; mupplets: functional units that support specific hardware or reusable applications
|
Note: This project, while being released, is still WIP. Additional functionality from Research-mupplets is being refactored and ported into this project.
**mu**werk a**pplet**s; mupplets: functional units that support specific hardware or reusable applications.
mupplets use muwerks MQTT-style messaging to pass information between each other on the same device. If connected to an MQTT-server via munet, all functionallity is externally available through an MQTT server such as Mosquitto.
The mupplet-core
library consists of the following modules:
Light
The Light GPIO mupplet allows to control a led or light's state, brightness using modes such as user-controlled, blink, soft-wave, one-time pulse and automatic pattern playback. See Led application notes for an example and more information. Complete example muBlink.Switch
The Switch GPIO mupplet allows to use hardware buttons and switches connected to a GPIO. Switch supports debouncing, flip-flop mode and push-button event. See Switch application notes for an example-code and more information. Complete example SwitchAndLed.FrequencyCounter
The frequency counter mupplet measures impulse frequencies on a GPIO using interrupts. An ESP32 can reliably measure up to about 80kHz. See FrequencyCounter application notes for a Geiger counter sample.LightsPCA9685
The PCA 9685 16 Channels Light Mupplet allows to control up to 16 led or light states, brightness using modes such as user-controlled, blink, soft-wave, one-time pulse and automatic pattern playback. See PCA9685 Application Notes for an example and more information.Home Assistant
. Almost any mupplet can be integrated easily into home-assistant, supported are Home Assistant MQTT Switch, Binary Sensor, Sensor, and Light. The home_assistant
mupplet handles the entire discovery- and synchronization process. For examples see leds and switches with home-assistant or simple binary- and analog sensors or multi-sensor environment monitoring.Additional mupplet implementations can be found:
mupplet-sensor
: implementations for various sensors, temperature, humidity, pressure, illuminance, generic binary sensors and analog sensors.mupplet-display
: implementations for various displays.Some design recommendations for mupplets:
An example framework for a mupplet:
parseLong
DigitalOut
.library.json
.