lrzsz sx xmodem használata

Fórumok

Sziasztok!

Valaki tudna segíteni az lrzsz sx xmodem használatában? Adott egy SIM5320E modem modul. Win alól hyperterminal-al gond nélkül lehet rá feltölteni a LUA és egyéb fájlokat az AT command doksi ( http://www.microchip.ua/simcom/WCDMA/SIM5320/SIMCOM_SIM5320_ATC_EN_V1.2… ) 517 oldalától leírtak alapján xmodem protokollal, viszont a modemet egy Openwrt-s MR3020-as routerre csatlakoztatnám, ráadásul fixre forrasztva, tehát nagyon macerás lenne ide-oda dugdosni a router és a win PC között.

Első körben próbáltam ser2net-el átlőni a ttyUSB2 portját ami AT parancsokra működik is, de az xmodem küldés hibába fut. Lenne hozzá egy grafikus EFS Explorer nevű progi is, ami szintén nem szereti a hálózaton átlőtt portot, mert kifejezetten a diag port nevére vadászik a csatlakoztatott eszközök között és egyedi sorosportra nem lehet rácsatlakozni vele.

Felraktam az openwrt-re a minicom mellé az lrzsz-t hogy legyen xmodem támogatás is, de se a minicom-ból, se az sx-et parancssorból használva nem sikerül rávennem a sikeres fájlküldésre - az ideális a parancssoros volna, a minicom csak félmegoldás lenne...

Más-más a reakció, ha először minicom-ból kiadom a at+crxfile="hw1.lua" AT parancsot, majd próbálom küldeni a fájlt parancssorból:
sx -vv -bb /root/hw1.lua < /dev/ttyUSB2 > /dev/ttyUSB2
(a < dev > dev részt guglizva kukáztam össze, lehet már ott nem stimmel)
ilyenkor nem jön semmi értelmes reakció az sx-től, csak néha beugrik 1-1 NO CARRIER, +CGPS=0 meg hasonló rendszerüzenet a modemtől, egészen CTRL-C-ig

Ha megpróbálom magát az AT parancsot is belefűzni:
sx -vv -bb -cc at+crxfile="hw1.lua" /root/hw1.lua < /dev/ttyUSB2 > /dev/ttyUSB2
akkor az sx dobál vissza ezt azt hogy kapott ACK byte-okat néha, de továbbra is sikertelen a küldés

Tudna valaki segíteni benne, hogy hogyan tudnám működésre bírni?

Hozzászólások

Jól értem, hogy minicom-ból AT parancsok mennek rendesen, de az xmodem küldés már nem? Fura, mert ha a baudrate, flow control, stopbitek száma, stb. jól be van lőve, akkor mennie kellene. Legalábbis az egy fura hiba, ha az AT parancsok átmennek, az sx meg nem...

köszi a tippeket, de sajnos így se jutottam előbbre...

bár eddig a parancssorral szenvedtem, de most próbálnám minicom-ból összehozni első körben:

az ATC doksi szerint: 115200bps, 8 bit data, no parity, 1 bit stop, no data stream control - erre állítottam a minicom-ot:

A - Serial Device : /dev/ttyUSB2
B - Lockfile Location : /var/lock
C - Callin Program :
D - Callout Program :
E - Bps/Par/Bits : 115200 8N1
F - Hardware Flow Control : No
G - Software Flow Control : No

ha bemegyek az xmodem küldésbe (CTRL+A > S > xmodem), kiválasztom a fájlt és mehet, akkor leblokkol itt:
┌───────────[xmodem upload - Press CTRL-C to quit]────────────┐
│Sending hw1.lua, 0 blocks: Give your local XMODEM receive com│
│mand now. │
local xmodem command, de hová? ha csak úgy vakon beszúrom vágólapról enter-el együtt, akkor azt letojja

több virtuális portja is van a modemnek. ha éppen nincsen betárcsázva akkor az USB3 ugyanúgy viselkedik mint az USB2 > megpróbáltam a 2-n küldeni xmodem-el, közben a 3-ra meg amikor bekérdezett, odavágtam az rx parancsot > a következő részben lévő eredményt kaptam...

ha először kiadom az at+crxfile="hw1.lua" parancsot, majd utána megyek az xmodem küldésbe, akkor pedig itt ragad le:
┌───────────[xmodem upload - Press CTRL-C to quit]────────────┐
│Sending hw1.lua, 0 blocks: Give your local XMODEM receive com│
│mand now. │
│Xmodem sectors/kbytes sent: 0/ 0kRetry 0: Got 00 for sector│
│ ACK │
várhatok rá a végtelenségig, ha megszakítom akkor nincsen fogadó módban már > eszi pl az ATI parancsot

a flow control vonalon elindulva kipróbáltam hw és sw flow control-al is, de egyiknél sincsen semmi változás...

----------------------

közben kicsit játszottam a hardver beállításaival. erősen úgy tűnik, hogy az USB-s virtuális portokra csatlakozva nincsen semmiféle flow control... amíg nem nyúltam máshoz, addig ezt dobta az at+ifc? : RFR and CTS pin are not in FLOW CTRL mode! > az ATC doksi ezt a megjegyzést írja hozzá: Before using this AT, please make sure AT+CGFUNC=11 return “+CGFUNC: 1”, Otherwise this AT will always report “RFR and CTS pin are not in FLOW CTRL mode!” . az AT+CGFUNC parancs pedig a hardverhez, a GPIO lábak beállításaihoz kapcsolódik hogy digit ki/bemenet legyen, vagy egyéb funkció legyen hozzátársítva mint UART flow control, I2C, SPI, stb stb... próbából átböktem aktívra az UART flow control-t, az IFC-t is hw flow controlra állítottam, majd utána a minicom-ot
is így lőttem be > semmi változás

ckermit-et próbáltad esetleg a minicom+lzszeresdfadfasdfasf páros helyett?

most egy ubuntu-n próbálgatom ezt a c-kermit progit hogy ezzel menne e, de csak eddig jutottam:

mips@ubuntu:~$ sudo kermit -s /home/mips/hw1.lua -l /dev/ttyUSB2 -C at+crxfile="hw1.lua"

?Carrier required but not detected

Closing /dev/ttyUSB2...OK

"carrier-watch off" -ot viszont nem látok a paraméterek között :S a konzoljában lenne set carrier-watch off, de ott meg még nem sikerült rájönnöm hogy hogyan lehetne az rx AT parancsot beadni neki, majd küldeni a fájlt...