AtomicPi - UART



  • Was ist das Wichtigste bei diesen kleinen Platinen? Eine serielle Konsole, damit man beim Booten evt. Probleme erkennen kann um sie zu beseitigen. Da auf dem Board so kleine Buchsenleisten sind, musste ich da erst mal was besorgen.

    Und da ich lange gesucht habe, kommt hier ausnahmsweise mal ein Ebay-Link.

    Der Stecker hat folgende Bezeichnung
    2.0mm 2.0 PH Micro JST Stecker 3polig

    Dann bastelt man sich eine Verbindung 😉

    IMG_20190504_203616_ergebnis.jpg

    Ich bekam mit meinem Notebook aber keine Verbindung 😞 Ich benutze auf dem Notebook das Tool Minicom

    minicom -8 -D /dev/ttyUSB0 -b 115200
    

    Die serielle Verbindung nutzt folgende Parameter

    • 115200 Baud
    • 8N1

    Gut, warum geht es nicht?? Ist auf meinem Debian Buster, die serielle Konsole überhaupt an? Grübel, was suchen im Netz.....

    Es gibt einen Dienst mit Namen serial-getty@ttyS0.service Dann schauen wir mal nach.

    root@debian:/home/frank# systemctl status serial-getty@ttyS0.service
    ● serial-getty@ttyS0.service - Serial Getty on ttyS0
       Loaded: loaded (/lib/systemd/system/serial-getty@.service; disabled; vendor preset: enabled)
       Active: inactive (dead)
         Docs: man:agetty(8)
               man:systemd-getty-generator(8)
               http://0pointer.de/blog/projects/serial-console.html
    

    Ok, da ist er aber ausgeschaltet. Einschalten!

    root@debian:/home/frank# systemctl start serial-getty@ttyS0.service
    

    Kontrolle

    root@debian:/home/frank# systemctl status serial-getty@ttyS0.service
    ● serial-getty@ttyS0.service - Serial Getty on ttyS0
       Loaded: loaded (/lib/systemd/system/serial-getty@.service; disabled; vendor preset: enabled)
       Active: active (running) since Sat 2019-05-04 20:27:31 CEST; 1s ago
         Docs: man:agetty(8)
               man:systemd-getty-generator(8)
               http://0pointer.de/blog/projects/serial-console.html
     Main PID: 1061 (agetty)
        Tasks: 1 (limit: 2115)
       Memory: 432.0K
       CGroup: /system.slice/system-serial\x2dgetty.slice/serial-getty@ttyS0.service
               └─1061 /sbin/agetty -o -p -- \u --keep-baud 115200,38400,9600 ttyS0 vt220
    
    Mai 04 20:27:31 debian systemd[1]: Started Serial Getty on ttyS0.
    

    Sehr schön, läuft!!

    Dann am Notebook mit Minicom die Verbindung aufbauen und einloggen.

    Ergebnis

    Willkommen zu minicom 2.7
    
    Optionen: I18n 
    Übersetzt am Apr 22 2017, 09:14:19.
    Port /dev/ttyUSB0, 20:28:22
    
    Drücken Sie CTRL-A  Z für Hilfe zu speziellen Tasten             
                                                                     
    debian login: frank                                              
    Passwort:                                                        
    Letzte Anmeldung: Samstag, den 04. Mai 2019, 20:27:20 CEST von 192.168.3.213 au0
    Linux debian 4.19.0-4-amd64 #1 SMP Debian 4.19.28-2 (2019-03-15) x86_64
    
    The programs included with the Debian GNU/Linux system are free software;
    the exact distribution terms for each program are described in the
    individual files in /usr/share/doc/*/copyright.
    
    Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
    permitted by applicable law.
    frank@debian:~$ 
    

    Juhu!

    Ok, dann soll das Ganze natürlich automatisch starten.

    root@debian:/home/frank# systemctl enable serial-getty@ttyS0.service 
    Created symlink /etc/systemd/system/getty.target.wants/serial-getty@ttyS0.service → /lib/systemd/system/serial-getty@.service.
    

    Jetzt klappt irgendwas nicht mehr. Hmm!??

    Für heute ist Feierabend 🙂



  • Das mit dem systemd Dienst oben könnt ihr vergessen 🙂 Das würde die Konsole viel zu spät starten, wir brauchen die ja viel früher. 😉

    nano /etc/default/grub
    

    Inhalt der Datei

    # If you change this file, run 'update-grub' afterwards to update
    # /boot/grub/grub.cfg.
    # For full documentation of the options in this file, see:
    #   info -f grub -n 'Simple configuration'
    
    GRUB_DEFAULT=0
    GRUB_TIMEOUT=5
    GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
    GRUB_CMDLINE_LINUX_DEFAULT="console=ttyS0,115200n8"
    GRUB_CMDLINE_LINUX=""
    
    # Uncomment to enable BadRAM filtering, modify to suit your needs
    # This works with Linux (no patch required) and with any kernel that obtains
    # the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
    #GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
    
    # Uncomment to disable graphical terminal (grub-pc only)
    #GRUB_TERMINAL=console
    
    # The resolution used on graphical terminal
    # note that you can use only modes which your graphic card supports via VBE
    # you can see them in real GRUB with the command `vbeinfo'
    #GRUB_GFXMODE=640x480
    
    # Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
    #GRUB_DISABLE_LINUX_UUID=true
    
    # Uncomment to disable generation of recovery mode menu entries
    #GRUB_DISABLE_RECOVERY="true"
    
    # Uncomment to get a beep at grub start
    #GRUB_INIT_TUNE="480 440 1"
    
    ## Serial console
    GRUB_TERMINAL=serial
    GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1"
    

    Grub ist der Bootloader, damit wird jetzt sofort beim Start die serielle Konsole geöffnet. Nach dem Ändern der Datei, müssen wir den grub noch aktualisieren.

    sudo update-grub
    

    Danach kann man neustarten. Nun sieht man nichts mehr auf dem HDMI-Monitor, sondern alles in der seriellen Konsole. Wenn man nach Fehlern sucht einfach unverzichtbar. Auch das Grub Bootmenü taucht nun in der Konsole auf.

    Loading Linux 4.19.0-4-amd64 ...
    Loading initial ramdisk ...
    [    0.000000] Linux version 4.19.0-4-amd64 (debian-kernel@lists.debian.org) (g)
    [    0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-4.19.0-4-amd64 root=UUID=8
    [    0.000000] x86/fpu: x87 FPU will use FXSAVE
    [    0.000000] BIOS-provided physical RAM map:
    [    0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000008efff] usable
    [    0.000000] BIOS-e820: [mem 0x000000000008f000-0x000000000008ffff] ACPI NVS
    [    0.000000] BIOS-e820: [mem 0x0000000000090000-0x000000000009dfff] usable
    [    0.000000] BIOS-e820: [mem 0x000000000009e000-0x000000000009ffff] reserved
    [    0.000000] BIOS-e820: [mem 0x0000000000100000-0x000000001effffff] usable
    [    0.000000] BIOS-e820: [mem 0x000000001f000000-0x00000000201fffff] reserved
    [    0.000000] BIOS-e820: [mem 0x0000000020200000-0x000000007b9b3fff] usable
    [    0.000000] BIOS-e820: [mem 0x000000007b9b4000-0x000000007b9e3fff] reserved
    [    0.000000] BIOS-e820: [mem 0x000000007b9e4000-0x000000007ba07fff] ACPI data
    [    0.000000] BIOS-e820: [mem 0x000000007ba08000-0x000000007baeafff] ACPI NVS
    [    0.000000] BIOS-e820: [mem 0x000000007baeb000-0x000000007bd80fff] reserved
    [    0.000000] BIOS-e820: [mem 0x000000007bd81000-0x000000007bdeefff] type 20
    [    0.000000] BIOS-e820: [mem 0x000000007bdef000-0x000000007bffffff] usable
    [    0.000000] BIOS-e820: [mem 0x00000000e0000000-0x00000000e3ffffff] reserved
    [    0.000000] BIOS-e820: [mem 0x00000000fea00000-0x00000000feafffff] reserved
    [    0.000000] BIOS-e820: [mem 0x00000000fec00000-0x00000000fec00fff] reserved
    [    0.000000] BIOS-e820: [mem 0x00000000fed01000-0x00000000fed01fff] reserved
    [    0.000000] BIOS-e820: [mem 0x00000000fed03000-0x00000000fed03fff] reserved  
    [    0.000000] BIOS-e820: [mem 0x00000000fed06000-0x00000000fed06fff] reserved  
    [    0.000000] BIOS-e820: [mem 0x00000000fed08000-0x00000000fed09fff] reserved  
    [    0.000000] BIOS-e820: [mem 0x00000000fed1c000-0x00000000fed1cfff] reserved  
    [    0.000000] BIOS-e820: [mem 0x00000000fed80000-0x00000000fedbffff] reserved  
    [    0.000000] BIOS-e820: [mem 0x00000000fee00000-0x00000000fee00fff] reserved  
    [    0.000000] BIOS-e820: [mem 0x00000000ffc00000-0x00000000ffffffff] reserved  
    [    0.000000] NX (Execute Disable) protection: active                          
    [    0.000000] efi: EFI v2.40 by American Megatrends                            
    [    0.000000] efi:  ESRT=0x7b9e2000  ACPI=0x7b9eb000  ACPI 2.0=0x7b9eb000  SMB
    [    0.000000] secureboot: Secure boot could not be determined (mode 0)        
    [    0.000000] SMBIOS 3.0.0 present.                                            
    [    0.000000] DMI: AAEON MF-001/MF-001, BIOS MFC1AM12 01/30/2018              
    [    0.000000] tsc: Detected 1440.000 MHz processor                            
    [    0.000059] last_pfn = 0x7c000 max_arch_pfn = 0x400000000                    
    [    0.000301] x86/PAT: Configuration [0-7]: WB  WC  UC- UC  WB  WP  UC- WT    
    [    0.010131] esrt: ESRT header is not in the memory map.                      
    [    0.011611] RAMDISK: [mem 0x31fd1000-0x34fdffff]                            
    [    0.011631] ACPI: Early table checksum verification disabled                
    [    0.011640] ACPI: RSDP 0x000000007B9EB000 000024 (v02 ALASKA)                
    [    0.011653] ACPI: XSDT 0x000000007B9EB0A8 0000CC (v01 ALASKA A M I    010720)
    [    0.011670] ACPI: FACP 0x000000007BA012B0 00010C (v05 ALASKA A M I    010720)
    [    0.011686] ACPI: DSDT 0x000000007B9EB200 0160AA (v02 ALASKA A M I    010720)
    [    0.011698] ACPI: FACS 0x000000007BAD2F80 000040                            
    [    0.011707] ACPI: APIC 0x000000007BA013C0 000084 (v03 ALASKA A M I    010720)
    [    0.011718] ACPI: FPDT 0x000000007BA01448 000044 (v01 ALASKA A M I    010720)
    [    0.011728] ACPI: FIDT 0x000000007BA01490 00009C (v01 ALASKA A M I    010720)
    [    0.011738] ACPI: MCFG 0x000000007BA01530 00003C (v01 ALASKA A M I    010720)
    [    0.011749] ACPI: SSDT 0x000000007BA01570 0041C5 (v01 DptfTb DptfTab  000010)
    [    0.011759] ACPI: SSDT 0x000000007BA05738 000654 (v01 CpuDpf CpuDptf  000010)
    [    0.011771] ACPI: SSDT 0x000000007BA05D90 000058 (v01 LowPM  LowPwrM  000010)
    [    0.011782] ACPI: UEFI 0x000000007BA05DE8 000042 (v01 ALASKA A M I    000000)
    [    0.011793] ACPI: SSDT 0x000000007BA05E30 000269 (v01 UsbCTb UsbCTab  000010)
    [    0.011803] ACPI: HPET 0x000000007BA060A0 000038 (v01 ALASKA A M I    010720)
    [    0.011813] ACPI: SSDT 0x000000007BA060D8 000763 (v01 PmRef  CpuPm    000030)
    [    0.011825] ACPI: SSDT 0x000000007BA06840 000290 (v01 PmRef  Cpu0Tst  000030)
    [    0.011836] ACPI: SSDT 0x000000007BA06AD0 00017A (v01 PmRef  ApTst    000030)
    [    0.011846] ACPI: LPIT 0x000000007BA06C50 000104 (v01 ALASKA A M I    000000)
    [    0.011856] ACPI: BCFG 0x000000007BA06D58 000139 (v01 INTEL  BATTCONF 000000)
    [    0.011866] ACPI: PRAM 0x000000007BA06E98 000030 (v01                 000000)
    [    0.011877] ACPI: BGRT 0x000000007BA06EC8 000038 (v01 ALASKA A M I    010720)
    [    0.011887] ACPI: TPM2 0x000000007BA06F00 000034 (v03        Tpm2Tabl 000000)
    [    0.011897] ACPI: CSRT 0x000000007BA06F38 00014C (v00 INTEL  LANFORDC 000000)
    [    0.011909] ACPI: WDAT 0x000000007BA07088 000104 (v01                 000000)
    [    0.012204] No NUMA configuration found                                   
    

    Die vollständige Ausgabe hier auf pastebin.com

    Projekt UART erfolgreich beendet. Manche Dinge lassen einem ja keine Ruhe LOL


Log in to reply
 

Diese Artikel könnten Dich auch interessieren.

  • 5
  • 2
  • 2
  • 1
  • 3
  • 2
  • 2
  • 4