Forum: Mikrocontroller und Digitale Elektronik mini2440 debian: keine Ausgaben auf 3,5" LCD


von Holger R. (holger-r)


Lesenswert?

Hallo,

ich habe ein min2440 mit 1GB NAND und 3,5" LCD.
Nachdem u-boot läuft habe ich debian lenny (von SD-Karte laufend) 
installiert. Das System an sich läuft so, wie ich es von meinen anderen 
Debian-Servern gewohnt bin. Leider habe ich es aber noch nicht 
geschafft, dass Ausgaben (reiner Text, allerdings mit 
ncurses-Unterstützung) auf dem LCD ankommen. Eine grafische Oberfläche 
brauche ich nicht, ist sogar eher hinderlich.
Kann mir hier jemand auf die Sprünge helfen? Den Artikel "Mini2440" habe 
ich gelesen - war für mich u.a. eine recht gute Unterstützung bei der 
Installation. Aus dem Abschnitt "Framebuffer" bin ich aber leider nicht 
ganz schlau geworden. Da fehlt mir noch Hintergrundwissen.

Gruß
Holger

von Andreas (Gast)


Lesenswert?

Du übergibst beim uboot:

console=/dev/tty0

nicht zu verwechseln mit:

console=/dev/SACtty0

dann sollten alle ausgaben auf dem LCD erscheinen.....

habs aber nicht mehr genau im kopf....

CU Andreas

von Holger R. (holger-r)


Lesenswert?

Danke für den Tipp, hat aber leider nichts gebracht.
Ich denke, ich habe inzwischen wohl ein Display-Problem:
Es wird nur das Backlight kurz eingeschaltet. Das war's.
Selbst die (FriendlyARM) Testprogramme bringen keine Ausgabe mehr auf 
das Display :-(

Gruß
Holger

von Andreas (Gast)


Lesenswert?

Hi,

werde heute abend mal kurz schauen...
Hast du ein T35 oder ein N35 display?

Das display wird übrigens vom Kernel initialisiert.
Beim uboot wird das display normalerweise nicht initialisiert deswegen 
kein bild...

CU Andreas

von Holger R. (holger-r)


Lesenswert?

Es ist ein T35.

Das merkwürdige ist halt, dass ich ja schon zwei-, dreimal den Start-Tux 
kurzzeitig zu Gesicht bekam. Aber nie solange wie von meinem "richtigen" 
Server gewohnt. Und die typischen Startmeldungen schon gar nicht (auf 
dem LCD).

Gruß
Holger

von Thomas R. (tinman) Benutzerseite


Lesenswert?

Holger Römer schrieb:
> Es ist ein T35.
>
> Das merkwürdige ist halt, dass ich ja schon zwei-, dreimal den Start-Tux
> kurzzeitig zu Gesicht bekam. Aber nie solange wie von meinem "richtigen"
> Server gewohnt. Und die typischen Startmeldungen schon gar nicht (auf
> dem LCD).

natürlich da das logo kommt vom uboot/supervivi und nicht kernel.

von Holger R. (holger-r)


Lesenswert?

Hmm, ich denke, ich gebe die richtigen Bootparameter an:

setenv bootargs root=/dev/mmcblk0p2 rootdelay=2 mini2440=1tb

Der Kernel ist nach dieser Anleitung gebaut: 
[[http://www.programmers-projects.de/release/kernel-2-6-33-fuer-mini2440-entwicklungsboard]]

Gruß
Holger

von Andreas (Gast)


Lesenswert?

1. Das Logo kommmt NICHT vom uboot! Es gibt beim uboot natürlich diese 
möglichkeit... welche aber im moment nicht benutzt wird... ich benutze 
folgendes Uboot: http://repo.or.cz/w/u-boot-openmoko/mini2440.git
alternative kann man auch das von der orginal DVD nehmen.

2. Das Logo kann im Kernel hinterlegt und bei der Kernelconfiguration 
ein oder ausgeschaltet oder auch ersetzt werden.

3. Du kannst dir die Meldungen des Kernels (welche normalerweise über 
die serielle schnittstelle zu sehen sind) auf auf das Display umleiten.

Als Tip:

http://wiki.linuxmce.org/index.php/Mini2440

die o.g. Seite hat mir sehr beim Einstieg geholfen.

Als Bootargs hab ich diese hier beim uboot hinterlegt:
setenv bootargs console=ttySAC0,115200 noinitrd init=/sbin/init 
mini2440=1tb

wenn du die abänderst in (in tty0 oder tty1 ich weiss es nicht mehr):
setenv bootargs console=tty1,115200 noinitrd init=/sbin/init 
mini2440=1tb

dann hast denn Kernel startup auf dem display.
die andern Parameter müssen auch passen (ich hab nen N35 display)

Ich gehe zumindest davon aus das Du ein Uboot auf dem Mini2440 am laufen 
hast, wenn nicht musst du bei der Kernelconfiguration diese Parameter 
als defaultparameter einstellen....

Viel Erfolg:

Andreas

von Andreas (Gast)


Lesenswert?

wenn du die abänderst in (in tty0 oder tty1 ich weiss es nicht mehr):
setenv bootargs console=tty1,115200 noinitrd init=/sbin/init
mini2440=1tb

hier brauchst du natürlich nicht die Baudrate angeben ... wäre blödsin 
sorry:


setenv bootargs console=/dev/tty1 noinitrd init=/sbin/init
mini2440=1tb

setenv bootargs console=tty1 noinitrd init=/sbin/init
mini2440=1tb

hab mein mini2440 gerade nicht am com port sonst würd ich schauen

CU Andreas

von Andreas (Gast)


Lesenswert?

Alternative fällt mir noch ein:

Du musst wenn du eine Shell auf dem Display und auf dem Comport haben 
willst natürlich auch den login prozess auf dem entwprechenden port 
spawnen:

Das steht dabei in der inittab aber achtung nicht die securetty 
vergessen...

CU Andreas

von Thomas R. (tinman) Benutzerseite


Lesenswert?

Andreas schrieb:
> 1. Das Logo kommmt NICHT vom uboot! Es gibt beim uboot natürlich diese
> möglichkeit... welche aber im moment nicht benutzt wird...

von wem nicht benutzt wird ? Habe hier mehrere s3cxxxx board von 
unterscheidlichen herstellern mit unterscheidlichen bootloadern/OS - und 
manche machen sogar nette gimicks weit weit bevor der kernel gestartet 
wird, daher MUSS es nicht nur vom kernel kommen.

von Andreas (Gast)


Lesenswert?

Hab ich doch gesagt... oder hast du meinen Thread falsch verstanden?

Die Quellen des mir zur verfügung stehenden Ubootes hab ich ja 
angegeben...
in diesem Uboot ist in der Standartkonfiguration kein Logo vorhanden.

CU Andreas

p.s. das war mein letzter Beitrag hier ... auf flamerrei hab ich keinen 
bock

www.friendlyarm.net

von Ziltoid (Gast)


Lesenswert?

mini2440=1tb ist für 7" Display
für mein 3,5 Display benutze ich mini2440=0tb

von K. J. (Gast)


Lesenswert?

Holger R. schrieb:
> Hallo,
>
> ich habe ein min2440 mit 1GB NAND und 3,5" LCD.
> Nachdem u-boot läuft habe ich debian lenny (von SD-Karte laufend)
> installiert. Das System an sich läuft so, wie ich es von meinen anderen
> Debian-Servern gewohnt bin. Leider habe ich es aber noch nicht
> geschafft, dass Ausgaben (reiner Text, allerdings mit
> ncurses-Unterstützung) auf dem LCD ankommen. Eine grafische Oberfläche
> brauche ich nicht, ist sogar eher hinderlich.
> Kann mir hier jemand auf die Sprünge helfen? Den Artikel "Mini2440" habe
> ich gelesen - war für mich u.a. eine recht gute Unterstützung bei der
> Installation. Aus dem Abschnitt "Framebuffer" bin ich aber leider nicht
> ganz schlau geworden. Da fehlt mir noch Hintergrundwissen.
>
> Gruß
> Holger

was meiste mit reinen text einfach igentwelche ausgaben das geht mit 
z.b.

echo "texttext" > /dev/tty0

wen du das bootlog haben möchtest geht das eigentlich ohne angaben in 
den ENVs vom Uboot.

Ansonsten mal bei http://www.mikrocontroller.net/articles/Micro2440 das 
micro/mini sind eigentlich zimlich gleich.

von Holger R. (holger-r)


Lesenswert?

@Ziltoid
habe ich ausprobiert, keine Änderung.

@all
Was passiert?
Ich schalte das Board ein, das Backlight des LCD geht kurz an, bleibt 
dann aber dunkel.

U-Boot Ausgabe:

U-Boot 1.3.2-mini2440 (Apr 27 2010 - 12:59:39)

I2C:   ready
DRAM:  64 MB
NOR Flash not found. Use hardware switch and 'flinit'
Flash:  0 kB
NAND:  1024 MiB
Found Environment offset in OOB..
USB:   S3C2410 USB Deviced
In:    serial
Out:   serial
Err:   serial
MAC: 08:00:2f:00:20:10
Hit any key to stop autoboot:  0

Im env ist folgendes gespeichert:
setenv bootargs root=/dev/mmcblk0p2 rootdelay=2 mini2440=0tb
setenv bootcmd 'mmcinit; fatload mmc 1:1 0x32000000 /uImage; bootm'
saveenv

Es ist egal, ob ich alles manuell starte oder U-Boot automatisch 
durchstarten lasse: das Backlight des LCD wird kurz (gefühlt ca. 1 Sek.) 
aktiviert, dabei sehe ich auch links oben den Start-Tux durchscheinen - 
und das war's dann an Ausgaben auf dem LCD. Es bleibt schwarz.
Es ist kein xserver installiert, da ich ja keine grafische Ausgabe 
benötige.
Ansonsten lief das Board als Debian-Server jetzt gut einen Monat lang 
ohne irgendwelche Probleme 24h am Tag durch. Verbrauch in knapp 33 
Tagen: rund 1,5 kWh

Gruß
Holger

von Imon (Gast)


Lesenswert?

Holger R. schrieb:
> Es ist egal, ob ich alles manuell starte oder U-Boot automatisch
> durchstarten lasse: das Backlight des LCD wird kurz (gefühlt ca. 1 Sek.)
> aktiviert, dabei sehe ich auch links oben den Start-Tux durchscheinen -
> und das war's dann an Ausgaben auf dem LCD. Es bleibt schwarz.
> Es ist kein xserver installiert, da ich ja keine grafische Ausgabe
> benötige.

Eins vorweg ich kenn dein Bord nicht,

aber wenn du Kurz denn Tux aufblinken siehst , scheinst du einen 
Framebuffer zu haben, d.h du solltest eine device /dev/fb0 haben.

versuch bitte mal folgendes :
1
dd if=/dev/urandom of=/dev/fb0

das sollte dazu führen das du "bunten Schnee" auf denn Display siehst.
1
dd if=/dev/zero of=/dev/fb0

löscht denn "schnee" wieder.

Das ist ein guter erster Test ob der Framebuffer über haupt will. Wenn 
du denn schnee siehst und er überall erscheint, dann musst du nur die 
Framebuffer console Aktivieren. Wenn nicht dann hast du ein Problem mit 
den Framebuffer und wir müssen uns erstmal keine gedanken um die Console 
machen.

von SandboxGangster (Gast)


Lesenswert?

AT Holger.r

Kann das sein das dir im Kernel die Backlite unterstützung b.z.w. die 
dazugehörigen ACPI events fehlen.

von Holger R. (holger-r)


Lesenswert?

SandboxGangster schrieb:
> Kann das sein das dir im Kernel die Backlite unterstützung b.z.w. die
> dazugehörigen ACPI events fehlen.

hmm, diese Frage tauchte bei mir beim Lesen der Antwort von Imom so im 
Unterbewußtsein auch auf... Ich hatte einen neuen Kernel erstellt, da 
ich NFS-Unterstützung benötigte. Aber ich bin mir eigentlich ziemlich 
sicher, dass ich in der Konfiguration nur den NFS-Part aktiviert habe. 
Alles andere so wie in der vorgegebenen Konfig.

Welcher Eintrag wäre der relevante für die Backlite-Unterstützung?

Gruß
Holger

(Testen kann ich erst heute Abend.)

von v66r (Gast)


Lesenswert?

Hi,

Kernel selbstcompiliert? Schau mal ob Video Mode Selection Support und 
Framebuffer Console support compiliert ist.

Gruß Flo

von Imon (Gast)


Lesenswert?

Und wenn du schon in der Kernelconfig bist dann sieh auch gleich ob die
Backlight Unterstüzung mit  eingestellt ist

von Imon (Gast)


Lesenswert?

Imon schrieb:
> Und wenn du schon in der Kernelconfig bist dann sieh auch gleich ob die
> Backlight Unterstüzung mit  eingestellt ist

Ups die Hälfte vergessen die Backlight Setting sind unter
Device Drivers  --->  Graphics support  ---> Backlight & LCD device 
support

Device Drivers  --->  Graphics support  ---> Framebuffer Console support

muss für die Konsole Aktiv sein

von Holger R. (holger-r)


Lesenswert?

Ich habe verschiedene Optionen getestet. Immer das selbe Ergebnis (wie 
oben). Nachfolgend mal der aus meiner Sicht relevante Teil der .config
(auf meinem LCD steht LCDT35-090818):

#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.34
# Fri Aug 13 20:49:55 2010
#
...
#
# Graphics support
#
# CONFIG_VGASTATE is not set
CONFIG_VIDEO_OUTPUT_CONTROL=y
CONFIG_FB=y
CONFIG_FIRMWARE_EDID=y
# CONFIG_FB_DDC is not set
# CONFIG_FB_BOOT_VESA_SUPPORT is not set
CONFIG_FB_CFB_FILLRECT=y
CONFIG_FB_CFB_COPYAREA=y
CONFIG_FB_CFB_IMAGEBLIT=y
# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
# CONFIG_FB_SYS_FILLRECT is not set
# CONFIG_FB_SYS_COPYAREA is not set
# CONFIG_FB_SYS_IMAGEBLIT is not set
# CONFIG_FB_FOREIGN_ENDIAN is not set
# CONFIG_FB_SYS_FOPS is not set
# CONFIG_FB_SVGALIB is not set
# CONFIG_FB_MACMODES is not set
# CONFIG_FB_BACKLIGHT is not set
CONFIG_FB_MODE_HELPERS=y
# CONFIG_FB_TILEBLITTING is not set

#
# Frame buffer hardware drivers
#
# CONFIG_FB_UVESA is not set
CONFIG_FB_S3C2410=y
# CONFIG_FB_S3C2410_DEBUG is not set
# CONFIG_FB_VIRTUAL is not set
# CONFIG_FB_METRONOME is not set
CONFIG_BACKLIGHT_LCD_SUPPORT=y
CONFIG_LCD_CLASS_DEVICE=y
# CONFIG_LCD_L4F00242T03 is not set
# CONFIG_LCD_LMS283GF05 is not set
CONFIG_LCD_LTV350QV=m
CONFIG_LCD_ILI9320=m
CONFIG_LCD_TDO24M=m
CONFIG_LCD_VGG2432A4=m
CONFIG_LCD_PLATFORM=y
CONFIG_BACKLIGHT_CLASS_DEVICE=y
CONFIG_BACKLIGHT_GENERIC=m
CONFIG_BACKLIGHT_PWM=m

#
# Display device support
#
CONFIG_DISPLAY_SUPPORT=m

#
# Display hardware drivers
#

#
# Console display driver support
#
# CONFIG_VGA_CONSOLE is not set
CONFIG_DUMMY_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
CONFIG_FONTS=y
CONFIG_FONT_8x8=y
# CONFIG_FONT_8x16 is not set
CONFIG_FONT_6x11=y
# CONFIG_FONT_7x14 is not set
# CONFIG_FONT_PEARL_8x8 is not set
CONFIG_FONT_ACORN_8x8=y
# CONFIG_FONT_MINI_4x6 is not set
# CONFIG_FONT_SUN8x16 is not set
# CONFIG_FONT_SUN12x22 is not set
# CONFIG_FONT_10x18 is not set
CONFIG_LOGO=y
# CONFIG_LOGO_LINUX_MONO is not set
# CONFIG_LOGO_LINUX_VGA16 is not set
CONFIG_LOGO_LINUX_CLUT224=y

Gruß
Holger

von Imon (Gast)


Lesenswert?

was hat mein dd Vorschlag gezeigt? hast du schnee sehen können oder war 
alles dunkel ?

von Imon (Gast)


Lesenswert?

Holger R. schrieb:
> # Automatically generated make config: don't edit
> # Linux kernel version: 2.6.34

was mir hierbei auffällt welche quellen benutzt du ?

ich habe gerade mal denn Kernel von 
git://repo.or.cz/linux-2.6/mini2440.git
ausgescheckt und wie in denn artikel weiter oben beschrieben und mit
1
 make kernelversion

gefragt was für eine Version das ist ich habe als Antwort 2.6.32-rc8 
erhalten. Du hast aber eine 2.6.34 Konfiguration, d.h diese Konfiuration 
hast du nicht mit denn Oben genannten sourcen gebaut.

kannst du uns sagen von wo du die sourcen hast und auch mal deine 
komplette Config als Anhang zur Verfügung stellen, denn es besteht 
zuminstens der Verdacht das mit denn gennannten git repro dein Display 
gehen würde und vielleicht nur beim dein Kernel ein treiber fehlt oder 
bei einen Update nicht mit genommen wurden ist.

von K. J. (Gast)


Angehängte Dateien:

Lesenswert?

Hi im Anhang mal meine config damit sollte alles gehen bis auf die ADCs 
und die OSS Emu für /dev/dsp ansonsten leuft alles auch Sound über alsa 
....

Ich entfehle auch den 2.6.32-rc8 zu benutzen.

von Holger R. (holger-r)


Lesenswert?

Der Hinweis auf die Kernel-Version hat mich ein wenig weiter gebracht.
Ich habe meinen Kernel von
http://www.programmers-projects.de/veroeffentlichung/kernel-2633-fuer-mini2440-entwicklungsboard 
bezogen. Wie ich jetzt feststellen mußte, ist er auf die Version 2.6.33 
zurück gegangen. (http://www.friendlyarm.net/forum/topic/1094#5719) Das 
ist mir leider entgangen. :-(
Gestern habe ich diese Version ausgescheckt, habe aber noch nicht den 
Kernel auf die SD-Karte für das Board gebracht. Der Test ist für heute 
Abend geplant. Ich werde berichten.

Gruß
Holger

von Holger R. (holger-r)


Angehängte Dateien:

Lesenswert?

Zuerst einmal Danke! So weit wie heute war ich unter Debian noch nie.

Status: mit Kernel 2.6.33 und unter Anlehnung der config von  K. J.
sehe ich jetzt das Logo und alle Boot-Meldungen auf dem LCD. Aber nicht 
ganz richtig. Wenn ich direkt frontal auf das Display schaue, dann ist 
alles "hell", schaue ich schräg drauf, kann ich Inhalte erkennen. (Siehe 
Bilder)

@Imon
dd habe ich durchgeführt. Es ist eine Veränderung zu sehen, allerdings 
kann ich nicht von "buntem Schnee" sprechen.

Gruß
Holger

von K. J. (Gast)


Lesenswert?

Hm das sieht nach nem inialisierungs fehler aus haste auch das richtige 
Display angegeben ? von dem 3,5" gibt es soweit ich weis zwei 
verscheidende.

von Imon (Gast)


Lesenswert?

Nach denn was du zeigt und die Aussage zum dd,

würde ich mich der Aussage falsch Initialisiert anschließen.

von kruemeltee (Gast)


Lesenswert?

Es macht allerdings (kaum) einen Unterschied ob du den Kernel für das 
N35 oder T35 Display konfigurierst/einstellst. Alles was passiert, ist, 
dass das Bild um ca 10px verschoben ist, wenn man das Falsche ausgewählt 
hat.

von Holger R. (holger-r)


Lesenswert?

Gestern habe ich zum einen verschiedene Kernelparamter probiert - keine 
Änderung des Zustandes. Das die Paramter an sich Wirkungs zeigen, konnte 
ich beim Paramter b(acklight) festellen, denn wenn ich den weggelassen 
habe, blieb auch das Display dunkel.

Dann habe ich mir den Kernel 2.6.32-rc8 geholt. Das Ergebnis blieb (in 
Bezug auf mein Display-Problem) das gleiche.

Wo kann ich die scheinbar offensichtliche falsche Initialisierung ändern 
bzw. rausfinden, wodurch sie verursacht wird?

Gruß
Holger

von Holger R. (holger-r)


Lesenswert?

Es funktionierte teilweise.
Ich habe wieder meinen Kernel 2.6.33 auf die SD-Card gespielt und das 
Board gestartet. Das Display war wie immer (also frontal nur hell, von 
schräg was zu sehen). Dann wurde durch den "Bildschirmschoner" das 
Backlight abgeschaltet. Also alles schwarz. Nun hatte ich aber eine 
USB-Tastatur angeschlossen, um debian herunterzufahren und als ich eine 
Taste drückte, glaubte ich kaum meinen Augen zu trauen: das Bild war so 
wie es sein sollte!
Ok. Also Neustart des Board's. Und siehe da, das Logo und die 
Start-Meldungen sehen sehr sauber aus. Noch ein Reboot. Alles sieht 
immer noch gut aus.
Gut, hält das jetzt an? Also Board wieder runterfahren, Strom raus, 
warten, einschalten... Schade. Zustand wie vorher. :-(

Gibt es dafür eine Erklärung? Wo soll ich denn jetzt suchen?

Nun ja, das Board läuft jetzt erst einmal mit dem 2.6.33-Kernel bis 
morgen Abend durch. Vielleicht kann ich den Zustand durch Anstecken der 
USB-Tastatur noch einmal wiederholen...

Gruß
Holger

von K. J. (Gast)


Lesenswert?

hi habs grade nicht wieder gefunden aber zum Thema Standby gibt es was 
im FriendlyARM Forum wie man das display wieder einschaltet ...

eigentlich solte auch eine der tasten funktionieren wen die auf den 
minis vorhanden sind (hab nen micro mit 7")

und dann gibs noch das Problem mit der 5V Spannungsversorgung wen die zu 
wenig Strom liefert und stromspitzen nicht schaft reagiert der ARM recht 
merkwürdig vielleicht ist das ja so was bei dir da das Display ja zu 
funktionieren scheint.

von Holger R. (holger-r)


Lesenswert?

Das mit den Tasten funktioniert. Wußte ich noch gar nicht. Die 
Display-Darstellung blieb allerdings fehlerhaft.

Stromversorgung möchte ich eigentlich ausschliessen. Ich habe ein 
Schaltnetzteil 27 W, max. 2250 mA (Reichelt: MW 3IP25GS).

Gruß
Holger

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.