PocketBook 614 plus (pocketbook-614-plus)
| CHANGE_ME CHANGE_ME | |
| Manufacturer | PocketBook | 
|---|---|
| Name | 614 plus | 
| Codename | pocketbook-614-plus | 
| Model | PocketBook 614 | 
| Released | 2017 | 
| Type | ebook reader | 
| Hardware | |
| Chipset | Allwinner A13 | 
| CPU | ARM Cortex-A8 @ 1Ghz | 
| GPU | Mali 400 MP1 | 
| Display | 800x600 e-paper | 
| Storage | microSDHC | 
| Memory | 256 MB | 
| Architecture | armv7 | 
| Software | |
| Original software The software and version the device was shipped with. | PocketBook firmware Linux 3.0.8 | 
| Extended version The most recent supported version from the manufacturer. | PocketBook firmware | 
| FOSS bootloader | yes | 
| postmarketOS | |
| Category | testing | 
| Mainline Instead of a Linux kernel fork, it is possible to run (Close to) Mainline. | yes | 
| pmOS kernel The kernel version that runs on the device's port. | 6.8.0 | 
| Unixbench score Unixbench Whetstone/Dhrystone score. See Unixbench. | 0.0 | 
| Device package |  device-pocketbook-614-plus | 
| Kernel package |  linux-postmarketos-allwinner | 
| Flashing Whether it is possible to flash the device with  pmbootstrap flasher. | Untested | 
|---|---|
| USB Networking After connecting the device with USB to your PC, you can connect to it via telnet (initramfs) or SSH (booted system). | Works | 
| Internal storage eMMC, SD cards, UFS... | Works | 
| SD card Also includes other external storage cards. | Works | 
| Battery Whether charging and battery level reporting work. | Works | 
| Screen Whether the display works; ideally with sleep mode and brightness control. | Untested | 
| Touchscreen | Untested | 
| Multimedia | |
| 3D Acceleration | Untested | 
| Connectivity | |
| WiFi | Untested | 
| Miscellaneous | |
| FDE Full disk encryption and unlocking with unl0kr. | Untested | 
| USB OTG USB On-The-Go or USB-C Role switching. | Untested | 
| Sensors | |
| Accelerometer Handles automatic screen rotation in many interfaces. | Untested | 
| Magnetometer Sensor to measure the Earth's magnetism | Untested | 
| Ambient Light Measures the light level; used for automatic screen dimming in many interfaces. | Untested | 
| Proximity | Untested | 
| Hall Effect Measures magnetic fields; usually used as a flip cover sensor | Untested | 
| Barometer Sensor to measure air pressure | Untested | 
| Power Sensor Sensor to monitor current, voltage and power. Not fuel gauge! | Untested | 
| Primary Bootloader Whether it is possible to replace stock bootloader with U-Boot. | Works | 
|---|---|
| Secondary Bootloader Whether it is possible to chainload U-Boot from stock bootloader. | Untested | 
| Mainline Whether latest upstream versions of U-Boot are not broken and it is possible to use them. | Works | 
| Internal Storage Whether it is possible to boot from internal storage (e.g. eMMC or UFS). | Works | 
| SD card Whether it is possible to boot from SD card. | Works | 
| USB Host Whether it is possible to boot from a USB storage or connect a keyboard. | Untested | 
| USB Peripheral Whether it is possible to use device as a peripheral in U-Boot, e.g. for fastboot mode. | Works | 
| Display | Untested | 
| Keyboard | Untested | 
| Buttons Whether it is possible to navigate in boot menu or grub with volume and power buttons. | Untested | 
Contributors
Users owning this device
Original software
A regular sdcard is used as internal memory, so we can simply take it out and read/write it on the computer. It is worth noting that the image is tied to a specific sdcard (its serial number), but it is enough to simply untie the image from this dependence.
| Note: Before experiments, make a backup copy of the SD card (via dd) | 
# fdisk -l /dev/sda 
Disk /dev/sda: 7.37 GiB, 7908360192 bytes, 15446016 sectors Disk model: Card Reader Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x00000000 Device Boot Start End Sectors Size Id Type /dev/sda1 1009664 15446015 14436352 6.9G b W95 FAT32 /dev/sda2 * 73728 139263 65536 32M 6 FAT16 /dev/sda3 1 1009664 1009664 493M 85 Linux extended /dev/sda5 139264 172031 32768 16M 83 Linux /dev/sda6 172032 204799 32768 16M 83 Linux /dev/sda7 204800 275455 70656 34.5M 83 Linux /dev/sda8 275456 776191 500736 244.5M 83 Linux /dev/sda9 776192 976895 200704 98M 83 Linux /dev/sda10 976896 1009663 32768 16M 83 Linux Partition table entries are not in disk order.
sda1 - userdata sda2 - boot partition (with kernel) sda5 - ??? sda6 - ??? sda7 - root (/) sda8 - /ebrmain (contain cramfs.img) sda9 - /mnt/secure (contain some apps and libs) sda10 - ??? (contain dictionaries)
Unlinking an image from a specific SD card: after the system starts, the main application is launched - pocketbook located in /dev/sda8 (in fact, this is a link to /mnt/cramfs/bin/monitor.app). This binary contains a check for the serial number of the memory card. However, we can easily cheat this check: replace the path to the serialnumber of sdcard with a simple text file with this number.
copy the cramfs.img file from sda8 and unpack it: cramfsck -x tmp_cram cramfs.img  As a result, there will be a monitor.app file in the tmp_cram/bin directory.
Using strings we can find that the program gets the serial number from /sys/block/mmcblk%c/device/serial
Сreate a file with serial number in /mnt/secure (you can do it in another place, the main thing is that the final path is the same length as the line above) and replace path from from /sys/block/mmcblk%c/device/serial to your file.
now just copy the file to sda8, delete the old link and create a new one. ln -s monitor_patched.app pocketbook
Installation
pmbootstrap install --sdcard=/dev/sda
See also
- pmaports!4901 Initial merge request