abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 23:22 | Nová verze

    Hudební přehrávač Amarok byl vydán v nové major verzi 3.0 postavené na Qt5/KDE Frameworks 5. Předchozí verze 2.9.0 vyšla před 6 lety a byla postavená na Qt4. Portace Amaroku na Qt6/KDE Frameworks 6 by měla začít v následujících měsících.

    Ladislav Hagara | Komentářů: 2
    včera 21:44 | Komunita

    Ubuntu 24.10 bude Oracular Oriole (věštecká žluva).

    Ladislav Hagara | Komentářů: 1
    včera 20:22 | Nová verze

    Byla vydána nová verze 2.45.0 distribuovaného systému správy verzí Git. Přispělo 96 vývojářů, z toho 38 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání. Vypíchnout lze počáteční podporu repozitářů, ve kterých lze používat SHA-1 i SHA-256.

    Ladislav Hagara | Komentářů: 0
    včera 13:33 | IT novinky

    Před 25 lety, ve čtvrtek 29. dubna 1999, byla spuštěna služba "Úschovna".

    Ladislav Hagara | Komentářů: 0
    včera 01:00 | Nová verze

    Byla vydána nová verze 24.04.28 s kódovým názvem Time After Time svobodného multiplatformního video editoru Shotcut (Wikipedie) a nová verze 7.24.0 souvisejícího frameworku MLT Multimedia Framework. Nejnovější Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 0
    28.4. 16:33 | Nová verze Ladislav Hagara | Komentářů: 0
    28.4. 03:22 | Zajímavý článek

    V aktuálním příspěvku na blogu počítačové hry Factorio (Wikipedie) se vývojář s přezývkou raiguard rozepsal o podpoře Linuxu. Rozebírá problémy a výzvy jako přechod linuxových distribucí z X11 na Wayland, dekorace oken na straně klienta a GNOME, změna velikosti okna ve správci oken Sway, …

    Ladislav Hagara | Komentářů: 0
    28.4. 00:11 | Nová verze

    Rakudo (Wikipedie), tj. překladač programovacího jazyka Raku (Wikipedie), byl vydán ve verzi #171 (2024.04). Programovací jazyk Raku byl dříve znám pod názvem Perl 6.

    Ladislav Hagara | Komentářů: 7
    27.4. 17:44 | Nová verze

    Společnost Epic Games vydala verzi 5.4 svého proprietárního multiplatformního herního enginu Unreal Engine (Wikipedie). Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    26.4. 17:11 | Nová verze

    Byl vydán Nextcloud Hub 8. Představení novinek tohoto open source cloudového řešení také na YouTube. Vypíchnout lze Nextcloud AI Assistant 2.0.

    Ladislav Hagara | Komentářů: 12
    KDE Plasma 6
     (75%)
     (8%)
     (2%)
     (15%)
    Celkem 883 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: Detekce modemu UART přes TTY?

    18.1.2018 20:54 MilanC | skóre: 16
    Detekce modemu UART přes TTY?
    Přečteno: 301×
    Ahoj, mám tento modem M590E u RPI. Cílem je zjistit, jestli tam je nebo není, tj. zkonfigurovat linku, poslat AT a ne/přečíst OK. Zkoušel jsem všechno možné, ale nepovedlo se mi to. Těch způsobů existuje hrozně moc (minicom, stty, atinote, vwdial, skript s exec atd.), zkoušel jsem fakt všelicos.

    Kolega (Cčkař) vytvořil binárku, která toto svede. Prý jsou tam nějaká speciální nastavení té komunikace. No nejsem moc cčkař. Přijde mi ale kuli takové banalitě držet další binárku, která má jen tento účel a beztak ji jen volám z jiného bash skriptu, abych zjistil stav. Podle mého pokud to jde v cčku, mělo by to jít přeci i třeba přes stty, tam jde nastavit prakticky vše. Bohužel nejsem cčkař a tu inicializaci z toho kódu moc nechápu.

    Byl by někdo tak hodný a zkusil to převést (pokud lze) ze zdrojáku na příkazový řádek?

    Source: https://pastebin.com/0ZQvHnCT

    Modem je řízený 2 piny, jeden připojuje napájení modulu a druhý dělá jeho reset (to je vidět v kódu + čekání aby se inicializoval).

    Předem díky.

    Odpovědi

    Josef Kufner avatar 18.1.2018 22:13 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Detekce modemu UART přes TTY?
    Naopak. Mít na tohle binárku je naprosto v pořádku a správně. Dělat to v shellu by bylo naprosto zvrhlé, pokud by to vůbec šlo. Unix (a tedy i Linux) je právě o jednoúčelových malých nástrojích, které shell jen propojuje dohromady.

    Tu binárku by to jen chtělo upravit, aby název zařízení nebyl zakompilován, ale aby ho to dostalo jako argument.
    Hello world ! Segmentation fault (core dumped)
    18.1.2018 22:29 MilanC | skóre: 16
    Rozbalit Rozbalit vše Re: Detekce modemu UART přes TTY?
    Děkuji za názor. Já jak nejsem moc cčkař, tak logicky hledám cestu přes bash, perl, python apod. :-) Prostě alternativu, ve které se vyznám. Myslel jsem, že něco takového musí být snadné přepsat. Teď nemyslím to nahazování pinů, napájení/reset, to se řeší stejně jinde, jen tu detekci. Tak pokud není jiná cesta, tak to tak necháme a jen učešeme. :-)
    Josef Kufner avatar 18.1.2018 22:31 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Detekce modemu UART přes TTY?
    Do Pythony by to přepsat asi šlo, ale nemá to smysl. Pro tento úkol je C ideální jazyk.
    Hello world ! Segmentation fault (core dumped)
    18.1.2018 23:45 MilanC | skóre: 16
    Rozbalit Rozbalit vše Re: Detekce modemu UART přes TTY?
    Nakonec se mi to v bashi povedlo takto, na AT to vrací OK. Jestli je to inicializované stejně jak v tom Cčku ale nevím. :)
    #!/bin/bash
    
    #AT+CLAC AT command lists all AT commands supported by the mobile
    
    MODEM="/dev/ttyAMA0"
    
    function get_response
    {
            local ECHO
            # cat will read the response, then die on timeout
            cat <&5 >$TMP &
            echo "$1" >&5
            # wait for cat to die
            wait $!
    
            exec 6<$TMP
            read ECHO <&6
            if [ "$ECHO" != "$1" ]
            then
                    exec 6<&-
                    return 1
            fi
    
            read ECHO <&6
            read RESPONSE <&6
            exec 6<&-
            return 0
    }
    
    TMP="./response"
    
    # Clear out old response
    : > $TMP
    
    # Set modem with timeout of 5/10 a second
    stty -F "$MODEM" 115200 -echo igncr -icanon onlcr ixon min 0 time 5
    
    # Open modem on FD 5
    exec 5<>"$MODEM"
    
    
    get_response "AT" || echo "Bad response"
    RESPONSE=$(cat $TMP)
    echo "Response was '${RESPONSE}'"
    
    exec 5<&-
    
    Jendа avatar 18.1.2018 23:28 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Detekce modemu UART přes TTY?
    Neběží ti tam getty nebo konzole kernelu, které si ten port sežerou hned po zavření a proto to s stty nejde?
    18.1.2018 23:35 MilanC | skóre: 16
    Rozbalit Rozbalit vše Re: Detekce modemu UART přes TTY?
    Neběží, toho jsem se zbavil.
    18.1.2018 23:48 NN
    Rozbalit Rozbalit vše Re: Detekce modemu UART přes TTY?
    V Pythonu je potreba obcas vypnout xonxoff.. Pokud rozumis tomu zdrojaku, nemel by jsi mit problem to prepsat do cehokoli.
    18.1.2018 23:59 MilanC | skóre: 16
    Rozbalit Rozbalit vše Re: Detekce modemu UART přes TTY?
    Nerozumím jaký je výsledek té konfigurace portu, myslím ta logika && | apod. Prostě co z toho vypadne.
    19.1.2018 10:56 rastos | skóre: 62 | blog: rastos
    Rozbalit Rozbalit vše Re: Detekce modemu UART přes TTY?
    Prehrýzť sa cez ten C kód som lenivý, ale ja by som urobil toto:
    1. pustil by som ten program pod debuggerom a zastavil ho breakpointom na mieste, kde už sú nastavené na parametre linky
    2. uložil nastavenia cez stty -g < /dev/ttyAMA0
    3. napísal 2-riadkový skript, ktorý tie nastavenia restorne cez stty a zavola chat pre poslanie AT, prečítanie OK
    4. profit?

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.