Niko drukknop
Moderator: Domotix-Moderators
Ik ben momenteel ook bezig met het \"sniffen\"
Ik dacht het eerst simpel te houden en enkel de drukknoppen uit te lezen. Deze genereren namelijk een pak minder bytes dan de schakelmodules
ik heb 4 drukknoppen die elk uitgang 7 van schakelmodule: 558F schakelen
Dit zijn mijn resultaten:
SCHAKELAAR: 13E5A2
23 4E 39 31 36 39 46 32 0D 23 45 31 0D #N9169F2.#E1. AAN
23 4E 44 31 36 39 46 32 0D 23 45 31 0D #ND169F2.#E1. UIT
SCHAKELAAR: 14B0D4
23 4E 38 41 43 33 34 41 0D 23 45 31 0D #N8AC34A.#E1. AAN
23 4E 43 41 43 33 34 41 0D 23 45 31 0D #NCAC34A.#E1. UIT
SCHAKELAAR: 13D914
23 4E 38 41 32 36 46 32 0D 23 45 31 0D #N8A26F2.#E1. AAN
23 4E 43 41 32 36 46 32 0D 23 45 31 0D #NCA26F2.#E1. UIT
SCHAKELAAR: 13DABA
23 4E 39 37 35 36 46 32 0D 23 45 31 0D #N9756F2.#E1. AAN
23 4E 44 37 35 36 46 32 0D 23 45 31 0D #ND756F2.#E1. UIT
SCHAKELAAR: 13E5A2
23 4E 39 31 36 39 46 32 0D 23 45 31 0D #N9169F2.#E1. AAN
23 4E 44 31 36 39 46 32 0D 23 45 31 0D #ND169F2.#E1. UIT
Het is altijd het 3de word die veranderd als je een lichtpunt aan of uit doet.
Wat de reeks bits en bytes betekenen weet ik niet. Ook zie ik geen verband tussen het adres van een schakelaar en de bytes die verstuurd worden.
Tijdens het sniffen op de schakelmodule heb ik ook gezien dat je de laatste 8 words juist moet hebben, of het werkt niet.
vb:
$1E15 8F55 FF FF 00 00 00 00 FFFCDD2B. licht 1 en 2 aan
$1E15 8F55 FF FF FF 00 00 00 FFA67235. licht 1,2 en 3 aan
Als je willekeurig de FF met 00 veranderd, zonder de laatste 8 words aan te passen kan ik niets sturen.
$1E15 8F55 000000000000 FF0D1355. $1E16 8F55 000000000000 FFBCDC57.
$1E15 8F55 FF0000000000 FFA862FD. $1E16 8F55 000000000000 FFBCDC57.
$1E15 8F55 FFFF00000000 FFFCDD2B. $1E16 8F55 000000000000 FFBCDC57.
$1E15 8F55 FFFFFF000000 FFA67235. $1E16 8F55 000000000000 FFBCDC57.
$1E15 8F55 FFFFFFFF0000 FFEDD167. $1E16 8F55 000000000000 FFBCDC57.
$1E15 8F55 FFFFFFFFFF00 FF22B268. $1E16 8F55 000000000000 FFBCDC57.
$1E15 8F55 FFFFFFFFFFFF FF214DC6. $1E16 8F55 000000000000 FFBCDC57.
Ik dacht het eerst simpel te houden en enkel de drukknoppen uit te lezen. Deze genereren namelijk een pak minder bytes dan de schakelmodules
ik heb 4 drukknoppen die elk uitgang 7 van schakelmodule: 558F schakelen
Dit zijn mijn resultaten:
SCHAKELAAR: 13E5A2
23 4E 39 31 36 39 46 32 0D 23 45 31 0D #N9169F2.#E1. AAN
23 4E 44 31 36 39 46 32 0D 23 45 31 0D #ND169F2.#E1. UIT
SCHAKELAAR: 14B0D4
23 4E 38 41 43 33 34 41 0D 23 45 31 0D #N8AC34A.#E1. AAN
23 4E 43 41 43 33 34 41 0D 23 45 31 0D #NCAC34A.#E1. UIT
SCHAKELAAR: 13D914
23 4E 38 41 32 36 46 32 0D 23 45 31 0D #N8A26F2.#E1. AAN
23 4E 43 41 32 36 46 32 0D 23 45 31 0D #NCA26F2.#E1. UIT
SCHAKELAAR: 13DABA
23 4E 39 37 35 36 46 32 0D 23 45 31 0D #N9756F2.#E1. AAN
23 4E 44 37 35 36 46 32 0D 23 45 31 0D #ND756F2.#E1. UIT
SCHAKELAAR: 13E5A2
23 4E 39 31 36 39 46 32 0D 23 45 31 0D #N9169F2.#E1. AAN
23 4E 44 31 36 39 46 32 0D 23 45 31 0D #ND169F2.#E1. UIT
Het is altijd het 3de word die veranderd als je een lichtpunt aan of uit doet.
Wat de reeks bits en bytes betekenen weet ik niet. Ook zie ik geen verband tussen het adres van een schakelaar en de bytes die verstuurd worden.
Tijdens het sniffen op de schakelmodule heb ik ook gezien dat je de laatste 8 words juist moet hebben, of het werkt niet.
vb:
$1E15 8F55 FF FF 00 00 00 00 FFFCDD2B. licht 1 en 2 aan
$1E15 8F55 FF FF FF 00 00 00 FFA67235. licht 1,2 en 3 aan
Als je willekeurig de FF met 00 veranderd, zonder de laatste 8 words aan te passen kan ik niets sturen.
$1E15 8F55 000000000000 FF0D1355. $1E16 8F55 000000000000 FFBCDC57.
$1E15 8F55 FF0000000000 FFA862FD. $1E16 8F55 000000000000 FFBCDC57.
$1E15 8F55 FFFF00000000 FFFCDD2B. $1E16 8F55 000000000000 FFBCDC57.
$1E15 8F55 FFFFFF000000 FFA67235. $1E16 8F55 000000000000 FFBCDC57.
$1E15 8F55 FFFFFFFF0000 FFEDD167. $1E16 8F55 000000000000 FFBCDC57.
$1E15 8F55 FFFFFFFFFF00 FF22B268. $1E16 8F55 000000000000 FFBCDC57.
$1E15 8F55 FFFFFFFFFFFF FF214DC6. $1E16 8F55 000000000000 FFBCDC57.
CRACKED SOME!
De codes die gestuurd worden als je in het nikobus programma op een drukknop drukt zijn gekraakt!
Als je de bits uittekent dan zie je dat het busdrukknop adres als reverse bitstream in de serial message terecht komt. Hierbij komen nog 2 bits om te bepalen welk van de 4 drukknoppen gebruikt is.
De #N en #E1 zijn commandos die begin en einde bericht bepalen denk ik.
Hier zijn mijn gegevens voor een 4Polige drukknop:
Let wel, de bits zijn anders gerangschikt zodat je de reverse beter ziet!
1000 0000 00 word dus 10 0000 0000
SCHAKELAAR: 14D300 -> BINAIR 0001 0100 1101 0011 0000 0000
#N 8 032C A.#E1. (A)AAN BIN-> 10 0000 0000 1100 1011 0010 10(00)
#N C 032C A.#E1. (B)UIT BIN-> 11 0000 0000 1100 1011 0010 10(00)
#N 0 032C A.#E1. (C)AAN BIN-> 00 0000 0000 1100 1011 0010 10(00)
#N 4 032C A.#E1. (D)UIT BIN-> 01 0000 0000 1100 1011 0010 10(00)
SCHAKELAAR: 1390FE 0001 0010 1001 0000 1111 1110
#N 9 FC27 2.#E1. AAN BIN-> 10 0111 1111 0000 1001 1100 10(00)
#N D FC27 2.#E1. UIT BIN-> 11 0111 1111 0000 1001 1100 10(00)
#N 1 FC27 2.#E1. AAN BIN-> 00 0111 1111 0000 1001 1100 10(00)
#N 5 FC27 2.#E1. UIT BIN-> 01 0111 1111 0000 1001 1100 10(00)
EX:
14D300 = 000101001101001100000000
8032CA = 10 0000000011001011001010(00) (= DEEL VAN DE CODE: (#N) 8032CA (.#E1)_
Als je goed kijkt zie je dat het een simpele bitreverse is. De bits tussen haakjes komen van de rest van de message.
De 2 bits vooraan bepalen de stand van de schakelaar.
knop A 10 (AAN)
knop B 11 (UIT)
knop C 00 (AAN)
knop D 01 (UIT)
Als je de bits uittekent dan zie je dat het busdrukknop adres als reverse bitstream in de serial message terecht komt. Hierbij komen nog 2 bits om te bepalen welk van de 4 drukknoppen gebruikt is.
De #N en #E1 zijn commandos die begin en einde bericht bepalen denk ik.
Hier zijn mijn gegevens voor een 4Polige drukknop:
Let wel, de bits zijn anders gerangschikt zodat je de reverse beter ziet!
1000 0000 00 word dus 10 0000 0000
SCHAKELAAR: 14D300 -> BINAIR 0001 0100 1101 0011 0000 0000
#N 8 032C A.#E1. (A)AAN BIN-> 10 0000 0000 1100 1011 0010 10(00)
#N C 032C A.#E1. (B)UIT BIN-> 11 0000 0000 1100 1011 0010 10(00)
#N 0 032C A.#E1. (C)AAN BIN-> 00 0000 0000 1100 1011 0010 10(00)
#N 4 032C A.#E1. (D)UIT BIN-> 01 0000 0000 1100 1011 0010 10(00)
SCHAKELAAR: 1390FE 0001 0010 1001 0000 1111 1110
#N 9 FC27 2.#E1. AAN BIN-> 10 0111 1111 0000 1001 1100 10(00)
#N D FC27 2.#E1. UIT BIN-> 11 0111 1111 0000 1001 1100 10(00)
#N 1 FC27 2.#E1. AAN BIN-> 00 0111 1111 0000 1001 1100 10(00)
#N 5 FC27 2.#E1. UIT BIN-> 01 0111 1111 0000 1001 1100 10(00)
EX:
14D300 = 000101001101001100000000
8032CA = 10 0000000011001011001010(00) (= DEEL VAN DE CODE: (#N) 8032CA (.#E1)_
Als je goed kijkt zie je dat het een simpele bitreverse is. De bits tussen haakjes komen van de rest van de message.
De 2 bits vooraan bepalen de stand van de schakelaar.
knop A 10 (AAN)
knop B 11 (UIT)
knop C 00 (AAN)
knop D 01 (UIT)
Voor het geval dat we de CRC van de schakelmodule en dimcontrollers niet moesten vinden is er nog altijd een andere oplossing voor alles aan te sturen via PC (en eigenlijk misschien wel beter)
Maak in het nikobus software programma een nieuwe locatie aan \"PC\"
Zet daar een \"generieke bedieningspunten (64) in, en geef dit het adres \"000000\"
Maak nu een verbinding tussen elke drukknop en de schakelmodule die je wil sturen en programmeer uw nikobus installatie
Na het programmeren kan je deze \"Software drukknoppen\" heel simpel apart sturen met rs232.
Ook nog:
Als je een dimmer wil sturen, dan maak je in de nikobus software een verbinding tussen drukknop en dimmer en programmeer het.
De hoeveel berichten die je achter elkaar zet op de rs232 bepalen blijkbaar de intensiteit van de dimmer.
(analogie: als je op de drukknop blijft duwen, blijft deze berichten sturen)
PS: Ik werk momenteel met een LANTRONIX XPORT om via ethernet rs232 signalen te sturen. Aangezien mijn XPORT op de wireless router is aangesloten kan ik draadloos vanop mijn laptop alles testen.
Volgende stap is de virtuele comport omzeilen en zelf TCP/IP berichten sturen.
Maak in het nikobus software programma een nieuwe locatie aan \"PC\"
Zet daar een \"generieke bedieningspunten (64) in, en geef dit het adres \"000000\"
Maak nu een verbinding tussen elke drukknop en de schakelmodule die je wil sturen en programmeer uw nikobus installatie
Na het programmeren kan je deze \"Software drukknoppen\" heel simpel apart sturen met rs232.
Ook nog:
Als je een dimmer wil sturen, dan maak je in de nikobus software een verbinding tussen drukknop en dimmer en programmeer het.
De hoeveel berichten die je achter elkaar zet op de rs232 bepalen blijkbaar de intensiteit van de dimmer.
(analogie: als je op de drukknop blijft duwen, blijft deze berichten sturen)
PS: Ik werk momenteel met een LANTRONIX XPORT om via ethernet rs232 signalen te sturen. Aangezien mijn XPORT op de wireless router is aangesloten kan ik draadloos vanop mijn laptop alles testen.
Volgende stap is de virtuele comport omzeilen en zelf TCP/IP berichten sturen.
Re:
Wat heb je zo een module betaald en waar kan je deze vinden . ben namelijk ook naar zo een oplossing op zoek .highvolt wrote:
PS: Ik werk momenteel met een LANTRONIX XPORT om via ethernet rs232 signalen te sturen. Aangezien mijn XPORT op de wireless router is aangesloten kan ik draadloos vanop mijn laptop alles testen.
Volgende stap is de virtuele comport omzeilen en zelf TCP/IP berichten sturen.
Ik had die x-port devkit bij mouser.com gekocht
207 dollar met shipping, en 4 dagen later had ik hem.
Met de dollar op 1.42 wisselkoers valt dit nog goed mee.
UPS moest mij natuurlijk 50euro extra aanrekenen.. bende afzetters
Farnell.be kan ze ook leveren, maar heeft ze niet in stock.
Anyway, als je iets van elektronica kent, kan je ook enkel de xport kopen ipv de devkit. Je moet dan wel zelf een RS232 level converter solderen om de 3.3V omhoog te pompen naar standaard rs232 levels.
De XPORT heeft een mini http server dus je kan in principe een java webapp in een html proppen. Op die manier kan je naar de x-port surfen, en via de webapplicatie uw nikobus sturen.
Nog een andere oplossing is een linksys wrt54 kopen. Die heeft namelijk 2 rs232 poorten. Ook hier moet je een level convertor solderen.
De linksys heeft wel het voordeel dat er een linux opzit, wat meer mogelijkheden bied. (betere webserver, cronjobs, etc..)
http://www.rwhitby.net/projects/wrt54gs
PS nog een handige tool is PSPad een FREE text/hexeditor met enorme mogelijkheden (hex/dec/bin convertors etc..)
207 dollar met shipping, en 4 dagen later had ik hem.
Met de dollar op 1.42 wisselkoers valt dit nog goed mee.
UPS moest mij natuurlijk 50euro extra aanrekenen.. bende afzetters
Farnell.be kan ze ook leveren, maar heeft ze niet in stock.
Anyway, als je iets van elektronica kent, kan je ook enkel de xport kopen ipv de devkit. Je moet dan wel zelf een RS232 level converter solderen om de 3.3V omhoog te pompen naar standaard rs232 levels.
De XPORT heeft een mini http server dus je kan in principe een java webapp in een html proppen. Op die manier kan je naar de x-port surfen, en via de webapplicatie uw nikobus sturen.
Nog een andere oplossing is een linksys wrt54 kopen. Die heeft namelijk 2 rs232 poorten. Ook hier moet je een level convertor solderen.
De linksys heeft wel het voordeel dat er een linux opzit, wat meer mogelijkheden bied. (betere webserver, cronjobs, etc..)
http://www.rwhitby.net/projects/wrt54gs
PS nog een handige tool is PSPad een FREE text/hexeditor met enorme mogelijkheden (hex/dec/bin convertors etc..)
Ik heb een My Home systeem van Bticino en daarmee is dit standaard mogelijk via een eenvoudige IP socket. Ze hebben daar een volledige site opgezet waar je alle documentatie over het protocol en hoe je de code moet opbouwen. Bovendien is het allemaal gratis te downloaden. Je moet maar eens een kijkje nemen op http://www.myopen-bticino.it. De site is in het engels en het italiaans.
Re:
ja ikke , maar ik heb net een dochtertje gekregen , dus andere prioriteitenhighvolt wrote:Is er behalve mijzelf nog iemand bezig om de CRC codes te kraken ?
In principe kan ik alles al aansturen via virtuele 64button knoppen, alleen is het niet echt elegant om op die manier de dimmers aan te sturen.
Re:
Dank u , dank u ..... ( fiere papa )highvolt wrote:HOLA, proficiat he!
Hoe noemt ze ?
Edit: Ter info.. 2/3 van de CRC is gekraakt.. enkel de laatste byte nog...
(en die lijkt precies de moeilijkste te zijn)
Ze noemt Anouk en ze heeft haar eigen website > www.anouk-buntinx.net