- Notifications
You must be signed in to change notification settings - Fork5
Sense Hat adapter plugin for WebThings Gateway
License
rzr/sense-hat-webthing
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Addon adapter for WebThings Gatewayusing python module to handle I2C sensors and GPIOsof Raspberry Pi's extension board "SenseHat".
Install WebThings Gateway on RaspberryPI (It was made forhttps://github.com/WebThingsIO/gateway/releases/download/0.12.0/gateway-0.12.0.img.zip)
- Connect to device's wifi "WebThings Gateway FFFF" and then openhttp://gateway.local/, Setup WiFi Setup
- Connect back to LAN Wifi openhttp://gateway.local/things again
From "Settings" add-on menu:
- Add "and enable add-on
- Then add "SenseHat" from the things dashboard.
For using Inertial measurement unit (IMU sensors),calibration will help to get more accurate measurements.
sudo apt-get install librtimulib-utilscd~/.config/sense_hat/mv -f RTIMULib.ini RTIMULib.ini.origRTIMULibCal#| RTIMULibCal - using RTIMULib.ini#| Settings file not found. Using defaults and creating settings file#| Detected LSM9DS1 at standard/standard address#| Using fusion algorithm RTQF#| min/max compass calibration not in use#| Ellipsoid compass calibration not in use#| Accel calibration not in use#| LSM9DS1 init complete#| Options are:#| m - calibrate magnetometer with min/max#| e - calibrate magnetometer with ellipsoid (do min/max first)#| a - calibrate accelerometers#| (...)grep'=' RTIMULib.ini
If done correctly north should be indicated by edge where power LED is locatedthe compass value is actually the "yaw" value, while "pitch" is around this same edge.Remaining "roll" value can be changed by rotating on longest middle axis of board.
Once added in gateway, it can be used along the rule engine:
# From Settings / Developer / Enable SSH# https://sensehat.mozilla-iot.org/settings/developerssh pi@gateway.local# password=raspberrysudo systemctl stop mozilla-iot-gatewayrm -rf~/.mozilla-iot/addons/sense-hat-*cd~/.mozilla-iot/addons/git clone https://github.com/rzr/sense-hat-webthing sense-hat-adaptermake -C sense-hat-adapterhelp prep start# unprep # to restoresudo systemctl restart mozilla-iot-gatewaysudo journalctl -f -xu mozilla-iot-gateway.service
From "/things" webpage "SenseHat" can be added (+, Add, Done)
Note that instead of restarting gateway,from Web UI, any addon can disabled and enabled again.
More examples can be also used as standone webthing server:
cd example# If on debian, it will be faster:sudo apt-get install python3-sense-hat pip3 install webthing# Or if not on debian:# pip3 install -r requirements.txt./sense-hat-single-thing.py
Then add thing using "URL" adapter it should be discovered as (http://localhost:8888)
Same procedure for other exampl, like multiple things which is handling orientation sensor.
For reference the following items are supported:
- https://www.st.com/resource/en/datasheet/hts221.pdf
- https://www.st.com/resource/en/datasheet/lps25hb.pdf
- https://www.st.com/resource/en/datasheet/lsm9ds1.pdf
Thanks to Geof Cohler (@gcohler) for support.
- https://libraries.io/pypi/sense-hat-webthing
- https://pypi.org/project/sense-hat-webthing/
- https://mastodon.social/@rzr/104052909544715058#LavalVirtual2020
- WebThingsIO/addon-list#822
- https://discourse.mozilla.org/t/is-there-an-add-on-for-pi-sense-hat/58024/5
- https://www.openhub.net/p/sense-hat-webthing
- rzr/generic-sensors-webthings#13
- https://github.com/WebThingsIO/wiki/wiki#general-1
- https://github.com/WebThingsIO/gateway-addon-python
- https://hacks.mozilla.org/2018/02/creating-an-add-on-for-the-project-things-gateway/
- https://libraries.io/pypi/sense-hat
- https://www.raspberrypi.org/products/sense-hat/
- https://www.raspberrypi.org/documentation/hardware/sense-hat/
- https://github.com/astro-pi/python-sense-hat
- https://pythonhosted.org/sense-hat/api/
- https://github.com/raspberrypi/rpi-sense/
- https://projects.raspberrypi.org/en/projects/getting-started-with-the-sense-hat
- https://iot.mozilla.org/schemas/
- https://github.com/WebThingsIO/webthing-python/
- https://github.com/WebThingsIO/tplink-adapter
- https://github.com/WebThingsIO/eufy-adapter
About
Sense Hat adapter plugin for WebThings Gateway