Read the statement by Michael Teeuw here.
MMM-SensorGateway
-
Firstoff, Thanks MichMich and all the contributors for the incredible platform - have had a lot of fun with it since set up of my first mirror on last summer.
I’ve written two modules just for own fun - the FunnyHolidays one is trivial, but for the MMM-SensorGateway
I’d love to hear feedback if somebody happens to reproduce the installation and setup. (since I did some
hacking throughout especially the BLE and startup service setup - and haven’t done “clean install”
so there might be something missing / other glitches in the instructions) . Posted this on the Utilities - category since this kind of gateway is quite generic and also would like to hear if somebody implements other use-cases / wants to build one together. (These modules are also added to 3rd party modules list - I didn’t find a similar implementation there yet)Here are the links (images and installation instructions in the README.md)
https://github.com/mattileh/MMM-FunnyHolidays
https://github.com/mattileh/MMM-SensorGatewayDisclaimer:
I’m not a frontend developer - so the javascript included might not be look really “sane one” :)Disclaimer2:
Movesense firmware source code is not available. Binaries can be found under firmwares/
If someone would be interested in that the Movesense is rather open environment - and has several example sources available
https://bitbucket.org/suunto/movesense-device-lib/src/master/samples/custom_bleadv_app/
is for the beaconing software. -
@mattileh maybe you could give a few more words about SensorGateway… What do you need to make the module work? what sensors?
-
Thanks! This was something what I was wishing for to happen. Previously I used influx+grafana setup to get info to MM and it was quite keen setup to corrupt memory cards. I dont need data to be stored anywhere so this was more than good solution to get info from ruuvitags to MM.
-
@thap Hi!, great to hear that you found the module usefull as well.
Please let me know if there was any problems in replicating the gateway setup or any other changes required to the instructions. -
Tried this with 3b/3b+ (python 2.7/3.6), when installing module I get the following error:
pi@raspberrypi:~/MagicMirror/modules/MMM-SensorGateway $ npm install npm WARN deprecated exec@0.2.1: deprecated in favor of builtin child_process.exe cFile > websocket@1.0.31 install /home/pi/MagicMirror/modules/MMM-SensorGateway/node_m odules/websocket > (node-gyp rebuild 2> builderror.log) || (exit 0) make: Entering directory '/home/pi/MagicMirror/modules/MMM-SensorGateway/node_mo dules/websocket/build' CXX(target) Release/obj.target/bufferutil/src/bufferutil.o SOLINK_MODULE(target) Release/obj.target/bufferutil.node COPY Release/bufferutil.node CXX(target) Release/obj.target/validation/src/validation.o SOLINK_MODULE(target) Release/obj.target/validation.node COPY Release/validation.node make: Leaving directory '/home/pi/MagicMirror/modules/MMM-SensorGateway/node_mod ules/websocket/build' MMM-SensorGateway@1.0.0 /home/pi/MagicMirror/modules/MMM-SensorGateway ├── exec@0.2.1 └─┬ websocket@1.0.31 ├─┬ debug@2.6.9 │ └── ms@2.0.0 ├─┬ es5-ext@0.10.53 │ ├─┬ es6-iterator@2.0.3 │ │ └─┬ d@1.0.1 │ │ └── type@1.2.0 │ ├─┬ es6-symbol@3.1.3 │ │ └─┬ ext@1.4.0 │ │ └── type@2.0.0 │ └── next-tick@1.0.0 ├── nan@2.14.0 ├─┬ typedarray-to-buffer@3.1.5 │ └── is-typedarray@1.0.0 └── yaeti@0.0.6 npm WARN MMM-SensorGateway@1.0.0 No repository field.
I can see the temperature with “ruuvitag -f” in console. If I try to see the status with “sudo service local_blegateway status” I get:
pi@raspberrypi:~ $ sudo service local_blegateway status ● local_blegateway.service - local_blegateway, Movesense and RuuviTag BLE advertisement message gateway to websocket interface Loaded: loaded (/lib/systemd/system/local_blegateway.service; enabled; vendor preset: enabled) Active: activating (auto-restart) (Result: exit-code) since Fri 2019-12-20 17:04:04 EET; 1s ago Process: 1972 ExecStart=/usr/share/local_blegateway/local_blegatewaykickstart.sh (code=exited, status=1/FAILURE) Main PID: 1972 (code=exited, status=1/FAILURE) joulu 20 17:04:04 raspberrypi systemd[1]: local_blegateway.service: Unit entered failed state. joulu 20 17:04:04 raspberrypi systemd[1]: local_blegateway.service: Failed with result 'exit-code'.
Any hints?
-
@dmd Hi!, Python 2.7.16 is the exact python version I’ve used.
the exec module warning is expected, is there something in the snippet you sent that indicates that something went wrong in the module installation?
btw, how did the service installation itself go? (there is an expected output in the instructions) and can you try running the gateway python script directly? e.g. :
sudo python bleAdvWebSocket.py
and post the results here.
-
@mattileh I gt exactly the same error as @dmd. When I run bleAdvWebSocket.py manually I get the following:
pi@mirror-pi:~/MagicMirror/modules/MMM-SensorGateway/gateway $ python bleAdvWebSocket.py Traceback (most recent call last): File "bleAdvWebSocket.py", line 13, in module import websocket ImportError: No module named websocket
-
There is a lot of install work for this module. Did u guys run the install script per the readme?
-
@stickymongoose Hi! the websocket module is installed in the gateway module installation - can you double check you’ve ran README.md:41
* run `npm install` in module's directory to install websocket and exec modules.
also the local run of advSocket needs root access so please run it with the snippet above (e.g. with
sudo
in front, or from root user) -
Is there a fix to the before mentioned errors?