Przygotowanie i instalacja OpenWrt na routerze jjPlus JA76PF0
Ostatnia zmiana: 2015-09-05 10:43
Strona producenta:
http://www.jjplus.com/Krótka specyfikacja
- architektura: Atheros ar71xx
- bootloader: Redboot
- procesor Atheros AR7161 rev 2 680MHz
- Flash: 8 MiB
- RAM: 64MiB
- WLAN: brak (dostępne 3 złącza miniPCI)
- chipset Ethernet: Atheros AR8316 10/100/1000 Mbps, 1xwan, 4xlan
- 2x USB 2.0
- 1x uart
- przycisk reset oraz wps
- gpio, czujnik temperatury LM75, magistrala i2c
Zasilanie normalnie, 12V. Zużycie energii - bez kart WIFI i urządzeń USB - ok. 5,5W.
Stan projektu
Płytka jest obsługiwana przez OpenWrt w Attitude Adjustment i późniejszych wydaniach.
Port szeregowy
Dostępny jest na płytce, port UART/CN3
Instalacja przez bootloader
Po kolei należy:
- wyłączyć zasilanie płytki
- podłączyć kabel ethernet do routera (do portu wan) i komputera
- ustawić adres karty sieciowej w komputerze na stałe na 192.168.1.1
- w katalogu głównym serwera TFTPD umieścić pliki
openwrt-ar71xx-ja76pf-kernel.bin oraz
openwrt-ar71xx-ja76pf-rootfs-squashfs.bin- uruchomić serwer tftpd
- podłączyć kabel szeregowy do płytki
- uruchomić terminal z parametrami 115200 8n1
- włączyć zasilanie
- przez Ctrl-C przerwać ładowanie bootloadera.
Następnie wystarczy wydać polecenia:
fis init
load -r -b 0x80060000 openwrt-ar71xx-ja76pf-kernel.bin
fis create linux
load -r -b %{FREEMEMLO} openwrt-ar71xx-ja76pf-rootfs-squashfs.bin
fis create rootfs
fis load -l linux
exec -c "board=JA76PF"
Należy pamiętać także o sprawdzeniu skryptu startowego (polecenie
fconfig -l bootloadera), powinien być następujący:
fis load -l linux
exec -c "board=JA76PF"
UWAGA: domyślny adres płytki w bootloaderze to 192.168.1.2. Po instalacji OpenWrt adres zostaje normalnie ustawiony na 192.168.1.1
Instalacja przez sysupgrade
Wystarczy jak w normalnym OpenWrt przesłać plik sysupgrade do routera do katalogu /tmp i wydać polecenie
sysupgrade -n /tmp/nazwa_obrazu.
Czujnik temperatury
Należy zainstalować pakiety
i2c-tools, kmod-i2c-core wraz z zależnościami. Następnie odczytać temperaturę:
root@OpenWrt:/# i2cdetect -l
i2c-0 i2c i2c-gpio0 I2C adapter
root@OpenWrt:/# i2cdetect i2c-gpio0
WARNING! This program can confuse your I2C bus, cause data loss and worse!
I will probe file /dev/i2c-0.
I will probe address range 0x03-0x77.
Continue? [Y/n] y
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- 48 -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
root@OpenWrt:/# i2cget i2c-gpio0 0x48 0xaa w
WARNING! This program can confuse your I2C bus, cause data loss and worse!
I will read from device file /dev/i2c-0, chip address 0x48, data address
0xaa, using read word data.
Continue? [Y/n]
0x0133
root@OpenWrt:/#
i zdekodować otrzymaną wartość.
Można także zainstalować pakiet
kmod-hwmon-lm75 i załadować moduł
lm75 z parametrem
force=0,0x48. Odczyt temperatury:
# echo lm75 0x48 > /sys/devices/platform/i2c-gpio.0/i2c-0/new_device
# cat /sys/devices/platform/i2c-gpio.0/i2c-0/0-0048/temp1_input