I used 'gpsd' running on linux, along with node-red (with the node-red-contrib-gpsd node to make a GPS to MQTT bridge.
| blueprint: | |
| name: "Z-Wave JS Scene Controller Zooz Zen37 800LR" | |
| description: Create automations for the Zooz Zen37 800LR 4 button scene controller using the Z-WAVE JS integration. | |
| domain: automation | |
| input: | |
| zen37lr: | |
| name: Zooz ZEN37 wall remote | |
| description: "List of available Zen37 800LR wall remotes." | |
| selector: | |
| device: |
| #!/usr/bin/python | |
| import socket, time, signal, sys | |
| def signal_handler(signal, frame): | |
| print('\nCtrl-C received from keyboard - script exiting') | |
| sys.exit(0) | |
| signal.signal(signal.SIGINT, signal_handler) |
| ############################################################################# | |
| ############################################################################# | |
| ## Safe this file as: | |
| ## /etc/nginx/sites-enabled/nginx-speedify | |
| ## | |
| ## Assumptions: | |
| ## - You have Speedify and Speedify GUI packages installed | |
| ## | |
| ## Notes: | |
| ## 1. You may wish to change the 'listen' ports to prevent conflicts with |
| #!/usr/bin/env python | |
| """ | |
| Filename: update_rbd_directory.py | |
| Written by: Michael J. Kidd aka linuxkidd | |
| Version: 2.0 | |
| Last modified: 2022-03-16 | |
| Usage help: | |
| ./update_rbd_directory.py --help |
| #!/bin/gawk | |
| # call with the "pg of interest" as parameter, as in: | |
| # gawk -v PGID=21.37a7 -f this-file < log | |
| func logtm(tst) | |
| { | |
| gsub(/[:.]/," ",tst); split(tst,x); | |
| return x[1]*3600 + x[2]*60 + x[3] + x[4]/1000.0 | |
| } |
| #!/usr/bin/awk -f | |
| /^[0-9].*dev[0-9]*-[0-9]*/{ | |
| diskpos=2 | |
| if ( $2 ~ /(A|P)M/ ) | |
| diskpos=3 | |
| dev[$diskpos]=1 | |
| histo[$diskpos][int($NF)]++ | |
| } |
| #!/usr/bin/awk -f | |
| /^[0-9].*dev[0-9]*-[0-9]*/{ | |
| diskpos=2 | |
| awaitpos=8 | |
| if ( $2 ~ /(A|P)M/ ) { | |
| diskpos=3 | |
| awaitpos=9 | |
| } | |
| dev[$diskpos]=1 |
| #!/usr/bin/awk -f | |
| function mydtstamp(mydt) { | |
| split($1,tparts,":") | |
| switch($2){ | |
| case "AM": | |
| if(tparts[1]==12) | |
| tparts[1]="00" | |
| break | |
| case "PM": |
| #!/usr/bin/python3 | |
| import array,json,paho.mqtt.client as mqtt,re,sys,time | |
| mqttc=mqtt.Client("cpimporter") | |
| mqttc.connect("172.16.22.2", port=1883) | |
| debugout=0 | |
| cleartopic=0 | |
| publishtopic=1 |