strona główna
artykuły i recenzje
poradniki
galeria zdjęć
fotoblog

TP-Link TL-WR841N v8.x - wolne GPIO w złączu JTAG

Dodano: Niedziela, 14 lipca 2013, godzina 20:05:28
Kategoria: Moje projekty i pomysły

Jeżeli jesteście w posiadaniu routera TP-Link TL-WR841N w wersji z serii v8.x (czyli z układem SoC Atheros AR9341) i korzystacie z alternatywnego firmware OpenWrt, to powinna ucieszyć Was informacja o pewnym odkryciu, w którym miałem swój udział. Producent umieścił w tym urządzeniu gniazdo JTAG, oznaczone na PCB jako JP2 (2×7 wyprowadzeń ze standardowym rozstawem 2,54 mm), w którym 4 sygnały są połączone bezpośrednio z wyprowadzeniami GPIO w procesorze. Po zastosowaniu niewielkiej poprawki, która pojawiła się niedawno w gałęzi rozwojowej OpenWrt, możliwe jest wykorzystanie wszystkich 4 sygnałów GPIO, w praktycznie dowolnym celu.

Na poniższym obrazku opisałem wszystkie sygnały dostępne w złączu JP2. Jak widać, domyślnie tylko GPIO2 (JP2-5) jest podłączone bez żadnego rezystora podciągającego/ściągającego. Pozostałe sygnały, tj. GPIO0, GPIO1 i GPIO3 posiadają rezystory ściągające (tzw. pull-down) o wartości 1 kOhm (odpowiednio: R22, R19 i R20). Bez żadnych przeszkód można je usunąć lub zamienić np. na rezystory podciągającego. Router startuje w każdej konfiguracji rezystorów na tych liniach sygnałowych (mogą tam być rezystory ściągające, podciągające lub ich brak). Żeby potwierdzić możliwość wykorzystania tych sygnałów, wykorzystałem 16-bitowy przetwornik AD z magistralą I2C - model Texas Instruments ADS1100. O tym jak uruchomić magistralę I2C w OpenWrt, wykorzystując dwa dowolne GPIO możecie przeczytać w artykule OpenWrt - GPIO.

Należy pamiętać o tym, że obciążenie prądowe wyprowadzeń GPIO jest raczej bardzo niewielkie (rzędu miliamperów), wystarczające co najwyżej do zasilenia zwykłej diody LED. Dlatego, jeżeli zamierzacie wykorzystać te sygnały do sterowania czymś innym (np. przekaźnikiem), to niezbędne jest zastosowanie jakiegoś tranzystora lub dedykowanego drivera z izolacją. Co więcej, wejścia/wyjścia cyfrowe w tym układzie zasilane są z wewnętrznego stabilizatora 2,62 V i raczej na pewno nie są odporne na podanie napięcia wyższego niż około 3,3 V (takie napięcie przetestowałem w trybie wejścia cyfrowego). Poniżej jeszcze zbliżenie na rezystory na liniach sygnałowych GPIO0, GPIO1 i GPIO3 (R19 został już wcześniej usunięty).

Na chwilę obecną nie jest jeszcze pewne, czy ta poprawka wejdzie ostatecznie do głównej gałęzi OpenWrt. Gdyby tak się nie stało, to alternatywnym rozwiązaniem będzie wyłączenie JTAG w bootloaderze. W planach mam modyfikację U-Boot dla routerów z AR9341, w której na pewno uwzględnię tę możliwość. Co więcej, bardzo podobne rozwiązanie można zastosować również w innych routerach z JTAG, np. w WDR3600/WDR43×0, w których zastosowano bardziej rozbudowany, ale podobny układ - Atheros AR9344 i w których również można wykorzystać GPIO z tego złącza. Więcej informacji o tym już niedługo.

» komentarzy: 4 «

Seb
Dodany: Sobota, 12 grudnia 2015 o godzinie: 14:52:38

3.3V i GND gdzie podpinasz wtedy? potrzebuje tego do sterowania modułem przekażników, podobnie miałem to rozwiązane w wrt54gl 1.1

pepe2k
Dodany: Sobota, 12 grudnia 2015 o godzinie: 18:39:48

Zasilanie możesz wziąć z gniazda konsoli szeregowej.

chuc2rk
Dodany: Wtorek, 5 lipca 2016 o godzinie: 07:08:47

Could you give me free gpio of tplink 841n ver 9 and ver 10. I need it for control relay module. Thanks!

pepe2k
Dodany: Wtorek, 5 lipca 2016 o godzinie: 08:44:09

If there is JTAG connector, they will be same as in v8.

» dodaj komentarz «





» Komentarze dodane przez niezarejestrowanych użytkowników muszą być zatwierdzone przez moderatora


» kategorie wpisów

Co nowego na stronie (wpisów: 43)
Dzikie.NET (wpisów: 16)
Humor (wpisów: 46)
Inne (wpisów: 34)
Kapsle Tymbark (wpisów: 29)
Moje projekty i pomysły (wpisów: 43)
Narzekam na… (wpisów: 16)
Nowości w galerii (wpisów: 12)
Nowości, ciekawostki (wpisów: 595)
O mnie (wpisów: 36)
Wordpress (wpisów: 1)
Zabawki (wpisów: 9)
Zdjęcie bez komentarza (wpisów: 91)
Zdjęcie z komentarzem (wpisów: 23)
Strony w domenie tech-blog.pl wykorzystują pliki cookies w celach statystycznych, analizy oglądalności oraz na potrzeby wyświetlania reklam. Jeżeli nie wyrażasz na to zgody, zmień ustawienia wykorzystywanej przeglądarki internetowej. Więcej informacji na stronie Polityka prywatności i cookies (ciasteczka).

» archiwum wpisów

styczeń 2014 (wpisów: 2)
grudzień 2013 (wpisów: 6)
listopad 2013 (wpisów: 27)
październik 2013 (wpisów: 21)
wrzesień 2013 (wpisów: 27)
sierpień 2013 (wpisów: 8)
lipiec 2013 (wpisów: 8)
czerwiec 2013 (wpisów: 6)
maj 2013 (wpisów: 16)
kwiecień 2013 (wpisów: 17)
marzec 2013 (wpisów: 18)
luty 2013 (wpisów: 22)
styczeń 2013 (wpisów: 19)
grudzień 2012 (wpisów: 20)
listopad 2012 (wpisów: 33)
październik 2012 (wpisów: 25)
wrzesień 2012 (wpisów: 15)
maj 2012 (wpisów: 1)
kwiecień 2012 (wpisów: 1)
marzec 2012 (wpisów: 1)
styczeń 2012 (wpisów: 2)
grudzień 2011 (wpisów: 1)
listopad 2011 (wpisów: 7)
październik 2011 (wpisów: 4)
wrzesień 2011 (wpisów: 1)
sierpień 2011 (wpisów: 3)
lipiec 2011 (wpisów: 2)
czerwiec 2011 (wpisów: 3)
maj 2011 (wpisów: 1)
marzec 2011 (wpisów: 3)
luty 2011 (wpisów: 5)
styczeń 2011 (wpisów: 5)
grudzień 2010 (wpisów: 6)
listopad 2010 (wpisów: 2)
październik 2010 (wpisów: 1)
wrzesień 2010 (wpisów: 4)
sierpień 2010 (wpisów: 2)
lipiec 2010 (wpisów: 4)
kwiecień 2010 (wpisów: 4)
marzec 2010 (wpisów: 12)
luty 2010 (wpisów: 4)
styczeń 2010 (wpisów: 1)
listopad 2009 (wpisów: 1)
październik 2009 (wpisów: 1)
wrzesień 2009 (wpisów: 1)
sierpień 2009 (wpisów: 3)
lipiec 2009 (wpisów: 2)
czerwiec 2009 (wpisów: 6)
kwiecień 2009 (wpisów: 1)
marzec 2009 (wpisów: 25)
luty 2009 (wpisów: 9)
styczeń 2009 (wpisów: 13)
grudzień 2008 (wpisów: 7)
listopad 2008 (wpisów: 11)
październik 2008 (wpisów: 1)
wrzesień 2008 (wpisów: 9)
sierpień 2008 (wpisów: 49)
lipiec 2008 (wpisów: 2)
czerwiec 2008 (wpisów: 39)
maj 2008 (wpisów: 52)
kwiecień 2008 (wpisów: 49)
marzec 2008 (wpisów: 58)
luty 2008 (wpisów: 38)
styczeń 2008 (wpisów: 12)
grudzień 2007 (wpisów: 16)
listopad 2007 (wpisów: 2)
październik 2007 (wpisów: 8)
wrzesień 2007 (wpisów: 16)
sierpień 2007 (wpisów: 7)
lipiec 2007 (wpisów: 3)
czerwiec 2007 (wpisów: 3)
maj 2007 (wpisów: 11)
kwiecień 2007 (wpisów: 11)
marzec 2007 (wpisów: 16)
luty 2007 (wpisów: 9)
styczeń 2007 (wpisów: 13)
grudzień 2006 (wpisów: 5)
listopad 2006 (wpisów: 4)
październik 2006 (wpisów: 13)
wrzesień 2006 (wpisów: 15)
sierpień 2006 (wpisów: 8)
lipiec 2006 (wpisów: 5)
czerwiec 2006 (wpisów: 39)
maj 2006 (wpisów: 38)
All rights reserved Copyright 2006-2012 Piotr Dymacz