Fórum témák
» Több friss téma |
Hello
Nem akartam a linksys-es topikba belekeverni ezt és openwrt topikot se találtam Egy vonalkövető modellautót szeretnék felvértezni wifi kapcsolattal, amit egy TP-link WA901ND soros portján kersztül szertnék megvalósítani. Feltelepítettem az openwrt egyik változatát, majd a a ser2net nevű programot a hálózati eszközre, ha jól emlékszem a program alapbeállításaihoz nem is kellett nyúlnom aminek egyik sora így nézett ki 2001:raw:600:/dev/ttyS0:9600 NONE 1STOPBIT 8DATABITS XONXOFF LOCAL -RTSCTS (a fenti linken le van írva mi mit jelent) a hangkártyás oszcilloszkópom csatlakoztattam a RX lábra hogy így detektáljam, ha kijön róla valami. Puttyn keresztül raw módban csatlakoztam a 192.168.2.1:2001, az eszköz címére, a port az előbbi beállításokban volt megadva, és örömmel tapasztaltam, hogyha küldök valamit az valamilyen formában megjelent a monitor oszcilloszkóp képernyőjén. De amikor a visszirányú kommunikációt akartam tesztelni, összekötöttem az RX és TX lábat akkor amint küldtem valamit rögtön abban pillanatban bezárult a puttys ablak gondolom megszakadt az összekötetés a hálózati eszköz és a gépem közt. Próbálkoztam aztán a puttyn kívül más programokkal is vagy a program beállításait próbáltam változtatni de mindig connection lost volt az eredménye. Ennek a ser2net programnak meglehet még adni valamiféle controller portot, ahova szintén tudok csatlakozni puttyval ott van valamiféle monitor de amit bármilyen portra betudok állítani, de mindig invalid port numbert kapok Aztán van még a serialoverip nevű program de ezzel nem tudtam eredményt elérni. Tudna valaki segíteni, hogy tudnám megoldani, hogy a visszirányú kommunikáció is működjon? Talánn valamiféle hálózati protokoll nemengedi, hogy ez így létrejöjjon, de hálózatok terén nemvagyok otthon. Köszönöm!
Szóval ha küldök valamit puttyval az acess point címére vagyis a 192.168.2.1 és a 2001es porta, akkor az szépen megjelenik az acess point RX lábán(ugye mert van ez a ser2net nevű programocska ami átirányítja ezt a komunikációt a soros portra), de ha visszafele szeretnék kommunikálni, vagyis a TX lábra küldök valamit, amit úgy érek el, hogy az RX és TX lábat összekötöm így ugyanazt kéne visszakapnom amit elküldtem(a notebookal), ilyenkor miután bármit küldök rá az megint megjelenik a soros porton, viszont a notebookban rögtön bezárul a putty ablak, vagyis megszakad a kommunikáció és nem kapok vissza semmit. Nekem inkább az lenne fontosabb hogy a notebook felé tudjak adatokat küldeni és pont ez nem működik.
Ha az AP felé küldessz valamit az az AP TX vonalán fog megjelenni.
Ami probléma: -XONXOFF kell neked mert nincs flow control http://linux.die.net/man/8/ser2net Ha a Putty bezárja az ablakot akkor azt jelenti, hogy eltört a socketed (a szerver elhalt/bontotta a kapcsolatot). Ha -XONXOFFal sem megy úgy sem megy akkor meg kellene nézni hogy megy e a mutatvány után a ser2net (ps aux | grep ser2net)
Jelenleg ez van a ser2net beállításfájljába írva
2001:raw:600:/dev/ttyS0:9600 NONE 1STOPBIT 8DATABITS XONXOFF LOCAL -RTSCTS Ez azt jelenti hogy van XONXOFF nem? De így is ha össze van kötve az RX és a TX ha küldök valamit a putty rögtön bezárja az ablakot, az ablakbezárás után is újra meglehet nyitni ebből arra következtetek hogy továbbra is fut a ser2net és ha nyomok egy ps parancsot, akkor is ott van a ser2net. Viszont érdekes én is a TX vonalán vártam hogy megjelenjen valami de ha erre hallgatok Idézet: ami az openwrt oldaláról van akkor nekem ez ami megjelenik az RX vonalon van, a másikon semmi. „The serial console connector has the usual TP-Link pinout: RX - TX - GND - +5V (Power connector)” Idézet: „[-]XONXOFF turns on (- off) XON/XOFF support” Ha mínuszt teszel elé akkor kapcsolja ki, de javítsatok ki ha tévedek. TX = transmit RX = receieve Akkor az openwrt oldalán van elrontva a kiosztás.
Most megpróbáltam úgy hogy egy másik gép soros protjára kötöttem persze max232 szinteillesztő ICvel, de ugyanaz a hiba. Ha putty segítségével raw módban küldök adatot a 192.168.2.1:2001re akkor szépen utazik az adat:
notebook>wifi AP>wifi AP soros port>asztali gép és hiba nélkül visszakapom, de ha az asztali gépről akarok küldeni valami vagyis ezt szeretném: asztali gép>wifi AP soros port>wifi AP>notebook akkor rögtön bezáródik a puttys ablak. Most megnéztem az openwrt system logját és abban ezt írja: Aug 10 02:13:26 OpenWrt daemon.err ser2net[1148]: dev read error for port 2001: Resource temporarily unavailable Idézet: „Aug 10 02:13:26 OpenWrt daemon.err ser2net[1148]: dev read error for port 2001: Resource temporarily unavailable” Első tippre ez programozási hibának tűnik a ser2net-ben. Szóval néznék másik programot, vagy próbálnék írni egyet.
Hát ezt szomorúan hallom, végül sok-sok bűvészkedés után egyszer csak elkezdett működni, de egy reboot után megint nem ment és azóta ezt nem is tudtam megismételni, de jó volt látni végre milyen az ahogy mennie kéne.
Amúgy a console outot letiltottad az inittabban?
Nem, nem is tudom, hogy mi az, sajnos alig értek a linux rendszerkhez most ismerkdek csak velük komolyabban.
Leírnád, hogyan kell ezt letiltani?
Ha van a /etc/inittab-ban ttyS0-át tartalmazó sor, azt ki kéne kommentelni, aztán mehet egy "init q" parancs.
Találltam ilyen sort, kitöröltem, amikor beírtam a init q parncsot ezt kaptam válaszul:
init: must be run as PID 1
MŰKÖDIK!!!
Többszöri ujraindítás után is hibátalnul megy úgy ahogy kell az init q parancs nem is kell úgy látszik elég volt kitörölni a fentebb említett sort. Köszönöm mindkettőtöknek a kitartó segítséget!
Még annyit, hogy én egy 128pixeles kamera jeleit akarom továbbítani a notebook felé ami olyan 200fpsel működik ami nem más mint egy 128as init tömb szóval 128*4byte*200=100kb/s adat nagyából, init helyett talán kisebb helyigényű változót is használhatnék. Ahhoz, hogy minden adat célbaérjen milyen beállításokkal érdemes kisérletezni? Legyen XONXOFF vagy ne? Jobb a sokkal magasabb baud rate vagy teljesen elég amin még épp áttér ennyit adat?
Ennek a kapcsolatnak a sebességét, most mi határolja be a soros port 155kbpsje vagy a wifi kapcsolat sebessége?
Az init q parancs helyett a reboot is megfelelő, ill. az openwrt-ben olyan init van, aminél csak a reboot megy.
Wait. Te a soros portra akarsz tenni egy kamerát amit ser2nettel akarsz áttolni?
Idézet: „init helyett talán kisebb helyigényű változót is használhatnék” Mit, hova? XONXOFF szerintem felesleges, de ez úgyis a folytatott kommunikáción múlik.
Van ez a verseny, freescale cupnak hívják youtube egy fekete csíkot kell követnie az autónak amit egy egysoros 1x128pixeles kamerával lát ezt egy freescale processzor dolgozza fel és ennek megfelelően irányítja a kanyarodást vagy a motorokat hátul, különféle érzékelőket lehet rakni az autóra, akié leggyorsabban végigmegy a pályán az nyer.
freescale cup wiki Ezzel a wifi kapcsolattal egyfajta menet közbeni debuggolsát szeretnék, figyelni a változókat ilyesmit. Persze bluetoothal egyszerűbb lett volna, de mégiscsak így most ezt bárhonnét eltudom érni és ez az AP volt otthon most legalább felhasználtam.
Á ez vicces. Szerintem debugoláshoz a 200 FPS nem kell úgysem, illetve a Freescale procid UART-ját gondolom az égig lehet húzni, a TPélinkét meg első körben ki kell próbálni setserial-lal, hogy bír-e 230400-at pld. és ha igen akkor megpatchelni a ser2netet, hoigy vigye.
Próbáltam a ser2net konfigurációs fájljába átírni a 115200at, nagyobbra de ha csak 125200ra tettem már akkor se ment, próbáltam még a 230400at és a 172800at, de semmi adata se jött ki, még egy hibás karakter se.
Bekéne először állítani a setserialal? Tudnátok írni erre egy parancsot?
1. Nem tudsz bármilyen számot beírni, mivel azon a felületen, amin a sebességet állítja a program, ott csak fix értékek közül lehet választani (azaz nem tudsz pl. 42763 bps-t választani).
2. A HW nem feltétlenül tud bármilyen nagy értéket előállítani, amit a felületen be lehet állítani (pl. 4000000 bps biztosan beállítható, de ezt a legtöbb soros port nem tudja).
A ser2net nem támogat 115200 felett semmit. Azonban ha a vas igen akkor egyszerűen át kell írni a kódját újrafordítani és csókolom.
Itt egy kommit amiben a 600-as baudot adtk hozz:
A vége lemaradt:
Bővebben: Link
sziasztok!
Nekem is ser2net-el lenne problémám, csak az a gond, hogy nem openwrt, hanem ddwrt és nem igazán tudom felpakolni rá, mivel nincs benne semeilyen csomagkezelő. Valaki nem próbálta már felrakni ddwrt -re? Üdv, Matt
Nem ismerem a ddwrt-t, de elvileg az openwrt-re épül. Próbáltad az opkg-t? ha nem, ssh-zál be, és add ki az opkg-t. Ha fel van telepítve, akkor biztos nyom legalább egy helpet. nehezen tudok elképzelni linuxot csomagkezelő nélkül.
Hasznos dolgok: http://www.howtogeek.com/98408/how-to-install-additional-software-o...d-wrt/ és http://tothszabi.info/openwrt
Én openwrtvel úgy csinálnám, hogy: 1.Puttyval SSH a megfelelő IP:port 2.legyen rajta net 3.utánna kiadnáma a "opkg update" parancsot ezzel lehúzza, hogy milyen csomagokat lehet felpakolni rá 4. "opkg install ser2net" felinstallálja a ser2net programot 5.indítsd el "ser2net" paranccsal, ilyenkor nekem nem ír semmit, utána kiadnám a "ser2net -help" parancsot, így ha be van installálva akkor kijön a program leírása és ez openwrttől, ddwrttől független.
A FlyRouter mond valakinek valamit? Amit eddig megtudtam, hogy valami linuxos firmware féleség. Maga a flyrouter.net orosz nyelvű oldal, az orosz meg... hát régen sem volt az erősségem. Van egy Edimax BR-6214K vezetékes routerem, és jó lenne soros-ethernet konverterré alakítani. Ez a Flyrouter projekt - úgy értelmeztem - elvileg arra jött létre, hogy az ilyen (vagy hasonló) routerekre soros porton GPS-t illesszen. (Arra nem jöttem rá, ez mire jó, de engem csak a soros portig érdekel a dolog) Ha jól emlékszem, pont a ser2net kapcsán jött egy angol oldal a sok orosz között, és meglepődve láttam, hogy az én régóta szekrényben sínylődő routerem is közte van a támogatott készülékeknek. De valahogy sehogy nem tudom felfogni, hogy mit is kell leszedni?
Szia!
Beléptem rá, de nincs rajt opkg. Max ipkg. Üdv
Sziasztok!
Windows alatt létezik valami "ser2net"-féle program ?! Steve
Az ipkg parancsra mit válaszol? Ha megcsinállod azt amit írtam csak mindenhol ipkg paranccsal, akkor mit csináll?
Ha oylan programra gondolsz ami létrehoz a gépen egy virtuális com portot és az erre érkező kommunikáció átirányítja egy IPre, akkor próbáld meg ezt vagy ez lehet valamelyikkel létező com portra is irányítható az adat. Én azért használom ezeket, mert programból csak a soros portokat tudom kezelni, egyszerű programot írni rá.
|
Bejelentkezés
Hirdetés |