Skip to content

Serielle Konsole UART2

Angeheftet Verschoben Hardware
  • Hier mal die Info's sammeln zur seriellen Konsole.

    • Baudrate: 1500000
    • Data bits: 8
    • Parity: N
    • Stop bits: 1

    Quelle: http://opensource.rock-chips.com/images/f/f9/RK3399_Linux_Debain_V1.1_Development_Guide170620.pdf

    0_1526196275573_Rockpro64 Pi-2 Connector ver0.2.png

    Es sieht so aus, das es auf den SOC's von Pine64 keinen separaten Steckplatz für die serielle Konsole gibt, so wie ich das von den Bananen her kenne. Man nutzt wohl direkt den UART2 Anschluss des Expansions Steckplatzes. Da hätten wir dann:

    Die rote Ader nicht anschließen!

    • Nr. 6 GND - schwarz
    • Nr. 8 UART2_TX - weiß
    • Nr. 10 UART2_ RX - grün

    Update vom 18. März 2019

    Seit dem Image 0.7.14 stört die Verbindung an Pin 10 das Booten des ROCKPro64, wenn dieser mit einem WiFi-Modul und einer PCIe-Karte bestückt ist. Das entfernen der Verbindung löst das Problem, man hat dann aber nur noch lesend Zugriff und kann keine Kommandos über die Konsole absetzen! Aber, das sollte das kleiner Problem sein. Die Entwickler sind informiert, keine Ahnung ob man das Fixen kann.

    0_1526803326819_konsole3.jpg

    Als Gedankenstütze, vom ROCK64 https://forum.pine64.org/showthread.php?tid=5008

    Damit sollten die vorhandenen USB-Adapter genauso wie bei den Bananen funktionieren!

    Achtung!

    Durch die schnelle Übertragungsrate kommt es bei verschiedenen Adaptern zu Darstellungsfehlern. Ein Adapter bei mir funktioniert nicht, fehlerhafte Darstellung. Mein billigster Adapter funktioniert, einwandfreie Darstellung.

    Also, wenn ihr Probleme habt, einfach mal einen anderen Adapter ausprobieren. Die anderen Angaben oben funktionieren!

    Tools zum Flashen

  • Ich habe ja einige Adapter ausprobiert, habe jetzt eine ordentliche Sammlung davon, aber habe jetzt einen gefunden der mir wohl alles anzeigt 😉

    Problem bei vielen Adaptern scheint die hohe Übertragungsrate zu sein. Wenn ihr als Ausgabe nur Müll bekommt, könnt ihr den Adapter direkt an die Seite legen, korrekter Anschluss vorausgesetzt!

    Einen Adapter den ich jetzt die ganze Zeit benutzt hatte, war folgender.

     Bus 003 Device 017: ID 10c4:ea60 Cygnal Integrated Products, Inc. CP210x UART Bridge / myAVR mySmartUSB light
    

    Ging, hatte aber das Problem das beim ersten Start die Ausgaben des U-Boots nicht vernünftig angezeigt werden. Wenn man mit den Platinen rumspielt, ist das sehr unvorteilhaft.

    Ok, nächster Versuch

    Bus 003 Device 016: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter
    

    Und der zeigt jetzt auch den U-Boot vernünftig an. Benutzt wird folgendes Linux.

    rock64@rockpro64:~$ uname -a
    Linux rockpro64 4.4.126-rockchip-ayufan-239 #1 SMP Sun May 27 18:38:24 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux
    

    Ausgabe

    channel 0 training pass!
    
    channel 1 training pass!
    
    change freq to 800MHz 1,0
    
    ch 0 ddrconfig = 0x101, ddrsize = 0x2020
    
    ch 1 ddrconfig = 0x101, ddrsize = 0x2020
    
    pmugrf_os_reg[2] = 0x3AA1FAA1, stride = 0xD
    
    OUT
    
    U-Boot SPL board init
    
    
    
    U-Boot SPL 2017.09-g03a332b (May 27 2018 - 18:34:10)
    
    booted from SD
    
    Trying to boot from MMC2
    
    NOTICE:  BL31: v1.3(debug):d98d16e
    
    NOTICE:  BL31: Built : 15:03:07, May 10 2018
    
    NOTICE:  BL31: Rockchip release version: v1.1
    
    INFO:    GICv3 with legacy support detected. ARM GICV3 driver initialized in EL3
    
    INFO:    Using opteed sec cpu_context!
    
    INFO:    boot cpu mask: 0
    
    INFO:    plat_rockchip_pmu_init(1151): pd status 3e
    
    INFO:    BL31: Initializing runtime services
    
    WARNING: No OPTEE provided by BL2 boot loader, Booting device without OPTEE initialization. SMC`s destined for OPTEE will return SMC_UNK
    
    ERROR:   Error initializing runtime service opteed_fast
    
    INFO:    BL31: Preparing for EL3 exit to normal world
    
    INFO:    Entry point address = 0x200000
    
    INFO:    SPSR = 0x3c9
    
    
    
    
    
    U-Boot 2017.09-g03a332b (May 27 2018 - 18:34:23 +0000), Build: jenkins-linux-build-rock-64-239
    

    So muss das sein. 🙂

    Mach ich selten, aber um es anderen etwas einfacher zu machen hier ein Amazon Link.

    0_1527938581023_Adapter_bearbeitet2.jpg

    Anschluss

    ROCKPro64 - Adapter

    • GND (6) - GND
    • TX (8) - RX
    • RX (10) - TX

    Zu Pin 10 bitte das Update im ersten Beitrag beachten!

    Die Brücke des Adapters steckt auf VCC / 3V3 und der Anschluss 5V ist frei. Das ist wohl ein Spannungsausgang, den man wahlweise auf 3V3 oder 5V schalten kann, den wir aber nicht benötigen!

    Die Einstellungen der seriellen Schnittstelle findet ihr im Eingangsthread.

    Ihr könnt natürlich, wenn ihr euch einen ROCKPro64 bestellt, direkt einen USB-Adapter mitbestellen!
    https://www.pine64.org/?product=padi-serial-console
    Ich setze mal voraus, das der funktioniert.

  • @FrankM
    Der anschluss 10 RX auf dem Rockpro64 V2.1 und warscheinlich auch anderen da das auf deiner Seite irgendwo erwähnt wurde muss beim booten frei sein.

    Es sieht so aus als ob der Prozessor darüber Spannung bekommt da der TX pin vom adapter "high" gezogen wird da scheint ein fehler in dem Layout oder Prozessor zu sein so das eine versorgung durch diesen pin auch "Rückwärts" funktioniert.

    Sehen kann man das wenn man GND und den pin 10 belegt, Spannung auf das Bord gibt und dann wieder trennt. Danach bleibt die Power LED leicht am glimmen. Nur anstecken des Serial converters reicht da nicht, dabei leuchtet die LED nicht auf. Außerdem geht das auch nur mit 5V Logic Level sonst kommt nicht genug an der LED an um es optisch zu erfassen das müsste man dann Messen, ist aber in jedem fall so nicht richtig.

    Sven

  • Ich mache das seit dem ersten Tag so, noch nie Probleme mit gehabt.

    Das mit der Rückspannung ist mir auch schon aufgefallen.

  • @tux_on_tour

    Hallo Sven,

    ich muss mich zu dem Thema noch mal äußern.

    Du hattest Recht! 👏

    Seit dem Image 0.7.14 (wifi & pcie) hatte ich das Problem das der ROCKPro64 nicht mehr booten möchte. Ein entfernen von Pin 10 löste das Problem.

    Vielen Dank nachträglich!!

    Nachteil, man kann von der Konsole aus nichts mehr machen!

    Ich werde das in meinen Anleitungen entsprechend ändern!

  • Es gibt Berichte im IRC, das es bei einigen auch mit der Verbindung zu Pin 10 geht. Vielleicht auch abhängig vom Adapter!? Im Zweifel einfach mal ausprobieren.

  • @FrankM
    Hallo, ich bin noch ganz unerfahren mit Pi's.
    Wenn ich jetzt eine Physische verbindung mit einer USB-TTL UART Konsole habe,
    wie stelle ich da eine Verbindung her?
    Ich habe Linux auch auf meinem Rechner drauf und bin nicht ganz begriffstuzig, was Konsolen angeht.
    Vielen Dank

    Cri

  • Ich verweise mal auf einen Artikel auf einer Webseite von mir, der Einsteiger Niveau hat.
    https://frank-mankel.de/wichtig/serielle-konsole

    Wenn es dann noch Probleme gibt, einfach fragen.

    Und beachte bitte, das wir hier nicht über PIs schreiben, sondern über ROCKPros. Da könnte es kleine Unterschiede geben. https://www.raspberrypi.org/documentation/configuration/uart.md

  • ROCKPro64 - Release 0.10.6 Was geht?

    Angeheftet ROCKPro64
    1
    0 Stimmen
    1 Beiträge
    385 Aufrufe
    Niemand hat geantwortet
  • Serielle Konsole UART2 (2)

    Angeheftet Hardware
    1
    0 Stimmen
    1 Beiträge
    212 Aufrufe
    Niemand hat geantwortet
  • 0 Stimmen
    1 Beiträge
    471 Aufrufe
    Niemand hat geantwortet
  • Armbian für den ROCKPro64

    Angeheftet Armbian
    1
    0 Stimmen
    1 Beiträge
    518 Aufrufe
    Niemand hat geantwortet
  • ROCKPro64 Armbian Image - erster Test

    Verschoben Armbian
    13
    0 Stimmen
    13 Beiträge
    2k Aufrufe
    FrankMF

    Erster dicker Fehlschlag mit Armbian 😞

    Heute versucht mein NAS mit Armbian aufzusetzen. Raid einbinden usw. kein Problem. Als es dann an Restic und GO ging war es vorbei mit lustig. Pakete zu alt, Quellen eingebunden und nur noch Fehler. Hmm!?

    Da ich nach zwei Stunden keine Lust mehr hatte, habe ich das erst mal auf Eis gelegt. Manchmal ist es besser an einem anderen Tag noch mal von vorne anzufangen.

    Nun läuft das NAS wieder mit

    rock64@rockpro64v_2_1:~$ uname -a Linux rockpro64v_2_1 4.19.0-rc4-1071-ayufan-g10a63ec6c2a2 #1 SMP PREEMPT Mon Oct 1 07:33:40 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux

    So schlecht läuft das ja nicht, wenn denn mal die USB3 Schnittstelle vernünftig laufen würde.

    Update: Manchmal muss man es auch richtig machen 🙂 https://forum.frank-mankel.org/topic/420/rockpro64-armbian-go-restic-installieren

  • ROCKPro64 - RP64.GPIO

    Angeheftet Verschoben Hardware
    6
    0 Stimmen
    6 Beiträge
    6k Aufrufe
    FrankMF

    Hallo zusammen,

    da ich weiß das dieser Artikel recht beliebt ist, wollen wir den heute mal aktualisieren. Vieles aus den vorherigen Beiträgen passt noch. Es gibt aber kleine Anpassungen.

    Hardware ROCKPro64v21. 2GB RAM Software Kamils Release 0.10.9 Linux rockpro64 5.6.0-1132-ayufan-g81043e6e109a #ayufan SMP Tue Apr 7 10:07:35 UTC 2020 aarch64 GNU/Linux Installation apt install python

    Danach laden wir das Projekt

    git clone https://github.com/Leapo/Rock64-R64.GPIO

    PIN Nummern anpassen

    cd Rock64-R64.GPIO/R64 nano _GPIO.py

    Datei ergänzen

    # Define GPIO arrays #ROCK_valid_channels = [27, 32, 33, 34, 35, 36, 37, 38, 64, 65, 67, 68, 69, 76, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 96, 97, 98, 100, 101, 102, 103, 104] #BOARD_to_ROCK = [0, 0, 0, 89, 0, 88, 0, 0, 64, 0, 65, 0, 67, 0, 0, 100, 101, 0, 102, 97, 0, 98, 103, 96, 104, 0, 76, 68, 69, 0, 0, 0, 38, 32, 0, 33, 37, 34, 36, 0, 35, 0, 0, 81, 82, 87, 83, 0, 0, 80, 79, 85, 84, 27, 86, 0, 0, 0, 0, 0, 0, 89, 88] #BCM_to_ROCK = [68, 69, 89, 88, 81, 87, 83, 76, 104, 98, 97, 96, 38, 32, 64, 65, 37, 80, 67, 33, 36, 35, 100, 101, 102, 103, 34, 82] ROCK_valid_channels = [52,53,152,54,50,33,48,39,41,43,155,156,125,122,121,148,147,120,36,149,153,42,45,44,124,126,123,127] BOARD_to_ROCK = [0,0,0,52,0,53,0,152,148,0,147,54,120,50,0,33,36,0,149,48,0,39,153,41,42,0,45,43,44,155,0,156,124,125,0,122,126,121,123,0,127] BCM_to_ROCK = [43,44,52,53,152,155,156,45,42,39,48,41,124,125,148,147,124,54,120,122,123,127,33,36,149,153,121,50]

    Abspeichern.

    Datei test.py anlegen

    nano test.py

    Inhalt

    #!/usr/bin/env python # Frank Mankel, 2018, LGPLv3 License # Rock 64 GPIO Library for Python # Thanks Allison! Thanks smartdave! import R64.GPIO as GPIO from time import sleep print("Output Test R64.GPIO Module...") # Set Variables var_gpio_out = 156 var_gpio_in = 155 # GPIO Setup GPIO.setwarnings(True) GPIO.setmode(GPIO.ROCK) GPIO.setup(var_gpio_out, GPIO.OUT, initial=GPIO.HIGH) # Set up GPIO as an output, with an initial state of HIGH GPIO.setup(var_gpio_in, GPIO.IN, pull_up_down=GPIO.PUD_UP) # Set up GPIO as an input, pullup enabled # Test Output print("") print("Testing GPIO Input/Output:") while True: var_gpio_state_in = GPIO.input(var_gpio_in) var_gpio_state = GPIO.input(var_gpio_out) # Return State of GPIO if var_gpio_state == 0 and var_gpio_state_in == 1: GPIO.output(var_gpio_out,GPIO.HIGH) # Set GPIO to HIGH print("Input State: " + str(var_gpio_state_in)) # Print results print("Output State IF : " + str(var_gpio_state)) # Print results else: GPIO.output(var_gpio_out,GPIO.LOW) # Set GPIO to LOW print("Input State: " + str(var_gpio_state_in)) # Print results print("Output State ELSE: " + str(var_gpio_state)) # Print results sleep(0.5) exit() Beispiel

    Bild Text

    Wenn der Taster im Bild betätigt wird, soll die LED blinken.

    Wir benutzen folgende Ein- Augänge des ROCKPro64.

    # Set Variables var_gpio_out = 156 var_gpio_in = 155

    Das heißt:

    an Pin 1 (3,3V) kommt eine Strippe des Tasters an Pin 29 (Input) kommt eine Strippe des Tasters an Pin 31 (Output) kommt der Plus-Pol der LED an Pin 39 (GND) kommt der Minus-Pol der LED

    Somit wird auf den Eingang (Pin 29) bei Betätigung des Tasters 3,3 Volt angelegt. Damit wird dann der Eingang als High (1) erkannt. Die LED wird über den Ausgang (Pin 31) gesteuert.

    Starten kann man das Script mit

    python test.py

  • 0 Stimmen
    3 Beiträge
    1k Aufrufe
    FrankMF

    Ein paar Hardware Änderungen

    Weiße LED gedimmt

    0_1532529766212_IMG_20180725_151430_ergebnis.jpg

    Neue LED grün, neben dem Eingang der Stromversorgung

    0_1532529863801_IMG_20180725_151421_geändert.jpg

  • 0 Stimmen
    2 Beiträge
    756 Aufrufe
    FrankMF

    Offizielle Bestätigung -> http://files.pine64.org