piBeacon  

Developer: Karl's Plugins     Like this plugin? Show your appreciation!
Category: Location and Presence
Github: Github Repo
Assistance: Get help!   
Plugin ID: com.karlwachs.piBeacon
Latest release: v2022.175.90 released on Feb. 13, 2024
Release downloaded: 0 times
Requires: Indigo v2022.1.0 or higher
(Check the Releases tab below for older releases that may have different requirements)
  Download latest release

pibeacon

this plugin can 1. track ibeacons on multiple Raspberry Pis. 2. BLE phone tracking 3. read many different types of sensors (temp, humidity. ADC, airquality, DOF, movement, ultarsound, microwave ...) 4. send output from the plugin to a variety of output devices, DOC, GPIO, displays etc

Devices supported:

supported device types:
===RPI server
rPI for ibeacon, BLEconnect, BLEsensor and all input output devices rPI-Sensor for BLEsensor and all input output devices

===iBeacon
beacon

===BLECONNECT for phones
BLEconnect

===BLE temp sensor
BLEsensor tenmp sensor through BLE

===Temp Pressure humidity, air quality .. Wire18B20 T
DHTxx T,H DHT11 T,H TMP102 T TMP006 T Infrared MCP9808 T LM35A T T5403 T MS5803 T BMPxx T,P BMP280 T,H,P SHT21 T AM2320 T,H BMExx T,H,PP bme680 T,H,P, VOC pmairquality measures concentration of particles in the air sgp30 CO2 ccs811 Co2, VOC MHZ-xxx serial and i2c Infrared absoption CO2 measurement

===light: white, RGB infrared, ultraviolet ..
TCS34725
as726x
IS1145
OPT3001
VEML7700
VEML6030
VEML6040
VEML6070
VEML6075
TSL2561
mlx90614

===Lightning as3935 frankling type sensor that detect lighning stickes up to 30Km away. best is to use 2 to suppress miss identification of local electrical disturbances

===Infrared Camera
amg88xx 8x8 infrared temperature camera

===Movements, gyroscopes, Magetometers
l3g4200
mag3110
hmc5883L
bno055
mpu9255
mpu6050
lsm303

===ADC
ADC121
ina219
ina3221
ADS1x15-1
ADS1x15
spiMCP3008
spiMCP3008-1
PCF8591-1
PCF8591

===Pulse sensors
INPUTpulse

===Capacitouch sensors
INPUTtouch-1
INPUTtouch-4
INPUTtouch-12
INPUTtouch-16

GPIO inoputs
INPUTgpio-1
INPUTgpio-4
INPUTgpio-8
INPUTgpio-26

===Distance, prximity
ultrasoundDistance
vl503l0xDistance
vcnl4010Distance
vl6180xDistance
apds9960

===special programs for you to design
mysensors
myprogram

===GPIO outpu
OUTPUTgpio-1-ONoff = relay OUTPUTgpio-1 = dimmer

===Radio
TEA5767

===DAC
MCP4725
PCF8591dac

===various display types
display
neopixel
neopixel-dimmer
neopixelClock

===sprinkler

===car

Release details
Released on: Feb. 13, 2024
Requires: Indigo v2022.1.0+
Downloaded: 0 times 
Changes in this release
  1. added precision temperature sensor tmp117

  2. some py3 fixes on rpi, to import adafruit libraries

Release details
Released on: Jan. 30, 2024
Requires: Indigo v2022.1.0+
Downloaded: 7 times 
Changes in this release
  1. fixed restart master on rpi through ssh did not work

  2. added a check around debugRPI, it now makes sure that the variable is properly, set even if not initialized

Release details
Released on: Jan. 22, 2024
Requires: Indigo v2022.1.0+
Downloaded: 7 times 
Changes in this release
  1. now supports RPI opsys bookworm - 32 bit version, released in Dec 2023 it was a little bit of work to make everything work again. behaviour of links between programs programs changed, ie sudo python xxx.py now requires sudo python xx.py & to invoke previously xxx.py canceled the sudo process w/o impaction xxx.py. That is not true anymore. It is used quit extenisveley in pibeacon Several other chnages required modigications NO python2 programs are available, everything is now py3 o the new RPI OP sys

  2. you now can use the regular RPI SD IMAGE INSTALLER tool to create your SD. see https://forums.indigodomo.com/viewtopic.php?f=187&t=15482&p=109421#p109421 The plugin will auto install all needed software and set all required configs on the RPI

==> I will not supply a precanned image anymore to be copied onto the SD you can now create that yourself. It is actually more user friendly.

In the future I will need to stop supporting py2 compatibility. That means new plugin versions MIGHT not run on older SD versions anymore. This one still does, but might be the last one. I hope you understand.

Release details
Released on: Jan. 13, 2024
Requires: Indigo v2022.1.0+
Downloaded: 5 times 
Changes in this release
  1. added Thermopro beacon & sensors

  2. added Shelly BLU button and Motion and Window sensor this is a newer line of SHELLY products that use BLE to communicat. They Broadcast various infos: battery level, button:press/short/double/tripple/long, illuminance (in Lux), door open/closed/ rotation, motion. some of they can beep, but only thru the shelly phone app shelly BLU YOU MUST SETUP EACH DEVICE IN THAT APP AND ENBALE broadcast (BC) and disable encryption you can add them with menu/accept new beacons.. selcet the proper shelly dev type. then a beacon device is created as well as a sensor device that shows the open/close montion/. button press. values. you need to edit the created sensor device to select the proper RPi to be used to trac the button info. you can select several RPi to do this. with a single shelly button device you can trigger up to 4 actions in indigo. (press/double/tripple/long press) trigger on dev/state[on/offstate] == True, then with condition dev/state[currentEvntType] == press/ double_press/ tripple_press / long_press then you can have ONE button that can eg: open house/ garage/ light on/ away the beacon behaves like a regular beacon (although it broadcast alive only every 8 secs, otehr beacosn every second or faster) it hence can be used as "present" indicator like all otehr beacons

  3. fixed state indicator red/green/grey for delayed action (eg button press goes green but never grey.. afetr x seconds as intended). It was always set to sensor ON

!!! IMPORTANT !!! 4. fixed issue for python2 installs on rpi w older ssd image: removed new format statement that only work under py3: f" {xx}" replaced by " {}.format(xx)" if you are using an older RPI image w/o python3 as default (older than 2022) PLEASE install this version. beacon detection will not work otherwise

Release details
Released on: Nov. 7, 2023
Requires: Indigo v2022.1.0+
Downloaded: 17 times 
Changes in this release

added features / changes in v2022.171.88 @ 2023-11-07

  1. added option to use any GPIO on the rpi to read one wire sensor temperature (ie 18db20) you can now use all gpios (20+) to read multiple onewire sensors each you need to set the GPIOs in device edit for the RPI as it is set for all onewire sensrs on that RPI With eg = 10 gpios and 10 onewire sensors on each gpio it can read 100 sensors with ls -o /sys/bus/w1/devices/ you can check if the busmaster channels are ok. You should see something like this: lrwxrwxrwx 1 root 0 Aug 29 02:06 28-000d770e64ff -> ../../../devices/w1_bus_master4/28-000d770e64ff .. lrwxrwxrwx 1 root 0 Aug 29 02:06 28-3ce104570a38 -> ../../../devices/w1_bus_master2/28-3ce104570a38 ... lrwxrwxrwx 1 root 0 Aug 29 02:06 w1_bus_master1 -> ../../../devices/w1_bus_master1

    where 28-3ce10457da57 are the IDs of the one wire sensors

    added option to use a relay to reset the onewire setup (eg to disconnect power from the onewire sensors). Set this in RPI device edit added option to reboot the RPI if reading onewire sensors is not successfull for xx read tries It takes about 1 secs to read a sensor. With 10 sensors on one GPIO it would take about 11 secs to read 100 sensors with 10 GPIOs

  2. fixed bug for iSensor On devices (door button): the dev state onOffstate ui value was always "on". the onOffState itself was correct.

  3. added "lastBatteryReplaced" state to isensor devices they will show when the state "lowVoltage" went from empty to false or from true to false, ie when a new battery was added

  4. changed state lastBatteryUpdate: was: if new batterylevel ==100 and old < 100: set lastBatteryUpdate to current date now: added if lastBatteryUpdate is empty set to current date. if the battery level is less than 100 when you start the plugin you might need to wait for a loooong time before this state gets set ie if the battery live is 2 years this now gives you at east some date (when you load this plugin)

  5. added device types: MMK beacons, must be configured with iphone app KBeaconpro. These devices transmit TML (google def) packages they can be configured to send different packges of data. you need to setup these diffent packages (called slots in KBeaconpro) add one slot for each package, single, doube, long press and if available for Temp/hum/acceleration set Namespace ID to 1 for single press, 2 for double press, 3 for long press then set trigger advertisement to "trigger only" and "trigger by" to single, double long press respectively

    A) SOS button can be used for eg a door buton, indigo can then trigger on button press, double press, long press

    B) rechargeable beacon with ALSO temp,hum,acceleration info.

    It is a little tricky to setup but works well

Release details
Released on: Aug. 30, 2023
Requires: Indigo v2022.1.0+
Downloaded: 15 times 
Changes in this release
  1. added option to use any GPIO on the rpi to read one wire sensore temperature (ie 18db20) you can now use all gpios to read multiple onewire sensors each so with > 10 gpios and 10 onewire sensors on each gpio it can go > 100. but reading one sensor takes ~ 1 secs. So for 100 that would take 100 secs. you need to add at the bottom of /boot/config.txt: dtoverlay=w1-gpio dtparam=gpiopin=26 <-- this will be busmaster 4 dtoverlay=w1-gpio dtparam=gpiopin=5 dtoverlay=w1-gpio dtparam=gpiopin=17 dtoverlay=w1-gpio dtparam=gpiopin=4 <-- this will be busmaster 1 that will result in GPIO 4,17,5, 26 be reading onewire temp sensors to edit config.txt do sudo nano /boot/config.txt and add the lines with control-o and control-x you can save and exit nano editor then reboot with ls -o /sys/bus/w1/devices/ you can check if the busmaster channels 1.. 4 in this case are ready. you should see something like this: lrwxrwxrwx 1 root 0 Aug 29 02:06 28-000d770e64ff -> ../../../devices/w1_bus_master4/28-000d770e64ff .. lrwxrwxrwx 1 root 0 Aug 29 02:06 28-3ce10457da57 -> ../../../devices/w1_bus_master1/28-3ce10457da57 lrwxrwxrwx 1 root 0 Aug 29 02:06 28-0516b33a17ff -> ../../../devices/w1_bus_master3/28-0516b33a17ff lrwxrwxrwx 1 root 0 Aug 29 02:06 28-3ce104570a38 -> ../../../devices/w1_bus_master2/28-3ce104570a38 ... lrwxrwxrwx 1 root 0 Aug 29 02:06 w1_bus_master1 -> ../../../devices/w1_bus_master1 where 28-3ce10457da57 are the IDs of the one wire sensors

  2. added "lastBatteryReplaced" state to isensor devices they will show when the state "lowVoltage" went from empty to false or from true to false, ie when a new battery was added or when

  3. fixed bug for iSensor On devices (door button): the dev state onOffstate ui value was always "on". the onOffState itself was correct.

Release details
Released on: Aug. 23, 2023
Requires: Indigo v2022.1.0+
Downloaded: 3 times 
Changes in this release
  1. fixed bug introduced in v2022.169.84 changed values (5 min, 10 min, 1 hour ...) for temp humidity .. values did not update
  2. added sensirion scd40 41.. sensortypes they measure CO2 temp and hunidity, using i2c please get one with its own voltage regulator (eg adafruit. they draw 200mA when measuring and require a very stable voltage. And connect the V pin to +5V make sure you set V-i2c to 3V on the board) not fully tested, pre version
  3. optimized pi software updates
Release details
Released on: Aug. 23, 2023
Requires: Indigo v2022.1.0+
Downloaded: 2 times 
Changes in this release
  1. fixed bug introduced in v2022.169.84 changed values (5 min, 10 min, 1 hour ...) for temp humidity .. values did not update
  2. added sensirion scd40 41.. sensortypes they measure CO2 temp and hunidity, using i2c please get one with its own voltage regulator (eg adafruit. they draw 200mA when measuring and require a very stable voltage. And connect the V pin to +5V make sure you set V-i2c to 3V on the board) not fully tested, pre version
  3. optimized pi software updates
Release details
Released on: Aug. 20, 2023
Requires: Indigo v2022.1.0+
Downloaded: 2 times 
Changes in this release
  1. general maintenance release
  2. added battery level to veg trug beacons
  3. added menu action to reset or calibrate co2 sensors sensirion scd30 added device states to reflect calibration status
Release details
Released on: July 14, 2023
Requires: Indigo v2022.1.0+
Downloaded: 9 times 
Changes in this release

added state: "lastBatteryReplaced" ...
.. now also supports beacons that do not broadcast their battery level, but also beacons that have to be queried to get their battery status eg iTrack, musegear ..

Release details
Released on: July 12, 2023
Requires: Indigo v2022.1.0+
Downloaded: 3 times 
Changes in this release

added state: "lastBatteryReplaced" to devices that have a batteryLevel state. it shows the date-time when the battery level went back from < 100 to 100 % with this you can see when you replaced the battery. this is also shown in the battery level report in menue / print various ...

Release details
Released on: July 5, 2023
Requires: Indigo v2022.1.0+
Downloaded: 6 times 
Changes in this release

different ruuvitag format capture

Release details
Released on: July 5, 2023
Requires: Indigo v2022.1.0+
Downloaded: 4 times 
Changes in this release

bugfix: File "beaconloop.py", line 5784, in checkIfTagged if testTag == "iBeacon" and iBeacon != ""

Release details
Released on: June 3, 2023
Requires: Indigo v2022.1.0+
Downloaded: 16 times 
Changes in this release
  1. bugfix: "plugin.py", line 20656, in actionControlSensor type: name 'address' is not defined
  2. added option to not print test logging at startup, set in config/ debug section
Release details
Released on: May 9, 2023
Requires: Indigo v2022.1.0+
Downloaded: 9 times 
Changes in this release

added cut off values for distance sensors min/ max, added state distanceRaw (unmodified measured value)

Release details
Released on: May 8, 2023
Requires: Indigo v2022.1.0+
Downloaded: 1 times 
Changes in this release
  1. added menu item to clean up ~/.ssh/know_hostsfile if you have issues with ssh loging in to your unifi devices, you can now reset the entries in ~/.ssh/konwn_hosts file

  2. added config option in userid/password section to ignore known_hosts ie use ssh -o StrictHostKeyChecking=no userid@x.y.x.z instead of ssh userid@x.y.x.z

Release details
Released on: April 18, 2023
Requires: Indigo v2022.1.0+
Downloaded: 6 times 
Changes in this release

Added features / changes in v2022.165.69@ 2023-04-01

  1. added support for thermobeacons. They are bluetooth temperature & humidity sensors w and w/o display they are sold under various brands like sensorBlue etc.

  2. added some states to itrack button: state of beacon current and last off event time stamp

  3. for BLE-sensor devcies added pluginProp beaconDevId that is the corresponding beacon device to the sensor device eg for on off BLE sensor device like iTrack it has a corresponding beacon device that has the same MAC number this can be used in triggers etc to find which device triggered

  4. added variables: lastButtonOnDevId this is the device id of an on/off BLE sensor device that was off-> on lastButtonOnBeaconDevId this is the corresponding dev id for the beacon device this can be used eg after receiving an On event from an iTrack sensor on/off device to send a message to the beacon to make it beep or get battery level like so in an action script:

#
#
#

this action:

calls actiongroup to open door, but not more often than every 10 secs

then send get battery command to rpi # 999 (closeset) for corresponding beacon that triggered the button

it has 3 lists of triggering devices, will do something else for group B, C

#

this is the list of on/off button BLE devices that could have triggerd this action

we have 2 lists, different actions for A and B

you can use names or variables

devListA = ["button-musegear-1", "button-musegear-2", ] devListB = [ "button-musegear-H", ] devListC = [ "button2"]

if you want to use Ids

devListA = [123,23524,56745,457457 ]

devListB = [2453456,6475789,231234124]

devListC = [2453456,6475789,231234124]

beep = True getBattery = True

import time

is everything running?:

try: plug = indigo.server.getPlugin("com.karlwachs.piBeacon") except: indigo.server.log("plugin not running") return if not plug.isEnabled(): indigo.server.log("plugin not running") return

get device that triggered this action:

try: triggerDevId = indigo.variables["lastButtonOnDevId"].value triggerDev = indigo.devices[int(triggerDevId)] except: indigo.server.log("variable lastButtonOnDevId:{} not correct".format(triggerDevId)) return

if type(devListA[0]) == type(1): useTag = triggerDev.id else: useTag = triggerDev.name

if useTag not in devListA + devListB + devListC: indigo.server.log("trigger device {} not in defined groups".format(triggerDev.name)) return

action for A list

if useTag in devListA or useTag in devListB: # get / setup last time stamp variable of last action for this action try: var = indigo.variables["lastDoorOpen"].value except:
indigo.variable.create("lastDoorOpen","0") var = indigo.variables["lastDoorOpen"].value lastOpen = float(var)

if time.time() - lastOpen > 10: # too early for this action?
    indigo.actionGroup.execute("press door unlock button action")  # use your action here 
    indigo.variable.updateValue("lastDoorOpen", value="{:.0f}".format(time.time())) # remember last action in variable
else: # skip
    indigo.server.log("skipping open door, last open door event was {:.0f} secs ago".format(time.time()-lastOpen))
    return 

# now next action, beep and get battery level
beacondevID = indigo.variables["lastButtonOnBeaconDevId"].value
try:
    beaconDev = indigo.devices[int(beacondevID)]
except:
    indigo.server.log("beacon {}  not defined in indigo".format(beacondevID))
    return 

if beep:    # server =-1: use closest, beepTime =-1: only beep off, >0 = beep 
    plug.executeAction("beepBeacon", props ={"piServerNumber":"-1","selectbeacon": beacondevID,"beepTime":"1"})
    indigo.server.log("sending beep to dev:{}".format(beaconDev.name))
if getBattery:  # must "set get battery mode" to interactive in config                          
    indigo.server.log("sending get battery to dev:{}".format(beaconDev.name)) 
    # all = use closest RPI, startAtDateTime set delay of start for command, 0 should work fine 
    plug.executeAction("getONEiBeaconParameters", props ={"piServerNumber":"all","devIdOfBeacon": beacondevID, "startAtDateTime":0})

action for C list do beep and then 9 sec ater get battery level

if useTag in devListC: beacondevID = indigo.variables["lastButtonOnBeaconDevId"].value beaconDev = indigo.devices[int(beacondevID)] plug.executeAction("beepBeacon", props ={"piServerNumber":"-1","selectbeacon": beacondevID,"beepTime":"1"}) plug.executeAction("getONEiBeaconParameters", props ={"piServerNumber":"all","devIdOfBeacon": beacondevID, "startAtDateTime":0})

#
#
#
Release details
Released on: March 15, 2023
Requires: Indigo v2022.1.0+
Downloaded: 13 times 
Changes in this release

fixed some issues with new iTrack beacons.

Release details
Released on: March 13, 2023
Requires: Indigo v2022.1.0+
Downloaded: 7 times 
Changes in this release
  1. added new dev type iTrack (Rinex,Vozni,Njoii,Musegear) BUTTON. iTrack types are regular beacon that can deliver battery info, can be beeped and can trigger any indigo action with the button press !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! FINALLY an ALL IN ONE device - after 8 years with this plugin: beacon position, Battery level, beep, and action button. !!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    1. get a iTrack beacon, (amazon germany euro 25 for Musegear),
    2. click on the button for 5 secs to enable it
    3. add the eg musegear beacon to indigo: menu/ accept/reject new beacons, select ITrack: Rinex,Vozni,Njoii,Musegear On Button as beacon type; then a new beacon will be created within 30 secs. Copy the mac number
    4. add a new device type "BLE-iTrack (Musegear,Rinex,..) On Button", paste the mac number. Select which rpi should track the button sensor button On/off ( this is not the beacon data!!, that will continue as is)
    5. then you can press the button (5 secs) on the beacon and the status will go to "true/On" for 30 secs, then to false/off again, use this as a trigger to eg open door...

    ===== now you can with this beacon type:

    1. know in which room the beacon is (requires one rpi per room, state= closest RPI ), or if it is away or if it moves - change in distances states, or dev state position of beacon
    2. you can see the battery level in the beacon dev state
    3. you can in indigo menu/action beep the beacon to find it

      4. press the button on the beacon and you can trigger any action in indigo

    The smallest version is 4mm x 35mm x 25mm There are regular, wallet, mini, rechargeable versions

  2. added support for the new indigo 2022.2 http api w bearer id. the old http restfull api does not work under indigo 2022.2 the new version will only work if your RPI is running bullseye or later and everything with py3 BUT it will create a lot of logfile entries each time the rpis send data to indigo. with the old version there was a patch you could use to disable the logging.

    I strongly recommend to use the default socket communication rpi to indigo - you select it in config. that works with all versions and combinations

  3. worked on "fastDown" option for beacons. It is now stable down to 10 secs. Normal mode beacons take about 90 secs to go "down"/ off. They expire due to no signal receives from rpis in indigo In fastdown mode the rpi sends a signal (down rssi=-999) when it has not received a signal from the beacon for xx secs. After receiving a down signal the plugin sets the state to down - after all rpis have send the down signal. This works for fastDown times down to 15 secs and if you have several RPi that "see" the beacon down to 10 secs. this will create a lot more traffic from the RPIs to the plugin:
    For fastDown time = 10 secs one message every 5 secs from each RPI for each of these fastDown beacons, so for 5 beacons and 5 rpi up to 5 message per second from rpis to indigo Indigo is able to handle this if you have a good sized mac - my mac mini M1 2020 has 14% total load (and 10% pibeacon plugin load on one proc.) with that config with many other plugins running

  4. fixed variable counters for devices Up/down for groups with beacon members (the group BEACON was correct). the other groups (Family ..) worked correctly for sensor devcies added 2 more optional groups you can use to count devices home/away, default are Family, guest, other1.. other5. If not assigned a name in config, the variables are not created. You need to edit a device and check the groups name you want it to be come a member of. Then the variables GroupName_Away and _Home counters will be updated

  5. fixed: piBeacon Error 'local variable 'xx' referenced before assignment'

Release details
Released on: March 12, 2023
Requires: Indigo v2022.1.0+
Downloaded: 6 times 
Changes in this release
  1. added new dev type iTrack (Rinex,Vozni,Njoii,Musegear) BUTTON. iTrack types are regular beacon that can deliver battery info, can be beeped and can trigger any indigo action with the button press !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! FINALLY an all in one device - after 8 years with this plugin. !!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    1. get a iTrack beacon, (amazon germany euro 25 for Musegear),
    2. click on the button for 5 secs to enable it
    3. add the eg musegear beacon to indigo: menu/ accept/reject new beacons, select iTrack .. Rinex, .. , Musegear as beacon type; then a new beacon will be created within 30 secs. Copy the mac number
    4. add a new device type BLE-iTrack-Button, paste the mac number. Select which rpi should track the button sensor button On/off ( this is not the beacon data!!, that will continue as is)
    5. then you can press the button (5 secs) on the beacon and the status will go to "true/On" for 30 secs, then to false/off again

    ==== now you can with this beacon:

    1. know in which room the beaocn is (requires one rpi per room state= closest RPI ), or if it is away or if it moves - change in distances states, or dev state position of beacon
    2. you can see the battery level in the dev state
    3. you can in indigo menu/action beep the beacon to find it
    4. press the button on the beacon and you can trigger any action in indigo

    The smallest version is 4mm x 35mm x 25mm There are regular, wallet, mini, rechargeable versions

  2. added support for the new indigo 2022.2 http api w bearer id. the old http restfull api does not work under indigo 2022.2 the new version will only work if your RPI is running bullseye or later and everything with py3 BUT it will create a lot of logfile entries each time the rpi send data to indigo. with the old version the was a patch you could use to disable the logging.

    I strongly recommend to use the default socket communication rpi to indigo - you select it in config. that works with all versions and combinations

  3. worked on "fastDown" option for beacons. It is now stable down to 10 secs. Normal mode beacons take about 90 secs to go "down"/ off. They expire due to no signal receives from rpis in indigo In fastdown mode the rpi sends a signal (down rssi=-999) when it has not received a signal from the beacon for xx secs. After receiving a down signal the plugin sets the state to down - after all rpis have send the down signal. this works for fastDown times down to 15 secs and if you have several RPi that "see" the beacon down to 10 secs. this will create a lot more traffic from teh RPIs to the plugin:
    for fastDown time = 10 secs one message every 5 secs from each RPI for each of these fastDown beacons, so for 5 beacons and 5 rpi up to 5 message per second from rpis to indigo Indigo is able to handle this if you have a good sized mac - my mac mini M1 2020 has 14% total load (and 10% pibeacon plugin load on one proc.) with that config with many other plugins running

Release details
Released on: Feb. 21, 2023
Requires: Indigo v2022.1.0+
Downloaded: 10 times 
Changes in this release
  1. added color knight rider option for neopixel: you can show swinging LEDS w different colors on a neopixel string for detail see menu/print various info to logfile /print distance actions ..

  2. fixed : undervoltage reporting, vcgencmd cmd has moved in new raspian image to /usr/bin/vcgencmd it will check the old and new postion of executable.

Release details
Released on: Feb. 11, 2023
Requires: Indigo v2022.1.0+
Downloaded: 6 times 
Changes in this release

This version now offers to directly show distance sensor information on attached neopixel devices on the rpi It does not have to go through indigo. you configure a) the neopixel output device in indigo, set the pyhical parameters - # of LED etc, connect teh device to the RPI b) configure the distance sensor in indigo (any of the supported models3 work) and connect the distance sensor to the same RPI configure the neopixel commands (see menu/indigo/pibeacon/print various info.. for examples) in the distance sensor device like: distance limits for versyshort, short, medium, long verylong and stopped then the distance sensor will send these commands directly to the neopixel.py program on the same RPI when it reaches the limits set, eg stop, verylong distance ... you can have the neopixel device show simple colored LEDS R/B/B or blinking or "knightrider" type the neopixel indigo device status will also show the commands send to it on the rpi

  1. improved trigger for distance sensors (how often new values get send to indigo) now it is trigger: if (delta absolut > DA and delta% > D% ) or delta time > 30 secs : send to indigo DA, D% = set in sensor edit added dev state trigger to distance sensor with these setting you can now fine tune trigger sensitivity there is also the option for local execution of any script on the rpi eg set LED lights r/g/b if distance is gt or lt xx... must have neopixel device attached on that RPI do menu /Print various info to logfile../Print Distance action help to logfile/ or click on help button in distance sensors

  2. fixed status column method. only ON/off was used. now if detailed colors are set then they are used, on/off only if details not defined. added data field "trigger" send to indigo if there is an action trigger event (Short, Med, Long, Stop, Dist, Time ) you can trigger on that device state["trigger"] == "your choice here" added option to have neopixel return command type received. you must supply "ststus":"yourtext" to the command send to neopixel, eg: echo '{"repeat":"1","status":"Long","command":[{"type":"sLine","display":"wait","position":[0,12,0,0,0]},{"type":"sLine","display":"immediate","position":[0,12,0,100,0]}]}' > temp/neopixel.inp would set neopixle device status to "Long" added states: trigger --> Dist,Time, distanceEvent distanceEvent --> VeryLong,Long,Medium,Short,VeryShort,Stop

  3. added line type sLine for neopixel, same as "line" (2D) but just 1D, reduces the number or parameters to be specified

  4. reduced key length for specifc commands (long form still works) sLine —> sl line —> l resetinitial -> res knightrider -> kr position -> p spoint -> sp rectangle —> r and repeat:1 is default, no need to add to command display:"immediate" is default, no need to add to command

  5. added option to show distance as thermometer type on neopixel, executed locally on RPI

  6. added action to pause any distance sensor. it simply "sleeps" in the execution loop for the specified time this is useful if you have local display/neopixel commands and want to pause them due to eg garage dooor open...
Release details
Released on: Jan. 25, 2023
Requires: Indigo v2022.1.0+
Downloaded: 3 times 
Changes in this release

fixed bug introduced in v ..19, error setting up new RPI

Release details
Released on: Jan. 25, 2023
Requires: Indigo v2022.1.0+
Downloaded: 3 times 
Changes in this release

fixed bug introduced in v ..19, error setting up new RPI

Release details
Released on: Jan. 24, 2023
Requires: Indigo v2022.1.0+
Downloaded: 3 times 
Changes in this release
  1. added feature kight rider for neopixel (swinging band of leds left right )
Release details
Released on: Jan. 21, 2023
Requires: Indigo v2022.1.0+
Downloaded: 4 times 
Changes in this release
  1. delay start time for gpio and i2c-relay: now checks ALSO during delay before any action if it should be cancelled in general you can remove the previous command by issuing a new one eg send 10 pulses 1 sec each and then an off after 5 secs, only 5 pulses will be done before this it was only checking during the active part if it should stop. ... this matters only if you use a delay at start parameter

  2. bug fix: File "plugin.py", line 6052, in filterNeopixeldevices it is a format error

  3. some menu changes

Release details
Released on: Jan. 14, 2023
Requires: Indigo v2022.1.0+
Downloaded: 9 times 
Changes in this release
  1. added option for each pi to ignore known_hosts for ssh and sftp to rpi this is to avoid needing to modify knownhostsfile incase of changes in ip number etc.

  2. fixed pmairquality py2 -> py3 bug ( concatenate strings / bytes) sensor now only works with py3 !!

  3. bug for sensor INPUTpulse, device statename was wrong (typo), fixed (bug was added in py2->py3 conversion (u"xxx" changed to "uxxx" instead of "xxx"))

Release details
Released on: Dec. 14, 2022
Requires: Indigo v2022.1.0+
Downloaded: 16 times 
Changes in this release

improved switchbot response time by ~ 0.5 secs

Release details
Released on: Dec. 6, 2022
Requires: Indigo v2022.1.0+
Downloaded: 8 times 
Changes in this release

fixed issues with py3 ie for BLE connect devices like xiaomi soil meter, Temp&Humidity sensors...

Release details
Released on: Dec. 3, 2022
Requires: Indigo v2022.1.0+
Downloaded: 8 times 
Changes in this release
  1. made all major py programs on rpi run under python2 or python3 py2 vs py3 can be selected in config for all rpi or left to each individual rpi in rpi dev edit the py version can be selected if in config it is set to individual rpi py3 requires pi-os >=10 (stretch ssd) to work properly

    All required libs are installed by the plugin system (ie neopixel, sensor libs etc, see checkForInclude-py2/py3.py on the rpi eg libs: io, hcidump, smbus2 pexpect, expect, ... , syntax changes: / vs // (int//float), print /;print() etc the devil is in the details:
    calling py3 modules can be different from py2 eg to make them "unlinked" /E option has to be used and many more "little" changes binary socket data transfer is different

    ==> this was a major pice of work <==

    for ssd updates: I suggest that you do

    1. updates apps and sys: sudo apt update sudo apt upgrade -y ( or a more thorough, but mostly not needed: sudo apt dist-upgrade -y )
    2. cleanup: sudo apt autoremove sudo apt clean
    3. then reboot every 2 months to keep the security patches up to date
  2. added option to detect new beacons looking at the manufacturer name in the BLE message. Some beacons send that info in their BLE msg some beacons like from NUT or april have several tag definitions, with this option you can catch them all the plugin will then find the proper individual tag that works for the soecific beacon type ie beep, battery, .. to use this: select in "accept new beacons" menu item

  3. added TOF sensor vl503l1xDistance. It has range up to 4 m you now can use several of vl503l1x or vl503l0x tof sensors on one RPI

  4. several smaller fixes and improvements

  5. some menu fixes