Community-Firmware für den TXT

Community-Firmware (cfw), Selbstbaucontroller (TX-Pi, ftduino, usw.), usw.
Forumsregeln
Bitte beachte die Forumsregeln!
LarsKusch
Beiträge: 54
Registriert: 21 Apr 2015, 19:03
Wohnort: Oberfranken
Kontaktdaten:

Re: Community-Firmware für den TXT

Beitrag von LarsKusch » 10 Mai 2016, 18:46

MasterOfGizmo hat geschrieben:
LarsKusch hat geschrieben: Und die "rootfs"Datei heißt anderes als im Tutorial!
(rootfs.tar)
Ja, sie hat einen anderen Namen, weil es eine andere Datei ist. Du brauchst wie im Wiki beschrieben die rootfs.img, die widerum ein Symlink auf rootfs.squash ist.
Aber: Wir haben extra die Release-Version für Leute wie Dich, die mit dem Build-System Probleme haben. Es macht relativ wenig Sinn, wenn Du da jetzt diverse Dinge probierst, die Du nicht verstehst und bei denen wir dann doch wieder Support leisten müssen. Genau um das zu vermeiden gibt es ja die Release-Version. Dein Nachteil ist natürlich, dass Du nicht immer die aktuellste Version hast. Aber das ist doch besser als nichts, oder?
1.Welche Datein müssten jetzt auf die SD-Karte kopiert werden?
2.Die aktuelle Version (0.9) hat ein par Fehler die mich teilweise stark stören!!!
3.Es ist ein einmaliger Aufwand in den Eintrag
https://github.com/ftCommunity/ftcommun ... croSD-card zu verändern! Man müsste es machen und dann ist es für alle für immer da!
Lars
Zuletzt geändert von LarsKusch am 11 Mai 2016, 06:40, insgesamt 1-mal geändert.

TiniTech
Beiträge: 77
Registriert: 07 Jan 2016, 10:30
Wohnort: Hamburg

Re: Community-Firmware für den TXT

Beitrag von TiniTech » 10 Mai 2016, 21:58

LarsKusch hat geschrieben:4. Es wäre ein einmaliger Aufwand in den Eintrag
https://github.com/ftCommunity/ftcommun ... croSD-card zu verändern! Man müsste es machen und dann wäre es für alle für immer da!
Lars
Was gehau möchtest du denn da ergänzt haben? Unter der Überschrift "Simple Layout" (https://github.com/ftCommunity/ftcommun ... of-sd-card) steht doch genau die Antwort auf deine Frage. Da sind die Dateinamen alle aufgelistet und es ist das Archiv mit dem funktionsfähigen Build verlinkt.

Auch nach deinem Build müsste im output-Verzeichnis eine rootfs.img zu sehen sein, die du (unter Linux) direkt kopieren kannst - bei mir hat das zumindest dazu geführt, dass der Link aufgelöst wurde und die rootfs.img als "echte" Datei auf der Karte landete.

LarsKusch
Beiträge: 54
Registriert: 21 Apr 2015, 19:03
Wohnort: Oberfranken
Kontaktdaten:

Re: Community-Firmware für den TXT

Beitrag von LarsKusch » 11 Mai 2016, 06:38

Lieber MasterofGizmo
Entschuldigung dass ich gestern so unfreundlich gegenüber dir war! Es wird nicht mehr vorkommen!
TiniTech hat geschrieben: Was gehau möchtest du denn da ergänzt haben? Unter der Überschrift "Simple Layout" (https://github.com/ftCommunity/ftcommun ... of-sd-card) steht doch genau die Antwort auf deine Frage. Da sind die Dateinamen alle aufgelistet und es ist das Archiv mit dem funktionsfähigen Build verlinkt.
Auch nach deinem Build müsste im output-Verzeichnis eine rootfs.img zu sehen sein, die du (unter Linux) direkt kopieren kannst - bei mir hat das zumindest dazu geführt, dass der Link aufgelöst wurde und die rootfs.img als "echte" Datei auf der Karte landete.
Das werde ich noch testen ich hatte es zuerst(beim simple Layout) aber mit den Ansbach advanced layout hatte ich es davor probiert und MasterofGizmo meinte doch dass man mit den Daten noch etwas anstellen müsste?!
Dass fände ich noch sinnvoll für die die mir mitentewickeln wollen.
Dass kopieren auf "simple Layout have ich nur auf Windows probiert.

LarsKusch
Beiträge: 54
Registriert: 21 Apr 2015, 19:03
Wohnort: Oberfranken
Kontaktdaten:

Re: Community-Firmware für den TXT

Beitrag von LarsKusch » 12 Mai 2016, 16:05

Liebe Entwickler,
nochmals Entschuldigung bezüglich den Beleidigungen!
ich habe es heute getestet indem ich auf einem Ubuntu 15.10 die roofts.img uaf die SD-Karte kopieren wollte, aber es hat folgenden fehlfer angezigt:

Fehler beim Kopieren von »rootfs.img«.
Beim Kopieren der Datei nach /media/ubuntu/FT-CW ist ein Fehler aufgetreten.
Das Dateisystem unterstützt keine symbolische Verknüpfungen

fdisk -l liefert folgendes Ergebnis für die SD-Karte: ("simple layout")
Gerät Boot Start Ende Sektoren Size Id Typ
/dev/sdd1 2048 31293439 31291392 14,9G c W95 FAT32 (LBA)
Was mache ich falsch????
Liebe Grüße,
Lars

TiniTech
Beiträge: 77
Registriert: 07 Jan 2016, 10:30
Wohnort: Hamburg

Re: Community-Firmware für den TXT

Beitrag von TiniTech » 12 Mai 2016, 21:39

Du versuchst da, einen symbolischen Link auf die Speicherkarte zu kopieren. Das geht technisch nicht, weil das Dateisystem FAT32 SymLinks nicht kennt (daher die Fehlermeldung) - und es ist auch nicht sinnvoll, weil der Link ins Leere zeigen würde sobald die Karte im TXT steckt.

Jetzt hast du zwei Möglichkeiten:
1) Rausfinden, wo der Link hinzeigt und diese Datei kopieren und umbenennen: wenn du also im Images-Verzeichnis auf dem Build-System

Code: Alles auswählen

ls -l
eingibst, siehst du

Code: Alles auswählen

rootfs.img -> rootfs.squashfs
. Siehe da: wenn du die rootfs.squashfs auf die Karte kopierst und dann umbenennst in rootfs.img klappt schon alles.

2) Dem Kopierbefehl mitgeben, dass er SymLinks auflösen und stattdessen den Inhalt der verlinkten Datei kopieren soll. Das habe ich nicht probiert, aber ergoogelt müsste das gehen, indem du cp mit der Option -L aufrufst.

Bevor ich jetzt aber diese Erläuterung ins Wiki schreibe, die Frage an Richard: Warum wird da überhaupt ein Symlink angelegt und nicht einfach die rootfs.squashfs umbenannt?
Ich habe bei mir grade die "ftcommunity-TXT/board/fischertechnik/TXT/post-image.sh" (in der der SymLink angelegt wird) so geändert, dass stattdessen die Datei gleich umbenannt wird. Das funktioniert auch bei wiederholten builds und auch, wenn der SymLink schon da ist, so dass ich diesmal im abendlichen Übermut direkt eine Änderung im Repository vorgeschlagen habe.

jona2004
Beiträge: 149
Registriert: 10 Jun 2011, 22:30

Re: Community-Firmware für den TXT

Beitrag von jona2004 » 12 Mai 2016, 21:59

Hallo Lars,
Ich versuche mal Dir zu helfen (Ohne Gewähr, da ich im moment wenig Zeit habe das selbst auszuprobieren und auch mit dem advanced layout arbeite und den .tar file entpacke)
rootfs.img ist ein symbolisches link (ein Verweis) auf die datei rootfs.squashfs.
Den Unterschied kannst Du sehen, wenn Du "ls -l " in der output directory unter Ubuntu machst.
Das FAT32 filesystem unterstützt aber keine symbolischen Links, und genau das sagt die Fehlermeldung.
Also ist m.E. das Readme an der Stelle nicht ganz korrrekt. Wenn meine Aussage stimmt könnte das bitte jemand korrigieren.

Wenn Du ein bischen im Internet weitersuchst, findest Du bei Wikipedia, dass squashfs ein " freies (GPL), komprimiertes Dateisystem für GNU/Linux-Betriebssysteme, welches nur lesbar ist. SquashFS komprimiert Dateien, Inodes und Verzeichnisse, und unterstützt zur besseren Komprimierung Blockgrößen bis zu 1 Mebibyte. " ist.

Wenn Du Dir den .zip file vom offiziellen Release 0.9 anschaust, siehst Du darin ein File rootfs.img, das in etwa die Größe des rootfs.squashfs in Deiner output directory vom eigenen built haben sollte. (Ist bei mir der Fall ich baue auch selber)

Ich wuerde jetzt statt des rootfs.img den rootfs.squashfs rüberkopieren und den dann in rootfs.img umbennen. Unter LINUX mit dem mv Befehl aber das weisst Du ja sicher.
Antwort könnte sicher kürzer sein aber vielleicht hilft Dir das Dich ein bischen selbst schlau zu machen.
In dem Sinne hoffentlich klappt es.

Sorry habe gerade gesehen, dass wir ein "race condition" hatten und TiniTech im gleichen Sinne genatwortet hat. Dann muss es ja klappen
Grüße Joachim

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

Re: Community-Firmware für den TXT

Beitrag von richard.kunze » 12 Mai 2016, 23:31

TiniTech hat geschrieben:Bevor ich jetzt aber diese Erläuterung ins Wiki schreibe, die Frage an Richard: Warum wird da überhaupt ein Symlink angelegt und nicht einfach die rootfs.squashfs umbenannt?
Weiss ich gar nicht mehr so genau - kam mir damals irgendwie sinnvoller vor als es umzubenennen, zu kopieren oder einen Hardlink drauf zu legen. Eventuell wollte ich vermeiden, dass durch das umbenennen Buildroot dazu gebracht wird bei jedem "make"-Lauf das Squashfs-Image neu zu bauen. Aber das macht es sowieso, von daher ist das auch egal...

Und ich hab schlicht nicht dran gedacht dass da jemand deswegen beim Kopieren Probleme bekommen könnte.
TiniTech hat geschrieben:Ich habe bei mir grade die "ftcommunity-TXT/board/fischertechnik/TXT/post-image.sh" (in der der SymLink angelegt wird) so geändert, dass stattdessen die Datei gleich umbenannt wird. Das funktioniert auch bei wiederholten builds und auch, wenn der SymLink schon da ist, so dass ich diesmal im abendlichen Übermut direkt eine Änderung im Repository vorgeschlagen habe.
Gute Idee - ich habs grade übernommen.

LarsKusch
Beiträge: 54
Registriert: 21 Apr 2015, 19:03
Wohnort: Oberfranken
Kontaktdaten:

Re: Community-Firmware für den TXT

Beitrag von LarsKusch » 16 Mai 2016, 07:30

Liebe Entwickler,
heute habe ich die Community-Firmware komplett neu gebildet,
und habe sie auf die SD-Karte kopiert (Name: FT)
Aber er bootet trotzdem nicht d.h. er durchlauft die Zone bei welcher die RGB-LED blinkt und bleibt dannach stehen (bootokonfigurationsfehler sind ausgeschloßßen da es mit der 0.9 funktioniert)
Nun noch die Datein von meiner SD-Karte:
https://onedrive.live.com/redir?resid=C ... =folder%2c

TiniTech
Beiträge: 77
Registriert: 07 Jan 2016, 10:30
Wohnort: Hamburg

Re: Community-Firmware für den TXT

Beitrag von TiniTech » 16 Mai 2016, 11:01

Lieber Lars,

das scheint ein Problem mit deinem Build-System zu sein. Bei mir lief's gerade problemlos durch und das Ergebnis bootet. Meine rootfs.img ist aber größer als die, die hochgeladen hast. Das spricht für Fehler im Build-Prozess, die du anhand der Ausgabe finden kannst. Dazu z.B. die Ausgabe in eine Datei umleiten und mit Grep durchsuchen. Gute Lerngelegenheit, Einstieg z.B. hier: https://wiki.ubuntuusers.de/Shell/Umleitungen/

Du wirst da selbst auf Fehlersuche gehen müssen, denn allgemeinen Support für Linuxprobleme kann jedenfalls ich hier nicht leisten. Daher gibts die fertigen Builds zum runterladen.

Weil ich grade Vergleichen die (derzeit aktuelle) 0.9-11 auch gebaut habe, die bei mir fuktioniert, enthalte ich sie Dir nicht vor:
https://www.dropbox.com/sh/8rhdnbul2f19 ... 25hza?dl=0

Viel Erfolg!

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

Re: Community-Firmware für den TXT

Beitrag von ski7777 » 16 Mai 2016, 13:52

Erst einmal ein dickes Lob an TiniTech, dass er ab und zu aktuelle dev-Builds bereitstellt.
Ich kann jetzt nicht sagen, ob das Build von Tinitech nicht 100%ig sauber ist, jedoch bekomme ich beim testen meines update Scrpits immer noch Fehler:

Code: Alles auswählen

./hello.py
Traceback (most recent call last):
  File "./hello.py", line 25, in <module>
    raw_data = urllib.request.urlopen('https://api.github.com/repos/ftCommunity/ftcommunity-TXT/releases').read().decode()
  File "/usr/lib/python3.4/urllib/request.py", line 161, in urlopen
  File "/usr/lib/python3.4/urllib/request.py", line 463, in open
  File "/usr/lib/python3.4/urllib/request.py", line 486, in _open
  File "/usr/lib/python3.4/urllib/request.py", line 441, in _call_chain
  File "/usr/lib/python3.4/urllib/request.py", line 1252, in unknown_open
urllib.error.URLError: <urlopen error unknown url type: https>
Das deutet auf einen Fehler im urllib hin. Dies funktioniert aber mit

Code: Alles auswählen

wget --no-check-certificate  https://api.github.com/repos/ftCommunity/ftcommunity-TXT/releases
.
Urllib wäre natürlich etwas eleganter.

Hier mal noch der volle Code. Bei den rm und mkdir Sachen können können natürlich Fehler kommen, da sie schon bzw. nicht mehr existieren:

Code: Alles auswählen

#! /usr/bin/env python3
# -*- coding: utf-8 -*-
#

import sys, os, os.path, time, urllib.request, json
#from PyQt4.QtNetwork import *
#from TxtStyle import *

downloadzip = "update.zip"
sdcardbase = "/media/sdcard/"
extractdir = "update_extract"
olddir = "update_rollback"
required_file = "rootfs.img"
curreentver = os.popen("cat /etc/fw-ver.txt").read()

#Cleanup files
os.system("rm " + sdcardbase + extractdir + "/*")
os.system("rm " + sdcardbase + downloadzip)
#create Folders
os.system("mkdir " + sdcardbase + olddir)
os.system("mkdir " + sdcardbase + extractdir)
#check whether simple layout is used
required_file_exsits = os.path.exists(sdcardbase + required_file)

raw_data = urllib.request.urlopen('https://api.github.com/repos/ftCommunity/ftcommunity-TXT/releases').read().decode()
all_releases = json.loads(raw_data)
##filter out to latest release
latest_release = all_releases[0]
##Getting version number
release_version = latest_release['tag_name']
release_version = release_version.replace("v","")
print ("Repo version" + release_version)
##Getting download link
assets = latest_release['assets']
assets_count = -1
content_type = ''
while content_type != 'application/zip':
	assets_count = int(assets_count) + 1
	#if assets_count > (len(assets) + 1):
	#	print("No valid download link found! Contact the developer!")
	#	exit(0x01a)
	file_info = assets[assets_count]
	content_type = file_info['content_type']
	dl_link = file_info['browser_download_url']
#print('assets_count: ' + str(assets_count))
#print('DL: ' + dl_link)
if required_file_exsits != True:
	print ("Abort! No simple Layout")
	exit("Abort! No simple Layout")

#check whether we use the current version
if release_version != curreentver:
	print ("Update")
	os.system("wget -O " + sdcardbase + downloadzip + " --no-check-certificate " + dl_link)
	print ("This can take a wile! Go and grep a coffe")
	os.system("unzip " + sdcardbase + downloadzip + " -d " + sdcardbase + extractdir)
	os.system("mv " + sdcardbase + "am335x-kno_txt.dtb" + " " + sdcardbase + olddir + "/am335x-kno_txt.dtb")
	os.system("mv " + sdcardbase + "rootfs.img" + " " + sdcardbase + olddir + "/rootfs.img")
	os.system("mv " + sdcardbase + "uImage" + " " + sdcardbase + olddir + "/uImage")
	os.system("mv " + sdcardbase + extractdir + "/am335x-kno_txt.dtb" + " " + sdcardbase + "am335x-kno_txt.dtb")
	os.system("mv " + sdcardbase + extractdir + "/rootfs.img" + " " + sdcardbase + "rootfs.img")
	os.system("mv " + sdcardbase + extractdir + "/uImage" + " " + sdcardbase + "uImage")
	print ("Update finished! TXT will reboot soon!")
	time.sleep (1.5)
	os.system("/sbin/poweroff")
	os.system('/bin/echo "msg Shutting down... When the blue light switches off boot the TXT again!" | /usr/bin/nc localhost 9000')
Raphael

P.S. Kann die ftc Gui jetzt root oder nicht?

TiniTech
Beiträge: 77
Registriert: 07 Jan 2016, 10:30
Wohnort: Hamburg

Re: Community-Firmware für den TXT

Beitrag von TiniTech » 16 Mai 2016, 19:53

Das SSL-Problem liegt wohl tatsächlich an meinem Build - seit Richard SSL für Python3 aktiviert hat, habe ich keinen Clean Build mehr gemacht.

Wie ich der Diskussion dazu entnehme, geht's aber auch ohne: https://github.com/ftCommunity/ftcommun ... 6aa18d2fa5

Und wie du hier lesen kannst, ist der root-Zugang von Haus aus deaktiviert: viewtopic.php?f=8&t=3505&p=24940#p24940
Dein Skript wird sich also erst um dessen Einrichtung kümmern müssen, dann kann's von Python aus weitergehen. Wie, das wäre noch rauszufinden.

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

Re: Community-Firmware für den TXT

Beitrag von ski7777 » 16 Mai 2016, 20:10

Vielleicht könnte jemand von euch für mich builden, da meine Buildmaschienen immer Fehler bringen.

Raphael

P.S. Ich bevorzuge das simple LAyout

TiniTech
Beiträge: 77
Registriert: 07 Jan 2016, 10:30
Wohnort: Hamburg

USB-to-RS232-Adapter für ft:c-TXT

Beitrag von TiniTech » 21 Mai 2016, 18:47

Ich würde mich gerne mal daran versuchen, unter der Community-Firmware mein altes Intelligent Interface anzusteuern. Problem dabei: Ich finde kein passendes Kabel, das am TXT unter der community-Firmware erkannt wird.
Gibt es irgendwo eine Liste, welche USB-to-Serial-Chips von dem Buildroot-Linux erkannt werden bzw. welche Module ich einfach aktivieren kann und dann einkompilieren?

Vielleicht habe ich auch einfach nicht verstanden, wie das Kabel unter Linux erkannt wird - nach dem einstecken taucht ein neues Gerät auf, wenn ich lsusb aufrufe, aber unter /dev/ tut sich nichts, insbesondere taucht kein ttyUSB0 auf und die Ausgabe von lsmod bleibt auch gleich, egal ob das Kabel eingesteckt ist oder nicht.

Ich habe hier einen Adapter mit einem PL-2303-HX und einen mit einem HL-340 (der HL-340 wäre mir der liebste, denn er steckt in einem fertig konfektionierten Kabel).

Etwas eingeschränkt bin ich in der Auswahl, weil das Intelligent Interface am Serial-Port "echte" RS232-Pegel, erwartet i.e. +/-10V (im Interface ist ein MAX232-IC verbaut als Schnittstellentreiber).

Welchen Tipp habt ihr mir zum weiteren Vorgehen?

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

Re: Community-Firmware für den TXT

Beitrag von ski7777 » 21 Mai 2016, 19:06

@TiniTech:
Der TXT hat ja ein internes serial. Du könntest dir einen 3,3 auf 12V Adapter bauen.

Nach etwas testen auf dem TXT, WIndows und Ubuntu, habe ich festgestellt, dass das ft-robo-snap auf dem TXT nicht läuft (kein py 2.7, kein BaseHTTPServer), auf Widows nicht läuft (mit py 2.7 und dem BaseHTTPServer --> immer Error 403 und 404) und auf eine Ubuntu VM läufts dann :D . Man könnte das ganze villeicht integrieren und in einer APP einfach aktivieren und deaktivieren (sodass das als Backround Prozess läuft).

Raphael

P.S. Um an meiner Update App weiter schreiben zu können bräuchte ich ein funktionierendes Build mit diesen komischen Sonderfunktionen und eien möglichkeit einer App root-Rechte zu geben.

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

Re: USB-to-RS232-Adapter für ft:c-TXT

Beitrag von MasterOfGizmo » 21 Mai 2016, 20:54

TiniTech hat geschrieben:Welchen Tipp habt ihr mir zum weiteren Vorgehen?
Mal den Richard fragen, ob er ein paar gängige USB/Serial-Chips in der Kernel-Config aktivieren kann. Ich will ihm da ungern reinpfuschen, der Kernel war bisher sein Baustelle.

Oder: Einen User-Space-Treiber verwenden, wie ich es für den RoboLT und den WeDo ja auch mache. Für den pl2303 scheint es sogar was in Python zu geben: https://pypi.python.org/pypi/pyftdi/0.5.0
Arduino für fischertechnik: ftDuino http://ftduino.de, ftDuino32 http://ftduino.de/32

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

Re: Community-Firmware für den TXT

Beitrag von richard.kunze » 21 Mai 2016, 22:23

TiniTech hat geschrieben:Ich würde mich gerne mal daran versuchen, unter der Community-Firmware mein altes Intelligent Interface anzusteuern. Problem dabei: Ich finde kein passendes Kabel, das am TXT unter der community-Firmware erkannt wird.
Gibt es irgendwo eine Liste, welche USB-to-Serial-Chips von dem Buildroot-Linux erkannt werden bzw. welche Module ich einfach aktivieren kann und dann einkompilieren?
Du kannst alle Treiber verwenden, die von Linux unterstützt werden. Mit

Code: Alles auswählen

make linux-menuconfig
rufst Du die Kernel-Konfiguration auf, und mit

Code: Alles auswählen

make linux-update-defconfig
kannst Du die geänderte Kernel-Konfiguration dann als Default speichern.

Achtung: Wenn Du das machst, musst Du darauf achten, dass CONFIG_INITRAMFS_SOURCE in der neuen Default-Konfiguration nicht geändert wird (das wird beim Build automatisch passend gesetzt, und wenn es in der Default-Konfiguration bereits vorhanden ist geht nach einem "make clean" der Build schief). Am einfachsten geht das mit

Code: Alles auswählen

git add -p
git commit
nach dem Anpassen der Konfiguration, das "git add -p" fragt interaktiv ab welche Änderungen zum commit übernommen werden sollen und da läßt man dann die Änderung an CONFIG_INITRAMFS_SOURCE einfach weg.
TiniTech hat geschrieben:Vielleicht habe ich auch einfach nicht verstanden, wie das Kabel unter Linux erkannt wird - nach dem einstecken taucht ein neues Gerät auf, wenn ich lsusb aufrufe, aber unter /dev/ tut sich nichts
Da fehlt der Treiber - in der bisherigen Konfiguration ist kein USB-nach-seriell-Konverter aktiviert.
TiniTech hat geschrieben:Ich habe hier einen Adapter mit einem PL-2303-HX und einen mit einem HL-340 (der HL-340 wäre mir der liebste, denn er steckt in einem fertig konfektionierten Kabel).
Ich habe eben eine (hoffentlich) passende Konfiguration auf Github gestellt. Mit meinem PL-2303-basierten 3.3V-USB-nach-seriell-Adpater hier funktioniert das, für den HL-340 (den hab ich selbst nicht) müsste laut Google der Treiber für den Winbond CH341 zuständig sein, den hab ich auch mal aktiviert.

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

Re: Community-Firmware für den TXT

Beitrag von richard.kunze » 21 Mai 2016, 22:39

ski7777 hat geschrieben: Der TXT hat ja ein internes serial. Du könntest dir einen 3,3 auf 12V Adapter bauen.
Das wird so ohne weiteres wohl nicht funktionieren, weil per Default auf der seriellen Schnittstelle die Konsole läuft. Support für USB-nach-seriell-Konverter ist deutlich simpler :-)
ski7777 hat geschrieben:Nach etwas testen auf dem TXT, WIndows und Ubuntu, habe ich festgestellt, dass das ft-robo-snap auf dem TXT nicht läuft (kein py 2.7, kein BaseHTTPServer), auf Windows nicht läuft (mit py 2.7 und dem BaseHTTPServer
Dass es mit der Community-Firmware (noch) nicht läuft ist klar, dazu muss man ft-robo-snap auf Python 3.x portieren. Für die Original-Firmware gibts unter http://ftcommunity.de/data/downloads/so ... _fttxt.zip ein Python 2.7, und damit läuft ft-robo-snap auch.

Windows hab ich hier keins, da kannst Du ja vielleicht mal schauen was genau schiefläuft und wie Du es zum Laufen bringst.
ski7777 hat geschrieben:Man könnte das ganze villeicht integrieren und in einer APP einfach aktivieren und deaktivieren (sodass das als Backround Prozess läuft).
Ist geplant, aber dazu brauchen wir erstmal ein vernünftiges Konzept wie wir diese Art Dienste sauber einbinden.
ski7777 hat geschrieben:P.S. Um an meiner Update App weiter schreiben zu können bräuchte ich ein funktionierendes Build
Dann solltest Du vielleicht mal rausfinden was an Deiner Build-Umgebung kaputt ist. Mit einer funktionierenden Build-Umgebung ist das dann grade mal ein "make" und etwas Wartezeit weit weg...
ski7777 hat geschrieben:und eine möglichkeit einer App root-Rechte zu geben.
Das geht per "sudo". Lies Dich da mal ein...

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

Re: Community-Firmware für den TXT

Beitrag von ski7777 » 22 Mai 2016, 21:18

Nach langem denken, programmieren , denke, verwerfen, denken, programmieren... habe ich ft-robo-snap jetzt TXT-fähig gemacht.
Dia App wird ganz normal als .zip installiert. Da die zip ca. 25 MB hat, dauert das hochladen und entpacken bis zu 5 Minuten. Auf dem TXT erscheint nun das ft-robo-snap-Icon. In der App kann man jetzt auswählen, ob ft-robo-snap im Autostart liegen soll oder nicht. Tatsächlich wird nur die datei ftrobosnap-autostart.info erstellt bzw. gelöscht. In der App ist ein zweite python script dabei, welches beim booten gestartet werden soll. Dieses erstellt eine kleine .html-Datei, um auf die ft-robo-snap Seite zu kommen und startet den ft-robo-snap-Webserver.
Ich würde in das manifest reinschreiben:

Code: Alles auswählen

autoexec: ftrobosnap-autostart.py
Und beim booten soll dann ein Script alle manifests parsen und die entsprechenden Dateien starten.

Raphael

P.S.: Das ft-robo-Snap lässt sich unter "local Application Pages" abrufen
P.P.S.: Hier der Download Link: https://www.dropbox.com/s/y7n1ijrz9p6zq ... b.zip?dl=0

TiniTech
Beiträge: 77
Registriert: 07 Jan 2016, 10:30
Wohnort: Hamburg

Re: Community-Firmware für den TXT

Beitrag von TiniTech » 22 Mai 2016, 22:03

Vielen Dank für die Infos! Jetzt funktionieren beide meiner USB-to-Serial-Konverter (zumindest werden sie vom System erkannt).

Allerdings fehlt noch was, und zwar für Python das Serial-Modul und ferner in der Nutzertabelle muss "ftc" noch in die Gruppe dialout, weil das die Gruppe von ttyUSB0 ist (und nicht die Gruppe tty).
Diese Änderungen habe ich bei mir auch schon erfolgreich eingebaut und meinem lokalen Repository nach Richards Beschreibung mit git add -p und git commit bekannt gemacht.

Danach habe ich aber erst mal aufgehört - denn als nächstes käme ja wohl ein "git push" - und alle wären ohne Rückfrage mit meinen Änderungen beglückt, weil ich ja dank Wiki-Zugriff Schreibrechte auf das Repository habe!?
Das wollte ich dann erstmal nicht ohne Rücksprache machen.

Wie bekomme ich es denn hin, dass meine Änderungsvorschläge in einen Pull Request gepackt werden? Muss ich da vorher einen lokalen branch anlegen?
Meinen ersten Pull-Request habe ich über die Web-Oberfläche angelegt, weil ich da nur eine Datei geändert habe. Jetzt ging das aber nicht mehr so selbsterklärend, weil ich an der Paketkonfiguration und der Nutzertabelle Änderungen vorgenommen habe...

TiniTech
Beiträge: 77
Registriert: 07 Jan 2016, 10:30
Wohnort: Hamburg

Re: Community-Firmware für den TXT

Beitrag von TiniTech » 22 Mai 2016, 22:14

@ski7777:
Nicht schlecht!
Sehe ich das richtig, dass du die Funktionsfähigkeit dadurch hergestellt hast, indem ein komplettes Python 2.7 mit in der App steckt?
Das kann man sicher so machen - ideal finde ich das aber irgendwie nicht...

Antworten