TXT von SD-Karte booten

Alles rund um TX(T) und RoboPro, mit ft-Hard- und Software
Computing using original ft hard- and software
Forumsregeln
Bitte beachte die Forumsregeln!
Benutzeravatar
MasterOfGizmo
Beiträge: 2727
Registriert: 30 Nov 2014, 07:44

Re: TXT von SD-Karte booten? Ja geht!

Beitrag von MasterOfGizmo » 14 Feb 2016, 21:09

richard.kunze hat geschrieben: Das wäre zwar äußerst wünschenswert, ist aber eigentlich kein Hindernis für eine Community-Firmware - schließlich sind die fehlenden Komponenten auf jedem TXT eh schon vorhanden.
Die sind sogar in dem Source-Archiv bei Fischertechnik als Binaries dabei. Aber halt in Version 4.1.5.0. Aber Du hast Recht, man kann auch das Flash mounten und Links setzen. Aber: Das birgt dann wieder die Gefahr, dass jemand dann den Flash-Inhalt manipuliert. Das sollte man also bestenfalls read-only mounten, wenn man dann auf dem per SD-Karte gebootetem TXT größere Experimente macht. M.E. sollten wir versuchen, den Flash des TXT möglichst unberührt zu lassen.
richard.kunze hat geschrieben: Script sollte reichen. Auf dem TXT ist fw_setenv mit bei, und mehr braucht es nicht:
...
Stimmt. Aber für die meisten User ist das wohl noch zuviel verlangt. Wäre halt echt toll, wenn man das komplett automatisieren könnte. Also TXT wie er ab Werk kommt an den PC anschließen und dann macht ein Windows-Programm die ganze Magie. Aber das scheitert ja leider schon an diesem Root-Passwort-Krams auf dem TXT.
richard.kunze hat geschrieben: Geht definitiv. Alles nötige dafür ist schon bei der Original-Firmware dabei (dhcpcd und wpa_supplicant), alles was man noch braucht ist ein passendes Startscript. Der Funkchip auf dem TXT hat sogar zwei Radios dabei, d.h. man kann den TXT gleichzeitig ins Heim-WLAN hängen und das "normale" TXT-WLAN aus der Original-Firmware starten.
Bist Du sicher? Ja, er zeigt zwei WLAN-Devices an. Aber bist Du sicher, dass das nicht irgendein Seiteneffekt der AP-Mode-Sachen ist?
richard.kunze hat geschrieben: Einziges Problem ist die etwas geringe WLAN-Reichweite. Zumindest bei mir hat der TXT zwar im Scan so ziemlich alle APs hier in der Gegend gesehen, aber eine stabile Verbindung hat nur bei direktem Sichtkontakt geklappt - eine Leichtbauwand zwischendrin war schon zuviel.
Klingt merkwürdig.
Arduino für fischertechnik: ftDuino http://ftduino.de

richard.kunze
Beiträge: 583
Registriert: 26 Dez 2015, 23:49
Wohnort: Rhein-Main-Gebiet

Re: TXT von SD-Karte booten? Ja geht!

Beitrag von richard.kunze » 14 Feb 2016, 21:55

MasterOfGizmo hat geschrieben: Die sind sogar in dem Source-Archiv bei Fischertechnik als Binaries dabei. Aber halt in Version 4.1.5.0.
Ja - und mit unklaren Lizenzen. Genau deshalb ja auch meine Idee, die Version vom TXT selbst zu nehmen. Die ist aktuell, und der Besitzer hat ganz definitiv eine Lizenz dafür.
MasterOfGizmo hat geschrieben: Das sollte man also bestenfalls read-only mounten, wenn man dann auf dem per SD-Karte gebootetem TXT größere Experimente macht. M.E. sollten wir versuchen, den Flash des TXT möglichst unberührt zu lassen.
Sehe ich ähnlich. Wird zwar wohl an ein paar Stellen etwas zu basteln sein (Unter /opt/knobloch gibts ein paar Stellen, an die im normalen Betrieb geschrieben wird, z.B. die hochgeladenen RoboPro-Programme), aber eigentlich spricht nichts dagegen, das Flash Read-Only zu mounten.

Eine Möglichkeit könnte ein Overlay-Filesystem sein (so wie das OpenWRT mit SquashFS/JFFS2 bzw. SquashFS/ubifs macht) - das sieht dann zwar so aus, als wäre alles beschreibbar, aber in Wirklichkeit landen Änderungen ausschliesslich im Overlay (sprich: Auf der SD-Karte).
MasterOfGizmo hat geschrieben: Bist Du sicher? Ja, er zeigt zwei WLAN-Devices an. Aber bist Du sicher, dass das nicht irgendein Seiteneffekt der AP-Mode-Sachen ist?
Ja. Versuch macht kluch, also hab ichs ausprobiert :-)

Das Teil hat wirklich zwei Radios, und die kann man auch beide gleichzeitig benutzen. Zumindest auf 2.4 GHz.

Der Treiber zeigt zwar auch 5Ghz-Kanäle als verfügbar an, aber in dem Band hab ich nicht mal was gesehen wenn ein passender AP direkt neben dem TXT steht.
MasterOfGizmo hat geschrieben:
richard.kunze hat geschrieben: Einziges Problem ist die etwas geringe WLAN-Reichweite. Zumindest bei mir hat der TXT zwar im Scan so ziemlich alle APs hier in der Gegend gesehen, aber eine stabile Verbindung hat nur bei direktem Sichtkontakt geklappt - eine Leichtbauwand zwischendrin war schon zuviel.
Klingt merkwürdig.
So merkwürdig ist das gar nicht.

Schließlich hat der TXT nicht nur eine interne Antenne (sowas wird oft direkt aufs Board gedruckt - müsste man mal aufmachen und nachschauen, aber es würde mich wundern wenns beim TXT anders wäre), sondern die Antenne sitzt auch neben/unter der zweiten Platine mit dem ganzen I/O-Kram - und die dürfte wohl ziemlich großflächig voller Kupfer sein, damit die nicht ganz unerheblichen Leistungen auch sauber transportiert werden können. So eine Umgebung ist für Funk halt nicht wirklich ideal...

Benutzeravatar
MasterOfGizmo
Beiträge: 2727
Registriert: 30 Nov 2014, 07:44

Re: TXT von SD-Karte booten? Ja geht!

Beitrag von MasterOfGizmo » 14 Feb 2016, 22:47

Kann ich ja kaum glauben, dass sie die Antenne da irgendwo unter Abschirmungen begraben haben ...

Dagegen spricht ja auch etwas, dass der TXT WLANs der halben Strasse sieht. Auch das musste ja an der schlechten Antenne scheitern.
Arduino für fischertechnik: ftDuino http://ftduino.de

Benutzeravatar
ski7777
Administrator
Beiträge: 915
Registriert: 22 Feb 2014, 14:18
Wohnort: Saarwellingen

Re: TXT von SD-Karte booten? Ja geht!

Beitrag von ski7777 » 15 Feb 2016, 06:17

Das root-Passwort ist echt einfach herauszufinden. Ich habe sogar einen ftpedia Beitrag geschrieben. Hier ist der Link zur Version die erst heute Mittag von Rechtschreibfehlern und so befreit wird: https://www.dropbox.com/s/2h8epsa3v6axm ... .docx?dl=0
Ich denke das erscheint in der 1/16.

Raphael

Benutzeravatar
MasterOfGizmo
Beiträge: 2727
Registriert: 30 Nov 2014, 07:44

Re: TXT von SD-Karte booten? Ja geht!

Beitrag von MasterOfGizmo » 15 Feb 2016, 09:18

ski7777 hat geschrieben:Das root-Passwort ist echt einfach herauszufinden
...
Ja, das entspricht ja genau der Anleitung von Fischertechnik. Aber das Ganze macht die Sache ja reichlich unbequem und vor allem nicht Anfänger-tauglich.
Arduino für fischertechnik: ftDuino http://ftduino.de

Benutzeravatar
ski7777
Administrator
Beiträge: 915
Registriert: 22 Feb 2014, 14:18
Wohnort: Saarwellingen

Re: TXT von SD-Karte booten? Ja geht!

Beitrag von ski7777 » 15 Feb 2016, 10:14

Hallo MasterOfGizmo
MasterOfGizmo hat geschrieben: Ja, das entspricht ja genau der Anleitung von Fischertechnik. Aber das Ganze macht die Sache ja reichlich unbequem und vor allem nicht Anfänger-tauglich.
Ich wollte mit diesem und den folgenden Beiträgen die trockenen Forenthreads bzw. die englische Anleitung von ft über setzen und etwas bebildern.

Raphael

Benutzeravatar
MasterOfGizmo
Beiträge: 2727
Registriert: 30 Nov 2014, 07:44

Re: TXT von SD-Karte booten? Ja geht!

Beitrag von MasterOfGizmo » 15 Feb 2016, 10:49

ski7777 hat geschrieben: Ich wollte mit diesem und den folgenden Beiträgen die trockenen Forenthreads bzw. die englische Anleitung von ft über setzen und etwas bebildern.
Das ist ja auch super, keine Frage. Aber für den DAU trotzdem viel zu kompliziert.
Arduino für fischertechnik: ftDuino http://ftduino.de

Benutzeravatar
Defiant
Beiträge: 409
Registriert: 31 Okt 2010, 21:42
Wohnort: Narn Homeworld
Kontaktdaten:

Re: TXT von SD-Karte booten? Ja geht!

Beitrag von Defiant » 15 Feb 2016, 20:35

Wie sieht denn die uboot env standardmäßig aus und wie sind die SYSBOOT-Pins des Controllers geschaltet?
"Propaganda does not deceive people; it merely helps them to deceive themselves."
E Hoffer

richard.kunze
Beiträge: 583
Registriert: 26 Dez 2015, 23:49
Wohnort: Rhein-Main-Gebiet

Re: TXT von SD-Karte booten? Ja geht!

Beitrag von richard.kunze » 15 Feb 2016, 20:46

Hallo MOG,

eventuell könnten wir sowohl für die Aktivierung von "bootboth" als auch für die initiale Installation einer eventuellen (wahrscheinlichen?) Community-Firmware einfach den Update-Mechanismus von RoboPro "kapern" :-)

Ich hab mir das gerade mal angeschaut, und die Update-Datei für den TXT ($ROBOPRO_HOME/ROBO Interface Firmware/TXTController_4_2_3_0/update.sh) ist tatsächlich das, worauf die Extension hindeutet: Ein simples Shellscript, das dem Inhalt nach zu schließen von root ausgeführt wird. Soweit ich sehen kann ist das Ding auch nicht signiert, verschlüsselt ist es ebenfalls nicht. Damit spricht generell also nichts dagegen, ein eigenes "update.sh" zu schreiben das dann halt macht was auch immer wir wollen.

Aus Benutzersicht würde man dann unseren Installer an die passende Stelle kopieren und per RoboPro ein "Firmware-Update" fahren - wäre das aus Deiner Sicht anfängertauglich genug?

Ich probier nachher mal aus ob das auch so funktioniert wie ich mir das vorstelle. Erstmal muss ich noch den aktuellen Zustand meines nagelneuen Bastel-TXT (mit Firmware 4.1.5.0 - kommt Dir die Version irgendwoher bekannt vor?) soweit sichern, dass ich ihn bei Bedarf wieder auf "fabrikneu" zurückflashen kann.

Viele Grüße,

Richard

Benutzeravatar
ski7777
Administrator
Beiträge: 915
Registriert: 22 Feb 2014, 14:18
Wohnort: Saarwellingen

Re: TXT von SD-Karte booten? Ja geht!

Beitrag von ski7777 » 15 Feb 2016, 20:58

Die Datei "update.sh" wird beim Update zum TXT übertragen und dort mit adminrechten ausgeführt. Deshalb geht das unkomplizierte Update nur, wenn man ein Zufallspasswort gesetzt hat.

Raphael

richard.kunze
Beiträge: 583
Registriert: 26 Dez 2015, 23:49
Wohnort: Rhein-Main-Gebiet

Re: TXT von SD-Karte booten? Ja geht!

Beitrag von richard.kunze » 15 Feb 2016, 21:00

Hallo Defiant,
Defiant hat geschrieben:Wie sieht denn die uboot env standardmäßig aus und wie sind die SYSBOOT-Pins des Controllers geschaltet?
Den Inhalt vom U-Boot-Env findest Du weiter vorne im Thread: viewtopic.php?f=8&t=3396#p23447

Kann ich den Zustand der SYSBOOT-Pins per Software auslesen, oder muss ich den TXT dafür zerlegen und auf dem Board auf die Suche gehen?

Viele Grüße,

Richard
Zuletzt geändert von richard.kunze am 15 Feb 2016, 21:07, insgesamt 1-mal geändert.

richard.kunze
Beiträge: 583
Registriert: 26 Dez 2015, 23:49
Wohnort: Rhein-Main-Gebiet

Re: TXT von SD-Karte booten? Ja geht!

Beitrag von richard.kunze » 15 Feb 2016, 21:06

Hallo Raphael,
ski7777 hat geschrieben:Die Datei "update.sh" wird beim Update zum TXT übertragen und dort mit adminrechten ausgeführt.


Ja. Das ist ja auch exakt das, was ich ausnutzen will.
ski7777 hat geschrieben:Deshalb geht das unkomplizierte Update nur, wenn man ein Zufallspasswort gesetzt hat.
Das muss man aber nicht selbst machen, sondern das ist ab Werk so. Und genau für den Fall brauchen wir ja auch das "einfache Update".
Wer sowieso schon als root auf dem TXT rumfuhrwerkt, der kann auch einfach das Shellscript laufen lassen das ich weiter vorne im Thread gepostet habe.

Viele Grüße,

Richard

richard.kunze
Beiträge: 583
Registriert: 26 Dez 2015, 23:49
Wohnort: Rhein-Main-Gebiet

Re: TXT von SD-Karte booten? Ja geht!

Beitrag von richard.kunze » 15 Feb 2016, 21:31

Hallo Elektrolutz,
elektrolutz hat geschrieben: eine HW-Beschreibung zum TXT siehe hier: https://www.ftcommunity.de/data/downloa ... 150301.pdf

Abweichend zur Beschreibung hat das WLan-Modul in meinem TXT den Namen: WL18 MODGB
Datenblatt: http://www.mouser.com/ds/2/405/wl1801mod-452298.pdf
Danke für die Links!
elektrolutz hat geschrieben: Laut Datenblatt 2 Antennen: 1 WLan und 1WLan/BT (umschaltbar)
Hmmm. Wenn ich wl1801mod-452298.pdf richtig verstehe, kann man damit WLAN und BT nur parallel betreiben, wenn man zwei Antennen hat. Der TXT kann WLAN und BT gleichzeitig. Aber auf dem Foto aus robo_txt_controller_hw_hack_150301.pdf auf Seite 7 unten (und auf den anderen Fotos) sehe ich nur eine Antenne...

Irgendeine Idee wo die fehlende Antenne stecken könnte? Oder wo ich bei der Überlegung oben falsch abgebogen bin?

Viele Grüße,

Richard

Benutzeravatar
MasterOfGizmo
Beiträge: 2727
Registriert: 30 Nov 2014, 07:44

Re: TXT von SD-Karte booten? Ja geht!

Beitrag von MasterOfGizmo » 15 Feb 2016, 21:36

Ich hab's eben auch nochmal probiert. WLAN ist nicht sehr stabil. Die angezeigte Signalstärke ist aber nicht so schlecht, dass das die ständigen Verbindungsabbrüche erklären würde.

Ich verstehe das Datenblatt so, dass die zweite Antenne nur für mimo gebraucht wird. Die Primär-Antenne teilen sich Bluetooth und Wlan. Und laut Datenblatt koennen die das gleichzeitig.

Aber ich habe trotzdem mal Bluetooth und wlan1 abgeschaltet und habe in einem kurzen Test danach keine Unterbrechungen in wlan0 mehr.
Arduino für fischertechnik: ftDuino http://ftduino.de

richard.kunze
Beiträge: 583
Registriert: 26 Dez 2015, 23:49
Wohnort: Rhein-Main-Gebiet

Re: TXT von SD-Karte booten? Ja geht!

Beitrag von richard.kunze » 15 Feb 2016, 22:02

MasterOfGizmo hat geschrieben:Ich verstehe das Datenblatt so, dass die zweite Antenne nur für mimo gebraucht wird. Die Primär-Antenne teilen sich Bluetooth und Wlan. Und laut Datenblatt koennen die das gleichzeitig.
Jetzt wo Du das sagst - ja, stimmt. Da hab ich wohl "Figure 1-1. WL1835MOD Functional Block Diagram" im Datenblatt falsch interpretiert...

richard.kunze
Beiträge: 583
Registriert: 26 Dez 2015, 23:49
Wohnort: Rhein-Main-Gebiet

Re: TXT von SD-Karte booten? Ja geht!

Beitrag von richard.kunze » 15 Feb 2016, 22:28

So, Firmware-Dumps sind durch. Bei der Gelegenheit hab ich mir die einzelnen Images auch mal schnell angesehen:

Code: Alles auswählen

$ file mtd?.dump mtd10.dump
mtd0.dump:  data
mtd1.dump:  data
mtd2.dump:  data
mtd3.dump:  data
mtd4.dump:  Device Tree Blob version 17, size=32977, boot CPU=0, string block size=2277, DT structure block size=30644
mtd5.dump:  u-boot legacy uImage, U-Boot 2013.10 for TXT board, Firmware/ARM, Firmware Image (Not compressed), 488696 bytes, Thu Dec 18 12:55:26 2014, Load Address: 0x80800000, Entry Point: 0x00000000, Header CRC: 0x195C59E7, Data CRC: 0xEE4074F9
mtd6.dump:  data
mtd7.dump:  ISO-8859 text, with very long lines, with no line terminators
mtd8.dump:  u-boot legacy uImage, Linux-3.16.1, Linux/ARM, OS Kernel Image (Not compressed), 4724656 bytes, Sun Mar 29 11:12:37 2015, Load Address: 0x80008000, Entry Point: 0x80008000, Header CRC: 0x42F39ED0, Data CRC: 0x2F33B6D9
mtd9.dump:  PC bitmap, Windows 3.x format, 240 x 320 x 8
mtd10.dump: UBI image, version 1
mtd0 bis mtd3 haben identischen Inhalt - nach einmal kurz mit "strings" draufschauen vermutlich vier Kopien des SPL ("Secondary Program Loader") vom U-Boot (dafür spricht auch, dass die Partition in /proc/mtd die Namen "SPL1".."SPL4" haben). mtd4 ist der DTB, mtd5 das eigentliche U-Boot-Image. mtd6 ist das U-Boot-Environment, mtd7 ("U-boot-env-backup" in /proc/mtd) ist leer. mtd8 ist der Linux-Kernel, mtd9 ist das Bild, das beim Booten auf dem Display angezeigt wird (der Fortschrittsbalken wird da dann so wie es aussieht drübergemalt), und mtd10 ist schließlich das Root-filesystem der Firmware.

Benutzeravatar
MasterOfGizmo
Beiträge: 2727
Registriert: 30 Nov 2014, 07:44

Re: TXT von SD-Karte booten? Ja geht!

Beitrag von MasterOfGizmo » 15 Feb 2016, 22:56

Das boot-Bild im Flash scheint beim Booten aktualisiert zu werden. Ich habe das boot-Bild in /etc aus Spass verändert. Aber erst beim übernächsten Bootversuch wurde es sichtbar. Aber immerhin. Damit meldet sich der TXT dann mit 'Community Edition' :D
Arduino für fischertechnik: ftDuino http://ftduino.de

Benutzeravatar
MasterOfGizmo
Beiträge: 2727
Registriert: 30 Nov 2014, 07:44

Re: TXT von SD-Karte booten? Ja geht!

Beitrag von MasterOfGizmo » 15 Feb 2016, 23:04

Laut Datenblatt nutzen aber WLAN und Bluetooth die selbe Antenne. Die zweite ist laut Datenblatt nur für mimo.
Arduino für fischertechnik: ftDuino http://ftduino.de

richard.kunze
Beiträge: 583
Registriert: 26 Dez 2015, 23:49
Wohnort: Rhein-Main-Gebiet

Re: TXT von SD-Karte booten? Ja geht!

Beitrag von richard.kunze » 16 Feb 2016, 00:38

richard.kunze hat geschrieben:Soweit ich sehen kann ist das Ding auch nicht signiert, verschlüsselt ist es ebenfalls nicht.
Geht wohl doch nicht so einfach - simples Austauschen von update.sh bringt nur die Fehlermeldung "the firmware update file is corrupted". Anscheinend ist irgendwo in RoboPro doch noch eine Checksumme/Signatur/wasauchimmer hinterlegt.

Naja, einen Versuch wars wert....

Benutzeravatar
ski7777
Administrator
Beiträge: 915
Registriert: 22 Feb 2014, 14:18
Wohnort: Saarwellingen

Re: TXT von SD-Karte booten? Ja geht!

Beitrag von ski7777 » 16 Feb 2016, 06:22

Hallo,

also mit W-Lan, BT und co. kenne ich mich überhaupt nicht aus. Dafür hab ich den updatemechnismus für Laien fertig:
Im Kontakt mit ft habe ich folgendes gefunden:
Man kann das Update per RoBoPro erzwingen:
Man gibt in die cmd einfach ein:

Code: Alles auswählen

reg add HKEY_CURRENT_USER\Software\fischertechnik\ROBOPro /v ForceUpdate /t REG_DWORD /d 1 /f
Jetzt updated RoBoPro immer beim verbinden und flasht somit unsere cutom update.sh.
Wenn die Datei jetzt drauf ist stellen wir RoBoPro wieder zurück:

Code: Alles auswählen

reg add HKEY_CURRENT_USER\Software\fischertechnik\ROBOPro /v ForceUpdate /t REG_DWORD /d 1 /f
Vielleicht kann euch das helfen.

Raphael

P.S.: Diese reg-Keys könnte man auch als Batch-Datei oder reg-Datei bereitstellen, dass der Laie das auch mit zwei Mausklicks hinkriegt.

Antworten