RF protocol development

433Mhz protocol for OaseFM-Master 3

Unfortunately I’ve no coffee-script knowledge. Therefore I wrote a small python script to send out the pulse sequences to control the power outlets of the Oase FM-Master 3.
I think it is worth to check if the used approach for the “binary_to_pulse” implementation can be integrated into the homeduino plugin, as this would give more flexibility for further protocol implementations.

#!/usr/bin/python # -*- coding: utf-8 -*- import time import sys import argparse import RPi.GPIO as GPIO NUM_ATTEMPTS = 8 TRANSMIT_PIN = 23 #################### RF device characteristics ... rf_devices = { # Oasis InScenio FM-Master 3 - (Handsender) "FM-MASTER-3": { "pulse_timing": { "short": 0.000865, "long": 0.001720, "extended": 0.00516 }, "binary_to_pulse": { "0": [["short",0], ["short",1],["short",0]], # short low + short high + short low "1": [["long", 1], ["short", 0]] # log high + short low }, "S1": { "ON" : '0101010001110101000000010', "OFF": '0101010001110101000000001' }, "S2": { "ON" : '0101010001110101000001000', "OFF": '0101010001110101000000100' }, "P": { "ON" : '0101010001110101000100000', "OFF": '0101010001110101000010000', "-" : '0101010001110101001000000', "+" : '0101010001110101010000000' }, }, # conecto SA-CC50132 - (Handsender) "CONECTO": { "pulse_timing": { "short": 0.000316, "long": 0.000844, "extended": 0.010360 }, "binary_to_pulse": { "0": [["short", 1], ["long", 0]], # short high + long low "1": [["long", 1], ["short", 0]] # long high + short low }, "A": { "ON" : '0000111010000011000011111000010000', "OFF": '0000111010000011000011101000010100' }, "B": { "ON" : '0000111010000011000011011000011100', "OFF": '0000111010000011000011001000011000' } } } def rf_send(rfd, unit, state): # Transmit a RF binary representation for t in range(NUM_ATTEMPTS): for i in rfd[unit][state]: for pulse in range(len(rfd["binary_to_pulse"][i])): GPIO.output(TRANSMIT_PIN, rfd["binary_to_pulse"][i][pulse][1]) time.sleep(rfd["pulse_timing"][rfd["binary_to_pulse"][i][pulse][0]]) GPIO.output(TRANSMIT_PIN, 0) time.sleep(rfd["pulse_timing"]["extended"])

For the time being i will work with a pimatic ShellButtons device to execute the python script for controlling the Oase 433Mhz device. But it would be nice to have a integration into the homeduino plugin.

read more
Plugin development
New plugin pimatic-sounds

Pimatic-sounds-basic is updated to version 0.1.22

read more

ESP8266 development

DSC alarm system integration

I tested the following solution for DSC alarm accessing over web and Blynk, using a NodeMCU V3. For users have more partitions the Blynk is better.
I installed a local Blynk server on a rpi, and for the NodeMCU (connected directly to a DSC keypad) followed the example codes. The Blynk app on android or ios just read the values decoded from the keypad bus, and display it, or inject specified codes to the alarm system. All this is quite simple, and works well and stable.

I’m thinking if pimatic accessing the NodeMCU via wifi, and read/write all the values from, can do the same that Blynk app can. I’m sure it can, and with some help, we can create a new awesome plugin for this.


read more
pimatic-mysensors and node v10

For Pimatic-MySensors a new version 0.9.3 is released.
This version is compatible with node 4.x till 10.x, because a newer version of serialport is used.

read more

Looks like your connection to pimatic forum was lost, please wait while we try to reconnect.