PocketBook est-il si bon?

Ou un conte sur ce qui nous attend




PocketBook m'admire. C'est le leader du marché dans l'espace post-soviétique, dans le domaine des livres électroniques, tout le monde connaît cette entreprise. Il y avait ici de nombreux articles flatteurs sur les produits de cette entreprise. Ils nous donnent de belles publicités, des odes élogieuses. Examinons plus en profondeur le matériel et les logiciels, essayons de restaurer un ancien Pocketbook 515 et examinons l'âme des produits de cette société. Eh bien, évaluons à quel point ils sont réels ou mauvais. Sans embellissement.

De quoi allons-nous parler?


Par la volonté du destin, je suis tombé sur le livre électronique PocketBook 515. Il est ancien et déraisonnable de le comparer avec des modèles modernes, mais je pense que les principes et problèmes de base devraient en être hérités.

Je suis tombé sur un livre d'une hôtesse précédente car il était buggé et il est devenu presque impossible de l'utiliser. Les symptômes étaient les suivants: le livre s'allume, se charge et ... Et voici un tel écran.



Et c'est tout, pas de menu, rien. Ne répond pas aux boutons.

Je pense que les ordures sont la guerre. Nous allons le réparer maintenant. Vous devez regarder YouTube. La première chose qu'ils recommandent est de restaurer le firmware. Éteignez le livre, maintenez les deux touches extrêmes enfoncées et allumez-le (c'est le même croquis de cirque, je vais vous le dire). Eh bien, je pense que c'est si simple et nous sommes dans les dames! J'essaye.



La mise à jour a échoué ... Et puis je comprends que l'aventure commence ...

Boîte de Pandore ou remplissage de matériel


Honnêtement, j'ai toujours admiré PocketBook, le fait qu'ils aient pu créer des appareils sympas, occupent une niche sur le marché. Je voulais même vraiment travailler pour eux, mais pour des raisons géopolitiques, ils ne m'ont pas emmené là-bas. Mais je ne m'attendais pas à ouvrir une telle boîte avec ... Strange.
Comme d'habitude, quand vous voyez une tâche, vous ne voyez même pas la pointe de l'iceberg, mais une sorte de carte postale chiffonnée de votre grand-mère. Et quand vous versez le travail et que vous ne voyez pas la fin de la région, mais il est trop tard pour battre en retraite, alors vous pensez: pourquoi j'ai pris C'est exactement la même chose ici.

Il semblerait que la raison soit simple: probablement un problème de mémoire. Et comme je le sais par les commentaires sur le post qu'une carte SD est installée là-bas, et que cela ne fonctionnera pas avec dd-snitch. Autrement dit, vous pouvez copier une carte, mais cela ne fonctionnera pas. Ainsi, nous attendons une aventure ludique pour restaurer la carte, ainsi que l'étude du firmware et d'un éventuel hack ... Mais tout d'abord. Tout d'abord, regardons à l'intérieur du livre et voyons toutes les sources de nos problèmes.

L'ouverture de ce livre est très simple, il suffit de parcourir n'importe quelle carte autour du périmètre et nous verrons les entrailles de cet appareil.



La photo est exactement comme nous tenons habituellement le livre, tourné face vers le bas et ouvert. Que voyons-nous? En haut à droite du module wifi non soudé. De plus, même le journal clignotant nous indique qu'il pourrait l'être (l'avant-dernière ligne de la photo ci-dessus). Pourquoi le wifi dans un livre sans écran tactile - je ne peux pas imaginer! Au centre se trouve une grande batterie. À sa gauche, un train se dirige vers l'écran. À côté de la batterie se trouve apparemment un contrôleur de charge. À droite se trouve la carte mémoire malheureuse! Et le moins cher qui vit très, très peu de temps. Mais nous reviendrons vers elle. Nous ne considérerons pas de petites choses, faute de temps. Jetons un coup d'œil au processeur et en général, cette zone est plus grande.



Allwinner A13 (grimacé). Cela vient de la famille qui se trouve dans toutes sortes d'Orange Pi et de leurs semblables. Je ne l'aime pas de tout mon cœur à cause du manque de documentation normale, et aussi parce qu'ils ont bu beaucoup de sang à la fois. C'est une aversion personnelle, inexplicable. Cependant, les créateurs de PocketBook sont de très bons camarades qui ont pu réduire la consommation d'énergie, la mettre en veille prolongée et en général couper tout ce qui est puissant pour fonctionner aussi longtemps que possible. J'adorerais regarder le code de ces modules. Nous parlerons davantage du code. Mais en général, l'utilisation de cette famille est directement fu fu fu (hi Yandex-column).

À gauche du processeur se trouvent clairement (ne pas aller au diseur de bonne aventure) les lignes UART. Mes mains me démangeaient de souder là-bas, mais de regarder les journaux de téléchargement. Mais ma tâche n'était pas d'enquêter sur l'appareil, mais de le réparer. Par conséquent, j'espère qu'un jour j'y entrerai à mes oreilles!

Une puce RAM d'une capacité de 2 Go est soudée sous un angle sous le processeur! Ce qui est beaucoup pour des tâches aussi modestes. Mais à en juger par le fait que tant de ramfs sont utilisés, c'est peut-être le cas. Ce qui est plus intéressant, cette puce K4B2G1646Q-BCK0T00 est la SDRAM DDR3, c'est-à-dire mémoire dynamique et nécessite un timing pour stocker les informations (corrigez-moi si je me trompe). Autrement dit, il consomme de l'énergie, même en mode veille (par opposition à SRAM). Et comment un mode de fonctionnement aussi long de ce livre est assuré reste un mystère pour moi. Peut-être que la réponse est précisément que toute la RAM est rejetée sur la carte mémoire (ou son diff) lors du passage en mode veille? Je ne sais pas, un endroit très intéressant pour la recherche.

Donc, une carte mémoire. Je pense que même un aveugle verra que sous le connecteur avec la carte il y a un plot de contact pour le microcircuit. Pourquoi mettre la carte dans un emplacement séparé et même la marquer avec de la peinture - ce n'est pas clair pour moi. Un sondage dans LiveJournal n'a pas donné de résultat, très probablement, de sorte que les Chinois lors de l'assemblage ne pourraient pas claquer le firmware, mais il serait déjà cousu ici. De plus, vous pouvez insérer une carte de test qui testerait le matériel sans perdre de temps à clignoter. C'est la seule explication raisonnable. Pourquoi y a-t-il une telle carte bon marché qui vit pendant quelques années - c'est compréhensible - le prix de l'affaire.

À l'avenir, je dirai que vous devez la remplacer immédiatement par une carte SD industrielle, telle que



Et en effet, sur toutes vos framboises, afin d'éviter les problèmes il vaut la peine de passer à de telles cartes. Ils ne sont pas si chers qu'ils risquent la fiabilité.

En général, il est devenu clair pour moi que la carte devait être changée. Et il doit y avoir une procédure pour son remplacement.

Bref, le hardware est très intéressant, curieux de savoir comment les drivers des différents noeuds de ce livre sont implémentés, j'aimerais parler avec les développeurs pour en savoir plus. La chose la plus intéressante est de travailler avec la mémoire et comment le mode veille est implémenté. Mais le matériel est exactement ce qui est visible. Le plus curieux est ce qui se passe dans le logiciel! Et les logiciels? Voyons le contenu de la carte.

Que sur notre carte?


En général, l'analyse du contenu d'une carte peut donner lieu à un article distinct. Par conséquent, si vous n'êtes pas très intéressé par ce qui s'y trouvait, vous pouvez en toute sécurité accéder à une autre section.
La carte se compose de 9 sections!



Dont 1, 2, 7,8,9 et 10 sont montés (le 4e ne l'est pas).



Section / dev / sdd1 sur / media / dlinyj / Pocket515


Il s'agit de la mĂŞme section que nous voyons lorsque nous connectons le livre Ă  l'ordinateur. Il n'y a rien de remarquable pour nous lĂ -bas.

Section / dev / sdd2 sur / media / dlinyj / Volumn


Il contient un noyau et des configurations de démarrage primaires, ainsi qu'une image de la basse tension low_pwr.bmp , un fichier standard avec l'extension bmp. Comme, mettez une accusation.



On ne sait pas pourquoi l'image du noyau est une Ă  la racine (fichier bImage), l'autre est dans le dossier linux



Il est supposé que l'un se charge lors de la charge, l'autre pendant le fonctionnement complet. Le dossier linux a une taille de fichier plus importante.

Le dossier linux est le plus intéressant. bImage est l'image du noyau. cramfs.img - image de ramfs, pour le mode de récupération (ce que nous voyons au début de la récupération). Bien qu'en cours de recherche approfondie, il semble que quelque chose de très important y soit contenu. Quoi qu'il en soit, personne ne lit cette merde, vous pouvez écrire n'importe quel non-sens. Trololo * Fichiers .Ini - Paramètres de téléchargement.

Le fichier linux.bmp ne peut pas ĂŞtre ouvert par l'Ă©diteur et a une taille de 35 290 octets. Le chien sait de quoi il s'agit. Les fichiers utiles sont linux.ini et autres. Je vais donner un exemple du premier.

[global]
commandline = console=ttyS0,115200 root=/dev/mmcblk0p7 init=/init loglevel=1 rootwait

[segment]
img_name = c:\linux\bImage
img_size = 0x800000
img_base = 0x40008000

[script_info]
script_base = 0x43000000
script_size = 0x10000

[logo_info]
logo_name = c:\linux\linux.bmp
logo_show = 1

, .. , bmp- , - . recovery.ini . , .

[global]
commandline = console=ttyS0,115200 root=/dev/ram0 init=/linuxrc loglevel=8 initrd=0x41000000,8M rootfstype=cramfs ramdisk=8192 rootwait
....
[segment]
img_name = c:\linux\cramfs.img
img_size = 0x800000
img_base = 0x41000000


/dev/sdd10 on /media/dlinyj/Compressed type cramfs


ramfs. rootfs, .



/bin, busybox. , . sbin reboot. , , ( ), . , gpio

#!/bin/sh
/sbin/insmod /lib/modules/gpio_driver.ko

gpiotool -G H -O 0 -P 0
gpiotool -G H -O 0 -P 1
gpiotool -G H -O 0 -P 2
gpiotool -G H -O 0 -P 3
gpiotool -G H -O 0 -P 4
gpiotool -G H -O 0 -P 5

../bin/busybox reboot

, gpio sysfs.

— /etc/ /lib/modules. , :

epdc.ko — — — .
gpio_driver.ko — gpio

GPL , . .

/etc/ . .
device.sh — . fstab :

...
/ebrmain/cramfs.img	/ebrmain/cramfs	  auto	  defaults,loop 0 0
...

. . . , . , cramfs recovery. .. , , .

, .

/dev/sdd9 on /media/dlinyj/13351b4c-2ff0-46dd-9d4a-b2a1bed7cf99


. .

sudo ls -1a  /media/dlinyj/13351b4c-2ff0-46dd-9d4a-b2a1bed7cf99
.
..
explorer-2.tar
.freezestatus
.hashsum_1
lost+found
man2wall.txt
pbpk
runonce

. explorer-2.tar :



. . .

man2wall.txt — , :

sudo cat  /media/dlinyj/13351b4c-2ff0-46dd-9d4a-b2a1bed7cf99/man2wall.txt
/mnt/ext1/  PocketBook.pdf

— .freezestatus — - , . 4pda .
, root.

drwxrwx---  2 systemd-resolve systemd-timesync   1024  27  2014 pbpk
drwxrwxrwx  2 systemd-resolve systemd-timesync   1024  27  2014 runonce

- .

/dev/sdd8 on /media/dlinyj/41931a84-c18c-407a-b9a1-9a08dfe5a7ae


. , , , . , , . , , :

/media/dlinyj/41931a84-c18c-407a-b9a1-9a08dfe5a7ae $ ls -la
 96642
drwxr-xr-x  14 root root     1024   7  2014 .
drwxr-x---+  6 root root     4096  21 16:09 ..
drwxr-xr-x   2 root root     2048   7  2014 bin
drwxr-xr-x   3 root root     1024   7  2014 config
drwxr-xr-x   2 root root     1024   7  2014 cramfs
-rw-r--r--   1 root root 62660608   7  2014 cramfs.img
-rw-r--r--   1 root root       22   7  2014 .def_id
drwxr-xr-x   3 root root     2048   7  2014 fonts
-rw-r--r--   1 root root     4858   7  2014 fsimage.md5
-rw-r--r--   1 root root 35871876   7  2014 fsimage.tar.gz
drwxr-xr-x   3 root root     1024   7  2014 language
drwxr-xr-x   5 root root     4096   7  2014 lib
drwxr-xr-x   2 root root     1024   7  2014 license
drwxr-xr-x   2 root root     1024   7  2014 logo
drwx------   2 root root    12288   7  2014 lost+found
lrwxrwxrwx   1 root root       15   7  2014 pocketbook -> bin/monitor.app
drwxr-xr-x  12 root root     1024   7  2014 share
drwxr-xr-x   2 root root     1024   7  2014 themes
-rw-r--r--   1 root root       12   7  2014 .version
drwxr-xr-x   3 root root     1024   7  2014 widgets

, , , . , /bin /ebrmain/cramfs/bin./. , cramfs.img ramfs, (, !!!).



/lib . , cramfs . 4pda, -.

…
monitor.app, 8, cramfs.img (sde8/cramfs.img/bin/monitor.app).
monitor.app , sde8 pocketbook, /sde8/bin/monitor.app, , , , monitor.app, cramfs.img.
…


fsimage.tar.gz . . , . . , share

ls -1 share/
alsa
antiword
book_store.bmp
book_store_Titelive.bmp
explorer-2
FBReader
fonts
icons
locale
man2wall.sh
obreeysync
player.cfg
s2pb
ssl
wifi-files-fix.sh
zlibrary
zoneinfo.lst
zoneinfo.tar.gz

, wifi , . , !

: ! , . , , ! ! , - ?

. GNU?


- - , . , , :). , Linux, , Sony. , , , , . , Linux GNU, , Pocketbook : , userspace? , license-violation@gnu.org. , PocketBook, ? :

!

PocketBook 515. , Linux. GNU General Public License, , . , , ( ) ? PocketBook 515.

PocketBook 515. .

( ) habr.com.

, , PocketBook , .

, !

.

Linux. Linux, 515, : github.com/pocketbook/Platform_A13

!

,

! ! , , , -, ( ), - - .

: libc, . , . .… .

.

. , , , GNU GPL. , rootfs busybox





glibc, . , .

, . , . , ?


? , , , git- userspace, .

, !
.

R&D , busybox glibc , :

busybox.net/downloads ( 1.26.2)
www.gnu.org/software/libc ( 2.50.3)

,


, , .

PocketBook 515


( ) PocketBook 626 626+. , . .
, . , . PocketBook. , 4pda. , (. ), , .

…
, 1000 , , .

- , . 450 .
…

III. :
1) .
2) (, vcom waveform), . yadi.sk/d/ur92mMug3SPVHh, ED050SC3 ED050SC5.
3) SDSN .
…
IV. , — 3 .

:

  1. . , , . , PocketBook ( ), . , , .
  2. , , .
  3. , (, ).
  4. - (SDSN), . , , .

, , - , , , , . , , , . , : , ! - ! .

4pda. , , PocketBook 626, . . , . , , . .

, , , :

  • .
  • (- ).
  • MBR-, ( ) ( hex-, ).
  • SDSN ( ).
  • .freezestatus, .
  • .
  • ...
  • ???
  • PROFIT!!!

, SDSN ( ) . . . /sys ( root). . , , Raspberry Pi! - Raspberry Pi Zero. , HDMI, USB-, . .



, serial. :
find /sys –name “serial” , SD- . home .

, , ! , ! ! , ,… , . …



… . , -. , -. ( ).
, , !


- . :

  1. . , , . , .
  2. , , , . . .
  3. SD- – - . - SD-, - . , , , . !
  4. , . , , rootfs ramfs, — . , , . – .
  5. . , , ? , . ( ) , , . , .
  6. . , . , : , TrustZone -. , , , . , , «» . , , . (, ;) )

, , , . , . , .

, « ». .

, - , .

P.S. PocketBook , !

Source: https://habr.com/ru/post/fr481708/


All Articles