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 13:33 | Nová verze

    Vyšlo Pharo 12.0, programovací jazyk a vývojové prostředí s řadou pokročilých vlastností. Krom tradiční nadílky oprav přináší nový systém správy ladících bodů, nový způsob definice tříd, prostor pro objekty, které nemusí procházet GC a mnoho dalšího.

    Pavel Křivánek | Komentářů: 1
    dnes 04:55 | Zajímavý software

    Microsoft zveřejnil na GitHubu zdrojové kódy MS-DOSu 4.0 pod licencí MIT. Ve stejném repozitáři se nacházejí i před lety zveřejněné zdrojové k kódy MS-DOSu 1.25 a 2.0.

    Ladislav Hagara | Komentářů: 21
    včera 17:33 | Nová verze

    Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.

    Ladislav Hagara | Komentářů: 13
    včera 14:22 | Komunita

    Na YouTube je k dispozici videozáznam z včerejšího Czech Open Source Policy Forum 2024.

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

    Fossil (Wikipedie) byl vydán ve verzi 2.24. Jedná se o distribuovaný systém správy verzí propojený se správou chyb, wiki stránek a blogů s integrovaným webovým rozhraním. Vše běží z jednoho jediného spustitelného souboru a uloženo je v SQLite databázi.

    Ladislav Hagara | Komentářů: 0
    včera 12:44 | Nová verze

    Byla vydána nová stabilní verze 6.7 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 124. Přehled novinek i s náhledy v příspěvku na blogu. Vypíchnout lze Spořič paměti (Memory Saver) automaticky hibernující karty, které nebyly nějakou dobu používány nebo vylepšené Odběry (Feed Reader).

    Ladislav Hagara | Komentářů: 0
    včera 04:55 | Nová verze

    OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 22 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). V říjnu se verze 22 stane novou aktivní LTS verzí. Podpora je plánována do dubna 2027.

    Ladislav Hagara | Komentářů: 0
    včera 04:22 | Nová verze

    Byla vydána verze 8.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu. Zdůrazněn je průvodce migrací hostů z VMware ESXi do Proxmoxu.

    Ladislav Hagara | Komentářů: 0
    včera 04:11 | Nová verze

    R (Wikipedie), programovací jazyk a prostředí určené pro statistickou analýzu dat a jejich grafické zobrazení, bylo vydáno ve verzi 4.4.0. Její kódové jméno je Puppy Cup.

    Ladislav Hagara | Komentářů: 0
    24.4. 22:44 | IT novinky

    IBM kupuje společnost HashiCorp (Terraform, Packer, Vault, Boundary, Consul, Nomad, Waypoint, Vagrant, …) za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.

    Ladislav Hagara | Komentářů: 16
    KDE Plasma 6
     (73%)
     (9%)
     (2%)
     (16%)
    Celkem 790 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: Divna rychlost cez libftdi (libusb)

    19.1.2007 15:46 Semo | skóre: 45 | blog: Semo
    Divna rychlost cez libftdi (libusb)
    Přečteno: 169×
    Klucove slova: libusb, AD prevodnik, TCP prenos, usbserial

    Mam AD prevodnik, ktory sa k pocitacu pripaja cez USB. Vnutorne funguje ako seriove zariadenie a pomocou cipu FTDI245BM preklada na USB a hura smer pocitac.

    Podla dokumentacie je tok z prevodniku cca 100kB/s. Pri pripojeni k linuxu sa automatiky natiahne modul ftdi_sio (ktory si vyziada najprv modul usbserial). Potom sa v systeme objavi nove zariadenie pripojene na /dev/ttyUSB0. Ked dam
    cat /dev/tty/USB0 >ad.out
    
    tak skutocne za 100s prenesie cca 10MB dat.

    Mam napisany malicky programcek postaveny nad libftdi, ktory nerobi nic ine, iba v cykle cita z prevodniku a zapisuje na stdout. libftdi je v podstate len wrapper na libusb, ktora bude asi znamejsia viacerym ludom. Problem je, ze tento programcek za 100s zapise len 7.5MB dat. Pricom data su formalne spravne (po USB kabli netecu len tak data, ale nejaky jednoduchy protokol), spravy su spravne dlhe, periodicke vypisy maju spravnu periodu a podobne. Len zuk je znatelne poskodeny a je vleky problem porozumiet ludskej reci. Podla mojho nazoru sa pocitac dohodne s FTDI chipom na nizsej rychlosti posielania dat a samotny programovatelny chip na prevodniku potom zahadzuje data, ktore si FTDI chip nestihne odobrat. Ale produkuje korektny traffic.

    Teraz sa dostavame k niecmu zaujimavejsiemu. Napisal som nahravaci program, ktory cita data z tohto prevodnika a za urcitych podmienok (dostatocne silny signal, dostatocne dlho a pod.) nahrava a konvertuje do oggu. Tento program ma moznost sa na neho pripojit pomocou TCP spojenia a v tom pripade posiela vsetky data z predvodniku do tohoto spojenia. Tento program je postaveny na libftdi (nie nad jadrovym modulom). Ked ho spustim a a pripojim sa na neho pomocou netcatu, tak z neh ocitam 75kB/s. Ale (a teraz prichadza najvacsia zahada uplynulych 2 tyzdnov), ked sa neho propojim programom na diagnostiku a sledovanie toho prevodnika (program, ktory si sama urobila organizacia, pre ktoru to cele robim, napisany v Delphi, bezi pod Win alebo Wine), tak cita rychlostou 100kB/s!

    Moj program (v tomto pripade TCP server) nijak nerozlisuje medzi klientami, proste iba v nekonecnej slucke cita z prevodnika a pise do socketu a naopak (v 2 vlaknach, kedze citanie z prevodnika je neblokujuce). Napriek tomu je z neho jeden klient schopny vytiahnut viac dat ako druhy. Pripajam sa po localhoste, cely pocitac je zanedbatelne zatazeny. Netcat by som nepodozrieval, ze nedokaze citat rychlostou 100kB/s. Rychlosti su potvrdeny jednak velkostou vystupnych suborov, dvak sledovanim vypisu prikazu ifconfig. Sspecialny program neposiela ziadne zahadne prikazy prevodniku. Celu svoju komunikaciu prepisuje do suboru a su tam len same bezne prikazy (nacitat nasov kanalu, z ktoreho prichadzaju data, zapnut prenos a pod.)

    Nenapada niekoho, cim moze byt sposobene spomalene citanie z prevodnika? (Google nasiel iba jedneho zufalca, ktoremu libusb nacitalo z fotaku zmrsene data).

    Do riesenia, ktore sa ponuka ako prve (prepis na jadrovy modul) sa mi nechce. Vysvetlim. Cely program bol postaveny na tomto module az do leta 2006, kedy nekonecne a zufale (a vyvojarmi jadra neriesene) problemy so stabilitou tohoto modulu ma donutili prepisat to na libftdi. Dnes uz sice podla changelogov konecne modul opravili (chyba bola v module usbserial), ale fakt sa mi nechce zase celu komunikacnu vrstvu prepisovat naspat. Program sa odvtedy hodne vyvijal a neda stara verzia vrstvy sa v podstate pouzit neda. Prepis by znamenal cca tyzden prace. Uz samotny prepis na libftdi ma stal hodne nervov a prace.

    Dik vsetkym zapojenym.
    If you hold a Unix shell up to your ear, you can you hear the C.

    Odpovědi

    19.1.2007 16:59 Andrej Herceg | skóre: 43
    Rozbalit Rozbalit vše Re: Divna rychlost cez libftdi (libusb)
    Skúšal si zvýšiť baudrate (a možno aj paritu a stop bity)?
    19.1.2007 17:14 Konopka | skóre: 4
    Rozbalit Rozbalit vše Re: Divna rychlost cez libftdi (libusb)

    Urcite nejsem ten pravy clovek na radu s programovanim v Linuxu, ale zkousel jste tam hodit nejaky jednodussi signal nez je "rec". Co bych si od toho sliboval? Dam si na vstup AD prevodniku sinus, pak si to poslu do souboru a zjistim, jestli mi chybi hodnoty s nejakou pravidelnosti nebo je to "nahodny stav".

    Mate moznost proverit, jestli se Vam ten chip (ftdi) nezahlti a jestli treba (datasheet):
    To send data from the peripheral to the host computer, simply write the byte-wide data into the module when TXE# is low. If the (384-byte) transmit buffer fills up or is busy storing the previously written byte, the device keeps TXE# high in order to stop further data from being written until some of the FIFO data has been transferred over USB to the host. TXE# goes high after every byte written.

    Zkousel jste grab usb komunikace pri tom cat /dev/tty/USB0 a v tom Vasem program a porovnat vysledek. Jestli ne, tak zkuste kouknout na http://wiki.wireshark.org/CaptureSetup/USB

    A posledni vec. Aby vam nekdo byl schopen pomoci s tim programem, mozna by nebylo spatne sem hodit kousek nejakeho kodu (jestli teda muzete, kdyz to pro nekoho pisete).

    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.