Âñåì ïðèâåò,
Âîò ðåøèë ñîçäàòü òåìó, ïîñâÿùåííóþ ñîçäàíèþ êîìïîíåíò èíôðàñòðóêòóðû APRS íà áàçå îáû÷íûõ ñåðèéíûõ ìàðøðóòèçàòîðîâ, êîòîðûå åñòü ñåé÷àñ ïðàêòè÷åñêè ó êàæäîãî äîìà, ïîýòîìó, äóìàþ, ýòî áóäåò èíòåðåñíî íå òîëüêî ìíå îäíîìó.
Äëÿ ýêñïåðèìåíòîâ áûë âûáðàí ìàðøðóòèçàòîð Asus RT-N16 (http://www.asus.com/Networking/RTN16/) ïî äâóì ïðè÷èíàì: 1) ýòî ñàìûé äåøåâûé ìàðøðóòèçàòîð ñ äâóìÿ USB 2.0 ïîðòàìè èç íàéäåííûõ ìíîé; äâà ïîðòà íóæíû äëÿ òîãî, ÷òîáû áåç âíåøíèõ USB-õàáîâ ìîæíî áûëî îäíîâðåìåííî ïîäêëþ÷èòü è ôëåøêó ñ íóæíûì ñîôòîì, è ðàäèîñòàíöèþ; 2) åãî îïåðàöèîííàÿ ñèñòåìû - AsusWRT - ïîñòðîåíà íà áàçå øèðîêî èçâåñòíîé ÎÑ äëÿ ìàðøðóòèçàòîðîâ OpenWRT è èíòåðôåéñíîé íàäñòðîéêè íàä íåé ïîä íàçâàíèåì TomatoUSB. Òàê ÷òî íèêàêèå ïëÿñêè ñ áóáíîì ïî âêîðÿ÷èâàíèþ OpenWRT/DD-WRT/TomatoUSB ïðîñòî íå íóæíû. Êðîìå òîãî, Asus âûêëàäûâàåò âñå èñõîäíûå òåêñòû è ãîòîâûå ñðåäñòâà êðîññ-êîìïèëÿöèè äëÿ ñâîåé AsusWRT, ÷òî, áåçóñëîâíî, îáëåã÷àåò çàäà÷ó.
Äëÿ ðåàëèçàöèè ñàìîãî APRS áûë âûáðàí ñîôò aprx 2.07 (http://wiki.ham.fi/Aprx.en) êàê ðåàëèçóþùèé âåñü íåîáõîäèìûé ìíå ôóíêöèîíàë (digipeater+Rx/Tx iGate), íå òðåáóþùèé ïðè ýòîì îò ÎÑ íè÷åãî, êðîìå ñòàíäàðòíîé áèáëèîòåêè äëÿ ÿçûêà C è âñëåäñòâèå ýòîãî çàíèìàþùèé ñêðîìíûå ðàçìåðû â îïåðàòèâíîé ïàìÿòè (ó ìåíÿ ïîëó÷èëîñü ìåíüøå îäíîãî 1Ìá).
 êà÷åñòâå ðàäèîñòàíöèè íà íà÷àëüíîì ýòàïå èñïîëüçîâàëñÿ Kenwood TH-D72, ïîäêëþ÷àâøèéñÿ ñðàçó ê ìàðøðóòèçàòîðó ïî USB. È çäåñü ñðàçó âîçíèê ðÿä ïðîáëåì:
1.  TH-D72 èñïîëüçóåòñÿ USB<->Serial ÷èï CP2102 îò Silicon Labs (http://www.silabs.com/products/inter...rt-bridge.aspx).  AsusWRT åñòü äðàéâåðû òîëüêî äëÿ PL2303 îò Prolific è FT232 îò FTDI. Äðàéâåðà äëÿ CP210x òàì íåò, ïîýòîìó ïðèøëîñü åãî êîìïèëèðîâàòü è ïîäãðóæàòü äîïîëíèòåëüíî ñ ôëåøêè.
2. Ïîñëå òîãî, êàê ÿ ýòî ñäåëàë, è TH-D72 âûäàëà ïåðâûé ïàêåò â ýôèð, ìàðøðóòèçàòîð ïðîñòî óìåð. Åñòü ñèëüíîå ïîäîçðåíèå, ÷òî èç-çà, ÷òî êîðïóñ USB-ðàçúåìà ñîåäèíåí ñ êîðïóñîì ñàìîé ðàäèîñòàíöèè, âêëþ÷àÿ ðåçüáó àíòåííîãî ðàçúåìà. Ò.å., âåðîÿòíî, ìàðøðóòèçàòîð íå âûäåðæàë ðàáîòû â êà÷åñòâå ïðîòèâîâåñà äëÿ àíòåííû ïîðòàòèâêè â ìîìåíò èçëó÷åíèÿ åþ â ýôèð 5 âàòò.
3. Äëÿ ãàëüâàíè÷åñêîé ðàçâÿçêè áûë êóïëåí ñïåöèàëüíûé àäàïòåð USB2ISO (http://electronics-shop.dk/isolated_...m?currency=EUR). Ñî ñâîåé çàäà÷åé îí ñïðàâèëñÿ - íîâûé ìàðøðóòèçàòîð, ïîëó÷åííûé âçàìåí ñòàðîãî ïî ãàðàíòèè, íå ñãîðåë ïîñëå ïåðåäà÷è ïåðâîãî ïàêåòà. Îäíàêî ñòàíöèþ ïåðåñòàëà ïðèíèìàòü êàêèå-ëèáî ïàêåòû. Êðîìå òîãî, ó íåé ñòàë ÷àñòî îòêðûâàòüñÿ øóìîäàâ ñ ïîìåõàìè. Êàê âûÿñíèëîñü, ïîìåõè ñîçäàâàë ýòîò àäàïòåð - êîãäà ÿ ïîäîøåë ê íåìó ñ Yaesu VX-8R, îíà ñòàëà âåñòè ñåáÿ òî÷íî òàêæå. Ïðè îòêëþ÷åíèè ýòîãî àäàïòåðà ïðèåì íîðìàëèçîâàëñÿ. ×òîáû èçáåæàòü ïîâòîðíîãî âûõîäà ìàðøðóòèçàòîðà èç ñòðîÿ, áûë êóïëåí îòäåëüíûé êàáåëü USB A<->mini USB B ñ äâóìÿ ôåððèòàìè, è ïîñëå ôåððèòà ó ðàçúåìà mini USB áûëè àêêóðàòíî ñíÿòû îïëåòêà è ýêðàí, ÷òîáû ãàëüâàíè÷åñêè ðàçâÿçàòü ìàññû ìàðøðóòèçàòîðà è ðàäèîñòàíöèè. Ïîñëå ýòîãî ñâÿçêà RT-N16+TH-D72 óñïåøíî çàðàáîòàëà áåç ïðè÷èíåíèÿ âðåäà äðóã äðóãó.
Èòàê, â ïðèëîæåíèè ê ýòîìó ñîîáùåíèþ - ñêîìïèëèðîâàííàÿ aprx 2.07 ñ äîïîëíèòåëüíûìè ñêðèïòàìè äëÿ àâòîçàïóñêà ïðè âñòàâëåíèè ôëåøêè/çàãðóçêå ìàðøðóòèçàòîðà.
×òî íóæíî ñäåëàòü:
1. Ðàñïàêîâàòü ïðèëîæåííûé àðõèâ â êîðåíü êàêîé-íèáóäü ôëåøêè. Æåëàòåëüíî, ÷òî ôëåøêà áûëà îòôîðìàòèðîâàíà â ôàéëîâîé ñèñòåìå ext3. Âî âñÿêîì ñëó÷àå, âñå ýêïåðèìåíòû ÿ äåëàë ñ íåé. Äëÿ ýòîãî íåîáÿçàòåëüíî èìåòü êîìï ñ Linux'îì - âñå ýòî ìîæíî ñäåëàòü è íà ñàìîì RT-N16, óòèëèòà mkfs.ext3 â íåì åñòü.
2. Çàïóñòèòü ñ ôëåøêè ñêðèïò aprx/nvram_autorun.sh - îí óñòàíàâëèâàåò äâà ïàðàìåòðà ìàðøðóòèçàòîðà äëÿ àâòîìàòè÷åñêîãî çàïóñêà êðèïòà .autorun èç êîðíÿ ôëåøêè ïðè ìîíòèðîâàíèè/ðàçìîíòèðîâàíèè.
3. Ïîäðåäàêòèðîâàòü ôàéë êîíôèãóðàöèè aprx/etc/aprx.conf.in. Òî÷íåå, ýòî íå ñàì ôàéë êîíôèãóðàöèè, à øàáëîí äëÿ ñêðèïòà .autorun, êîòîðûé ïîìåíÿåò â íåì ïåðåìåííóþ @basedir@ íà ðåàëüíóþ äèðåêòîðèþ, êóäà îêàæåòñÿ ïîäìîíòèðîâàííîé ôëåøêà è óæå ñ ýòè íîâûì ôàéëîâ êîíôèãóðàöèè è çàïóñòèò aprx. Ïîäðîáíàÿ äîêóìåíòàöèÿ îòíîñèòåëüíî êîíôèãóðàöèè aprx äîñòóïíà íà http://wiki.ham.fi/Aprx.en.
4. Ïîñëå ýòîãî èçâëå÷ü è âñòàâèòü çàíîâî ôëåøêó, ëèáî íàáðàòü "<mount_dir>/.autorun <mount_dir> start" (áåç êàâû÷åê), ãäå <mount_dir> - äèðåêòîðèÿ, êóäà ïîäìîíòèðîâàëàñü âàøà ôëåøêà.
5. Ñêðèïò .autorun òàêæå çàãðóæàåò äðàéâåð äëÿ USB<->Serial ÷èïîâ CP2101/2102, êîòîðûé íàõîäèòñÿ â ôàéëå aprx/lib/cp2101.ko.
Ñîáñòâåííî, âñå.
 çàêëþ÷åíèå ìîãó äîáàâèòü, ÷òî ñàì ãîòîâûé ñîôò äîëæåí ðàáîòàòü íå òîëüêî íà ìàðøðóòèçàòîðàõ Asus ñ ÎÑ AsusWRT, íî âîîáùå íà âñåõ ìàðøðóòèçàòîðàõ ïîä Linux'îì ñ ïðîöåññîðàìè àðõèòåêòóðû MIPS Little Endian, èñïîëüçóþùèõ áèáëèîòåêó uClibc (http://www.uclibc.org/). Òàê ÷òî æåëàþùèå ìîãóò ïîýêñïåðèìåíòèðîâàòü . Ó ìåíÿ æå â áëèæàéøèõ ïëàíàõ - çàïóñê ñâÿçêè Asus RT-N16+Alinco DR-135TMK3/EJ-41U. Ïîñìîòðèì, ÷òî ñãîðèò íà ýòîò ðàç![]()






