Group: Hardware/Computers/e-readers
(→Being evaluated) |
m (GNUtoo moved page Group:Hardware/research/e-readers to Group:Hardware/Computers/e-readers: It's a computer type) |
||
(88 intermediate revisions by 7 users not shown) | |||
Line 4: | Line 4: | ||
= RYF interpretation and resulting hardware choices = | = RYF interpretation and resulting hardware choices = | ||
− | * | + | * Some e-readers contains hardware components that doesn't work with free software (like WiFi chips requiring a nonfree firmware). To prevent such components from getting into the way of the RYF compliance, such components can be disabled in hardware. |
− | * If a hardware block is present but typically not used (for instance if a device has a GPU but doesn't use it because it uses an e-ink display which has a high latency) | + | * If a hardware block is present but typically not used (for instance if a device has a GPU but doesn't use it because it uses an e-ink display which has a high latency), it *may* not get into the way of RYF compliance, as it *probably* won't steers users towards nonfree software. |
+ | == Questions == | ||
+ | For the I.MX GPU (vivante): | ||
+ | * Is it required to have a free software driver for GPU when the device is meant to be used as an e-reader and has a high latency e-ink display? | ||
+ | * If so, is the free software driver for the vivante GPU sufficently mature not to steer users towards non-free software ? | ||
= Existing hardware = | = Existing hardware = | ||
== Hardware Requirements == | == Hardware Requirements == | ||
+ | |||
=== Basic requirements === | === Basic requirements === | ||
− | |||
* Free boot software or the ability to easily port one to the e-reader. | * Free boot software or the ability to easily port one to the e-reader. | ||
− | |||
− | |||
* Enough RAM to run free software operating systems. | * Enough RAM to run free software operating systems. | ||
+ | * No cellphone network support | ||
+ | * Good SOC and no crucial peripherals requiring nonfree firmware (else the peripheral will be disabled in hardware) | ||
+ | * e-paper display | ||
=== Requirements to do hardware support work faster === | === Requirements to do hardware support work faster === | ||
Line 28: | Line 33: | ||
* Booting the Bootloader from the USB or serial port | * Booting the Bootloader from the USB or serial port | ||
* Ethernet (unlikely to be found on such devices) | * Ethernet (unlikely to be found on such devices) | ||
+ | === Requirements that can be lifted === | ||
+ | {| class="wikitable sortable" | ||
+ | |---- | ||
+ | ! Requirement | ||
+ | ! Rationale | ||
+ | |- | ||
+ | | The absence of WiFi/Bluetooth | ||
+ | | The chips could be disabled by soldering some of their pins or by removing them with a hot air gun. | ||
+ | |- | ||
+ | | unsigned bootloaders | ||
+ | | This requirements can be lifted on devices with the following System On a Chip, if they were made before July 2017: | ||
+ | * NXP I.MX6 Quad | ||
+ | * NXP I.MX6 QuadPlus | ||
+ | * NXP I.MX6 Dual | ||
+ | * NXP I.MX6 DualLite | ||
+ | * NXP I.MX6 DualPlus | ||
+ | * NXP I.MX6 Solo | ||
+ | * NXP I.MX6 SoloX | ||
+ | * NXP I.MX6 SoloLite | ||
+ | * NXP I.MX6 UltraLite | ||
+ | * NXP I.MX6 ULL | ||
+ | * NXP I.MX53 | ||
+ | * NXP I.MX50 | ||
+ | * NXP VFxxx | ||
+ | This is because such chip contains a hardware security flaw enabling to execute your code nevertheless. | ||
+ | |} | ||
=== Additional requirements === | === Additional requirements === | ||
− | |||
− | |||
− | |||
− | = | + | {| class="wikitable sortable" |
− | * | + | |---- |
− | * | + | ! Requirement |
+ | ! Rationale | ||
+ | |- | ||
+ | | Recent | ||
+ | | | ||
+ | * Easily available new and second hand. | ||
+ | * Battery being new or still in good conditions | ||
+ | |- | ||
+ | | More RAM is better | ||
+ | | Devices with not enough RAM may not be able to use modern FSDG distributions. Creating a specific distribution for such devices would require someone to maintain it. | ||
+ | |- | ||
+ | | Touchscreen | ||
+ | | This enables to use most of the Android applications and alleviate the need for custom software that works with buttons only. | ||
+ | |- | ||
+ | | Stylus | ||
+ | | This enables to use most of the GNU/Linux applications and alleviate the need for custom software that works with buttons or capacitive touchscreens only. | ||
+ | |- | ||
+ | | ARMv7 CPUs (x86 is probably not used on e-readers) | ||
+ | | CPU that is supported by FSDG distributions or the ability to support the CPU with very few maintenance cost. | ||
+ | |- | ||
+ | |} | ||
== Software == | == Software == | ||
Line 42: | Line 90: | ||
{| class="wikitable sortable" | {| class="wikitable sortable" | ||
− | | | + | |- |
! Distribution | ! Distribution | ||
! Architectures | ! Architectures | ||
Line 108: | Line 156: | ||
|- | |- | ||
|} | |} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
=== Reader software === | === Reader software === | ||
Line 118: | Line 161: | ||
* FBReader | * FBReader | ||
* Calibre | * Calibre | ||
+ | * KOReader | ||
+ | |||
+ | === e-reader specific projects and distributions === | ||
+ | * https://fread.ink/ | ||
+ | * https://gitlab.com/yegortimoshenko/linux-clara | ||
+ | * https://hackaday.com/2019/10/31/building-an-open-hardware-ebook-reader/ | ||
== Hardware == | == Hardware == | ||
+ | === Warninig === | ||
+ | * Be sure to double check if the SOC is good with the SOC list on the bottom of the article | ||
+ | * The information might contains mistakes as: | ||
+ | ** It has been compiled by only one person (me) | ||
+ | ** It wasn't reviewed by someone else | ||
+ | ** It was done really fast with a very tight deadline | ||
+ | |||
+ | Remove this warning when things has been reviewed by at least one other person than me. | ||
+ | |||
+ | === Candidates with WiFi === | ||
+ | Deactivating the WiFi chip in hardware might be sufficent to make the devices RYF compliant | ||
+ | {| class="wikitable sortable" | ||
+ | |---- | ||
+ | ! Board | ||
+ | ! Vendor | ||
+ | ! Product | ||
+ | ! SOC | ||
+ | ! RAM | ||
+ | ! Display | ||
+ | ! Touchscreen | ||
+ | ! developement facilities | ||
+ | ! source code | ||
+ | ! Ammount of work required for upstreaming | ||
+ | ! Ammount of work for RYF | ||
+ | ! Issues | ||
+ | ! References | ||
+ | |- | ||
+ | | <!-- Board --> | ||
+ | | Kobo | ||
+ | | [[Group:Hardware/Freest/e-readers/Aura_H2O_Edition_2|Aura H2O Edition 2]] | ||
+ | | NXP i.MX6 SoloLite | ||
+ | | <!-- RAM --> TODO | ||
+ | | e-ink | ||
+ | | Yes | ||
+ | | | ||
+ | * TODO: Find how to boot the bootloader through USB on this device (boot modes + software to use) | ||
+ | * TODO: Find the serial port | ||
+ | | | ||
+ | * [https://github.com/kobolabs/Kobo-Reader/blob/master/hw/imx6sll-aurah2o2-aura/kernel.tar.bz2 linux 4.1.15] | ||
+ | * [https://github.com/kobolabs/Kobo-Reader/blob/master/hw/imx6sll-aurah2o2-aura/bootloader.tar.bz2 u-boot 2016.03] | ||
+ | | <!-- Ammount of work required for upstreaming --> TODO | ||
+ | | | ||
+ | * Find the WiFi chip vendor/product and find how to deactivate it. | ||
+ | | <!-- Issues --> | ||
+ | * See "i.MX6 SoloLite" in the SOC section at the bottom of the page | ||
+ | * TODO: Look if the display requires firmwares | ||
+ | * TODO: Look which peripherals requires a firmware | ||
+ | | <!-- References --> | ||
+ | |} | ||
+ | |||
=== Candidates without WiFi === | === Candidates without WiFi === | ||
This list devices that: | This list devices that: | ||
Line 219: | Line 318: | ||
* https://minghuasweblog.files.wordpress.com/2011/07/kobo_board.jpg | * https://minghuasweblog.files.wordpress.com/2011/07/kobo_board.jpg | ||
* | * | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|} | |} | ||
Line 335: | Line 360: | ||
=== Being evaluated === | === Being evaluated === | ||
− | + | ==== TODO ==== | |
TODO: Import from OpenInkpot: | TODO: Import from OpenInkpot: | ||
* N510 | * N510 | ||
* N516 | * N516 | ||
* N518 | * N518 | ||
− | |||
* Nook Color | * Nook Color | ||
* Nook Simple Touch | * Nook Simple Touch | ||
* Nook Tablet | * Nook Tablet | ||
− | |||
* SoriBOOK | * SoriBOOK | ||
* Story | * Story | ||
Line 351: | Line 374: | ||
* V8 | * V8 | ||
+ | TODO: (finish) importing the following brand from wikipedia. | ||
+ | * Bebook | ||
+ | * Cybook | ||
+ | |||
+ | TODO: Also look at Freescale/NXP presentations to find ebook readers with I.MX(6) | ||
+ | |||
+ | ==== Kobo ==== | ||
+ | {| class="wikitable sortable" | ||
+ | |---- | ||
+ | ! Board | ||
+ | ! Vendor | ||
+ | ! Product | ||
+ | ! SOC | ||
+ | ! RAM | ||
+ | ! Display | ||
+ | ! Touchscreen | ||
+ | ! developement facilities | ||
+ | ! source code | ||
+ | ! Ammount of work required for upstreaming | ||
+ | ! Ammount of work for RYF | ||
+ | ! Issues | ||
+ | ! References | ||
+ | |- | ||
+ | | <!-- Board --> | ||
+ | | Kobo | ||
+ | | eReader WiFi | ||
+ | | NXP (formerly Freescale) i.MX357 | ||
+ | | <!-- RAM --> | ||
+ | | e-ink | ||
+ | | <!-- Touchscreen --> | ||
+ | | | ||
+ | * Serial ports pins known | ||
+ | * Can boot from SD | ||
+ | | | ||
+ | Source code available: | ||
+ | * Linux 2.6.28 | ||
+ | * Redboot | ||
+ | | <!-- Ammount of work required for upstreaming --> | ||
+ | * Port to the devicetree | ||
+ | * Port to a recent free software bootloader | ||
+ | | <!-- Ammount of work for RYF --> | ||
+ | * Deactivate WiFi | ||
+ | | | ||
+ | * Has WiFi | ||
+ | * Has bluetooth? | ||
+ | | | ||
+ | * https://github.com/lgeek/okreader | ||
+ | * https://github.com/lgeek/u-boot-okreader | ||
+ | * https://github.com/lgeek/linux-okreader | ||
+ | * https://en.wikipedia.org/wiki/Kobo_eReader | ||
+ | |- | ||
+ | | <!-- Board --> | ||
+ | | Kobo | ||
+ | | Wi-Fi | ||
+ | | SOC: NXP (formerly Freescale) i.MX357 | ||
+ | | 128M | ||
+ | | e-ink | ||
+ | | <!-- Touchscreen --> | ||
+ | | <!-- developement facilities --> | ||
+ | | <!-- source code --> | ||
+ | | <!-- Ammount of work required for upstreaming --> | ||
+ | | <!-- Ammount of work for RYF --> | ||
+ | | <!-- Issues --> | ||
+ | | <!-- References --> | ||
+ | |- | ||
+ | | Netronix E60610 (Touch B) | ||
+ | | Kobo | ||
+ | | Touch | ||
+ | | <!-- SOC --> | ||
+ | | <!-- RAM --> | ||
+ | | e-ink | ||
+ | | <!-- Touchscreen --> | ||
+ | | <!-- developement facilities --> | ||
+ | | <!-- source code --> | ||
+ | | <!-- Ammount of work required for upstreaming --> | ||
+ | | <!-- Ammount of work for RYF --> | ||
+ | | <!-- Issues --> | ||
+ | | <!-- References --> | ||
+ | |- | ||
+ | | Netronix E50610 | ||
+ | | Kobo | ||
+ | | Mini | ||
+ | | <!-- SOC --> | ||
+ | | <!-- RAM --> | ||
+ | | e-ink | ||
+ | | <!-- Touchscreen --> | ||
+ | | <!-- developement facilities --> | ||
+ | | <!-- source code --> | ||
+ | | <!-- Ammount of work required for upstreaming --> | ||
+ | | <!-- Ammount of work for RYF --> | ||
+ | | <!-- Issues --> | ||
+ | | <!-- References --> | ||
+ | |- | ||
+ | | Netronix E606B0 | ||
+ | | Kobo | ||
+ | | Glo | ||
+ | | <!-- SOC --> | ||
+ | | <!-- RAM --> | ||
+ | | e-ink | ||
+ | | <!-- Touchscreen --> | ||
+ | | <!-- developement facilities --> | ||
+ | | <!-- source code --> | ||
+ | | <!-- Ammount of work required for upstreaming --> | ||
+ | | <!-- Ammount of work for RYF --> | ||
+ | | <!-- Issues --> | ||
+ | | <!-- References --> | ||
+ | |- | ||
+ | | Netronix E606F0B | ||
+ | | Kobo | ||
+ | | Aura 6" | ||
+ | | NXP (formerly Freescale) i.MX507 | ||
+ | | 256M | ||
+ | | e-ink | ||
+ | | <!-- Touchscreen --> | ||
+ | | <!-- developement facilities --> | ||
+ | | | ||
+ | * u-boot | ||
+ | | partial devicetree upstreamed, | ||
+ | * TPS65185 PMIC | ||
+ | * EKTF2132 touch controller | ||
+ | * some kind of embedded controller | ||
+ | * EPDC | ||
+ | | <!-- Ammount of work for RYF --> | ||
+ | | <!-- Issues --> | ||
+ | | <!-- References --> | ||
+ | |- | ||
+ | | Netronix E606C0 | ||
+ | | Kobo | ||
+ | | Aura HD | ||
+ | | <!-- SOC --> | ||
+ | | <!-- RAM --> | ||
+ | | e-ink | ||
+ | | <!-- Touchscreen --> | ||
+ | | <!-- developement facilities --> | ||
+ | | <!-- source code --> | ||
+ | | <!-- Ammount of work required for upstreaming --> | ||
+ | | <!-- Ammount of work for RYF --> | ||
+ | | <!-- Issues --> | ||
+ | | <!-- References --> | ||
+ | |- | ||
+ | | Netronix E606G0 | ||
+ | | Kobo | ||
+ | | Aura H2O | ||
+ | | I.MX507 | ||
+ | | <!-- RAM --> | ||
+ | | e-ink | ||
+ | | <!-- Touchscreen --> | ||
+ | | <!-- developement facilities --> | ||
+ | | <!-- source code --> | ||
+ | | <!-- Ammount of work required for upstreaming --> | ||
+ | | <!-- Ammount of work for RYF --> | ||
+ | | <!-- Issues --> | ||
+ | | <!-- References --> | ||
+ | |- | ||
+ | | Netronix E60Q90 | ||
+ | | Kobo | ||
+ | | [[Kobo/glo HD|Glo HD]] | ||
+ | | i.MX6 Solo | ||
+ | | <!-- RAM --> | ||
+ | | e-ink | ||
+ | | <!-- Touchscreen --> | ||
+ | | <!-- developement facilities --> | ||
+ | | <!-- source code --> | ||
+ | | <!-- Ammount of work required for upstreaming --> | ||
+ | | <!-- Ammount of work for RYF --> | ||
+ | | <!-- Issues --> | ||
+ | | <!-- References --> | ||
+ | |- | ||
+ | | Netronix E60Q90 | ||
+ | | Kobo | ||
+ | | Touch 2.0 | ||
+ | | <!-- SOC --> | ||
+ | | <!-- RAM --> | ||
+ | | e-ink | ||
+ | | <!-- Touchscreen --> | ||
+ | | <!-- developement facilities --> | ||
+ | | <!-- source code --> | ||
+ | | <!-- Ammount of work required for upstreaming --> | ||
+ | | <!-- Ammount of work for RYF --> | ||
+ | | <!-- Issues --> | ||
+ | | <!-- References --> | ||
+ | |- | ||
+ | | Netronix E70Q00 | ||
+ | | Kobo | ||
+ | | Aura One | ||
+ | | <!-- SOC --> | ||
+ | | <!-- RAM --> | ||
+ | | e-ink | ||
+ | | <!-- Touchscreen --> | ||
+ | | <!-- developement facilities --> | ||
+ | | <!-- source code --> | ||
+ | | <!-- Ammount of work required for upstreaming --> | ||
+ | | <!-- Ammount of work for RYF --> | ||
+ | | <!-- Issues --> | ||
+ | | <!-- References --> | ||
+ | |- | ||
+ | | Netronix E60QL0 | ||
+ | | Kobo | ||
+ | | Aura Edition 2 | ||
+ | | NXP i.MX6 SoloLite | ||
+ | | <!-- RAM --> | ||
+ | | e-ink | ||
+ | | <!-- Touchscreen --> | ||
+ | | <!-- developement facilities --> | ||
+ | | <!-- source code --> | ||
+ | | <!-- Ammount of work required for upstreaming --> | ||
+ | | <!-- Ammount of work for RYF --> | ||
+ | | <!-- Issues --> | ||
+ | | <!-- References --> | ||
+ | |- | ||
+ | | Netronix E60K02 | ||
+ | | Kobo | ||
+ | | Clara HD | ||
+ | | NXP i.MX6 SLL | ||
+ | | 512M | ||
+ | | e-ink | ||
+ | | Yes | ||
+ | | | ||
+ | * serial port pins marked | ||
+ | * internal uSD socket | ||
+ | | <!-- source code --> | ||
+ | | partial devicetree in 5.5, missing drivers | ||
+ | * CYTTSP5 Touchscreen | ||
+ | * TPS65185 PMIC | ||
+ | * EPDC | ||
+ | * RC5T619 PMIC: | ||
+ | * RTC (arrived in 5.7-rc1) | ||
+ | * ADC (arrived in 5.7-rc1) | ||
+ | * fuel gauge (battery voltage can be read though ADC) | ||
+ | * charger (gives some 350mA standard charge without driver) | ||
+ | | <!-- Ammount of work for RYF --> | ||
+ | | <!-- Issues --> | ||
+ | | <!-- References --> | ||
+ | |- | ||
+ | | Netronix E60K02 | ||
+ | | Kobo | ||
+ | | Tolino Shine 3 | ||
+ | | NXP i.MX6 SoloLite | ||
+ | | 512M | ||
+ | | e-ink | ||
+ | | Yes | ||
+ | | | ||
+ | * serial port pins marked | ||
+ | * internal uSD socket | ||
+ | | <!-- source code --> | ||
+ | | partial devicetree in 5.6, missing drivers: | ||
+ | * CYTTSP5 Touchscreen | ||
+ | * TPS65185 PMIC | ||
+ | * EPDC | ||
+ | * RC5T619 PMIC: | ||
+ | * RTC (since 5.7-rc1) | ||
+ | * ADC (since 5.7-rc1) | ||
+ | * fuel gauge (battery voltage can be read though ADC) | ||
+ | * charger (gives some 350mA standard charge without driver) | ||
+ | | <!-- Ammount of work for RYF --> | ||
+ | | <!-- Issues --> | ||
+ | | <!-- References --> | ||
+ | |- | ||
+ | |} | ||
+ | |||
+ | ==== Booken ==== | ||
{| class="wikitable sortable" | {| class="wikitable sortable" | ||
|---- | |---- | ||
Line 482: | Line 766: | ||
| <!-- References --> | | <!-- References --> | ||
|- | |- | ||
− | | | + | |} |
− | | | + | |
− | | | + | ==== Amazon ==== |
− | | | + | |
− | | <!-- | + | {| class="wikitable sortable" |
− | + | |---- | |
+ | ! Board | ||
+ | ! Vendor | ||
+ | ! Product | ||
+ | ! SOC | ||
+ | ! RAM | ||
+ | ! Display | ||
+ | ! Touchscreen | ||
+ | ! developement facilities | ||
+ | ! source code | ||
+ | ! Ammount of work required for upstreaming | ||
+ | ! Ammount of work for RYF | ||
+ | ! Issues | ||
+ | ! References | ||
+ | |- | ||
+ | | Kindle | ||
+ | | colspan="2" | | ||
+ | * Amazon Kindle | ||
+ | | SOC: PXA255 | ||
+ | | 64M | ||
+ | | <!-- Display --> | ||
| <!-- Touchscreen --> | | <!-- Touchscreen --> | ||
− | | | + | | <!-- developement facilities --> |
− | + | | <!-- source code --> | |
− | |||
− | | | ||
− | |||
− | |||
− | |||
| <!-- Ammount of work required for upstreaming --> | | <!-- Ammount of work required for upstreaming --> | ||
− | |||
− | |||
− | |||
− | |||
| | | | ||
− | + | | No WiFi but has 3G | |
− | + | | <!-- References --> | |
− | | | ||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
− | | | + | |Kindle 2 |
− | | | + | | colspan="2" | |
− | + | * Amazon Kindle 2 | |
− | | SOC: | + | | SOC: I.MX31 |
− | | | + | | <!-- RAM --> |
− | | | + | | <!-- Display --> |
| <!-- Touchscreen --> | | <!-- Touchscreen --> | ||
| <!-- developement facilities --> | | <!-- developement facilities --> | ||
− | | | + | | Linux 2.6.26 |
| <!-- Ammount of work required for upstreaming --> | | <!-- Ammount of work required for upstreaming --> | ||
| <!-- Ammount of work for RYF --> | | <!-- Ammount of work for RYF --> | ||
− | | | + | | No WiFi but has 3G/CDMA |
| <!-- References --> | | <!-- References --> | ||
|- | |- | ||
− | | | + | |Kindle 3 Keyboard |
− | | | + | | colspan="2" | |
− | + | * Amazon Keyboard | |
| <!-- SOC --> | | <!-- SOC --> | ||
| <!-- RAM --> | | <!-- RAM --> | ||
− | | | + | | <!-- Display --> |
| <!-- Touchscreen --> | | <!-- Touchscreen --> | ||
| <!-- developement facilities --> | | <!-- developement facilities --> | ||
| <!-- source code --> | | <!-- source code --> | ||
| <!-- Ammount of work required for upstreaming --> | | <!-- Ammount of work required for upstreaming --> | ||
− | | | + | | |
− | | | + | | WiFi or, WiFi and 3G |
| <!-- References --> | | <!-- References --> | ||
|- | |- | ||
− | | | + | |Kindle 4: |
− | | | + | | colspan="2" | |
− | + | * Amazon Kindle 4 | |
| <!-- SOC --> | | <!-- SOC --> | ||
| <!-- RAM --> | | <!-- RAM --> | ||
− | | | + | | <!-- Display --> |
| <!-- Touchscreen --> | | <!-- Touchscreen --> | ||
| <!-- developement facilities --> | | <!-- developement facilities --> | ||
Line 549: | Line 839: | ||
| <!-- Ammount of work required for upstreaming --> | | <!-- Ammount of work required for upstreaming --> | ||
| <!-- Ammount of work for RYF --> | | <!-- Ammount of work for RYF --> | ||
− | | | + | | Has WiFi |
| <!-- References --> | | <!-- References --> | ||
|- | |- | ||
− | | | + | | Kindle 4 Touch |
− | | | + | | Amazon |
− | | | + | | Kindle 4 Touch |
| <!-- SOC --> | | <!-- SOC --> | ||
| <!-- RAM --> | | <!-- RAM --> | ||
− | | | + | | <!-- Display --> |
| <!-- Touchscreen --> | | <!-- Touchscreen --> | ||
| <!-- developement facilities --> | | <!-- developement facilities --> | ||
Line 563: | Line 853: | ||
| <!-- Ammount of work required for upstreaming --> | | <!-- Ammount of work required for upstreaming --> | ||
| <!-- Ammount of work for RYF --> | | <!-- Ammount of work for RYF --> | ||
− | | | + | | WiFi or, WiFi and 3G |
| <!-- References --> | | <!-- References --> | ||
|- | |- | ||
− | | <!-- | + | | Kindle DX |
− | + | | colspan="2" | | |
− | + | * Amazon Kindle DX | |
− | + | | <!-- SOC --> | |
| <!-- RAM --> | | <!-- RAM --> | ||
− | | | + | | <!-- Display --> |
| <!-- Touchscreen --> | | <!-- Touchscreen --> | ||
| <!-- developement facilities --> | | <!-- developement facilities --> | ||
− | | | + | | <!-- source code --> |
− | |||
| <!-- Ammount of work required for upstreaming --> | | <!-- Ammount of work required for upstreaming --> | ||
− | | | + | | |
− | | | + | | Has 3G |
| <!-- References --> | | <!-- References --> | ||
|- | |- | ||
− | | | + | |} |
− | | | + | |
− | | | + | ==== Sony ==== |
− | | < | + | |
− | | <!-- | + | {| class="wikitable sortable" |
− | + | |---- | |
+ | ! Board | ||
+ | ! Vendor | ||
+ | ! Product | ||
+ | ! SOC | ||
+ | ! RAM | ||
+ | ! Display | ||
+ | ! Touchscreen | ||
+ | ! developement facilities | ||
+ | ! source code | ||
+ | ! Ammount of work required for upstreaming | ||
+ | ! Ammount of work for RYF | ||
+ | ! Issues | ||
+ | ! References | ||
+ | |- | ||
+ | | | ||
+ | | colspan="2" | | ||
+ | * PocketBook Pro 912 | ||
+ | | Samsung <?> (arm) | ||
+ | | 256M | ||
+ | | <!-- Display --> | ||
| <!-- Touchscreen --> | | <!-- Touchscreen --> | ||
| <!-- developement facilities --> | | <!-- developement facilities --> | ||
| <!-- source code --> | | <!-- source code --> | ||
| <!-- Ammount of work required for upstreaming --> | | <!-- Ammount of work required for upstreaming --> | ||
− | | | + | | Has WiFi, Bluetooth, 3G |
| <!-- Issues --> | | <!-- Issues --> | ||
| <!-- References --> | | <!-- References --> | ||
|- | |- | ||
− | | | + | | PRS-300 |
− | | | + | | Sony |
− | | | + | | PRS-300 |
| <!-- SOC --> | | <!-- SOC --> | ||
| <!-- RAM --> | | <!-- RAM --> | ||
− | | | + | | <!-- Display --> |
| <!-- Touchscreen --> | | <!-- Touchscreen --> | ||
| <!-- developement facilities --> | | <!-- developement facilities --> | ||
| <!-- source code --> | | <!-- source code --> | ||
| <!-- Ammount of work required for upstreaming --> | | <!-- Ammount of work required for upstreaming --> | ||
− | | | + | | No WiFi? |
| <!-- Issues --> | | <!-- Issues --> | ||
| <!-- References --> | | <!-- References --> | ||
|- | |- | ||
− | | | + | | PRS-500 |
− | | | + | | Sony |
− | | | + | | PRS-500 |
| <!-- SOC --> | | <!-- SOC --> | ||
| <!-- RAM --> | | <!-- RAM --> | ||
− | | | + | | <!-- Display --> |
| <!-- Touchscreen --> | | <!-- Touchscreen --> | ||
| <!-- developement facilities --> | | <!-- developement facilities --> | ||
Line 623: | Line 932: | ||
| <!-- References --> | | <!-- References --> | ||
|- | |- | ||
− | | | + | | PRS-505 |
− | | | + | | Sony |
− | | | + | | PRS-505 |
| <!-- SOC --> | | <!-- SOC --> | ||
| <!-- RAM --> | | <!-- RAM --> | ||
− | | | + | | <!-- Display --> |
| <!-- Touchscreen --> | | <!-- Touchscreen --> | ||
| <!-- developement facilities --> | | <!-- developement facilities --> | ||
Line 637: | Line 946: | ||
| <!-- References --> | | <!-- References --> | ||
|- | |- | ||
− | | | + | | PRS-700 |
− | | | + | | Sony |
− | | | + | | PRS-700 |
| <!-- SOC --> | | <!-- SOC --> | ||
| <!-- RAM --> | | <!-- RAM --> | ||
− | | | + | | <!-- Display --> |
| <!-- Touchscreen --> | | <!-- Touchscreen --> | ||
| <!-- developement facilities --> | | <!-- developement facilities --> | ||
Line 651: | Line 960: | ||
| <!-- References --> | | <!-- References --> | ||
|- | |- | ||
− | | | + | | PRS-900 |
− | | | + | | Sony |
− | | | + | | PRS-900 |
| <!-- SOC --> | | <!-- SOC --> | ||
| <!-- RAM --> | | <!-- RAM --> | ||
− | | | + | | <!-- Display --> |
| <!-- Touchscreen --> | | <!-- Touchscreen --> | ||
| <!-- developement facilities --> | | <!-- developement facilities --> | ||
Line 662: | Line 971: | ||
| <!-- Ammount of work required for upstreaming --> | | <!-- Ammount of work required for upstreaming --> | ||
| <!-- Ammount of work for RYF --> | | <!-- Ammount of work for RYF --> | ||
− | | | + | | Has 3G |
| <!-- References --> | | <!-- References --> | ||
|- | |- | ||
+ | |} | ||
+ | |||
+ | See also: https://elinux.org/EBR-1000EP | ||
+ | |||
+ | ==== Other ==== | ||
+ | |||
+ | {| class="wikitable sortable" | ||
+ | |---- | ||
+ | ! Board | ||
+ | ! Vendor | ||
+ | ! Product | ||
+ | ! SOC | ||
+ | ! RAM | ||
+ | ! Display | ||
+ | ! Touchscreen | ||
+ | ! developement facilities | ||
+ | ! source code | ||
+ | ! Ammount of work required for upstreaming | ||
+ | ! Ammount of work for RYF | ||
+ | ! Issues | ||
+ | ! References | ||
+ | |- | ||
+ | |A6 series | ||
+ | | colspan="2" | | ||
+ | * Jinke A6 series | ||
+ | | Samsung <?> (Arm9 400MHz) | ||
+ | | 128M | ||
+ | | | ||
+ | | ? | ||
+ | | | ||
+ | | ? | ||
+ | | ? | ||
+ | | ? | ||
+ | | | ||
+ | * Has WiFi | ||
+ | | | ||
+ | * [https://web.archive.org/web/20120107225829/http://openinkpot.org/wiki/Device/A6 OpenInkpot wiki] | ||
+ | |- | ||
+ | | Boox 60 | ||
+ | | colspan="2" | | ||
+ | * Onyx Boox 60 | ||
+ | * Wolder Boox | ||
+ | | I.MX31 | ||
+ | | 128M | ||
+ | | | ||
+ | | ? | ||
+ | | ? | ||
+ | | ? | ||
+ | | ? | ||
+ | | ? | ||
+ | | | ||
+ | * Both devices have WiFi | ||
+ | | | ||
+ | * [https://web.archive.org/web/20120107225829/http://openinkpot.org/wiki/Device/Boox60 OpenInkpot wiki] | ||
+ | |- | ||
+ | | Story HD | ||
+ | | iRiver | ||
+ | | Story HD (WiFi) | ||
+ | | NXP (formerly Freescale) I.MX508 | ||
+ | | 128MB | ||
+ | | e-ink | ||
+ | | ? | ||
+ | | ? | ||
+ | | [http://www.iriver.com/opensource.html iRiver source code for Story HD WiFi]: | ||
+ | * Linux | ||
+ | * Bootloader? | ||
+ | | | ||
+ | | | ||
+ | * TODO: Find how to deactivate the WiFi chip | ||
+ | | | ||
+ | * Has WiFi | ||
+ | * Low ammount of RAM | ||
+ | | | ||
+ | * [http://www.iriver.com/opensource.html iRiver source code] | ||
+ | * [https://web.archive.org/web/20120107225829/http://openinkpot.org/wiki/Device/StoryHD OpenInkpot wiki] | ||
|- | |- | ||
| A9 series | | A9 series | ||
Line 927: | Line 1,311: | ||
| <!-- Ammount of work required for upstreaming --> | | <!-- Ammount of work required for upstreaming --> | ||
| <!-- Ammount of work for RYF --> | | <!-- Ammount of work for RYF --> | ||
+ | | <!-- Issues --> | ||
+ | | <!-- References --> | ||
+ | |- | ||
+ | |||
+ | |- | ||
+ | | V3+ | ||
+ | | | ||
+ | | | ||
+ | | Samsung s3c2416 | ||
+ | | 64M | ||
+ | | <!-- Display --> | ||
+ | | <!-- Touchscreen --> | ||
+ | | <!-- developement facilities --> | ||
+ | | <!-- source code --> | ||
+ | | <!-- Ammount of work required for upstreaming --> | ||
+ | | <!-- Ammount of work for RYF --> | ||
+ | | <!-- Issues --> | ||
+ | | <!-- References --> | ||
+ | |- | ||
+ | | V5 | ||
+ | | colspan="2" | | ||
+ | * DZTep V5 | ||
+ | * Devo eVreader | ||
+ | | | ||
+ | | 32M | ||
+ | | <!-- Display --> | ||
+ | | <!-- Touchscreen --> | ||
+ | | <!-- developement facilities --> | ||
+ | | <!-- source code --> | ||
+ | | <!-- Ammount of work required for upstreaming --> | ||
+ | | <!-- Ammount of work for RYF --> | ||
+ | | <!-- Issues --> | ||
+ | | <!-- References --> | ||
+ | |- | ||
+ | |- | ||
+ | | N520 | ||
+ | | colspan="2" | | ||
+ | * Hanvon WISEreader N520 | ||
+ | | Ingenic JZ4740 (mips) | ||
+ | | 64M | ||
+ | | <!-- Display --> | ||
+ | | <!-- Touchscreen --> | ||
+ | | <!-- developement facilities --> | ||
+ | | <!-- source code --> | ||
+ | | <!-- Ammount of work required for upstreaming --> | ||
+ | | <!-- Ammount of work for RYF --> | ||
+ | | <!-- Issues --> | ||
+ | | <!-- References --> | ||
+ | |- | ||
+ | | N526 | ||
+ | | colspan="2" | | ||
+ | * Hanvon WISEreader N526 | ||
+ | | Ingenic JZ4740 (mips) | ||
+ | | 32M | ||
+ | | <!-- Display --> | ||
+ | | <!-- Touchscreen --> | ||
+ | | <!-- developement facilities --> | ||
+ | | <!-- source code --> | ||
+ | | <!-- Ammount of work required for upstreaming --> | ||
+ | | <!-- Ammount of work for RYF --> | ||
+ | | <!-- Issues --> | ||
+ | | <!-- References --> | ||
+ | |- | ||
+ | | Nook 1st Edition | ||
+ | | colspan="2" | | ||
+ | * Barnes & Noble Nook | ||
+ | | ? | ||
+ | | ? | ||
+ | | <!-- Display --> | ||
+ | | <!-- Touchscreen --> | ||
+ | | <!-- developement facilities --> | ||
+ | | <!-- source code --> | ||
+ | | <!-- Ammount of work required for upstreaming --> | ||
+ | | Has WiFi, or WiFi and 3G | ||
| <!-- Issues --> | | <!-- Issues --> | ||
| <!-- References --> | | <!-- References --> | ||
Line 935: | Line 1,393: | ||
* https://en.wikipedia.org/wiki/Comparison_of_e-readers | * https://en.wikipedia.org/wiki/Comparison_of_e-readers | ||
− | = | + | = Hardware components = |
+ | This section has more details on the various chips and other components used in existing e-readers, or that could be used (or should not be used) to build an RYF compliant e-reader. | ||
+ | |||
+ | |||
== Considerations == | == Considerations == | ||
== Components == | == Components == | ||
+ | |||
+ | === e-ink displays === | ||
+ | e-ink displays have a huge latency. I'm not sure if special software is needed to handle it or if Linux standard e-ink drivers are enough. | ||
+ | Available software: | ||
+ | * F-droid has a laucnher for e-ink displays | ||
+ | |||
+ | ==== I.MX6 e-ink display controller ==== | ||
+ | In the imx_3.9.11_1.0.0_ga branch in [http://git.freescale.com/git/cgit.cgi/imx/linux-imx.git/ the linux-imx], in [http://git.freescale.com/git/cgit.cgi/imx/linux-imx.git/tree/drivers/video/fbdev/mxc?h=imx_4.9.11_1.0.0_ga video/fbdev/mxc], both mxc_epdc_fb.c and mxc_epdc_v2_fb.c uses request_firmware functions, but they seem to be used to load some wavform (data to drive the display) into the display or display controller. | ||
+ | |||
+ | ==== Documentation ==== | ||
+ | * https://elinux.org/images/2/25/E_paper_Displays.pdf | ||
+ | * https://elinux.org/BeagleEPD | ||
+ | * https://www.mobileread.com/forums/showthread.php?t=218927 | ||
+ | * http://essentialscrap.com/eink/Driving_E_Ink_Displays.pdf | ||
+ | * https://elinux.org/RaspberryPi_Laptop : "Alternative components: E-ink [...] have been hacked to display video with a relatively fast refresh rate" => May contain information about waveforms | ||
+ | |||
=== System on a chip and associated companion chips === | === System on a chip and associated companion chips === | ||
− | + | See the [[Group:Hardware/Components/SOCs|Page on SOCs]] for more details. | |
− | + | ||
− | + | {{featured resource|month=December|year=2019}} | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | | | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |} |
Latest revision as of 17:58, 14 March 2023
Contents
Rationale
This page aims to document which existing ebook readers could become RYF certified without too much work. This is to see what the pros and the cons of liberating an existing e-reader versus making one.
RYF interpretation and resulting hardware choices
- Some e-readers contains hardware components that doesn't work with free software (like WiFi chips requiring a nonfree firmware). To prevent such components from getting into the way of the RYF compliance, such components can be disabled in hardware.
- If a hardware block is present but typically not used (for instance if a device has a GPU but doesn't use it because it uses an e-ink display which has a high latency), it *may* not get into the way of RYF compliance, as it *probably* won't steers users towards nonfree software.
Questions
For the I.MX GPU (vivante):
- Is it required to have a free software driver for GPU when the device is meant to be used as an e-reader and has a high latency e-ink display?
- If so, is the free software driver for the vivante GPU sufficently mature not to steer users towards non-free software ?
Existing hardware
Hardware Requirements
Basic requirements
- Free boot software or the ability to easily port one to the e-reader.
- Enough RAM to run free software operating systems.
- No cellphone network support
- Good SOC and no crucial peripherals requiring nonfree firmware (else the peripheral will be disabled in hardware)
- e-paper display
Requirements to do hardware support work faster
Since e-readers without WiFi or telephony network connection are old, the software they come with and the corresponding source code is also really old. To be able to use modern GNU/Linux or Android distribution on them, the source code needs to be used to add support for the device in recent hardware support software such as Linux or free software boot software like u-boot.
Software support that helps:
- Most of the hardware of the device already supported by upstream projects (Linux and a free software bootloader).
Hardware features that helps:
- Serial port that is easy to access
- Booting the Bootloader from the USB or serial port
- Ethernet (unlikely to be found on such devices)
Requirements that can be lifted
Requirement | Rationale |
---|---|
The absence of WiFi/Bluetooth | The chips could be disabled by soldering some of their pins or by removing them with a hot air gun. |
unsigned bootloaders | This requirements can be lifted on devices with the following System On a Chip, if they were made before July 2017:
This is because such chip contains a hardware security flaw enabling to execute your code nevertheless. |
Additional requirements
Requirement | Rationale |
---|---|
Recent |
|
More RAM is better | Devices with not enough RAM may not be able to use modern FSDG distributions. Creating a specific distribution for such devices would require someone to maintain it. |
Touchscreen | This enables to use most of the Android applications and alleviate the need for custom software that works with buttons only. |
Stylus | This enables to use most of the GNU/Linux applications and alleviate the need for custom software that works with buttons or capacitive touchscreens only. |
ARMv7 CPUs (x86 is probably not used on e-readers) | CPU that is supported by FSDG distributions or the ability to support the CPU with very few maintenance cost. |
Software
Operating systems and distributions
Distribution | Architectures | RAM Requirements | work required to add a device | Self hosting | FSDG compliant |
---|---|---|---|---|---|
Parabola |
Packages: |
? (low) |
|
Yes | Yes |
GuixSD |
Packages: Requires (cross) compilation: |
? (low) |
|
Yes | Yes |
LibreCMC |
Packages: Requires (cross) compilation: |
? (lowest) |
|
No | Yes |
Replicant |
Requires (cross) compilation:
|
424M for Android 6.0 (High) |
|
No | Yes |
Reader software
- Off the shelf free software pdf readers (check RAM usage)
- FBReader
- Calibre
- KOReader
e-reader specific projects and distributions
- https://fread.ink/
- https://gitlab.com/yegortimoshenko/linux-clara
- https://hackaday.com/2019/10/31/building-an-open-hardware-ebook-reader/
Hardware
Warninig
- Be sure to double check if the SOC is good with the SOC list on the bottom of the article
- The information might contains mistakes as:
- It has been compiled by only one person (me)
- It wasn't reviewed by someone else
- It was done really fast with a very tight deadline
Remove this warning when things has been reviewed by at least one other person than me.
Candidates with WiFi
Deactivating the WiFi chip in hardware might be sufficent to make the devices RYF compliant
Board | Vendor | Product | SOC | RAM | Display | Touchscreen | developement facilities | source code | Ammount of work required for upstreaming | Ammount of work for RYF | Issues | References |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Kobo | Aura H2O Edition 2 | NXP i.MX6 SoloLite | TODO | e-ink | Yes |
|
TODO |
|
|
Candidates without WiFi
This list devices that:
- can run free boot software, potentially with some work
- don't have WiFi (or have a WiFi chip that works with free software)
Board | Vendor | Product | SOC | RAM | Display | Touchscreen | developement facilities | source code | Ammount of work required for upstreaming | Ammount of work for RYF | Issues | References |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Story HD | iRiver | Story HD (Basic) | NXP (formerly Freescale) I.MX508 | 128MB | e-ink |
|
iRiver source code for Story HD Basic:
|
|
|
|
||
? | Sony | PRS-600 | NXP (formerly freescale) I.MX31 | 128MB | e-ink | ? |
|
|
|
|||
EB600 |
|
Samsung S3C2440AL-40 | 32MB | e-ink |
|
? |
|
|
|
Bad candidates
Board | Vendor | Product | SOC | RAM | Display | Touchscreen | developement facilities | source code | Ammount of work required for upstreaming | Ammount of work for RYF | Issues | References |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Amazon | Kindle Fire (first generation) | OMAP4430 | 512M | Standard (Tablet) |
|
|
|
Being evaluated
TODO
TODO: Import from OpenInkpot:
- N510
- N516
- N518
- Nook Color
- Nook Simple Touch
- Nook Tablet
- SoriBOOK
- Story
- V2
- V6
- V8
TODO: (finish) importing the following brand from wikipedia.
- Bebook
- Cybook
TODO: Also look at Freescale/NXP presentations to find ebook readers with I.MX(6)
Kobo
Board | Vendor | Product | SOC | RAM | Display | Touchscreen | developement facilities | source code | Ammount of work required for upstreaming | Ammount of work for RYF | Issues | References |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Kobo | eReader WiFi | NXP (formerly Freescale) i.MX357 | e-ink |
|
Source code available:
|
|
|
|
||||
Kobo | Wi-Fi | SOC: NXP (formerly Freescale) i.MX357 | 128M | e-ink | ||||||||
Netronix E60610 (Touch B) | Kobo | Touch | e-ink | |||||||||
Netronix E50610 | Kobo | Mini | e-ink | |||||||||
Netronix E606B0 | Kobo | Glo | e-ink | |||||||||
Netronix E606F0B | Kobo | Aura 6" | NXP (formerly Freescale) i.MX507 | 256M | e-ink |
|
partial devicetree upstreamed,
|
|||||
Netronix E606C0 | Kobo | Aura HD | e-ink | |||||||||
Netronix E606G0 | Kobo | Aura H2O | I.MX507 | e-ink | ||||||||
Netronix E60Q90 | Kobo | Glo HD | i.MX6 Solo | e-ink | ||||||||
Netronix E60Q90 | Kobo | Touch 2.0 | e-ink | |||||||||
Netronix E70Q00 | Kobo | Aura One | e-ink | |||||||||
Netronix E60QL0 | Kobo | Aura Edition 2 | NXP i.MX6 SoloLite | e-ink | ||||||||
Netronix E60K02 | Kobo | Clara HD | NXP i.MX6 SLL | 512M | e-ink | Yes |
|
partial devicetree in 5.5, missing drivers
* CYTTSP5 Touchscreen * TPS65185 PMIC * EPDC * RC5T619 PMIC: * RTC (arrived in 5.7-rc1) * ADC (arrived in 5.7-rc1) * fuel gauge (battery voltage can be read though ADC) * charger (gives some 350mA standard charge without driver) |
||||
Netronix E60K02 | Kobo | Tolino Shine 3 | NXP i.MX6 SoloLite | 512M | e-ink | Yes |
|
partial devicetree in 5.6, missing drivers:
* CYTTSP5 Touchscreen * TPS65185 PMIC * EPDC * RC5T619 PMIC: * RTC (since 5.7-rc1) * ADC (since 5.7-rc1) * fuel gauge (battery voltage can be read though ADC) * charger (gives some 350mA standard charge without driver) |
Booken
Board | Vendor | Product | SOC | RAM | Display | Touchscreen | developement facilities | source code | Ammount of work required for upstreaming | Ammount of work for RYF | Issues | References |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Bookeen | Cybook Gen1 | Probably not available: Proprietary OS | ||||||||||
Bookeen | Cybook Gen3 | S3C2410 or S3C2440? | 16M or 32M? | e-ink | ? |
|
||||||
Bookeen | Cybook Opus | S3C2440 | 32M | e-ink | ? |
|
||||||
Bookeen | Cybook Orizon | |||||||||||
Bookeen | Cybook Odyssey | |||||||||||
Bookeen | Cybook Muse | |||||||||||
Bookeen | Cybook Ocean | |||||||||||
Bookeen | Bookeen Saga |
Amazon
Board | Vendor | Product | SOC | RAM | Display | Touchscreen | developement facilities | source code | Ammount of work required for upstreaming | Ammount of work for RYF | Issues | References |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Kindle |
|
SOC: PXA255 | 64M | No WiFi but has 3G | ||||||||
Kindle 2 |
|
SOC: I.MX31 | Linux 2.6.26 | No WiFi but has 3G/CDMA | ||||||||
Kindle 3 Keyboard |
|
WiFi or, WiFi and 3G | ||||||||||
Kindle 4: |
|
Has WiFi | ||||||||||
Kindle 4 Touch | Amazon | Kindle 4 Touch | WiFi or, WiFi and 3G | |||||||||
Kindle DX |
|
Has 3G |
Sony
Board | Vendor | Product | SOC | RAM | Display | Touchscreen | developement facilities | source code | Ammount of work required for upstreaming | Ammount of work for RYF | Issues | References |
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Samsung <?> (arm) | 256M | Has WiFi, Bluetooth, 3G | |||||||||
PRS-300 | Sony | PRS-300 | No WiFi? | |||||||||
PRS-500 | Sony | PRS-500 | ||||||||||
PRS-505 | Sony | PRS-505 | ||||||||||
PRS-700 | Sony | PRS-700 | ||||||||||
PRS-900 | Sony | PRS-900 | Has 3G |
See also: https://elinux.org/EBR-1000EP
Other
Board | Vendor | Product | SOC | RAM | Display | Touchscreen | developement facilities | source code | Ammount of work required for upstreaming | Ammount of work for RYF | Issues | References |
---|---|---|---|---|---|---|---|---|---|---|---|---|
A6 series |
|
Samsung <?> (Arm9 400MHz) | 128M | ? | ? | ? | ? |
|
||||
Boox 60 |
|
I.MX31 | 128M | ? | ? | ? | ? | ? |
|
|||
Story HD | iRiver | Story HD (WiFi) | NXP (formerly Freescale) I.MX508 | 128MB | e-ink | ? | ? |
iRiver source code for Story HD WiFi:
|
|
|
||
A9 series | Jinke | A9 series | Samsung <?> (Arm9 400MHz) | 128M | ? |
|
||||||
E60 | Samsung | S5PC100A66 | 256M |
|
||||||||
PocketBook Pro 912 | Samsung <?> (arm) | 256M |
|
|||||||||
iRiver | Cover Story | ? | ? |
? |
||||||||
EB100 |
|
|||||||||||
EB600 |
|
|||||||||||
FLEPia | Fujitsu | FLEPia | ||||||||||
G5 |
|
Samsung S3C2416 | ||||||||||
G6 |
|
Samsung S3C2416 | ||||||||||
G10 |
|
Samsung S3C2416 | ||||||||||
G51 |
|
Samsung S3C2416 | ||||||||||
Iliad |
|
PXA255 | 64M | |||||||||
Qisda ES600 / ES900: |
|
Samsung S3C2416 | 128M | Linux, u-boot | ||||||||
V3 |
|
Samsung S3C2410AL-20 | 32M | |||||||||
V3+ | Samsung s3c2416 | 64M | ||||||||||
V5 |
|
32M | ||||||||||
N520 |
|
Ingenic JZ4740 (mips) | 64M | |||||||||
N526 |
|
Ingenic JZ4740 (mips) | 32M | |||||||||
Nook 1st Edition |
|
? | ? | Has WiFi, or WiFi and 3G |
See also
Hardware components
This section has more details on the various chips and other components used in existing e-readers, or that could be used (or should not be used) to build an RYF compliant e-reader.
Considerations
Components
e-ink displays
e-ink displays have a huge latency. I'm not sure if special software is needed to handle it or if Linux standard e-ink drivers are enough. Available software:
- F-droid has a laucnher for e-ink displays
I.MX6 e-ink display controller
In the imx_3.9.11_1.0.0_ga branch in the linux-imx, in video/fbdev/mxc, both mxc_epdc_fb.c and mxc_epdc_v2_fb.c uses request_firmware functions, but they seem to be used to load some wavform (data to drive the display) into the display or display controller.
Documentation
- https://elinux.org/images/2/25/E_paper_Displays.pdf
- https://elinux.org/BeagleEPD
- https://www.mobileread.com/forums/showthread.php?t=218927
- http://essentialscrap.com/eink/Driving_E_Ink_Displays.pdf
- https://elinux.org/RaspberryPi_Laptop : "Alternative components: E-ink [...] have been hacked to display video with a relatively fast refresh rate" => May contain information about waveforms
System on a chip and associated companion chips
See the Page on SOCs for more details.
This page was a featured resource in December 2019.