@phi:
Schreibst Du den Rahmen des Wiki-Artikels? Ich setze meine Tipps usw. da
gerne rein, nur, um das allgemeine Blah-Blah vorweg ("Der Grasshopper
ist ein Board ...") zu schreiben habe ich keine Zeit (und keine Lust).
Christian wrote:
> Ich setze meine Tipps usw. da> gerne rein, nur, um das allgemeine Blah-Blah vorweg ("Der Grasshopper> ist ein Board ...") zu schreiben habe ich keine Zeit (und keine Lust).
Sowas brauchst du gar nicht, das Wiki soll ja kein Lexikon sein. Fang
doch einfach an zu schreiben was dir einfällt: AVR32 Grasshopper
@Werner B.:
> Das "setenv" hat generell ein Problem mit langen Zeilen.
Ab welcher Zeilenlänge? Ich scheine bisher noch nicht an das Limit
gestoßen zu sein.
> Ab welcher Zeilenlänge?
Das habe ich nicht genauer ausprobiert. Bin mal mit einem ARM-Board auf
das Problem gestossen und verwende set dem fast nur noch askenv.
Du brauchst nur Herrn Goggle nach "setenv askenv" zu fragen. Die ersten
zwei Teffer gleich auf AVRFREAKS mit STK1000 und NGW100.
A) Problem von Numen B. kling nach dem Problem #-|
B) Eine Umschreibung meiner Einstellung dazu: Wenn ich weiss dass dass
ich über die Landstrasse genauso schnell an meinem Ziel bin wie über die
(freie) Autobahn auf der vor einer Stunde ein Stau gemeldet war, biege
ich auf die Landstrasse ab. Egal ob die Autobahn 'möglicherweise' frei
sein könnte.
Ich wollte eher darauf hinaus: Wenn der Bug noch vorhanden wäre (was er
ja offenbar nicht mehr ist), dann wäre es sinnvoll, ihn zu suchen, zu
fixen und einen Patch dafür zu veröffentlichen.
Hallo,
eine Frage habe ich.
Hat von Euch Linuxgeeks ;-) evtl. Dropbear auf dem Grasshopper zum
laufen bewegt? Wenn ja würde ich mich über ein HowTo freuen.
Geht das überhaupt?
Danke schön.
@900ss:
Ich habe Dropbear einfach im Build-Root mit ausgewählt, compiliert und
die entsprechenden Dateien auf den Grasshopper kopiert. Wo hakt es denn
bei Dir?
Ich habe noch garnichts versucht. Ich wollte erstmal wissen, ob es
grundsätzlich geht. Dann muß ich mich wohl mal ransetzen und versuchen,
eine Version zu erstellen (ufff.... Linux.. da hab ichzwei linke Hände).
Habe noch nie mit configure, automake, etc..... gearbeitet. Mit MAKE
schon :-)
Nun ja, werde es die nächste Woche ab DO evtl. mal probieren.
Evtl. könntest Du mir Dein Image zur Verfügung stellen? Allerdings habe
ich keinen CP2102 auf meinem Board. D.h. die Ausgaben laufen dann
irgendwo hin. :-(
Danke erstmal.
900ss
Christian Z. wrote:
> Es muss ja nicht gleich das Root-FS-Image sein, ich kann Dir auch auch> das Binary von Dropbear zur Verfügung stellen, wenn Dir das lieber wäre.
Als ich mein letztes Posting abgeschickt hatte, ging es mir auch durch
den Kopf. Ich brauche sicher nur ein binary.
haben wollen :-))
Ja wenn Du es mir zu Verfügung stellst, evtl. ein kleines HowTo, wie ich
es in Betrieb nehmen muß?
Ich bin in der Lage, Dateien per wget auf mein Grasshopper zu laden.
Habe mal spaßeshalber eine kleine Webpage nach.../www kopiert um sie zu
testen. Das hat geklappt. Also soviel zu meinen Vorkenntnissen :-)
Danke schon mal.
900ss
Das dropbear-Binary ist momentan unter
http://www.chzsoft.com.ar/storage/dropbearmulti verfügbar. Du musst es
irgendwo hin (z.B. nach /usr/bin) kopieren und dann Softlinks ("ln -s
...") anlegen. Im Binary vorhanden ist Code für den SSH-Client, scp, den
SSH-Server und die Key-Verwaltung.
Eine Anleitung zu dropbear findest Du sicher im Netz.
So nun habe ich versucht, DROPBEAR in Betrieb zu nehmen.
Ich habe die Links angelegt und dann die Keys (SA,DDS) mit dropbearkey
erzeugt.
Mit dropbearkey -f keyfile -y habe ich mir den private key ausgeben
lassen.
Diesen habe ich dann PUTTY mitgegeben.
dropbear starte ich dann mit "dropbear -E -s". Das klappt, er meckert
auch nicht, dass er die Keyfiles nicht findet.
Wenn ich PUTTY dann starte fragt er nach Login name, ich sage 'root' und
dann bricht putty ab mit
PS: ich weis euch nicht wie es ist, wenn kein Passwort vergeben ist, ob
man sich da remote anmelden kann. Sollte eigentlich aus
Sicherheitsgründen nicht zulässig sein (Ausser bei w2k, dort gings
afaik). Zur Not kannste ja, wenn auch default nicht geht nen
Passworthash in den Grasshopper (etc/shadow???) kopieren, bei default,
aber beachte die Syntax.
Im Anhang ist das dropbear Start-Script vom NGW100. Da kann man
rauslesen welche Schritte zum Start notwending sind.
Noch ein Hinweis.
/usr/sbin/dropbear, /usr/bin/dropbearconvert und /usr//bin/dropbearkey
sind Softlinks auf /usr/sbin/dropbearmulti .
Guten Morgen,
gähn :-)
Schon Antworten. Danke. Also als default geht es auch nicht.
Danke für das Startscript, es hilft ein wenig, die Installation dann bei
mir zu vervollständigen. Allerdings das Starten u.s.w. von dropbear hab
ich schon richtig gemacht denke ich. Wenn ich mir das Script so ansehe,
dann habe ich wohl keine Fehler gemacht.
Ich habe nur ein Problem mit den Keys. Die liegen zwar an der richtigen
Stelle im Grasshopper, allerdings hab ich da wohl was falsch gemacht mit
den public/private keys die ich dann bei Putty verwende.
Nun vielleicht gibt es da ein schönes Howto? Hab gestern noch viel
Google gefragt aber so wirklich schlau bin ich nicht draus geworden.
Schönen Tag.
Hmmm... nun geht es. Habe es noch nicht so ganz verstanden, aber ich
habe mir jetzt noch einen Key mit puttyge generiert. Den private Key für
Putty genutzt, den Public Key auf den Grasshopper in
root.ssh/authorized_keys gespeichert (als openssh Format). Die
Dateirechte noch auf 744 gesetzt und nun funktioniert es. Ich bin platt.
dropbearkey habe ich auch vorher genutzt um den rsa und dss key zu
erzeugen.
Die Geschichte mit den Keys habe ich nich nicht begriffen. Ich dachte
EIN public key und EIN private key genügen. Kann mir evtl. jemand
erklären, wozu die von dropbear generierten keys sind und dann noch
zusätzlich die von putty generierten keys?
Danke schön.
Edit: Ach ja, danke schön für das dropbear binary an Christian. Sehr
nett :-)
@900ss:
Das ist schon länger her, aber meine Erinnerung sagt mir: Sowohl die
Clients als auch der Server haben jeweils eigene Keys, damit sie sich
gegenseitig authentifizieren können.
SiO2 wrote:
> Kannst ja auch erstmal die Ports scannen, ob ssh überhaupt läuft.
Geht doch schon (s.o.). Bin ganz begeistert. Wollte es hauptsächlich für
Port-Weiterleitung nutzen. Hier wo ich sitze ist der SSH-Port offen :-)
und der Rest außer HTTP/FTP zu.
Und sonst habe ich immer meinen PC laufen lassen. Das kann jetzt der
Grasshopper erledigen.
Frage:
Ist eigentlich /etc/inittab der richtige Ort, um dropbear automatisch zu
starten? Oder ist eine andere Stelle geeigneter?
> Ist eigentlich /etc/inittab der richtige Ort, um dropbear automatisch zu> starten? Oder ist eine andere Stelle geeigneter?
Der saubere Weg wäre ja über ein Skript /etc/init.d/ und einen Link in
/etc/rc.d/.
Danke für de Hinweis. Das inittab ist beim graben nach Infos das erste
gewesen, was mir über den Weg gelaufen ist. Inzwischen bin ich genau da
angekommen, was Du auch geschildert hast. Da ich aber absoluter Linux
Neuling bin, muß ich das Ganze immer doppelt prüfen, damit es dann auch
richtig wird.
Nun, ich werde das mal so probieren. Den Startablauf von Linux habe ich
noch nicht so verinnerlicht.
Der dropbear haut gut hin. Hab ihn heute schon mehrmals von der Ferne
genutzt :-)
Jetzt hab ich auch eine sinnvolle Aufgabe für den Grasshopper und mein
PC darf tagsüber schlafen :-)
Hallo Christian,
Könntest Du bitte etwas genauer beschreiben, wie Du den JTAG Programmer
verbunden hast ?
Netterweise hab ich mir meinen Grasshopper geschossen, sodaß ich keinen
Zugang mehr habe :-(
Gruß Sebastian
@Sebastian:
Einen Schaltplan meines JTAG-Adapters habe ich leider nicht. Ich habe
aber die Pinbelegung des Wiggler verwendet (siehe z.B. Abschnitt
"Wiggler" in http://www.mikrocontroller.net/articles/JTAG). Ich habe nur
die Leitungen TMS, TCK, TDI, TRST und TDO verwendet, auf einen Buffer
verzichtet und stattdessen 82 Ohm in Serie geschaltet. GND ist natürlich
durchverbunden.
Den Link zur Software hatte ich ja bereits gepostet, allerdings habe ich
damit den Grasshopper noch nicht beschrieben. (Mit meiner eigenen
JTAG-Software schon, aber die ist nicht veröffentlichungsreif.)
Hallo Christian,
Vielen Dank, das reicht mir an Infos, Ich habe nur die 20 Polige JTAG
Version gefunden und war mir nicht sicher, was ich alles Verbinden muß
...
Die Software hab ich mir schon runtergeladen und werde mal mein Glück
versuchen.
Ich hoffe, daß ich damit meinen Hopperchen wiederbeleben kann.
Gruß Sebastian
Ansonsten hab ich einen JTAG ICE MkII. Ich weiß nur nicht ob Du in
in der Nähe von Bremen wohnst. Dann würde ich ihn Dir wiederbeleben.
Oder per Post.
Falls es mit dem Wiggler klappt, sag mal Bescheid. Finde ich auch
interessant.
Wie gesagt: Ich habe mit meinem Simpelst-Adapter und meiner Software den
Flash des Grasshoppers gelesen, gelöscht und geschrieben. Das klappt.
Wenn man jetzt auch noch das Debug-Interface darüber zum Laufen
bekäme...
Hallo,
ES GEHT !
Der Grasshopper läßt sich bei mir mit avr32prog und dem "MinimalJTAG"
flashen
Es hat zwar etwa 45 Minuten gedauert aber egal...
Das war die gute Nachricht, die schlechte, irgendwas ist dabei
schiefgegengen :-(
Ich wollte den U-Boot, den Christian weiter oben am 18.04.2008 um 18:06
gepostet hat draufladen, der startet auch, funktioniert leider nicht
Hier ist die Kermit ausgabe:
Das ganze wiederholt sich, bis ich den Grasshopper vom Netz trenne.
Jetzt stellt sich die Frage, ist da beim Flashen was schiefgelaufen ?
Sollte ich es nochmal versuchen ?
Kann es sein, daß da irgendwelche Bits gekippt sind ?
@900ss D.,
vielen Dank für das Angebot, leider wohne ich am Niederrhein etwa 350 km
von Bremen entfernt, sonst würde ich das Angebot sofort annehmen.
Gruß Sebastian
Hallo,
Ich habe gerade nochmals versucht den Bootloader draufzuspielen.
Es geht!
Irgendwas muß beim erstem Mal falsch gelaufen sein, das spielt jetzt
keine Rolle mehr, hauptsache ich kann jetzt mit dem Grasshopper
connecten :-)
Vielen dank an Euch, den JTAG Adapter werde ich mir gut aufheben, man
weißt ja nie !
Gruß Sebastian
Hey das ist ja cool. Gut zu wissen. Ich kann mir zwar helfen, aber es
ist immer gut, eine Alternative zu haben. Und ich mag auch solch
einfache Interface.
>Und ich mag auch solch>einfache Interface.
Ja , es taugt aber wirklich nur als Notlösung.
Ich könnte wetten, daß Du mit Deinem JTAG ICE MkII weniger als 40
Minuten fürs U-Boot flashen brauchst ;-)
Gruß Sebastian
Hm, ich schaffe mit dem Simpelst-Adapter beim Schreiben ca. 200 Bytes/s,
damit dürfte U-Boot (128kiB) in gut 10 Minuten geschrieben sein (zzgl.
vorherigem Löschen der Sektoren). Das wäre dann sogar schneller als ein
JTAGICE mkII? Kann ich kaum glauben.
Wie gesagt, habe nicht direkt auf die Uhr geschaut, aber ich meine es
dauerte so lange. Im Moment habe ich gerade andere Prioritäten.
Sonst würde es mal ausprobieren.
Mal ne andere Frage: Was brauche ich eigentlich für einen Stecker für
die externe Spannungsversorgung? Leider ist auf dem Plan mit der
Bemaßung kein Durchmesser angeben...
Spannungsversorgung: Bei mir passt ein Hohlstecker mit r_a=5,5mm und
r_i=2,5mm. r_i=2,1mm dürfte auch gehen, so dick scheint mir der Stift in
der Buchse nicht. Polarität steht ja auf dem Board drauf.
Vorsicht: Wer noch eines der ersten Boards hat, bei dem C42 bestückt
ist, darf keinesfalls mehr als 10V anlegen.
Hallo,
Da mein Board wieder läuft habe ich mich ans Programmieren gemacht.
Leider muß ich feststellen, daß mein Wissen doch etwas beschränkt ist.
Als Übung wollte ich mal den Boardinternen Taster abfragen...
Und da fangen die Probleme schon an.
Ich habe das Demoprogramm etwas umgeschrieben, damit mir der Status von
Port A ausgegeben wird.
das klappt wiederum nicht, der Zugriff auf Port A wird
verweigert(Resource Busy) es kolidiert wahrscheinlich mit den LEDs
Treibern...
Dann habe ich den Kernel etwas geändert, so wie Christian hier
geschrieben hat http://forum.embedded-projects.net/viewtopic.php?id=338
Beim laden der Module wird aber nichts in /dev/input eingetragen und
mknod ergibt für mich auch keinen Sinn, wenn ich nicht weiß welche Major
u. Minor Nummer ich eintragen muß.
Kann mir jemand einen Tip geben, wo ich mich etwas einlesen kann ?
Gruß Sebastian
Hallo Christian,
danke, zwischendurch hab ich das auch selber rausgelesen, es steht
irgendwo in der Doku bei Input.
Wird die denn automatisch beim Laden der Treiber erstellt ?
Ich musste sie mit mknod erstellen.
Ein
ls -all /dev/input
ergibt dann
1
crw-r--r-- 1 root root 13, 64 Dec 31 2006 event0
Ich habe dann ein Miniprogramm geschrieben um es zu testen :
1
#include<linux/input.h>
2
#include<stdio.h>
3
#include<stdlib.h>
4
#include<unistd.h>
5
#include<fcntl.h>
6
#include<errno.h>
7
8
intmain(void){
9
intfd=-1;
10
charname[256]="unknown";
11
if((fd=open("/dev/input/event0",O_RDONLY))<0){
12
perror("event0 open");
13
exit(1);
14
}
15
if(ioctl(fd,EVIOCGNAME(sizeof(name)),name)<0){
16
perror("event0 ioctl");
17
}
18
printf("The device on /dev/input/event0 is %s\n",name);
19
close(fd);
20
return0;
21
}
leider ergibt das folgende Ausgabe
1
event0 open: No such device
Also stimmt hier irgendwas nicht :-(
Woran könnte das liegen ?
Gruß Sebastian
P.S. Ich hoffe, ich nerve nicht mit meinen Fragen,
Ich habe zwar Linuxerfahrungen, aber so "systemnah" hab ich noch nie
gearbeitet.
Also, /dev/input/event0 wird bei mir auch nicht automatisch erzeugt,
soweit kein Problem. Taucht denn in /sys/class/input nach dem Laden der
Module etwas auf?
haben die Zeilen mit <NULL> was zu sagen ?
Ach so meine rootfs Datei ist die, die nach dem bauen vom Toolchain
entstanden ist, allerdings mit der Änderung in btn.c
Gruß Sebastian
Ist vor dem Laden der Module schon ein Verzeichnis
/sys/devices/platform/gpio-keys vorhanden? Dann sollte angelegt werden,
nachdem btn.c modifiziert wurde.
Hallo Christian,
Nein so ein Ordner habe ich nicht erstellt, es geht auch nicht ein mkdir
erzeugt "no such file or directory" ???
Darf man da überhaupt was erstellen?
Ich dachte diese Struktur wird beim booten erzeugt ?
Naja, ich habe Event interface und GPIO Buttons fest in den Kernel
einkompiliert und es wird scheinbar alles richtig gestartet
beim booten:
1
input: gpio-keys as /class/input/input0
in /sys/devices/platform/ sieht es dann so aus:
1
at32_eic.0 atmel_usart.0 leds-gpio.0 pio.2
2
at32_pm.0 atmel_usart.1 macb.0 pio.3
3
at32_wdt.0 atmel_usba_udc.0 pdc.0 pio.4
4
at32ap700x_rtc.0 dmaca.0 physmap-flash.0 smc.0
5
atmel_pwm.0 gpio-keys pio.0 systc.0
6
atmel_twi.0 intc.0 pio.1 uevent
und der Zugriff auf die erstellte /dev/input/event0 erzeugt keine Fehler
mehr.
Hier nochmal der Ausschnitt aus /var/log/messages
Was mit jetzt auffällt, es sind keine Zeilen mit <NULL> mehr drin ?
Es stellt sich nur die Frage, warum es bei mir mit Modulen nicht klappt
?
Heut Abend habe ich etwas mehr Zeit, dann versuche ich endlich
vernünftig die Taste auszuwerten.
Gruß Sebastian
Du darfst in /sys/* natürlich keine Dateien/Verzeichnisse erzeugen,
meine Frage war ja, ob sie schon da sind. Der Code in btn.c erzeugt z.B.
/sys/devices/platform/gpio-keys.
Dein zuletzt geposteter Auszug aus /var/log/messages liest sich auf alle
Fälle ganz gut.
>Du darfst in /sys/* natürlich keine Dateien/Verzeichnisse erzeugen,>meine Frage war ja, ob sie schon da sind. Der Code in btn.c erzeugt z.B.>/sys/devices/platform/gpio-keys.
Ja /*Hust*/, dann habe ich Dich falch verstanden ;-)
Hab mich schon etwas gewundert...
Es scheint aber so zu funktionieren, wenn ich cat /dev/input/event0
ausführe
und auf die Taste drücke erscheinen im Terminal kryptische Zeichen, das
ist schon ein "gutes Zeichen" ;-)
Andere Frage, klappt das bei Dir mir dem nachladen der Module ?
Gruß Sebastian
Die Auswertung funktioniert :-)
Im Anhang ein Programm, das je nach dem , ob innerhalb einer Sekunde die
Taste gedrückt wurde eine 1 oder eine 0 auf der Konsole schreibt.
Jetzt muß ich das ganze nur noch sinvoll in ein Script packen, und schon
kann man per Tastendruck den httpd starten/stopen usw.
@Christian,
>Ja, bei mir klappt das mit den Modulen.
Hmm, dann ist bei mir was nicht richtig.
Gruß Sebastian
Hallo
Ich denke jetzt bin ich mit meiner Tastenproblematik Fertig.
Und zwar hab ich das Programm so abgeändert, daß es in einer
Endlosschleife läuft und bei jedem Tastendruck ein Program/Shellscript
ausführt.
Im Anhang der Quellcode
Ich freue mich über weitere Anregungen/Kritik (bin leider kein Profi auf
diesem Gebiet)
Gruß Sebastian
Hier nochmal das Kompilierte Programm für eben ausprobieren.
Es muß eine ausführbare Datei mit dem Namen button in /etc erzeugt
werden, die bei jedem Tastendruck ausgeführt wird.
Zum probieren hab ich solch ein Script gemacht
1
#!/bin/sh
2
3
i=`cat /sys/class/leds/pwrled\:red/brightness`
4
5
if[$i-eq 1 ]
6
then
7
`echo 0 > /sys/class/leds/pwrled\:red/brightness`
8
else
9
`echo 1 > /sys/class/leds/pwrled\:red/brightness`
10
fi
Damit läßt sich schön die Powerled toggeln.
Nochwas es müssen die Module
gpio-keys
evdev
geladen werden.
Eigentlich soll das Problemlos funktionieren, bei mir hat das leider
nicht geklappt und ich habe die Treiber fest in den Kernel eingebunden.
Noch ein Tip :
Hat man den Hopper am Router mit Internetzugang dran kann man sich mit
/usr/sbin/rdate time.fu-berlin.de
die Systemzeit einstellen.
Leider stimmt die Zeitzone noch nicht.
Das wird erledigt, indem man
CET-1CEST-2,M3.5.0/02:00:00,M10.5.0/03:00:00
in /etc/TZ
einträgt
Gruß Sebastian
Hallo,
ich habe mal ein paar Fragen zum Grasshopper:
Hat schon mal jemand den U-Boot von Christian getestet? Ich möchte
nämlich einen neuen U-Boot ohne Bug aufspielen, falls das Linux nicht
mehr booten sollte...
Und wie kann ich die mit 'make' erstellte AVR32 Toolchain zum
Kompilieren eigener Programme nutzen?
Was benutzt ihr für ein Netzteil für euren Grasshopper?
Hallo gast (Gast),
ja ich nutze den U-Boot von Christian, der funktioniert problemlos,
leider mußte ich mir dafür den minimal JTAG bauen, weil ich mir den
ganzen Flash geschossen habe ;-)
>Und wie kann ich die mit 'make' erstellte AVR32 Toolchain zum>Kompilieren eigener Programme nutzen?
Unter ICnova_base/build_avr32/staging_dir/bin findest Du alles was Du
brauchst.
Ich hab mit noch das AVR32Studio installiert.
>Was benutzt ihr für ein Netzteil für euren Grasshopper?
Ich habe hier ein Steckenetzteil von der Müllkippe, achte aber darauf,
daß Du nicht mehr als 10 V anlegst.
Gruß Sebastian
[quote]Unter ICnova_base/build_avr32/staging_dir/bin findest Du alles
was Du
brauchst.
Ich hab mit noch das AVR32Studio installiert.[/quote]
Hast du vielleicht ein funktionierendes Makefile? Schließlich müssen ja
auch der Pfad für die Libraries und Includes stimmen...
Nein, Makefile habe ich nicht.
Ich habe mir einfach die $PATH Variable um den Pfad zu den avr32-gcc
erweitert und schon findet avr32Studio alles, was es braucht ;-)
Gruß Sebastian
Ich habe mir mal das AVR32 Studio für Linux heruntergeladen, aber leide
rfindet er die nötigen Executables nicht, obwohl ich
ICnova_base/build_avr32/staging_dir/bin zum Pfad hinzugefügt habe. In
ICnova_base/build_avr32/staging_dir/bin sind bei mir folgende Dateien:
avr32program: <not found> (Need version 3.0 or newer)
2
avr32gdbproxy: <not found> (Need version 3.0 or newer)
3
avr32-gdb: <not found> (Need version 6.7 or newer)
4
avr32-g++: <not found> (Need version 4.2 or newer)
5
avr32-gcc: <not found> (Need version 4.2 or newer)
6
avr32-as: <not found> (Need version 2.17 or newer)
7
avr32-nm: <not found> (Need version 2.17 or newer)
8
9
You are using the Linux version of the AVR32 Utilities and AVR32/GNU Toolchain.
10
11
There are multiple problems with dependent executables or path settings. Please consult the user guide for details.
12
13
The actual search path used is: /usr/local/bin:/usr/bin:/usr/X11R6/bin:/bin:/usr/games:/opt/gnome/bin:/opt/kde3/bin:/usr/lib/mit/bin:/usr/lib/mit/sbin:/usr/lib/qt3/bin:/mount/share/bin:/usr/sbin/:/sbin/:xxxxxx/icnova_base_cd/ICnova_base/build_avr32/staging_dir/bin/
Wo liegt das Problem? Warum findet er die Toolchain nicht?
Swiw ist avr32-gcc die Variante für Standalone-Anwendungen und
avr32-linux-gcc die für Linux-Anwendungen. Nun kenne ich mich mit dem
AVR32 Studio nicht aus, aber kann man das konfigurieren, ob es Linux-
oder Standalone-Anwendungen bauen soll?
Hallo gast (Gast),
Christian hat recht, die Dateien, die angemeckert werden brauchst Du
nicht.
Klicke die Fehlermeldung einfach weg, erzeuge Dir ein neues Linuxprojekt
und schreib zum Testen ein "Hello World" Programm .
Gruß Sebastian
Danke für eure Antworten! Das Kompilieren funktioniert mit AVR32 Studio
völlig problemlos, die fehlenden files werden anscheinend wirklich nur
für standalone Applikationen benötigt...
Hallo,
könnte bitte jemand eine Kopie von dem U-Boot ohne Bug von Christian
anhängen? Der Link oben (http://www.chzsoft.com.ar/storage/u-boot.bin)
funktioniert leider nicht mehr :-(
Hallo Leute!
Also ich hab mein Grasshopper Board gestern bekommen, und versuche seit
dem verzweifelt es in Betrieb zu nehmen. Ich habe gelesen, daß ich nicht
der einzige bin, bei dem die Virtuelle Schnittstelle auf USB nicht
funktioniert.
Mein Computer findet zwar einen USB Controller aber wie soll ich mich
jetzt mit Putty mit dem Board verbinden?
Ich weiß ja noch nicht einmal, wie die IP des Boards ist!
Zitat : "....hier kann direkt nach dem Einschalten der Boot-Vorgang
beobachtet werden"
Wie denn bitte?
Eine Serielle Schnittstelle bekomme ich auch nicht angezeigt!
Gibt es irgentwo ein Tutorial, das sich mit dem Thema beschäftigt, oder
könnt ihr mir vielleicht helfen?
Hallo,
Ist Putty nicht telnet,ssh Ersatz für Windows ?
Du brauchst ein Terminalprogramm, das auf 115200 Baud 8/N/1 eingestellt
ist.
Dein Computer muß einen Com Port erkennen, nachdem Du den Hopper
angeschlossen hast, und damit verbindest Du Dich auch.
Sonst schau mal unter diesem Link nach
http://www.embedded-projects.net/index.php?page_id=237
viel Glück Sebastian
PuTTY kann auch als serielles Terminalprogramm verwendet werden.
Voraussetzung ist natürlich, dass die serielle Schnittstelle des
Grasshoppers erkannt wird.
Wimre musste ich den Treiber für die USB-seriell-Bridge von Silabs
installieren, damit der Com-Port zur Verfügung gestellt wurde.
Wunderbar! Das Grasshopper läuft! Nachdem ich die Virtual Serial Port
Adapter Software von Eltima aufgespielt habe, kann ich über Putty mit
den in der oberen Beschreibung angegebenen Einstellungen wunderbar auf
das Board zugreifen. Danke leute!
Hat von euch schon jemand einen SD-Kartenslot an das Grasshopper
angebaut oder kann in Bezug auf Erweiterungen etwas empfehlen?
Die Pinleisten an meinem Board sind noch nicht drin, d.h. ich muß die
wohl nachträglich einlöten. Leider.
Ich will außerdem versuchen, das gesamte Board über Hochkapazitätsakkus
am laufen zu halten, am besten wäre es, wenn man die auch gleich über
USB mitaufladen könnte. Hat damit jemand schon Erfahrungen gesammelt?
Hallo Mathias,
Ich habe eine SD Karte am Grasshopper angeschlossen, leider funktioniert
sie noch nicht :-(
Hier Beitrag "Re: I2C am Grasshopper mit 5V" haben wir kurz
drüber gesprochen, vielleicht hilft es Dir weiter, ich bin noch nicht
dazu gekommen weiter zu machen.
Gruß Sebastian
Grasshopper mit SD-Karte funktioniert, aber nicht mit Kernel den das
mitgelieferten Buildroot erzeugt. Das habe ich auch versucht, bin aber
über das laden des Kernels mit dem aktualisierten U-Boot nicht
hinausgekommen. Das Linux erkennt die SD-Karte nicht.
Also habe ich mir den aktuellen Release Cadidate vom "offizellen" Atmel
Buildroot 2.2.0-RC4 ( http://www.atmel.no/buildroot/source/ )
installiert, für das NGW100 konfiguriert und dann bauen lassen. Dann im
Verzeichnis
buildroot-avr32-v2.2.0-rc4/project_build_avr32/atngw100/linux-2.6.25.6/a
rch/avr32/boards/atngw100 "nur" noch die Änderungen für den Grasshopper
eingepflegt (Ok, das ICNova Verz. aus dem ICNova Buildroot genommen und
Änderungen für das andere Buildroot reingefummelt). Nach einem "make
linux26-menuconfig" (ohne Änderungen, nur um den rebuild anzustoßen)
baut man sich dann den neuen Kernel.
Da der Grasshopper nur 8MB Flash hat, habe ich das gesamte System auf
der SD Karte liegen.
Im U-Boot
set bootcmd 'mtdparts default;chpart nor0,2;mmcinit;ext2load mmc 0:1
0x10400000 /boot/uImage;bootm'
set bootargs 'console=ttyS0 root=/dev/mmcblk0p1 rootdelay=1
mtdparts=physmap-flash.0:128k(boot)ro,64k(env)ro,-(root)'
Die bootargs sind so kompliziert weil das Layout des Boot-Flash beim
Grasshopper anders ist als beim NGW100 (U-Boot:ENV:Root statt
U-Boot:Root:ENV).
Das "neue" Board-Verzeichnis habe ich angehängt.
Ein "Diry Hack" aber es geht hervorragend.
Hallo Werner,
Super, danke für die Antwort.
Könntest Du vielleicht noch kurz beschreiben, wie man "Änderungen für
das andere Buildroot reinfummelt" ?
Das wäre sehr hilfreich und vor allem was hast Du mit Card detect und
Write Enable Pins von der Karte gemacht ?
Ich will mein System garnicht auf der Karte ablegen, sondern die Karte
nur in System mounten als fat oder ext2, sollte doch machtbar sein oder
?
Gruß Sebastian
Also ich werde jetzt erst einmal alle verfügbaren Informationen über das
Grasshopper zusammenzutragen, auch Threadinformationen. Ich will
versuchen, alles zu bündeln, um eine Umfassende Dokumentation zu
erzeugen, damit hier das Rad nicht zwanzigmal erfunden wird.
Ich glaube es würde viele User freuen, wenn sie nicht endlos stöbern
müßten, um an geeignete Infos dranzukommen.
Sozusagen die Essenz über das Grasshopper-Wissen zusammenzutragen.
Das kleine Projekt wird mich jetzt erst mal auslasten, wenn ich fertig
bin, werd ich den Link mal posten.
Mfg
Mathias Unknown wrote:
> Ich will> versuchen, alles zu bündeln, um eine Umfassende Dokumentation zu> erzeugen, damit hier das Rad nicht zwanzigmal erfunden wird.> Ich glaube es würde viele User freuen, wenn sie nicht endlos stöbern> müßten, um an geeignete Infos dranzukommen.
SUPER! Ich freue mich drauf, auch wenn ich erst im Herbst dazu komme,
mit dem Grasshopper weiterzumachen. Vorher steht leider viel anderes auf
dem Zettel :-(
Jetzt schon mal ein großes DANKE dafür.
Das "alte" Buildroot und das Atmel Buildroot 2.2 verwenden verschiedene
uClibc Versionen. Diese sind leider inkompatibel zueinander. Mit einem
aus dem Atmel Buildroot 2.2 gebauten uImage werden die im Flash
existierenden Programme vermutlich nicht zusammenarbeiten. darum
benötigt man das zugehörige Root Image. Das vom Buildroot 2.2 gebaute
Root Image enthält aber kein /usr Dateisystem, da das beim NGW100 in
einem anderen Flashbaustein liegt den es auf dem Grasshopper nicht gibt.
Das Umzubauen erfordert viel mehr Auswand als einfach die paar
Anpassungen an den Konfigurationsfiles auf der SD Karte, so wie es
meine momentane "Lösung" macht.
P.S.
Wie man dem U-Boot die SD Karten beibringt findet ihr in
http://forum.embedded-projects.net/viewtopic.php?id=401
Wo kann man eigentlich günstig an Kleinteile wie z.B. Pins, oder
vielleicht passende Pin-Leisten kommen, die man für den Grasshopper
verwenden kann. Finde im Internet äußerst wenig davon.
Hallo leute,
auch ich musste bitter dafür büßen dass ich mein grasshopper wegen der
10V Kondensatoren zurückgeschickt hab (HTTP hat funktioniert, als ersatz
bekam ich ein board mit dem falschn PHY ic drauf....
Da ich nicht auf in-circuit warten wollte hab ich mein board wie von
Christian (Gast) beschrieben umgebaut:
bootscreen auszug:
1
eth0: Atmel MACB at 0xfff01800 irq 25 (00:1f:e5:00:01:29)
als ich dann zum ersten mal das LAN- kabel einsteckte erschien folgende
Meldung:
1
$ eth0: link up (100/Full)
.... und siehe da... ich kann meinen Router anpingen freu
1
$ ping 192.168.2.1
2
PING 192.168.2.1 (192.168.2.1): 56 data bytes
3
64 bytes from 192.168.2.1: seq=0 ttl=64 time=2.6 ms
4
64 bytes from 192.168.2.1: seq=1 ttl=64 time=0.9 ms
auch ich musste die richtige mac einmalig mit U-boot setzen und mehrmals
versuchen den saveenv befehl erfolgreich auszuführen...
Vill. hilfts dem ein oder anderen seinen mut zu sammeln und..........
:-)
Mit freundlichem Gruß
Mainster
Ich hoffe das es echt bald eine richtige Doku für den Grasshopper gibt,
mir raucht schon der Kopf vom suchen :)
Hab derzeit das Problem das ich PortD nicht richtig ansteuern kann.
pin_mask: 0xffffffff
oe_mask: 0xffffffff
wenn ich nun in /dev mit "echo 0xfffffff > gpio0" meine angeschlossenen
test LEDs anschalten will gehen zwar ein paar an aber nicht alle.
Oder kann man gar nicht 4Bytes gleichzeitig übergeben?
Würde mich freuen wenn mir jemand sagen kann wie ich den Kompletten Port
auf High setzen kann :)
LG Benedict
Nach langem rumprobieren hab ich es geschafft die Pins anzusteuern, aber
nur mithilfe eines C Programmes.
Was mich wundert, der zugriff mit C Streamfunktionen funktioniert
einwandfrei. Mit C++ Streamfunktionen hab ich es allderings nicht
hinbekommen.
Im Anhang befindet sich mein Code, vllt kann mir jemand sagen warum es
nicht funktioniert.
LG Benedict
AH vielleicht ist mein Problem auch hier besser?!
Ich hab wegen dem Touchcontroller die atmel_spi.c und atmel_spi.h im
Linux-Driver Ordner ersetzt. Leider habe ich jetzt folgenden Fehler beim
kompilieren. :(
1
drivers/spi/atmel_spi.c: In function 'atmel_spi_probe':
2
drivers/spi/atmel_spi.c:768: error: 'struct spi_master' has no member named 'mode_bits'
Hallo,
Die TSLIB-Programme (ts_test...) brauchen ja ein /dev/input/event0. Aber
wie wird der erzeugt? Muss ich da irgendwas mit "mknod /dev/input/event0
..." machen?
An meinen Grasshopper hab ich ein ADS angeschlossen. Ein "cat
/sys/devices/platform/atmel_spi.0/spi0.0/pen_down" sagt mir eine "1"
wenn ich den Touch berühre.
Ein "cat /proc/bus/input/devices" listet:
I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="ADS784x Touchscreen"
P: Phys=spi0.0/input0
S: Sysfs=/class/input/input0
U: Uniq=
H: Handlers=
B: EV=b
B: KEY=400 0 0 0 0 0 0 0 0 0 0
B: ABS=1000003
Wei bekomme ich jetzt ein "/dev/input/event0" Gerät hin?
Grüsse
Uwe