Hallo zusammen,
ich suche nähere Infos zu o.g. Handsender. Speziell ob schon mal jemand einen Blick unter die Haube geworfen hat.
Hintergrund der Frage ist, dass ich diesen Handsender gerne dahingehend zweckentfremden würde, dass ich ihm eine neue Firmware verpasse. Natürlich nur, wenn das überhaupt machbar ist, sprich es müsste natürlich ein Flash basierter Controller drinne stecken und keine Maskenprogrammiert/OTP Version und es müsste physischer Zugriff auf die ISP Schnittstelle oder ähnliches gegeben sein usw.
Natürlich könnte ich auch einfach mittels CUL/HM-USB-CFG und FHEM an den Start gehen, aber da ich den relativ schicken Sender mit eigener CC1100/1101 Empfängerelektronik kopppeln möchte, wäre es natürlich schöner das Ding ohne BidCos Geraffel nutzen zu können ;-)
Grüße,
Jan
Okay selbst ist der Mann :-D Gerade in mühsamer Kleinarbeit eine nagelneue HM-RC-4-2 zerlegt. Drinnen steckt neben dem üblichen Sendemodul ein Silabs C8051F930. Es gibt einen mit PRG1 bezeichneten Header auf der Platine, welcher sschwer nach Programmieranschluss riecht. Nachdem ich das TRX Modul entlöten konnte, habe ich freien Blick auf den Prozessor. Evtl. späer ein paar Bilder zunächst werde ich mal versuchen die MCU Pins zu entwirren.
Okay, ich habe den Sender komplett entwirrt :-) Anbei mal eine kurze Zusammenfassung.
Es kommt ein Silabs C8051F930 zum Einsatz, im Prinzip ein aufgemotzter 8051. Nette Eigenschaft diese Teils ist ein programmierbarer DC/DC wandler der aus einer Eingangsspannung von 0.9V bis 1.8V eine Ausgangsspannung von 1.8V bis 3.3V macht. Bei diesem Sender wird darüber das TRX Modul gespeist. Programmiert wird das Ding über eine sog. C2 Schnittstelle, bestehend aus den Signalen GND, C2D, C2CK/RST und Vdd. Der Flash ist löschbar auch bei gesetzten Lockbits, eine Entwicklungsumgebung scheint es von Silabs zu geben, ebenso sieht ein C2 Programmer recht einfach aus. Da muss ich noch tiefer graben. Datenblätter sind auch komplett verfügbar. :)
Die Programmierschnittstelle "PRG1" ist wie folgt belegt:
1 - GND
2 - C2CK/!RST
3 - Vdd vermutlich sind 3.3V erforderlich/ok
4 - C2D
Die 5 Taster (4 auf der Front und 1 Progarmmiertaster) gehen auf die MCU Eingänge P1.3 bis P1.7, sie schalten gegen GND.
Belegung inkl Testpunkte:
TA5 - P1.3 - MP2 (Prog)
TA2 - P1.4 - MP3
TA1 - P1.5 - MP4
TA4 - P1.6 - MP5
TA3 - P1.7 - MP6
Wenn die LED des Gehäuses oben ist, dann sind die Taster von oben nach unten wie folgt: TA2, TA1, TA4, TA3
Die LED hängt mit ihren Kathoden an P2.5 - MP7 und P2.6 - MP8.
Auf MP1 liegt P0.4/TX. Vermutlich Debug Ausgabe.
Das TRX Modul wird über P2.4 und einen Transistor(FET?) eingeschaltet, vermutlich muss man eine Stabilisierungsphase des DC/DC Wandler abwarten.
Die Belegung des TRX Moduls habe ich ebenso komplett getraced, hier fehlt mir aber noch eine Belegung der 8 Pins des schmalen TRX Moduls mit der Pfostenleiste, ich finde diese gerade nicht, hat wer einen Hinweis? Ich weiss, dass ich das schin mal irgendwo gesehen habe.
EDIT: Ich habe im FHEM Wiki eine Beschreibung gefunden: http://www.fhemwiki.de/wiki/HomeMatic_Asksin_Library
Allerdings habe ich damit ein kleines Problem, entweder ist dort die Belegung falsch oder bei dem Modul aus dem Handsender ist die Pinreihe horizontal gespiegelt im Vergleich zum FHEM Wiki. Bei mir ist Masse definitv -beim Blick auf das Schirmblech- ganz oben links und nicht unten links, der NC Pin ist auch gespiegelt. Entweder ist da also ein Fehler im FHEM Wiki oder mein Modul ist "anders", was ich nicht glauben mag...
Eine Alternative Firmware erscheint momentan als sehr gut machbar. :-) Evtl. kann man den Handsender dadurch zu einem FS20 Sender o.ä. umfunktionieren, da brauche ich etwas Input von Leiten die mit dem TRX Modul und dem CC1101 schon gearbeitet haben, der CUL kann es ja, Details habe ich mir noch nicht angeschaut.
Alles in allem in wirklich netter kleiner Handsender, der gut umprogrammierbar scheint aufd en ersten Blick. :-)
Okay nach einer ersten Logikanalyzer Session kann ich folgendes
hinzufügen:
Blick auf den offenen Sender, 2x4 Header TRX
1 3 5 7
2 4 6 8
SPI Schnittstelle zum TRX
1 - GND
2 - Vdd
3 - SCK - P1.0
4 - MOSI - P1.2
5 - NC
6 - MISO - P1.1
7 - CSn - P2.0
8 - GDO0 - P0.0
In meinen Augen ist somit die Belegung im Wiki falsch, oder ELV verbaut seit neustem andere TRX Module?
Und bist du weiter gekommen?