Intertechno Code Berechnung
Intertechno Systemkomponenten sind kostengünstige und weit verbreitete Funkschalter/-dimmer im 433 MHz Bereich, die man in fast jedem Baumarkt unter den Markennamen Intertechno, düwi, KlikAanKlikUit usw. erhalten kann.
Es gibt eine Anzahl weiterer Hersteller/Handelsmarken mit ähnlicher Kodierung oder Einstellmöglichkeiten mit DIP Schaltern, die ebenfalls mit dem Intertechno Code geschaltet werden können. Dazu zählen von Usern bereits erfolgreich getestete Geräte von Elro AB440, FLS-100/m-e, Wetekom/Westfalia und weitere, theoretisch mögliche aber ungetestete Systeme wie Unitec oder Arctech Steckdosen (siehe Börkes-HP)
Voraussetzungen in Fhem
Schalten kann man die Intertechno Funkkomponenten in Fhem über verschiedene Wege. So z.B. über CUL/CUNO, Tellstick, AVR-NET-IO.
Hier beschrieben ist die Ansteuerung über CUL/CUNO, dessen Firmware für Intertechno erweitert wurde (Danke an Olaf Droegehorn). Momentan ist in CUL/CUNO das SENDEN von Intertechno Funk implementiert. Die Firmware muss mindestens den Stand 1.44 haben (Kontrolle der Version in den Fhem Detaildaten zum CUL/CUNO). Die CUL433/CUNO433 haben dabei volle Reichweite, die Versionen CUL868/CUNO868 funktionieren ebenfalls, haben aufgrund der nicht optimalen Antennenlänge und falschen Abstimmung für den Frequenzbereich aber nur eine eingeschränke Reichweite.
Definition
Die Definiton des IT Gerätes in FHEM sieht so aus:
define myITSwitch IT <housecode><group_switch> <on-code> <off-code> [<dimup-code> <dimdown-code>] attr myITSwitch IODev CUL_x (CUNO_x) attr myITSwitch model itswitch
Die weitere Anleitung soll die Bildung der Bitfolge für die Zusammensetzung des Schaltcodes erklären. Wichtig zu wissen ist auch, dass es sich um einen 3state code handelt, d.h. jedes Bit kann 0,1 oder F sein!
Original Intertechno System
Durch Kombination von Hauscode und Geräetecode können maximal 256 Geräte verwendet werden. Dannn würde allerdings alle Hauscodes belegt, was eventuell zu Störungen mit Nachbarinstallationen führen könnte.
Hauscode (die ersten vier Stellen (0-3)
Der Hauscode wird auf dem Drehschalter auf der Rückseite eingestellt und hat die Bezeichnung A-P
Drehschalter | Stelle 0-3 |
---|---|
A | 0000 |
B | F000 |
C | 0F00 |
D | FF00 |
E | 00F0 |
F | F0F0 |
G | 0FF0 |
H | FFF0 |
I | 000F |
J | F00F |
K | 0F0F |
L | FF0F |
M | 00FF |
N | F0FF |
O | 0FFF |
P | FFFF |
Gruppen-/Gerätecode (Stelle 4-7)
Der zweite Drehschalter ist mit den Zahlen von 1-16 beschriftet. Das ist eine Zusammensetzung von Gruppe und Gerätecode und ergibt die nächsten 4 Stellen. Die dritte Spalte in der Tabelle zeigt die Zuordnung einer Intertechno YCT-100 / ITS-150 Fernbedienung. Diese ist mit Drehschalter auf der Rückseite (A-P), einem Gruppenschalter (1-4) , und je vier ein-/aus-Tasten belegt.
Drehschalter | Stelle 4-7 | Fernbedienung Gruppe/Taste |
---|---|---|
01 | 0000 | 1 - 1 |
02 | F000 | 1 - 2 |
03 | 0F00 | 1 - 3 |
04 | FF00 | 1 - 4 |
05 | 00F0 | 2 - 1 |
06 | F0F0 | 2 - 2 |
07 | 0FF0 | 2 - 3 |
08 | FFF0 | 2 - 4 |
09 | 000F | 3 - 1 |
10 | F00F | 3 - 2 |
11 | 0F0F | 3 - 3 |
12 | FF0F | 3 - 4 |
13 | 00FF | 4 - 1 |
14 | F0FF | 4 - 2 |
15 | 0FFF | 4 - 3 |
16 | FFFF | 4 - 4 |
Stellen 8-9 (Festwert 0F)
Die Positionen 8-9 sind immer fest auf '''0F'''zu stellen
Stellen 10-11 (Ein/Aus)
Bei den beiden letzten Stellen steht als Codierung für ON = FF und OFF = F0.
Beispiele
Drehschalter/Hauscode auf A
Schalter 1 -> 000000000F FF F0 (entspricht Fernbedienung Gruppe I und Schalter 1) Schalter 2 -> 0000F0000F FF F0 (entspricht Fernbedienung Gruppe I und Schalter 2) Schalter 3 -> 00000F000F FF F0 (entspricht Fernbedienung Gruppe I und Schalter 3) Schalter 4 -> 0000FF000F FF F0 (entspricht Fernbedienung Gruppe I und Schalter 4)
Drehschalter/Hauscode auf L
Schalter 11 -> FF0F0F0F0F FF F0 (entspricht Fernbedienung Gruppe III und Schalter 3) Schalter 16 -> FF0FFFFF0F FF F0 (entspricht Fernbedienung Gruppe IV und Schalter 4)
komplett für die fhem cfg also z.B. Hauscode A und Gruppe 1 Gerät/Schalter 1 und CUL Bezeichnung CUL1:
define schalter1 IT 000000000F FF F0 attr schalter1 IODev CUL1 attr schalter1 model itswitch
Selbstlernende Intertechno Funksteckdosen (z.B. ITR-1500)
Die selbst lernenden Intertechno Funksteckdosen haben ein neues erweitertes Protokoll bei dem ein 32-Bit Wort gesendet wird. Sie sind aber weiterhin kompatibel zum bisherigen 12-Bit Protokoll. In der culfw wird das alte Protokoll mit "Intertechno V1" und das neue mit "Intertechno V3" bezeichnet.
Mit altem Protokoll anlernen
Zum Anlernen der selbst lernenden Funksteckdosen muss ein gültiger(!) ON-Befehl in den ersten fünf Sekunden nach dem Einstecken der Funksteckdose in eine normalen Steckdose gesendet werden. Die Funksteckdosen haben drei Speicherplätze, so dass man beispielsweise ein ITR-1500 Set zuerst mit der Fernbedienung anlernen und anschließend eigene Codes von Fhem senden lassen kann. Damit man einen gültigen Code sendet, sucht man sich einfach eine beliebige Kombination aus der obigen Tabelle aus (z.B. C-1, C-2 und C-3) und ergänzt entsprechend um die immer identischen Stellen 8 und 9 (0F) und den ON- und OFF-Code (FF/F0). Das Senden der Codes von Fhem erfolgt am einfachsten, indem man sich die Steckdosen vorher in der Konfiguration so anlegt, wie man sie haben möchte und anschließend über die Weboberfläche den ON-Befehl gibt.
Mitunter funktioniert das reine Senden des ON Befehls aber nicht, da einige dieser Steckdosen einen längeren ON Befehl benötigen und die Sendedauer bei Fhem/CUL/CUNO nicht beeinflusst werden kann. In diesem Fall nimmt man eine YCT-100 oder ITS-150 Fernbedienung, an der die gewünschte Adresse eingestellt werden kann. Zum Anlernen drückt man nun etwas länger auf den passenden Einschaltknopf, danach kann die Dose von Fhem normal geschaltet werden.
Angelernten Code löschen
Hier gibt es zwei Möglichkeiten.
- Man sendet wie beim Anlernen innerhalb der ersten 5 Sekunden einen OFF-Befehl. Die Funksteckdosen quittiert diesen mit zweimaligem einschalten. Anschließend reagiert sie auf diesen Code nicht mehr.
- Manche neueren Intertechno Geräte (z.B. GRR-3500) haben eine CODE-Taste. Durch kurzes drücken wird die Funksteckdose für 5 Sekunden in den Betrieb zum Anlernen gesetzt. Hält man diese Taste bis die LED hektisch blinkt, lässt sie dann los und drückt sie noch einmal kurz, so wird der gesammte Speicher für angelernte Codes gelöscht. Die Funksteckdose quittiert das wie üblich durch zweimaliges Einschalten.
Mit neuem Protokoll anlernen
Die neuen Funksteckdosen können laut Werbung "67 Millionen verschiedene Codes", das sind 26-Bits (2^26 = 67108864). Da hat die Werbung tatsächlich mal untertrieben. Tatsächlich arbeitet das neue Protokoll mit einem 32-Bit Wort. Jede neue Fernbedienung (z.B. ITT-1500) bekommt ab Werk einen fest einprogrammierten (und hoffentlich weltweit eindeutigen) ID-Code aus 26 Bits. Daran hängt sie ein 2-Bit Kommando und eine 4-Bit Geräte bzw. Tastenpaar Nummer:
26-Bit ID des steuernden Geräts (Fernbedienung) | 2-Bit Kommando | 4-Bit Kanal-ID (Tastenpaar) |
Das 2-Bit Kommando ist ein ON oder OFF Befehl an ein einzelnes Gerät oder eine Gruppe.
Befehl | Bedeutung |
---|---|
0 0 | Ein Gerät einschalten |
0 1 | Ein Gerät ausschalten |
1 0 | Alle Geräte (dieser Gruppe) einschalten |
1 1 | Alle Geräte (dieser Gruppe) ausschalten |
Die ITT-1500 hat zwar eine ALL OFF-Taste aber keine ALL ON. Ob das Einschalten als Gruppe generell unterstützt wird ist nicht bekannt. Einen gültiger Einschaltbefehl kann man am CUL z.B. mit diesem Kommando senden:
is01010010101011101000000110010011
Im Gegensatz zum alten Protokoll (Intertechno V1) wird das Binärwort hier nicht mit 0 und F sondern 0 und 1 gesendet.
is (Sende Intertechno Kommando) | 01010010101011101000000110 (Gerätecode Fernbedienung) | 01 (Kommando ON) | 0011 (Tastenpaar 4) |
Die culfw unterscheidet anhand der Kommandolänge ob es sich um einen alten (12 Zeichen) oder neuen (32 Zeichen) Intertechno Befehl handelt.
FLS 100
Beim FLS 100 von m-e.de gibt es nur 4 mögliche Einstellungen: I, II, III und IV. Dies entspricht der Gruppe auf der Fernbedienung.
Drehschalter | Stelle 0-3 |
---|---|
I | 0FFF |
II | F0FF |
III | FF0F |
IV | FFF0 |
Die nächsten vier Stellen geben die Geräte ID an; diese ist identisch mit der Taste an der Fernbedienung.
Drehschalter | Stelle 4-7 | Fernbedienung Taste |
---|---|---|
1 | 0FFF | 1 |
2 | F0FF | 2 |
3 | FF0F | 3 |
4 | FFF0 | 4 |
Beim FLS 100 ist nur die letzte Stelle relevant, mit ON: F oder OFF: 0
REV Telecontrol
Die REV Telecontrol haben einen Dreh-Wahlschalter auf der Rückseite, mit dem sich der Hauscode (A - D) und der Gerätecode (1 - 3) bestimmen lässt.
Die Codierung ist dabei:
Hauscode | Stelle 1-4 |
---|---|
A | 1FFF |
B | F1FF |
C | FF1F |
D | FFF1 |
Gerätecode | Stelle 5-7 |
---|---|
1 | 1FF |
2 | F1F |
3 | FF1 |
Dazu (Stelle 8+9+10) noch drei statische Werte: 0FF.
Der Code für An ist FF, für Aus 00.
Beispiel:
define My_Switch IT 1FFF1FF0FF FF 00 für A1
Erfolgreich getestet mit CULfw V 1.49 CUL868.
Elro AB440
Möglichkeit 1: zu Intertechno-Codes umdippen
Günstige ELRO Funkschalter/Dimmer der Serie 440 lassen sich auch problemlos auf Intertechno Codierung "umdippen" und damit voll kompatibel mit allen möglichen A-P / 1-16 Intertechno Schaltcodes von Fhem aus nutzen. Dazu müssen die Dipschalter-Stellungen entsprechend Intertechno umgerechnet und gesetzt werden (1=ON, 0=OFF).
Beispiele:
Intertechno | Elro Hauscode 1234 |
Elro Gerätecode 5ABCDE |
---|---|---|
A1 | 1111 | 111110 |
A2 | 1111 | 011110 |
A3 | 1111 | 101110 |
A4 | 1111 | 001110 |
A5 | 1111 | 110110 |
A6 | 1111 | 010110 |
A7 | 1111 | 100110 |
A8 | 1111 | 000110 |
A9 | 1111 | 111010 |
A10 | 1111 | 011010 |
A16 | 1111 | 000010 |
C1 | 1011 | 111110 |
C2 | 1011 | 011110 |
Weitere Erklärungen sind z.B. im Tool der Fa. ISN-systems online berechnen lassen.
Einziger Nachteil: Die originale Elro Fernbedienung funktioniert dann nicht mehr uneingeschränkt mit den Funkschaltern (eine Intertechno Fernbedienung funktioniert uneingeschränkt). Wenn man den Hauscode an der Fernbedienung einstellt, kann man durch drücken von z.T. mehreren Tasten gleichzeitig auch Intertechno schalten. Das ist aber nur was für den Notfall oder für Handakrobaten.
15/16 -> D 13/14 -> A+D 11/12 -> B+D 09/10 -> A+B+D 07/08 -> C+D 05/06 -> A+C+D 03/04 -> B+C+D 01/02 -> A+B+C+D
Möglichkeit 2: aus der vorhanden DIP-Schalterstellung den entsprechenden 10-digit InterTechno Code bestimmen
Das ist prinzipiell ganz einfach. Hat man folgende DIP-Schalter-Stellung so muss man von links nach rechts einfach für jeden DIP gleich "ON" eine "0" und für "OFF" ein "F" definieren. Für die dargestellte DIP-Einstellung ergibt sich der damit der darunterstehende InterTechno Code:
0F00F0FFFF
Analog dazu ergeben sich für den gleichen Hauscode (Schalter 1-5) folgende Codes für die Funksteckdosen B bis E, wobei die Dose E mit der Originalfernbedienung nicht adressierbar ist, sich mit FHEM aber wunderbar schalten lässt.
0F00FF0FFF
0F00FFF0FF
0F00FFFF0F
0F00FFFFF0
Dazu noch die Codes für AN = FF und AUS = F0 schaut eine vollständige Definition eines ELRO440 Funkschalters dann bsw. so aus:
define ELRO_10110_A IT 0F00F0FFFF FF F0 attr ELRO_10110_A IODev CUL_0 attr ELRO_10110_A alias Stehlampe attr ELRO_10110_A fp_Grundriss 340,50,1,Stehlampe attr ELRO_10110_A group Schalter attr ELRO_10110_A model itswitch attr ELRO_10110_A room Wohnzimmer
b1 / Toom
Das "Funksteckdosen-Set" der Marke b1 aus dem Toom-Baumarkt (3 Funksteckdosen + 1 Fernbedienung mit 4x ein/aus) funktioniert exakt wie ELRO, auch die DIP-Schalter sind genauso belegt.
Wetekom/Westfalia
Der eingestellte Hauscode ist F00F0FFF0F.
In den Westfalia-Baumärkten gibt es Funksteckdosen mit Westfalia-Branding. Auf der Bedienungsanleitung steht aber Wetekom.
Die Funksteckdosen selbst haben zehn DIP-Switches: 1234FEDCBA, während die Fernbedienung nur sechs hat: ABCDEF. Damit die Fernbedienung mit den Funksteckdosen funktioniert, darf man nur einen der DIP-Switches 1234 pro Funksteckdose auf ON schalten.
Die Schaltung der DIP-Switches ABCDEF4321 entspricht direkt und in dieser Reihenfolge (also andersrum als direkt an der Funksteckdose) dem Hauscode und zwar entspricht ein Switch auf OFF einem F im Hauscode und ein Switch auf ON einer 0 im Hauscode.
Die Steckdosen werden dann mit 01 ein- und mit 10 ausgeschaltet.
Beispiel: define wf_steckdose IT F00F0FFF0F 01 10
Pollin Funksteckdosen
Vom Aussehen sind die Steckdosen von Pollin (z.B. 3fach Set 550666) mit den Westfalia ZTC identisch, aber:
- die DIP Schalter sind beschriftet von 0 bis 10;
- der Adresscode entspricht dem invertierten ELRO 440 Code ->also (0=ON, 1=OFF)
- der Code für "An" ist 0F, für "Aus" F0
Beispiel für Adresse C2:
define IT_C2 IT 0F00F0000F 0F F0
me micro-electric AS 73
Die micro-electric Funksteckdosen haben 10 DIP-Schalter: 123456ABCD.
Der Hauscode wird an Sender und Steckdose mit 1-6 eingestellt, der Empfängercode A-D entspricht den Kanälen auf dem Handsender.
DIP-Schalterstellung OFF entspricht F und ON entspricht 0.
Die Steckdosen werden mit F0 ein- und mit 0F ausgeschaltet.
Empfängercodes:
Kanal | Position 7-10 |
---|---|
A | 0FFF |
B | F0FF |
C | FFF0 (Achtung: bei C und D sind die Codes vertauscht) |
D | FF0F |
Beispiel:
define Schalter_ME_A IT 0F0F000FFF F0 0F
attr Schalter_ME_A IODev CUL1
attr Schalter_ME_A model itswitch
Conrad / McPower Funkschaltset 3+1
Dieses Funkschaltset wird unter mehreren Namen in verschiedenen Bau- und Heimwerkermärkten sowie bei Conrad (Best Nr. 640475 - 62) vertrieben. Teilweise auch mit unterschiedlichen Schaltleistungen. Die Konfiguration funktioniert genauso wie beim FLS100
Noch nicht aufgeführte Geräte
Wer ein Intertechno-ähnliches Gerät besitzt, das in dieser Liste noch nicht aufgeführt ist, muss die Kodierung selbst bestimmen. Dazu gibt es verschiedene Möglichkeiten, die in diesem Abschnitt aufgeführt werden. Die Ergebnisse bitte hier eintragen, um Nachfolgern die Arbeit zu ersparen!
Audio-Eingang zur Messung
Hier wird die Fernbedienung oder der Empfänger mit einer entsprechenden Schaltung an den Mikrofon-Eingang eines Rechners angeschlossen und mit einem Audio-Programm werden die Signalverläufe aufgenommen. Diese Methode wird hier näher erläutert.
Platine analysieren
Platine der Fernbedienung oder des Empfängers betrachten und so die Beschaltung des Decoder/Encoder Chips ermitteln. Bei der Wetekom-Fernbedienung wird beispielsweise der Chip LP801b verwendet, der funktional identisch zum PT2262 ist. Im Datenblatt des PT2262 kann man dann die Beschaltung nachsehen. Nun betrachtet man den Verlauf der Leiterbahnen auf der Platine, um die Beschaltung des Chips zu ermitteln. So kann man beispielsweise bei der Wetekom-Fernbedienung sehen, dass die DIP-Switches A bis F auf die Eingänge A0 bis A5 geschaltet sind. Außerdem sieht man, mit welchen Eingängen die einzelnen Taster verbunden sind.
Nun kann man messen, zwischen welchen Chip-Eingängen und Batteriepolen eine Spannung anliegt, bzw. (ohne Batterie) zwischen welchen Chip-Eingängen und Batteriepolen es einen Durchgang gibt, um zu ermitteln, wie die DIP-Switches schalten. Im Fall der Wetekom-Fernbedienung liegt keine Spannung zwischen den Eingängen und den beiden Batteriepolen an, wenn die DIP-Switches auf OFF stehen: Der Eingang liegt also auf F (Float). Wenn die DIP-Switches auf ON stehen, liegt nur eine Spannung zwischen dem Pluspol der Batterie und dem Eingang an, es gibt also einen Durchgang zwischen dem Minuspol und dem Eingang, so dass der Eingang auf V_SS liegt und damit 0 eingestellt ist.
Bei den Eingängen D0 und D1 sieht man, dass der Batterie-Pluspol immer über einen Widerstand mit dem Dateneingang verbunden ist, also normalerweise 1 anliegt. Ist aber ein Ein-Taster gedrückt, wird der Eingang D1 direkt mit dem Minuspol der Batterie verbunden, bei den Aus-Tastern der Eingang D0 (die Verbindung der Aus-Taster ist auf den Bildern nicht besonders gut zu erkennen). Durch diese Verbindung wird der Eingang auf V_SS heruntergezogen und damit ist 0 eingestellt.
Mit CUL im Debug-Modus Rohsignale empfangen und analysieren
Das hat wohl noch keiner versucht, wurde aber in der FHEM Users-Mailingliste diskutiert.