Ein wenig angefixt von dem Erfolg in den letzten Wochen (https://steemit.com/arduinio/@gammastern/ftdi-chinesischer-exorzismus) mit dem Netzsteckern aus dem Hause Sonoff, habe ich mir mal die sonstige Produktpalette der Firma angesehen. Den eines muss man den Chinesen wirklich lassen ... sie sind unschlagbar billig. Will man wirklich so einen Kram bei sich im Haus verbauen, dann bezahlt man sich bei gängigen Herstellern dumm und dämmlich. Und obwohl man den Preis bereits noch beeindruckend findet, legt der Chinese noch 25% Rabattaktion oben drauf. Da muss das Nerdherz einfach ein wenig shoppen gehen...
Mein Augenmerk fiel dabei auf eine Einbaudose für einen Wandschalter. Dieser hat 1-3 Touchbedienfelder über die man etwas ... an und ausschalten kann. Vermutlich sind die Dinger vorwiegend als Lichtschalter gedacht. Ich möchte sie aber gerne als allgemeine Schalter haben um einige Aktionen zu steuern. Schließlich will man nicht immer erst zum Rechner laufen und dort etwas machen und auch das Handy hat den Nachteil, dass es zwar überall sein kann, aber wer will es schon in der eigenen Wohnung mit sich rumtragen. Zudem habe ich noch die Hoffnung, dass man den Status auch über Funk setzen kann und somit ein visuelles Feedback des aktuellen Status hat. Unabhängig davon wo man es gesetzt hat. Da der Hersteller scheinbar sehr überzeugt von den guten ESP8266-Chips ist, ist die Hoffnung gewesen darin auch etwas ähnliches vorzufinden.
Als das gute Stück dann angekommen ist, habe ich es erstmal begutachtet. Macht für mich auf den ersten Blick einen soliden Eindruck. Eine schöne Touchoberfläche, robuster Bau. Ästhetisch vielleicht nicht vollends überzeugend, aber als Techie bin ich dafür ja sowieso blind. Also zum Schraubenzieher gegriffen und mit Hilfe der Verpackung erst einmal aufgehebelt.
Nun liegt die Platine vor uns offen. Kurz nochmal die Augenlupe rein und ein wenig gesucht. Treffer und Sieg, natürlich ist dort ein ESP8266 verbaut und damit ja quasi die Schlacht schon gewonnen. Ein wenig Ernüchterung für den zweiten Chip etwas rechts im Bild. Was auf den ersten Blick wie ein Logo aussieht, entpuppt sich als Schramme. Leider nicht zu identifzieren, was das genau ist. Zwar ist der defekt nur oberflächlich und scheint nicht tief zu sein, zeigt aber eben doch irgendwo den Preis, den man auch für die chinesische Hardware bezahlt.
Viel mehr überraschte es mich, dass es gleich zwei Pinreihen bei diesem Gerät gibt. Da der untere nach dem Programmer aussieht, habe ich mich natürlich erstmal daran gemacht. 3.3V, GRND, RX, TX ... genauso wie man es erwarten würde. Auf Grund meiner mangelden Lötskills und dem ohnehin bereits sehr geringen Platz an der Stelle (man will die Dose ja auch wieder zu kriegen), habe ich mich diesmal für die brachial primtive Lösung entschieden und die Kabel einfach festgeklammert. Daran kam dann einfach der FTDI-Adapter wieder ran und somit die Brücke zum Linux-System aufgebaut.
Sofort wird man mit einem tuten begrüßt und die Felder gehen an und lass sich durch Druck schalten. Das ist ja schon einmal eine gute Nachricht! Also freudig die Flash-Software angeschmissen und versucht die original Firmware auszulesen. Immerhin wurde ja das letzte Mal der Wunsch geäußert, dass man sich auch die mal näher ansehen könnte. Also lieber ein Backup davon machen, bevor es übergebügelt wird.
./esptool.py --port /dev/ttyUSB0 read_flash 0x00000 0x100000 backup.ing
esptool.py v2.2.1
Connecting........_____....._____....._____....._____....._____....._____....._____....._____....._____....._____
A fatal error occurred: Failed to connect to Espressif device: Timed out waiting for packet header
Das hat es irgendwie nicht gebracht. Irgendwie kommt da über den Kanal nicht das, was er erwarten würde. Also stromlos machen und den Reset drücken. Hat bei der Dose ja auch geholfen. Doch wieder nur das Gleiche. Im Netz gibt es einige, die sagen, dass der Reset und Button 1 gedrückt werden muss, damit er in den Wartungsmodus geht. Das Problem ist nur, dass ich nicht wirklich erkenne, ob er da auch wirklich drin ist. Entsprechend lässt es sich schwer sagen, ob ich im falschen Modus bin oder eben noch irgendwo an den falschen Pins lese oder gar falsche Frequenz oder Verfahren wähle.
1:0 für China. Es wurde gestern zu spät und ich musste erfolglos aufgeben. Das kann einem nun natürlich frustrieren und man sich ärgern, ich sehe es aber als riesige Chance nun etwas zu lernen. Den wenn man selbst nicht weiter kommt, dann holt man sich eben Hilfe aus anderer Quelle und versucht es solange bis man versteht, wie das Ding funktioniert. Eine kurze Recherche im Netz ergab, dass es noch einen separaten Pin für eine Konsole gibt, der momentan von mir nicht genutzt wird. Über diesem sollte man rausfinden, ob das Ding im Wartungsmodus gegangen ist.
Super! Dann weiß man ja schon einmal wie es weiter gehen könnte. Und vielleicht lohnt es sich ja auch nochmal die oberen Pins genauer anzusehen... ;)
Auch die Misserfolge gehören zum Weg. Ist erfrischend zu sehen, dass es auch mal schief geht. Im Netz findet man eher immer nur die Erfolgstories, aber den harten Weg bis dahin gibt es eher selten.
Mir gefällt besonders deine positive Art: Hat nicht Funktioniert? Schau ma mal was wir da machen können :)
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Ich bin doch nicht positiv. Ich bin einfach nur lästig hartnäckig ;)
Aber ja. Das große Problem ist immer, dass man nur die fertigen Hacks sieht und dann staunend davor steht, weil irgend mit Glitching ne Konsole auseinander genommen hat. Alle denken dann, dass Hacking etwas mit Beherrschung von Computern zu tun. Dabei ist es ja eben gerade aus dem bestehenden etwas in kreativer Art und Weise zu machen. Da muss man einfach mal Mut zu haben... und wenn das Ding durchschmort. Dann hat man für ne paar Euro was gelernt und zudem noch ein Ersatzteillager, falls das nächste Mal etwas schief läuft :)
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Ich kenne mich im Bereich Hardware Hacking nicht so gut aus, finde es aber sehr interessant.
Ich bin froh dich hier gefunden zu haben, da ich diesbezüglich einiges von dir lernen kann.
Weiter so :)
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Ah! Ich denke da wird es demnächst noch was geben. Sieht so aus als wäre nur ein Kabel nicht richtig drauf gewesen und ich ein wenig auf den falschen Taster fokusiert war :)
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Nun ich bin eigentlich auch eher im Bereich Software-Hacking unterwegs. Hardware ist für mich ein Buch mit 7 Siegeln. Habe beim 34C3 ernsthaft überlegt mich beim Kinderlöten hinzusetzen, bei näherer Betrachtung waren die mir aber schon zu advanced ;)
Wie bei allem ist es halt so, dass man einfach nur irgendwo anfangen muss. Gerade die gut dokumentierten Chips bieten da IMHO eine gute Einstiegsmöglichkeit, da sie meist eben auch recht offen sind und nicht besonders geschützt. Da kann man durchaus mal Erfolge haben.
Ich finde es aber eben auch immer wichtig, dass man nicht nur das fertige Ergebnis sieht, sondern eben auch mal Ansätze die nicht funktioniert haben oder eben Entscheidungen, die getroffen wurden. Daher versuche ich das hier und da immer mal zu dokumentieren ;)
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Zum 34C3 habe ich es leider nicht geschafft. Wäre gerne da gewesen.
Ich denke auch der Reiz liegt darin etwas zu probieren. Wenn man alles von Anfang an weiß und alles klappen würde wäre es ja langweilig - wie du schon in deinem Titel geschrieben hast :)
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Dann gehen wir Notfalls beim nächsten Kongress zusammen zu den Kiddies und die erste Mate geht auf mich ;)
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Spectacular... Bravo buddy
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit