Cezary napisał/a:To jeszcze znajdź kod do przełączenia na normalnie WCDMA. Wtedy będzie można to oskryptować. Bo jeżeli to jest ten kod to na razie mamy przełączenie w jedną stronę 
Znalazłem chwilę czasu i wróciłem do tematu komend przełączających ADU-890W. Dosyć ciężka dłubanina za pomocą narzędzi dostępnych w Windows, użyłem darmowego programu do podsłuchu pakietów USB oraz świetnego programiku RealTerm. Metodą prób i błędów sprawdzałem jakie pakiety idą, później zwalniałem port i testowałem komendy pod RealTerm (można tam zapodawać długie wiadomości w hex (większe niż 64 bajty należy dzielić i słać po kawałku).
I oto co udało mi się wydedukować:
komunikacja idzie, tak jak wcześniej pisałem, ramkami HDLC z sumą kontrolną, którą wylicza m.in. programik skompilowany przez Cezarego. Generalnie należy pomijać 3 ostatnie bajty bo nie są ważne.
Niektóre komendy dość łatwo idzie rozszyfrować po odpowiedziach:
\xCF\x00\x16\x26\xF3\x7E -> podaj typ urządzenia
\xCF\x05\x00\x29\xF8\x7E -> podaj typ modemu
\xD2\x09\x00\x63\x2B\x7E -> zwraca numer dostępowy SMS
\xCF\x1A\x00\x70\xEE\x7E -> zwraca ustawienia dostępu dla 3g (APN)
\xCF\x01\x00\x49\x9F\x7E -> komenda wysyłana co kilkaset ms w trybie WCDMA zwraca tryb, nazwę operatora i prawdopodobnie siłę sygnału
\xCF\x00\x02\x83\xA5\x7E -> komenda wysyłana co kilkaset ms w trybie CDMA nie zwraca operatora ale chyba siłę sygnału tak
oprócz nich co 5 sekund w obu trybach idą ramki \xD2\x0E\x00\x6B\x66\x7E ; \xD2\x0F\x00\xB3\x7F\x7E ; \xD2\x10\x00 \xEA\x69\x7E (tak by to wyglądało, że bajt \xD2 otwiera komendy dla SIM a \xCF dla modemu, więc może te tutaj to coś z SMS, kontaktami?)
Udało mi się zmienić kilka razy (nie zawsze skutecznie) tryb CDMA/WCDMA. Prawdopodobnie tutaj ważne jest co modem odpowiada, ponieważ do zmiany potrzeba serii komend.
I tak dla zmiany na 3G potrzeba takich komend:
\xCF\x00\x17\x13\x7D\x5D\x8F\x7E
\xCF\x07\x00\x99\xCB\x7E
\xD5\x26\x00\x0A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xCF\xED\x7E
oraz długa ramka z danymi konfiguracyjnymi (dla 3g pusta, dla CDMA numer email i numer 777)
\xCF\x00\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xE4\x0A\x7E
do zmiany na CDMA potrzeba:
\xCF\x00\x17\x0A\x3D\x02\x7E
\xD5\x26\x00\x51\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xCF\xB3\x7E
\xD5\x26\x00\x0A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xCF\xED\x7E
(długa ramka z emailem i 777)
\xCF\x00\x18\x63\x64\x6D\x61\x40\x6F\x72\x61\x6E\x67\x65\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0B\x65\x78\x6B\x64\x6D\x6F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x23\x37\x37\x37\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x39\xF0\x7E
Może być tak, że któraś jest zbędna ale nie udało mi się czysto przełączyć bez wklepania wszystkich po kolei.
Teraz pytanie jako to przetestować pod OpenWrt?