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í
×
    dnes 04:44 | Nová verze

    Nová čísla časopisů od nakladatelství Raspberry Pi: MagPi 140 (pdf) a HackSpace 77 (pdf).

    Ladislav Hagara | Komentářů: 0
    dnes 01:00 | Nová verze

    ESPHome, tj. open source systém umožňující nastavovat zařízení s čipy ESP (i dalšími) pomocí konfiguračních souborů a připojit je do domácí automatizace, například do Home Assistantu, byl vydán ve verzi 2024.4.0.

    Ladislav Hagara | Komentářů: 0
    včera 22:11 | IT novinky Ladislav Hagara | Komentářů: 0
    včera 20:55 | Nová verze

    Neziskové průmyslové konsorcium Khronos Group vydalo verzi 1.1 specifikace OpenXR (Wikipedie), tj. standardu specifikujícího přístup k platformám a zařízením pro XR, tj. platformám a zařízením pro AR (rozšířenou realitu) a VR (virtuální realitu). Do základu se z rozšíření dostalo XR_EXT_local_floor. Společnost Collabora implementuje novou verzi specifikace do platformy Monado, tj. open source implementace OpenXR.

    Ladislav Hagara | Komentářů: 2
    včera 17:22 | Nová verze

    Byla vydána nová verze 0.38.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 4.4 nebo novější a také libplacebo 6.338.2 nebo novější.

    Ladislav Hagara | Komentářů: 1
    včera 17:11 | Nová verze

    ClamAV (Wikipedie), tj. multiplatformní antivirový engine s otevřeným zdrojovým kódem pro detekci trojských koní, virů, malwaru a dalších škodlivých hrozeb, byl vydán ve verzích 1.3.1, 1.2.3 a 1.0.6. Ve verzi 1.3.1 je mimo jiné řešena bezpečnostní chyba CVE-2024-20380.

    Ladislav Hagara | Komentářů: 1
    včera 12:11 | IT novinky

    Digitální a informační agentura (DIA) oznámila (PDF, X a Facebook), že mobilní aplikace Portál občana je ode dneška oficiálně venku.

    Ladislav Hagara | Komentářů: 7
    včera 05:11 | Komunita

    #HACKUJBRNO 2024, byly zveřejněny výsledky a výstupy hackathonu města Brna nad otevřenými městskými daty, který se konal 13. a 14. dubna 2024.

    Ladislav Hagara | Komentářů: 2
    17.4. 17:55 | IT novinky

    Společnost Volla Systeme stojící za telefony Volla spustila na Kickstarteru kampaň na podporu tabletu Volla Tablet s Volla OS nebo Ubuntu Touch.

    Ladislav Hagara | Komentářů: 3
    17.4. 17:44 | IT novinky

    Společnost Boston Dynamics oznámila, že humanoidní hydraulický robot HD Atlas šel do důchodu (YouTube). Nastupuje nová vylepšená elektrická varianta (YouTube).

    Ladislav Hagara | Komentářů: 1
    KDE Plasma 6
     (68%)
     (10%)
     (2%)
     (20%)
    Celkem 557 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.