abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 15:00 | Zajímavý software

    Euro-Office (Wikipedie) je evropský fork open source kancelářského balíku OnlyOffice. Za forkem stojí koalice firem IONOS, Nextcloud, Eurostack, XWiki, OpenProject, Soverin, Abilian a BTactic. Cílem je zajistit digitální suverenitu Evropy a snížit závislost na neevropských platformách. Projekt vznikl mimo jiné v reakci na nedávné uzavření cloudové služby OnlyOffice. OnlyOffice obviňuje Euro-Office z porušení licenčních podmínek. Na možné problémy upozorňuje i Collabora Online.

    Ladislav Hagara | Komentářů: 0
    dnes 05:11 | Komunita

    Byly zpracovány a na YouTube zveřejněny videozáznamy jednotlivých přednášek z letošního Installfestu.

    Ladislav Hagara | Komentářů: 0
    dnes 00:22 | Komunita

    Během akce Arduino Days 2026 byl publikován Arduino Open Source Report 2025 (pdf) a oznámeno 7 nových produktů kompatibilních s deskou UNO Q (Arduino USB-C Power Supply, USB-C Cable, USB-C Hub, UNO Media Carrier, UNO Breakout Carrier, Bug Hopper, Modulino LED Matrix).

    Ladislav Hagara | Komentářů: 1
    včera 20:22 | IT novinky

    Google v pátek spustil v Česku Vyhledávání Live. Tato novinka umožňuje lidem vést plynulou konverzaci s vyhledávačem v češtině. A to prostřednictvím hlasu, nebo prostřednictvím toho, na co ukážou svým fotoaparátem či kamerou v mobilu. Rozšíření této multimodální funkce je možné díky nasazení Gemini 3.1 Flash Live, nového hlasového a audio modelu, který je od základu vícejazyčný, takže umožňuje lidem po celém světě mluvit na vyhledávač přirozeně a v jazyce, který je jim nejbližší.

    Ladislav Hagara | Komentářů: 0
    včera 12:55 | Zajímavý software

    Jsongrep je open-source nástroj, který efektivně prohledává JSON dokumenty (editovat je neumí). Kompiluje regulérní jazyk dotazu do podoby deterministického konečného automatu (DFA), díky čemuž prochází strom JSON dokumentu pouze jednou a je v tom tedy rychlejší než jiné nástroje jako jsou například jq, JMESPath nebo jql. Jsongrep je napsaný v programovacím jazyce Rust, zdrojový kód je dostupný na GitHubu.

    NUKE GAZA! 🎆 | Komentářů: 4
    28.3. 05:55 | Komunita

    O víkendu probíhá v Praze na Karlově náměstí 13 konference Installfest 2026. Na programu je celá řada zajímavých přednášek a workshopů. Vstup na konferenci je zcela zdarma, bez nutnosti registrace. Přednášky lze sledovat i online na YouTube.

    Ladislav Hagara | Komentářů: 11
    28.3. 05:22 | Komunita

    Mozilla a společnost Mila oznámily strategické partnerství za účelem rozvoje open source a suverénní AI. Cílem je ukázat, že open source AI může konkurovat uzavřeným systémům. Obě organizace chtějí posílit technologickou suverenitu a snížit závislost na hrstce velkých technologických firem.

    Ladislav Hagara | Komentářů: 4
    28.3. 04:00 | Humor

    Adam Rice předvedl, že pomocí DNS lze distribuovat a spustit kompletní hru DOOM. Rozdělil WAD soubory a binárky do téměř 2000 DNS záznamů v Cloudflare zóně (jeden TXT záznam v DNS může nést okolo 2000 znaků textu). Ty pak stáhl PowerShellem, dekomprimoval a spustil přímo v paměti počítače bez nutnosti zápisu na disk, což prakticky dokazuje, že DNS může sloužit jako distribuované úložiště dat a možný kanál pro načítání kódu. Repozitář projektu je na GitHubu.

    NUKE GAZA! 🎆 | Komentářů: 8
    27.3. 13:00 | Komunita

    Dnes a zítra probíhají Arduino Days 2026. Na programu je řada zajímavých přednášek. Sledovat je lze od 17:00 na YouTube. Zúčastnit se lze i lokálních akcí. Dnes v Poličce v městské knihovně a zítra v Praze na Matfyzu.

    Ladislav Hagara | Komentářů: 9
    27.3. 12:11 | Nová verze

    Byla vydána beta verze Ubuntu 26.04 LTS s kódovým názvem Resolute Raccoon. Přehled novinek v poznámkách k vydání. Dle plánu by Ubuntu 26.04 LTS mělo vyjít 23. dubna 2026.

    Ladislav Hagara | Komentářů: 2
    Které desktopové prostředí na Linuxu používáte?
     (15%)
     (7%)
     (1%)
     (12%)
     (30%)
     (3%)
     (5%)
     (2%)
     (14%)
     (24%)
    Celkem 1185 hlasů
     Komentářů: 27, poslední 17.3. 19:26
    Rozcestník

    T-Mobile 4G v Gentoo Linuxu

    22.12.2007 20:00 | Přečteno: 1424× | poslední úprava: 22.12.2007 22:15

    V tomto úzce zaměřeném příspěvku bude řeč o tom jak zprovoznit T-Mobile Twist Internet 4G s USB 4G modemem v Gentoo Linuxu. Od vybalení SIM karty a modemu, přes konfiguraci jádra a připojení, až po automatizaci připojování pomocí udev. Postup není dokonalý, ale pořád je alespoň o trochu lepší než drátem do oka.

    SIM karta a modem

    Karta SIM nám může přinést hned dvě nepříjemná překvapení – nutnost jí poskytnout PIN a nutnost ji aktivovat. Obojí snadno vyřešíme vložením do běžného mobilního telefonu. Nastavíme zde, aby karta kód PIN nevyžadovala. Vzápětí provedeme hovor na libovolné číslo. Nejsnáze na to, jehož kartu jsme z telefonu právě vyndali. Dozvíme se, že volaný není dotupný a zajistíme si, že nám datové služby budou během několika hodin aktivovány. Následné vložení karty do modemu a jeho zapnutí je již triviální.

    K jádru věci

    I konfigurace jádra je snadná, potřebný ovladač mají nové verze jádra v základní výbavě. Funkčnost mám vyzkoušenou na verzi 2.6.22-suspend2-r2.

    Device Drivers  --->
      USB support  --->
        USB Serial Converter support  --->
          <M> USB Serial Converter support
          <M>   USB IPWireless (3G UMTS TDD) Driver (EXPERIMENTAL)

    Po zkompilování a nainstalování obou potřebných modulů stačí modem připojit k počítači. V logu bychom měli být informování, že modem byl rozpoznán a stal se zařízením /dev/ttyUSB0:

    usb 2-2: new full speed USB device using uhci_hcd and address 2
    usb 2-2: configuration #1 chosen from 2 choices
    usbcore: registered new interface driver usbserial
    drivers/usb/serial/usb-serial.c: USB Serial Driver core
    drivers/usb/serial/usb-serial.c: USB Serial support registered for IPWireless converter
    ipwtty 2-2:1.0: IPWireless converter converter detected
    usb 2-2: IPWireless converter converter now attached to ttyUSB0
    usbcore: registered new interface driver ipwtty
    drivers/usb/serial/ipw.c: IPWireless tty driver v0.3

    Point to Point

    Konfigurace pppd v Gentoo je opravdu triviální, pokud máte k dispozici patřičné „zaklínadlo“ – stačí vložit příslušné řádky do /etc/conf.d/net. Všichni mají svůj recept a každý ho má trochu jiný, já momentálně používám následující. Náměty na vylepšení rád uvidím v komentářích.

    config_ppp0=( "ppp" )
    link_ppp0="/dev/ttyUSB0"
    username_ppp0='gprs'
    password_ppp0='gprs'
    pppd_ppp0=(
            "debug"
            "noauth"
            "defaultroute"
            "usepeerdns"
            "lcp-echo-interval 36000"
            "passive"
            "local"
            "lock"
            "115200"
            "modem crtscts"
            "ipcp-no-addresses"
    )
    chat_ppp0=(
            'ABORT' 'BUSY'
            'ABORT' 'ERROR'
            'ABORT' 'NO ANSWER'
            'ABORT' 'NO CARRIER'
            'ABORT' 'NO DIALTONE'
            'ABORT' 'Invalid Login'
            'ABORT' 'Login incorrect'
            'TIMEOUT' '5'
            '' 'ATZ'
            'OK' 'AT&FE0Q0V1&C1&D2S0=0'
            'OK' 'ATS7=60&K3N1'
            'OK' 'AT+CGDCONT=1,"PPP","internet.t-mobile.cz","gprs,gprs",0,0'
            'OK' 'ATDT*99#'
            'CONNECT' ''
            'TIMEOUT' '5'
            '~--' ''
    )

    Dále stačí jen vytvořit startovací skript a připojení aktivovat:

    cd /etc/init.d/
    ln -s net.lo net.ppp0
    ./net.ppp0 start

    Pokud jste vše udělali správně, v logu Vás potěší řádky podobné těmto:

    pppd: Plugin passwordfd.so loaded.
    pppd: pppd 2.4.4 started by root, uid 0
    chat: abort on (BUSY)
    chat: abort on (ERROR)
    chat: abort on (NO ANSWER)
    chat: abort on (NO CARRIER)
    chat: abort on (NO DIALTONE)
    chat: abort on (Invalid Login)
    chat: abort on (Login incorrect)
    chat: timeout set to 5 seconds
    chat: send (ATZ^M)
    chat: expect (OK)
    chat: ATZ^M^M
    chat: OK
    chat:  -- got it
    chat: send (AT&FE0Q0V1&C1&D2S0=0^M)
    chat: expect (OK)
    chat: ^M
    chat: AT&FE0Q0V1&C1&D2S0=0^M^M
    chat: OK
    chat:  -- got it
    chat: send (ATS7=60&K3N1^M)
    chat: expect (OK)
    chat: ^M
    chat: ^M
    chat: OK
    chat:  -- got it
    chat: send (AT+CGDCONT=1,"PPP","internet.t-mobile.cz","gprs,gprs",0,0^M)
    chat: expect (OK)
    chat: ^M
    chat: ^M
    chat: OK
    chat:  -- got it
    chat: send (ATDT*99#^M)
    chat: expect (CONNECT)
    chat: ^M
    chat: ^M
    chat: CONNECT
    chat:  -- got it
    chat: send (^M)
    chat: timeout set to 5 seconds
    chat: expect (~)
    chat: ^M
    chat: ~
    chat:  -- got it
    chat: send (^M)
    pppd: Serial connection established.
    pppd: using channel 1
    pppd: Using interface ppp0
    pppd: Connect: ppp0 <--> /dev/ttyUSB0
    pppd: sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xbc2e4dbf> <pcomp> <accomp>]
    pppd: rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0xbc2e4dbf> <pcomp> <accomp>]
    pppd: rcvd [LCP ConfReq id=0x2 <auth chap MD5> <magic 0xc9d23a82>]
    pppd: sent [LCP ConfAck id=0x2 <auth chap MD5> <magic 0xc9d23a82>]
    pppd: sent [LCP EchoReq id=0x0 magic=0xbc2e4dbf]
    pppd: rcvd [CHAP Challenge id=0x1 <b6acd0ef4dcd03e1d82cf7a8410867f0>, name = "ctx-mw25-ipw"]
    pppd: sent [CHAP Response id=0x1 <874d0002a14803c51f20fe168a79e901>, name = "gprs"]
    pppd: rcvd [LCP EchoRep id=0x0 magic=0xc9d23a82]
    pppd: rcvd [CHAP Success id=0x1 ""]
    pppd: CHAP authentication succeeded
    pppd: CHAP authentication succeeded
    PPP BSD Compression module registered
    PPP Deflate Compression module registered
    pppd: sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15> <bsd v1 15>]
    pppd: sent [IPCP ConfReq id=0x1 <compress VJ 0f 01> <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]
    pppd: rcvd [IPCP ConfReq id=0x1 <addr 10.231.251.32>]
    pppd: sent [IPCP ConfAck id=0x1 <addr 10.231.251.32>]
    pppd: rcvd [LCP ProtRej id=0x3 80 fd 01 01 00 0f 1a 04 78 00 18 04 78 00 15 03 2f]
    pppd: Protocol-Reject for 'Compression Control Protocol' (0x80fd) received
    pppd: rcvd [IPCP ConfRej id=0x1 <compress VJ 0f 01>]
    pppd: sent [IPCP ConfReq id=0x2 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]
    pppd: rcvd [IPCP ConfNak id=0x2 <addr 89.24.41.190> <ms-dns1 62.141.0.1> <ms-dns3 213.162.65.1>]
    pppd: sent [IPCP ConfReq id=0x3 <addr 89.24.41.190> <ms-dns1 62.141.0.1> <ms-dns3 213.162.65.1>]
    pppd: rcvd [IPCP ConfAck id=0x3 <addr 89.24.41.190> <ms-dns1 62.141.0.1> <ms-dns3 213.162.65.1>]
    pppd: not replacing existing default route to wlan0 [192.168.1.1]
    pppd: local  IP address 89.24.41.190
    pppd: remote IP address 10.231.251.32
    pppd: primary   DNS address 62.141.0.1
    pppd: secondary DNS address 213.162.65.1
    pppd: Script /etc/ppp/ip-up started (pid 18507)
    pppd: Script /etc/ppp/ip-up finished (pid 18507), status = 0x1

    Automatizace připojování

    Když máme připojení už v principu funkční, můžeme zatoužit si práci trochu zjednodušit – nejlépe tak, že po spojení modemu s počítačem se tento bez vyzvání připojí a po odpojení modemu připojení zase sám ukončí a vyjme ovládací modul z jádra. K tomu nám dobře poslouží udev. Budeme potřebovat jeden ovládací skript na samotné připojení či odpojení. Můj se jmenuje /root/bin/tm4gh­andler a nosí v sobě toto:

    #!/bin/sh
    RUN=/var/run/tmobile4g
    device_added () {
            test -e $RUN && test `cat $RUN` -lt $SEQNUM
    }
    case $ACTION in
            add)
                    device_added && exit
                    echo $SEQNUM > $RUN
                    logger "tmobile4g modem connect event"
                    /etc/init.d/net.ppp0 start
                    ;;
            remove)
                    device_added || exit
                    rm -f $RUN
                    logger "tmobile4g modem disconnect event"
                    /etc/init.d/net.ppp0 stop
                    modprobe -r ipw
                    ;;
    esac

    Poté si vyhlédmene vhodné udev události – jednu pro připojení, jednu pro odpojení – na které přivěsíme náš skript. S výběrem nám může pomoci udevmonitor:

    udevmonitor --udev --env

    Pak stačí pravidla přidat do konfiguračního adresáře udev. Dobře mi posloužil soubor /etc/udev/rules­.d/41-tmobile4g.rules: (na starších jádrech nemusí fungovat korektně).

    BUS=="usb", SUBSYSTEM=="usb", ENV{PRODUCT}=="bc3/1/1", ACTION=="add", RUN+="/bin/sh -c '/root/bin/tm4ghandler &'"
    BUS=="usb", SUBSYSTEM=="usb", ENV{PRODUCT}=="bc3/1/1", ACTION=="remove", RUN+="/bin/sh -c '/root/bin/tm4ghandler &'"

    Takto nastaveno mi vše spolehlivě funguje, přeji totéž i Vám. Použité skripty mají k dokonalosti daleko. Vylepšovací návrhy rád uvidím v komentářích.

    Přetrvávající problémy

    Modem nepřijímá AT příkazy

    Někdy se stane, že na inicializační příkaz ATZ modem jednoduše nereaguje. Nenašel jsem jiné řešení než trpělivost. Chat skript je vždy po pěti sekundách ukončen timeoutem a pppd po chvíli restartován. Připojení se po pár minutách rozběhne.

    Připojení je nestabilní

    O novém 4G připojení se dá napsat leccos, ale napsal-li bych, že mi přijde spolehlivé, byla by to bohapustá lež. Rozhodně spadne častěji než T-Mobile EDGE. Nevím, zda je chyba v síti či na mém přijímači.

    Závěrem

    Pokud Vás můj příspěvek rozčílil a chystáte se mi napsat, že podobných návodů je plný internet, že ten můj je obzvláště špatný a ještě k tomu drze zaměřen jen na Gentoo, ušetřete si prosím práci. Jestli Vám libovolný kousek pomohl, jsem jen rád.

           

    Hodnocení: 100 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    AsciiWolf avatar 22.12.2007 20:36 AsciiWolf | skóre: 41 | blog: Blog
    Rozbalit Rozbalit vše Re: T-Mobile 4G v Gentoo Linuxu
    Dobrý návod,dík. Určitě se někomu bude hodit ;-)

    ps. Nebylo by lepší to napsat do sekce Faq nebo Hardware ?

    22.12.2007 21:06 snowracer | skóre: 21 | blog: Omniloquent | Praha
    Rozbalit Rozbalit vše Re: T-Mobile 4G v Gentoo Linuxu
    Díky, sekce Hardware mi přijde příliš "posvátná" na tak nevážný a nekompletní text :-) Pokud tam ale někdo chce udělat stručný záznam k modemu a dát tam link sem, není to žádný problém.
    23.12.2007 10:02 merlik | skóre: 13 | blog: merlik
    Rozbalit Rozbalit vše Re: T-Mobile 4G v Gentoo Linuxu
    Diky, urcite ho vyuziju, az se vrati pocitac od pritelkyne z koleje, kde jsem tohle rozbihal vic jak pred rokem. Uz je to tam trosku stary, zvlast jadro.
    I cesta může být cíl.
    23.12.2007 14:07 qk | skóre: 15 | blog: qk_develop
    Rozbalit Rozbalit vše Re: T-Mobile 4G v Gentoo Linuxu
    Pekny zapisek, ac ho nevyuziji.
    Jenom drobne poznamky k reseni.
    1) spousteci script bych dal do /etc/init.d/ , aby pripadne pokud ma nekdo pripojenej pocitac stale to mohl pouzivat jednoduse pri startu.
    2) to trochu souvisi s prvnim. misto akci add a remove bych pouzil klasicke start stop a pripadne restart (aspon kdyz sem jel na edgy, tak sem restartoval celkem casto).
    23.12.2007 14:19 snowracer | skóre: 21 | blog: Omniloquent | Praha
    Rozbalit Rozbalit vše Re: T-Mobile 4G v Gentoo Linuxu

    Děkuji za připomínky. Pokud mluvíte opravdu o "spouštěcím skriptu", ten v /etc/init.d/ skutečně je, viz:

    Dále stačí jen vytvořit startovací skript a připojení aktivovat:

    cd /etc/init.d/
    ln -s net.lo net.ppp0
    

    Pokud máte na mysli druhý uvedený skript (/root/bin/tm4gh­andler), tak to je obslužný skript pro udev. Není startovacím skriptem a proto bych ho (alespoň u sebe) do /etc/init.d/ nedal. Ze stejného důvodu také rozlišuje mezi $ACTION add a remove, protože v této formě onu proměnnou obdrží od udev.

    A jestli jste myslel ještě něco úplně jiného, pak to prosím ještě upřesněte, aby to došlo i mně :-)

    23.12.2007 23:17 qk | skóre: 15 | blog: qk_develop
    Rozbalit Rozbalit vše Re: T-Mobile 4G v Gentoo Linuxu
    jezis, ted na to koukam, sem to asi prehlidl :)

    Založit nové vláknoNahoru

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