суббота, 4 февраля 2023 г.

Получение root-прав и русификация Barnes & Noble Nook первого поколения

            Расскажу, как можно русифицировать электронную книгу Barnes & Noble Nook первого поколения, а также добавить в нее поддержку формата fb2, возможность подключения к ней по adb через WiFi и через USB. My Library будет заменена на книжную полку File Browser. Также появится возможность устанавливать и удалять сторонние программы через пункт app на главном меню.

            Изначально электронная книга Barnes & Noble Nook BNRV100 (ее еще называют Classic) представляет собой интересный аппарат с двумя экранами: 6-ти дюймовым E-ink (на электронных чернилах) с разрешением 600х800 для чтения книг и 3.5-дюймового цветного сенсорного с разрешимостью 144 x 480  служащего для управления книгой. 

 

            По умолчанию поддерживаются форматы книг EPUB, PDB, PDF, изображений BMP, GIF, JPEG, PNG и аудиокниг (или музыки) в формате mp3. Объем встроенной памяти составляет 2ГБ, + есть слот для подключения карточки microSD, microSDHC.

 

 

            Дальше по шагам опишу как получить root-права и выполнить русификацию данной книги:

    1) На ПК у Вас должен быть установлен в папку adb SDK Platform Tools. Как это сделать я подробно описывал в этой и этой статье. Если вкратце скачиваем архив с сайта Platform Tools и распаковываем его содержимое в папку «adb», расположенную в корне диска с:\. Необходимы только три файла (adb.exe, AdbWinApi.dll, AdbWinUsbApi.dll ), но я для удобства обычно копирую все содержимое архива. 

    2) Скачиваем файл прошивальщика nookUpdate.apk и копируем его в папку adb:

 
        3) Подключаем Barnes & Noble Nook usb-кабелем к ПК. Скачиваем любой на выбор файл прошивки bravo_update_1.5.0n, bravo_update_1.5.0k или bravo_update_1.7.0k (разработчик Nomad1, огромное ему спасибо за это), извлекаем из него файл bravo_update.dat и копируем этот файл в корень встроенного накопителя Nooka. Туда же копируем файл adbd.html для получения временного доступа по adb:

     4)  Отключаем Barnes & Noble Nook от usb-кабеля и подключаем к сети по WIFI.

    5) Теперь нужно узнать ip адрес нашего Nooka. Для этого на Nooke нажимаем кнопку меню «Wi-Fi» (зеленую), далее «Wi-Fi hotpost» и нажимаем на названии своей сети  – на экране появится окно с IP адресом вашего Нука – запоминаем или записываем его (У меня это: 192.168.1.115):

 

    6) Далее нужно запустить на NOOK браузер нажав кнопку «Web» и перейти по адресу file://system/media/sdcard/adbd.html. На экране появится фраза «Didn’t work that time!» и браузер закроется:

 

    7) На компьютере открываем папку C:\adb, в адресной строке пишем cmd и жмем ENTER:

 

     8) Вводим команду «adb connect IP_АДРЕС_NOOK»:

adb connect 192.168.1.115

            Далее возможны 3 варианта ответа:

            a) «сannot connect ***.***.***.***:5555: No connection could be made be made because the target machine actively refused it. (10061)» - Эта ошибка у меня возникла на стационарном ПК с Windows 11 подключенный к сети по кабелю. Можно попробовать, если есть такая возможность подключиться с другого ПК (я так и сделал) или же погуглить вариант решения в интернете (ОС, брандмауэр, антивирус? ). Я на эту тему не заморачивался и попробовал подключиться с ноутбука с Windows 10, подключенного к сети по wifi (Выполнив на нем пункты 1, 2, 7, 8 данной статьи). И сразу же получил ответ, описанный в следующем пункте («unable to connect…»)

 

            b) «unable to connect ***.***.***.***:5555» - значит, что ничего не получилось и нужно попробовать еще раз. Возвращаемся к пункту 6 и открываем на Barnes & Noble Nook страничку еще раз. Адрес страницы повторно набирать не нужно, достаточно воспользоваться ссылкой из history (в браузере Nook’a нажимаем go-to – history- file://system/media/sdcard/adbd.html). После этого снова запускаем в cmd компьютера команду adb connect 192.168.1.115 (вместо «192.168.1.115» вводите IP адрес вашего Nook). Если опять видим сообщение — Unable to connect to ***.***.***.***:5555 – повторяем операцию, пока не получим ответ описанный в следующем пункте.

            c) «connected to ***.***.***.***:5555» - Это значит что у нас все получилось и мы подключились к Barnes & Noble Nook через adb. Переходим к пункту 9:

 

    9)   Теперь устанавливаем программу NookUpdate на Nook. Для этого там же в cmd выполняем команду:

adb push nookUpdate.apk /data/app/net.runserver.nookUpdate.apk


    10) На Barnes & Noble Nook нажимаем клавишу «n» и в появившемся меню выбираем Nook Updater

 

    11) Вы увидите информацию о системе: номер прошивки, количеств SD-карт, найден ли файл прошивки. Нажимаем «Start update» для запуска процесса обновления прошивки:

 

    12) Через некоторое время ридер предложит перезапуск. Нажимаем «Reboot»:

 

    13) После перезагрузки автоматически будет продолжена установка прошивки.

 

    14) После окончания прошивки на первый взгляд внешне ничего не изменилось, кроме того, что кнопка «Games» в главном меню Barnes & Noble Nook теперь называется «apps». Для переключения языка интерфейса нужно нажать на эту кнопку:

 

    15) Далее нажимаем на кнопку «language»:

 

    16) И выбираем русский язык:

 

    17) После этого интерфейс Barnes & Noble Nook будет полностью на русском языке:

 

Теперь фото Barnes & Noble Nook с русским интерфейсом:

 









7 комментариев:

  1. Я тоже обладатель этого устройства с теми же изменениями. Можно ли использовать его в DIY проектах как устройство вывода информации? Как например описано здесь - https://neverendingserenity.medium.com/creating-a-minimalistic-dashboard-using-a-raspberry-pi-and-a-nook-ereader-b3394fd81229
    Или здесь - https://www.hackster.io/news/maginkdash-gives-you-a-customizable-long-life-glanceable-epaper-dashboard-5a2ab8cdbe68

    ОтветитьУдалить
    Ответы
    1. Или вот еще интересный проект - https://raspberry-pi-notes.blogspot.com/2013/01/nook-e-reader-pi-display-step-1.html

      Удалить
  2. Идея заключается в использовании его в качестве информационной панели умного дома на Home Assistant
    Выводить на него погоду, графики потребления, и подобную медленно обновляемую информацию.
    А на серной панели можно было бы переключать вкладки интерфейса или реализовать другие функции (открыть дверь через домофон например)

    ОтветитьУдалить
  3. Здесь показан пример использования Nook Simple Touch в качестве информационной панели умного дома
    https://www.reddit.com/r/homeassistant/comments/orfudb/turned_an_old_nook_ereader_into_a_home_remote/
    Можно ли адаптировать этот случай к Nook 1st?

    ОтветитьУдалить
    Ответы
    1. Для информационной панели HA можно использовать любое устройство с браузером. В данной указанной Вами статье автор так и сделал

      Удалить
  4. Я имел ввиду использование основного экрана Nook 1st как информационного,
    и сенсорного как управляющего.
    Как это можно было бы реализовать?

    ОтветитьУдалить