Git Product home page Git Product logo

sd_keeloq's Introduction

14_SD_Keeloq.pm

KeeLoq is a registered trademark of Microchip Technology Inc.

This file is working with the SIGNALduino Project.
The current version is at https://github.com/RFD-FHEM/RFFHEM/tree/dev-r34

Branching model

  • stable contains the current version.
  • pre_release contains the next release version, it's considered stable also, but might contains bugs or issues.

How to install

The Perl modules can be loaded directly into your FHEM installation from github:

update all https://raw.githubusercontent.com/fhem/SD_Keeloq/master/controls_SD_Keeloq.txt

How to receive or send the SD_Keeloq radio signal

You need a SIGNALduino and know the keys. Look at the FHEM Wiki, for more Information: http://www.fhemwiki.de/wiki/SIGNALDuino Forum thread is at: http://forum.fhem.de/index.php/topic,38831.0.html

sd_keeloq's People

Contributors

actions-user avatar homeautouser avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Forkers

bismosa meier81

sd_keeloq's Issues

Pearl warning

Hi,

wenn ich versuche das Modul zu reloaden erhalte ich Pearl Warnings:

2023.03.24 16:10:11 5: Cmd: >reload 14_SD_Keeloq.pm<
2023.03.24 16:10:11 5: Loading ./FHEM/14_SD_Keeloq.pm
2023.03.24 16:10:11 1: PERL WARNING: Subroutine SD_Keeloq_Initialize redefined at ./FHEM/14_SD_Keeloq.pm line 109.
2023.03.24 16:10:11 1: PERL WARNING: Subroutine Define redefined at ./FHEM/14_SD_Keeloq.pm line 176.
2023.03.24 16:10:11 1: PERL WARNING: Subroutine Attr redefined at ./FHEM/14_SD_Keeloq.pm line 211.
2023.03.24 16:10:11 1: PERL WARNING: Subroutine Set redefined at ./FHEM/14_SD_Keeloq.pm line 385.
2023.03.24 16:10:11 1: PERL WARNING: Subroutine Parse redefined at ./FHEM/14_SD_Keeloq.pm line 833.
2023.03.24 16:10:11 1: PERL WARNING: Subroutine Undef redefined at ./FHEM/14_SD_Keeloq.pm line 1224.
2023.03.24 16:10:11 1: PERL WARNING: Subroutine SD_Keeloq_bin2dec redefined at ./FHEM/14_SD_Keeloq.pm line 1233.
2023.03.24 16:10:11 1: PERL WARNING: Subroutine SD_Keeloq_dec2bin redefined at ./FHEM/14_SD_Keeloq.pm line 1241.
2023.03.24 16:10:11 1: PERL WARNING: Subroutine SD_Keeloq_translate redefined at ./FHEM/14_SD_Keeloq.pm line 1248.
2023.03.24 16:10:11 1: PERL WARNING: Subroutine SD_Keeloq_encrypt redefined at ./FHEM/14_SD_Keeloq.pm line 1258.
2023.03.24 16:10:11 1: PERL WARNING: Subroutine SD_Keeloq_decrypt redefined at ./FHEM/14_SD_Keeloq.pm line 1288.
2023.03.24 16:10:11 1: PERL WARNING: Subroutine SD_Keeloq_bitRead redefined at ./FHEM/14_SD_Keeloq.pm line 1324.
2023.03.24 16:10:11 1: PERL WARNING: Subroutine SD_Keeloq_binsplit_JaroLift redefined at ./FHEM/14_SD_Keeloq.pm line 1333.
2023.03.24 16:10:11 1: PERL WARNING: Subroutine SD_Keeloq_binsplit_Roto redefined at ./FHEM/14_SD_Keeloq.pm line 1347.
2023.03.24 16:10:11 1: PERL WARNING: Subroutine summaryFn redefined at ./FHEM/14_SD_Keeloq.pm line 1361.
2023.03.24 16:10:11 1: PERL WARNING: Subroutine SD_Keeloq_attr2html redefined at ./FHEM/14_SD_Keeloq.pm line 1371.
2023.03.24 16:10:11 1: PERL WARNING: Subroutine SD_Keeloq_attr2htmlButtons redefined at ./FHEM/14_SD_Keeloq.pm line 1484.

Beim Benutzen der JAROLIFT Funkset Fernbedienung wird auch kein autocreate gestartet.

UI - Einzeilig - Bedienung von Raum legt kein Reading an

Hallo,
@bismosa ich habe etwas beim Testen mitbekommen und einen Fix offen gelegt.
Wenn du das UI auf einzeilig setzt und aus der Roomansicht (nicht Detailansicht wenn du das Device anklickst) das Device bedienst, wird DDselect gesetzt aber das Reading vom Kanal nicht.

Version von 2020-12-02 bringt FHEM zum Absturz

Hatte das Folgende bereits im FHEM Forum gepostet (SD_Keeloq: Version von...), glaube aber dort mit meinem Anliegen an der falschen Stelle zu sein. Deshalb hier die Wiederholung.
Mit der aktuellen Version tritt reproduzierbar ein FHEM Absturz auf wenn ich versuch das Attribut "ChannelNames" anzulegen. Im fhem.log steht dann folgendes:

Line 26470: 2021.01.02 17:56:00.441 1: PERL WARNING: Deep recursion on subroutine "main::CallFn" at fhem.pl line 3049.
Line 26471: 2021.01.02 17:56:00.441 1: PERL WARNING: Deep recursion on subroutine "main::CommandAttr" at ./FHEM/14_SD_Keeloq.pm line 239.
Line 26472: 2021.01.02 17:56:00.442 1: PERL WARNING: Deep recursion on subroutine "SD_Keeloq::Attr" at fhem.pl line 3818.

Mit der Version 2019-09-02 tritt dieser Fehler nicht auf. Hier noch die SD_Keeloq Definition:

defmod myJaro_Whz SD_Keeloq 123400
attr myJaro_Whz ChannelNames Wohnzimmer,Küche,Schlafz_L,Schlafz_R,Sabine_L,Sabine_R,Dachstudio,Jalousie,Markise_Süd,Markise_West,Fallarm_Markise
attr myJaro_Whz Channels 11
attr myJaro_Whz IODev mySduino
attr myJaro_Whz KeeLoq_NLF 0xXXXXXXXX
attr myJaro_Whz LearnVersion new
attr myJaro_Whz MasterLSB 0xYYYYYYYY
attr myJaro_Whz MasterMSB 0xZZZZZZZZ
attr myJaro_Whz Repeats 6
attr myJaro_Whz Serial_send 123400
attr myJaro_Whz ShowIcons 1
attr myJaro_Whz ShowLearn 1
attr myJaro_Whz UI Mehrzeilig
attr myJaro_Whz devStateIcon send.down:fts_shutter_down send.up:fts_shutter_up send.stop:rc_STOP send.shade:fts_shutter_shadding_run Defined:rc_OK receive.down.*:fts_shutter_down receive.up.*:fts_shutter_up receive.stop.*:rc_STOP
attr myJaro_Whz model JaroLift
attr myJaro_Whz room SD_Keeloq

Wie angedeutet, beim Wechsel zurück auf die alte Version funktioniert das Anlegen des Attributes einwandfrei. Wenn das Attribut vergeben ist gibt es ebenfalls keine Fehlermeldung.

Fehlerhafte Spaltenbreite

Hallo!

Um es übersichtlicher zu halten mache ich mal eine neue Issue auf...

Es geht um die Fehlerhafte Spaltenbreite (Siehe ToDo-List).
Bisher haben wir, um die UI anzuzeigen, die "FW_summaryFn" benutzt um statt des Status-Icon die UI mit anzuzeigen.
Dies macht bei bestimmten Designs Schwierigkeiten.
Um dies zu umgehen könnte man die Detail-Ansicht mit dem HTML-Code erzeugen und diese dann extra einblenden lassen:

Detailansicht erzeugen:
$hash->{FW_detailFn} = "SD_Keeloq::summaryFn";
Detailansicht in der Raumansicht hinzufügen
$hash->{FW_addDetailToSummary} = 1;
Device-Overview einblenden:
$hash->{FW_deviceOverview} = 1;
Es muss die folgende Zeile entfernt werden:
$hash->{FW_summaryFn} = "SD_Keeloq::summaryFn"; # displays html instead of status icon in fhemweb room-view

Siehe auch: https://forum.fhem.de/index.php?topic=71772.0

Dadurch ändert sich das Design geringfügig aber sollte dann auch bei allen FHEM-Designs funktionieren:
Alt:
image
Neu:
image

ggf. könnte man nun noch den HTML-Code anpassen, um schmalere Spalten zu bekommen. (Abhängig derzeit von anderen Devices im gleichen Raum)

Gruß
Bismosa

your <Serial> xxxxxx is wrong! Please use only hexadecimal input with END 00.

2019.04.28 21:49:28 2: JarolifCUL: SD_Keeloq_Parse Unknown device JaroLift with Code xxxxxx detected, please define (rawdate=xxxxxxxxxxxxxxxxxx)
2019.04.28 21:49:28 2: autocreate: define SD_Keeloq_xxxxxx SD_Keeloq xxxxxx
2019.04.28 21:49:28 1: define SD_Keeloq_xxxxxx SD_Keeloq xxxxxx: ERROR: your xxxxxx is wrong! Please use only hexadecimal input with END 00.
2019.04.28 21:49:28 1: ERROR: ERROR: your xxxxxx is wrong! Please use only hexadecimal input with END 00.

Mit dem ESP und dem ursprünglichen Sketch, hat es mit der FB wunderbar geklappt, dort steht ja die selbe SN drin. Meine beiden anderen 4ch FB's haben eine andere SN. Die Probleme macht ist eine 16ch. Aber was sie ausgibt ist doch hexadecimal, oder nicht ? Kann ich die SN hier so einfach posten ?

Kann man da noch was ändern ? Wollte die SN eigentlich übernehmen, sonst muss ich alle neu anlernen, das wollte ich vermeiden.

Grüße

Pearl Warning im FHEM Log

Hi und guten Abend,

hab heute mal wieder mein Log durchgeschaut bezüglich Fehler usw., da ist mir folgende Zeile des öfteren ins Auge gefallen (natürlich immer mit anderem Datum und Uhrzeit):

2020.06.05 20:45:09 1: PERL WARNING: Use of uninitialized value $binsplit in concatenation (.) or string at ./FHEM/14_SD_Keeloq.pm line 601.

Da Pearl-Code nicht unbedingt mein Steckenpferd ist könnte sich das von euch mal jemand ansehen?

Gruß Markus

Serial Send

Hallo!

Ich trenne das jetzt von hier: #6
mal auf.

Es geht um gültige Serial_send nummern. Soweit ich es bisher festgestellt habe, muss eine gültige Serial in der Dezimalform durch 16 teilbar sein.
Dadurch ist die größtmögliche Serial die FFFFF0 -> Dezimal: 13602816 -> Dezimal/16: 850176.

Diese wurde im Test auch problemlos von meinem Empfänger akzeptiert.

Um gültige Seriennummern eingeben zu können, habe ich mal ein kleinen Patch gemacht. Ich habe ein Attribut "Serial_send_num16" hinzugefügt.

  • Gültige Eingabe: 0 - 850176
  • Wird das Attribut gesetzt, wird das Attribut "Serial_send" mit dem Hex-Wert "Serial_send_num16 * 16" ausgefüllt.
  • Wird das Attribut "Serial_send" als Hex gesetzt, wird das Attribut "Serial_send_num16" automatisch ausgefüllt (Serial_send / 16).
  • Wird ein Code empfangen, wird ein neues Reading "serial_receive_num16" erzeugt. (serial_receive / 16)
  • Die Doku habe ich auch schonmal versucht anzupassen

Der Patch ist hier zu finden:
bismosa/RFFHEM@34c3b15
(Ich habe keine Ahnung, wie ich das besser übermitteln könnte)

ToDo (?)

  • Bei bestehenden Devices wird das Attribut "Serial_send_num16" nicht automatisch gesetzt
  • Ist der Name "Serial_send_num16" wirklich einleuchtend?
  • Sollte beim setzen der Serial_send eine Gültigkeitsprüfung mit eingebaut werden?

Ich denke das so eine Alternative Eingabemöglichkeit einer Serial gegeben wird, womit jeder etwas anfangen kann.

Gruß
Bismosa

Gruppensteuerung ab dem 10. Motor funktioniert nicht.

Ich habe 16 Motoren.
Wenn ich versuche, Motoren per Gruppensteuerung ab dem 10. Motor zu steuern, so
fahren diese Motoren nicht.

Beispiel: DG:10,11 =kein Motor fährt
oder
Alle:1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 =Motoren 1-9 fahren, Motoren 10-16 fahren nicht.

Umsetzung für OH mit dem Signalduion ?

Hallo @HomeAutoUser ,

ich wurde durch einen Internet Kontakt auf dieses Projekt aufmerksam geworden. Momentan nutze ich die ursprüngliche Version mit dem ESP - MQTT und OP um meine Rollos zu steuern. Da ich allgemein Neueinsteiger im Bereich Home Automation bin, habe ich mich nun in OH eingearbeitet und dort auch schon einiges in Bezug auf die Rollos geschrieben. Da ich mich schon ein wenig in OH eingearbeitet habe, wollte ich fragen, ob es möglich wäre dein Projekt in Verbindung mit dem Signalduion auch ein Binding für OH zu schreiben ? Da ich mich mit FHEM leider kein bisschen auskenne und eben in OH schon einiges angelegt habe diese Frage. Da ich leider mit der aktuellen HW Lösung Probleme habe, wäre die Sache mit dem Signalduion ohne WLAN eine tolle Alternative. Dann wären die WLAN Verbindungsabbrüche schon mal Geschichte und das ganze sollte eigentlich dann einwandfrei funktionieren.

Grüße und auf jeden Fall auch von mir ein großes Dankeschön, damit du dein Projekt mit uns geteilt hast.

ToDo List

BUGS:

  • UI Einzeilig ohne addGroups -> ERROR: your command OptionValue is not support! (not in list)
    Zeile: return "ERROR: your command $cmd is not support! (not in list)" if ($ret !~ /$cmd/ && $addGroups eq "");
    #1 (comment)
  • Gerät ohne IODEV - PERL Fehler beheben
    define SD_JARO_Device1 SD_JARO 12345678 JaroLift
    Werden keine Attribute und kein IODEV gesetzt. (#1 (comment))
  • "any" is not exported by the List::Util module (#1 (comment))
  • Spaltenbreite teilweise fehlerhaft / Fixe breite setzen? (#1 (comment)) (#1 (comment)) (#10)
    image

ToDo:

Diskutieren / Offene Diskussion:

  • Sende-Counter: Als Reading oder z.B. in eine Datei (Damit bei einem außerplanmäßigem FHEM-Neustart die Werte erhalten bleiben (?)
  • MSB/LSB/KeeloqNLF in geschütztem Speicher (?)
  • Umbenennen JARO -> Rollo (?) (#1 (comment))
  • setlist nur "set device up 1[,2,3,...]" ohne "set SD_JARO ch1 up" (#1 (comment))

Tests:

  • Testen, mit welchen Codes das Lernen erfolgreich ist (#1 (comment))
  • UI Komplett testen

Wünsche:

Vorschläge

  • UI anzeigen, sobald MSB LSB + NLF gesetzt sind?

Shade ohne Funktion

Hi zusammen,

ich hatte bislang, das Modul von den Bastbudenbuben im Einsatz, bislang funktionierte das Anfahren der dritten Position (Shade) ohne Probleme. Vor kurzem bin ich auf das neue Modul (CUL) umgestiegen (14_SD-Jaro). Leider funktioniert seitdem die shade funktion nicht mehr. Hat von euch jemand einen Tip oder eine Hilfestellung? Des Weiteren versuche ich das ASC anzulegen, leider komme ich hier ebenfalls nicht weiter und die Rollos reagieren nicht.
Vielen Dank.

Gruß
Hugo

ChannelAttribute Check

Ich habe mal soeben beim testen, alle 16 Channels eingestellt.
Bei Änderung auf wenigere Channels werden die "mehr" Channels nicht gelöscht.

Wie denkt Ihr darüber, wenn wir die Readings da prüfen würden und welche "größer dem ChannelsAttributWert" sind, zu löschen?

Müssen die alten drin bleiben?

Anleitung für FHEM ? Gibts keine oder bin ich blind ?

Hallo,
wollte mal nachfragen, ob es hier keine Anleitung oder eine Liste gibt, die zeit was man alles als attr setzten muss und wie man das Modul defined ? Standardmässig ist das ja nicht bei Fhem dabei oder beim Signalduino ? Man muss von Hand die 14_SD_Keeloq in den Ordner opt/fhem/FHEM kopieren ?

Grüße

No shade button shown for groups

For groups there is no 'shade' button shown, it is explicitly disabled in the code. Although I think it makes sense to disable the 'learn' button there is well good use of 'shade' for groups, like for all window blinds on the same sun facing side.

<                       $html.= SD_Keeloq_attr2htmlButtons($grpInfo[1], $name, $ShowIcons, 0, 0);
---
>                       $html.= SD_Keeloq_attr2htmlButtons($grpInfo[1], $name, $ShowIcons, $ShowShade, 0);```

MQTT Bridge einbauen / Befehle per MQTT senden / empfangen

Ich stehe nun vor einem anderen Problem. Da das hier ja ein FHEM Modul ist und ich mich eigentlich auf OpenHab eingelassen habe, wollte ich mal Fragen ob es hier jemanden gibt, der mir dabei helfen kann, das ganze über eine mqtt Bridge in FHEM per OpenHab zu steuern, dort ist vom original Gateway ja schon alles eingerichtet usw, das würde ich soweit gern weiter nutzen. Leider hat es bis jetzt noch nicht funktioniert. Kenne mich mit FHEM leider überhaupt nicht aus, sonst würde ich da vllt umsteigen. Aber hab bei OH halt schon Thermostate und eben die Rollogeschichte.

Sprich, die Befehle auf / ab / stop über MQTT empfangen und senden. Dann könnte man das mit dem MQTT Broker verbinden und in einer anderen Software (hier z.b. OpenHab) die Rollos über FHEM steuern.

Bei dem original Dongle/Gateway wurde das auch so gelöst, man kann das Gateway per MQTT ansprechen.

Ich hoffe ich habe das verständlich rüber gebracht.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.