Het principe van de
RF15 werkt grofweg als volgt:
1. Bij het plaatsen van de batterij wordt de
CC1101 gereset (0x30) en vervolgens geïnitialiseerd via de SPI interface
2. Na stap 1 wordt de chip in low power mode gezet (0x39)
3. Bij het indrukken van een knop op de
RF15, volgt eerst stap 1 (reset+init), daarna wordt IO
GDO0 aan de
TX FIFO gekoppeld, zie ook table 41 van de
CC1101 datasheet
4. Vervolgens wordt de payload via
38k4 verstuurd vanuit de host mcu, het frame van de berichten is voor motorstand 1, 2 en 3 altijd hetzelfde, alleen de motorstand en checksum is anders. De frames van de andere knoppen, zoals timer, away en auto zien er iets afwijkend uit, vooral in lengte.
5. Wanneer het bericht is verstuurd, word
GDO0 aan de
RX FIFO gekoppeld, er komt dan een tijdje random data binnen, totdat het dataframe van de
Orcon unit zelf binnenrolt. Deze ziet er voor de motorstanden ook elke keer hetzelfde uit, afgezien van de huidige motorstand + checksum.
6. Als laatste wordt de CC1101 weer in low power mode gezet (0x39)
Mijn RF15 met reverse engineer draadjes:
De setup om de Orcon MVS te bedienen:
De data is waarschijnlijk Manchester gecodeerd, op het moment heb ik niet zoveel tijd om dat uit te zoeken en zit ik te denken om een USB dongle te maken die de eerste 5 seconden bij spanning in "pairingsmodus" staat, als je binnen 5sec. op een knop van de RF15 drukt kopieert hij simpelweg het complete frame van de RF15. Voor stand 1, 2 en 3 weet je dan welk veld je moet veranderen en welke checksum erbij hoort.
Zo gaat hij eruit zien, waarschijnlijk in het zwart:
[
Voor 4% gewijzigd door
Willie-wortel op 13-03-2022 19:39
]