Роутер netgear wnr1000v2 прошивка

dammer / README.md

Notice: Upgrade WNR1000v2 to the latest factory firmware: 1.1.2.58. Otherwise, the power LED may not behave properly.

You need to place the device into failsafe mode. For booting into failsafe mode, you need to power up the device while holding the reset button with a pin. The power LED should have an amber colour. Hold the button until it is starting to flash green. It starts to flash green after it flashes the amber LED for six times. After that, the device is in failsafe mode, accepting a firmware via its TFTP server. The device should respond to pings at 192.168.1.1, although the responses may be malformed.

Configure your ethernet interface with a 192.168.1.0/24 IP address. I use 192.168.1.2 with netmask 255.255.255.0 but it should work with any free address from that block.

You need a TFTP client for this purpose. You may check the OpenWrt wiki for more information if you aren’t familiar with the procedure.

With the OS X tftp client, and the Linux tftp client, the flashing procedure is something like:

tftp 192.168.1.1 > binary > trace > put openwrt-ar71xx-generic-wnr1000v2-squashfs-factory-barrier-breaker-r44095.img
tftp 192.168.1.1 > binary > trace > put openwrt-ar71xx-generic-wnr1000v2-vc-squashfs-factory-barrier-breaker-r44095.img

Please don’t use the WNR1000v2 firmware file for the WNR1000v2-VC model. Every time you do that, a kitten dies.

The power LED turns off during the upload. If it starts to flash green after the upload, then the firmware is rejected (usually the case with a corrupted or wrong firmware). Otherwise, it should be green and it stops flashing (but sometimes it may stay off). You should wait until the device finishes the upgrade procedure. Usually it is under three minutes. It should boot into OpenWrt.

If the connection drops during the upload, you may end up with a corrupted firmware and the device is booting into failsafe mode. Just repeat the flashing procedure.

Please notice that the power LED flashes green during the normal boot. However, it flashes at a faster rate compared to a device in failsafe mode. If unsure, let the device to stay in that state at least for a minute before deciding that it needs reflashing. After a normal boot, you should get a solid green on the power LED.

The Chaos Calmer patch was created against r44154. It was tested succesfully on WNR1000v2 and WNR1000v2-VC, but the device may require a power cycle after the flash. It may boot in (an unusable) failsafe mode. This happened on WNR1000v2 by going from Barrier Breaker to Chaos Calmer via TFTP flashing.

Читайте также:  Пароль входа в роутер мтс

For building it, you can not use the Barrier Breaker config. For creating the build config, you need to pick the «Atheros AR7xxx/AR9xxx» Target System, the «Generic» Subtarget, and optionally the WNR1000v2 driver profile.

Please notice that the images may not build succesfully without a clean tree and config.

You need an OpenWrt Buildroot. I use Debian 7.x for this purpose.

# Aka cloning this particular gist git clone https://gist.github.com/ef49c8a4df81c8896153.git cd ef49c8a4df81c8896153 # This is the Barrier Breaker branch git clone git://git.openwrt.org/14.07/openwrt.git cd openwrt # Apply the patch for WNR1000v2/WNR1000v2-VC support patch -p1  ../wnr1000v2+vc-barrier-breaker-r44095.patch # Add the LuCI support into the OpenWrt tree ./scripts/feeds update luci ./scripts/feeds install luci # Get the generic config for AR71xx wget https://downloads.openwrt.org/barrier_breaker/14.07/ar71xx/generic/config.ar71xx_generic -O .config # when doing the menuconfig, you need to go to LuCI > Collections and # make sure that luci is selected, otherwise LuCI is built as module # and it won't be available into the built image, only the package is built make menuconfig # The final step for building the image. You may replace "make" with # "make -j number-of-cpu-cores+1" for faster building on a multi-core CPU make

The images will be in the «bin/ar71xx» directory. After that, follow the above Install instructions.

Источник

Оживление WIFI роутера WNR1000v2h2

Данный роутер умер не своей смертью, а при содействии моих кривых ручек. На момент начала попытки его оживить, он представлял из себя кирпич, где был убит u-boot.

Данный роутер не очень популярен на просторах интернет и найти на него что-то очень проблематично.

Какое железо имеет мой роутер:

  • Power: 12 VDC, 1 A
  • CPU1: Atheros AR7240 rev 2 (340-400MHz)
  • FLA1: 4 MiB ( Winbond W25Q32BVSSIG)
  • RAM1: 32 MiB (Winbond 9425G6JH-4)
  • WiFi chip: Atheros AR9285 2,4 ГГц 802.11bgn
  • ETH chip: Atheros AR7240
  • Switch: Atheros AR7240
  • LAN speed: 100M
  • LAN ports: 4
  • WAN speed: 100M
  • WAN ports: 1

По железу похож на:

  • Netgear wnr612v2
  • Netgear WNR1000v2
  • Netgear WNR1000-2VCNAS
  • Netgear WPN824N
  • ——————————
  • D-Link DIR-600/601 (Версия A1)

Найти прошивку на ОС роутера в принципе не проблематично, в том числе последние прошивки OpenWRT, а вот с u-boot проблема огромная. Оригинальный u-boot пока так и не найден.

Основная проблема состояла в том, что WIFI роутер wnr1000v2h2 на всех прошивках, что я пробовал не видел модуля WIFI Atheros AR9285. Кнопка включения WIFI тут не работает. (Не видел не из-за прошивок, а из-за убитого ART). Данный модуль я полагал должен был инициироваться u-boot и этого не происходило.

Были испробованы многие u-boot загрузчики. Это те которые работали:

  • Оригинальный u-boot-v0.6.bin – от wnr612v2
  • Оригинальный u-boot.bin – от wnr612v2 какой-то иной версии
  • Breed u-boot breed-ar7240-wnr1000v2-r1163.bin — от WNR1000v2, чистый китай
  • Тоже Breed u-boot u-boot-ar7240-wnr1000v2.bin – от WNR1000v2, но какая-то модификация, английский.

Были попытки использовать и другие загрузчики, но они были полностью провальные.

Для дальнейшего изучения

В работе использовалось

  • CH341A – для перепрошивки Flash 25Q32
  • FTDI232 – для подключения по UART к плате роутера
  • Фен, паяльник и прочее.

Перерошивать Flash 25Q32 прямо на плате не получиться, видимо из-за конструктивных особенностей самой платы. Придется только выпаивать и шить отдельно.

Подключение к UART на плате роутера.

Устройство использует TTL 3.3в

Точка — указатель на 1 ножку.

UART Netgear WNR1000v2

Особенности размещения данных во flash wnr1000v2h2

Информация не 100%, а собранная из разных источников

  • 0x0 до 0x40000 – располагается загрузчик u-boot (256КБ)
  • 0x40000 до 0x50000 – размещается непонятно что (64КБ)
  • 0x50000 до 0x3F0000 – размещается образ ОС (3712КБ)
  • 0x3F0000 до 0x400000 – размещается отдел ART — это некие настройки платы, пин код, данные калибровки для Wi-Fi и т.д. (64КБ)
Китайский u-boot Breed

Загружает плату, но в упор не видит прошивку образа ОС.

Принудительно стартануть загрузку образа ОС

Образ распознается, пытается запуститься и виснет.

Данный загрузчик имеет WEB, через которую можно проводить многие манипуляции в том числе и перепрошивку. Я с ним так и не подружился.

Английский u-boot Breed, некая модификация

После того как я его залил, то образы ОС не стартовали, но в последствии с него нормально начали работать все образы что я пробовал.

Так же имеет WEB и более заточен под Netgear, чем китайский.

Обновление прошивок wnr1000v2h2 через оригинальный u-boot

Рассмотрим как с ним работать, подробно т.к. на просторах интернет мало объясняют, что какая команда делает.

Перепрошивка u-boot (загрузчика) на wnr1000v2h2 через TFTP

Значение переменных по умолчанию

ar7240> printenv bootargs=console=ttyS0,115200 root=31:02 rootfstype=jffs2 init=/sbin/init mtdparts=ar7240-nor0:256k(u-boot),64k(u-boot-env),2752k(rootfs),896k(uImage),64k(NVRAM),64k(ART) bootcmd=fsload 80800000 image/uImage;bootm 80800000 bootdelay=2 baudrate=115200 ethaddr=0x00:0xaa:0xbb:0xcc:0xdd:0xee ipaddr=192.168.1.10 serverip=192.168.1.27 clearenv=erase 0x9f040000 +0x10000 ddr_ext_mode_value=0x0 magic_number=0x0 stdin=serial stdout=serial stderr=serial ethact=eth0
!если мы имеем другие настройки сети, то: !по умолчанию адрес устройства 192.168.1.10 !и адрес TFTP сервера 192.168.1.27 !setenv – устанавливает значение переменных !устанавливаем новый IP адрес нашего устройства ar7240> setenv ipaddr 192.168.88.10 !устанавливаем новый IP адрес нашего сервера TFTP ar7240> setenv serverip 192.168.88.245 !данный настройки можно пропустить !------------ !устанавливаем маску сети ar7240> setenv netmask 255.255.255.0 !устанавливаем шлюз, если мы находимся в другом сегменте, !через который мы будем попадать на TFTP ar7240> setenv gatewayip 192.168.0.1 !--------------- !закачиваем u-boot с TFTP сервера в область оперативной памяти устройства !где 0x8хххххххх – это указатель, что это именно оперативная память !ххххх – это адрес в оперативной памяти !breed.bin – это имя файла/прошивки на TFTP сервере ar7240> tftpboot 0x80000000 breed.bin !очищаем область на flash куда мы впоследствии запишем наш новый u-boot !0x9fххххх – это указатель на flash, т.е. 9f говорит, что это устройство flash !xxxxxxxx – это адрес на самой Flash !+0x40000 - это смещение, сколько надо стереть ar7240> erase 0x9f000000 +0x40000 !копируем данные из области оперативной памяти на Flash !где 0x80000000 – это начальный адрес с которого копируем (начало в оперативной памяти) !0x9f000000 – это адрес куда копируем (начало на Flash) !0x40000 – это смещение т.е. сколько мы копируем !в нашем случае под u-boot выделено 0x40000, но сам u-boot конечно меньше ar7240>cp.b 0x80000000 0x9f000000 0x40000
Перепрошивка образа ОС на wnr1000v2h2 через TFTP

Все тоже самое, что и выше, только у нас измениться адрес назначения на Flash. Для большего понимания перечитайте перепрошивка u-boot.

Особенность загрузки образов

Образа у нас бывают двух видов:

squashfs-factoryсодержит дополнительный заголовок, на него ориентируются, когда вы прошиваетесь из стоковой прошивки, через web. Если вы шьете через TFTP или программатором, то в таком образе необходимо удалять этот заголовок по 0x80.

Заголовок выгляди примерно так

удаление заголовка в прошивке

squashfs-sysupgradeобраз для прошивки через TFTP или программатор.

Обе эти прошивки не имеют на борту загрузчика, как многие пишут в Интерете!

В нашем случае образ ОС располагается с адреса 0x50000

Загрузить образ можно и другим способом, но здесь я его рассматривать не буду т.к. данный способ многократно расписан в на просторах интернета.

!загружаем в память ar7240> tftpboot 0x80000000 openwrt-ar71xx-tiny-wnr1000v2-squashfs-sysupgrade.bin !очищаем место на flash под образ ОС, смещение именно 3a0000, либо вы затрете ART ar7240> erase 0x9f050000 +3a0000 !копируем на flash ar7240> cp.b 0x80000000 0x9f050000 0x3a0000 !загружаемся ar7240> bootm 0x9f050000

Прошивка ART раздела

Скачать ART раздел от wnr1000v2h2 (от моего роутера, не знаю будет ли он работать на других)

!загружаем в память ar7240> tftpboot 0x80000000 art.bin !очищаем место на flash под ART ar7240> erase 0x9f3F0000 +10000 !копируем на flash ar7240> cp.b 0x80000000 0x9f3F0000 0x10000 !перегружаемся 

Дополнительно

Если у вас поврежден или отсутствует ART отдел, то вы не сможете работать с сетью и даже загрузить прошивку по TFTP.

ar7240> macset lan 00:03:7F:EF:77:87 

Возможность распайки USB порта.

Предположительные пины AR7240 задействованные под USB

73 — USB_DM USB 1.1 D- data pin

74 -USB_DP USB 1.1 D+ data pin

75 — USB_REXT Connect to external 6.04 KΩ resistor

73 и 74 вывод необходимо подтянуть к GND через 15КОм резистор.

Итог борьбы

Все же эта железка была побеждена.

Проблема с нерабочим WiFi кроется в разделе ART, без него модуль AR9285 даже не появляется как устройство.

Но победа не была легкая т.к. я был убежден, что проблема кроется в u-boot, а найти оригинальный я так и не смог, было принято решение собрать свой из исходников и на то было убито несчетное количество нервных клеток.

Продолжение читайте как собрать свой u-boot.

Роутер теперь стартует с родным u-boot собранным из исходников и прекрасно себя чувствует.

Источник

Оцените статью
Adblock
detector