|11-13-2010, 12:03 PM||#1|
Join Date: Nov 2010
Pocketbook free SDK in Cooler ereader
First, let me explain how I did it.
Before I begin I have to say I'm not running Cooler firmware in my box, I'm running Booq firmware instead but I think this is not relevant as both are based on the same Netronix EB600 original software.
This firmware comes with a backdoor.sh scripts that allows to run a personal script at boot time. I discover this when I found browsing the Internet that it is used by kewler and skinmod scripts in order to change themes in the Cooler box.
I exploit this same trick to run the SDK example grays.app in my box. First I compiled the program for ARM processor using the SDK. As far as the program uses libinkview.so and this library is not in the original Netronix firmware I put it also in the directory and used LD_LIBRARY_PATH to be sure it is used by the program. I do the same with libcurl.so. The rest of dynamic libraries needed by libinkview.so were provided by the Netronix software.
The program executed but fails because cannot find devices pvi_ioc, ebr_adc and inkdrv. I found in Openinkpot web site a listing of Pocketbook filesystem and saw that pvi_io and pvio_ioc has the same major and minor, also with adc and ebr_adc, also with inkdrv and fb0. As far as these drivers where in Netronix firmware I created those needed by libinkview.so with the same major/minor as they have in Netronix firmware. And it worked.
Finally, the program grays.app failed because some fonts from /ebrmain were not found. So, I copied the whole ebrmain directory from SDK to the Cooler flash and linked it to the right pathname. It worked fine, and I could see the greyed squares of grays.app in the Cooler screen.
This is the good part of the history. However, there is a problem which halting me right now: the press of any of the keys of the box is not detected by the grays.app.
I made also this same test with the more completed inkdemo example. Same result: Pressing of any of the keys is not detected by the program.
I need some help about this subject. Which of the three devices (pvi_io, adc or fb0) used by libinkview.so is responsible of detecting the pressing of a key and to pass it to the library? I'm guessing that the drivers provided by Netronix are good for libinkview.so but maybe is not so and differences are high enough to avoid compatibility.
How can I go further. Anyone there can help me?
Find here after the listing s of the scripts I'm using.
# kewl-er backdoor script for the Cool-ER reader
if [ -e /mnt/flash/cogedatos.sh ]; then
#if [ -e /mnt/flash/.plugins/random.sh ]; then
# sh /mnt/flash/.plugins/random.sh
/bin/led 2 &
# This is a security line in order to avoid execution in followings boots
mv /mnt/flash/backdoor.sh /mnt/flash/backdoor_sh
# I create the devices
mknod -m 660 /dev/pvi_ioc c 10 190
mknod -m 660 /dev/ebr_adc c 10 132
mknod -m 660 /dev/einkdrv c 29 0
ls -l /dev|grep pvi > /mnt/flash/lsdev.out
ls -l /dev|grep adc >> /mnt/flash/lsdev.out
ls -l /dev|grep eink >> /mnt/flash/lsdev.out
# Create the links and copy config files
rm -f /ebrmain
rm -f /mnt/ext1/ext1
ln -s /mnt/flash/ebrmain /ebrmain >> /mnt/flash/lsdev.out
ln -s /mnt/flash/ext1 /mnt/ext1 >> /mnt/flash/lsdev.out
cp /mnt/flash/ext1/test.cfg /mnt/ext1/test.cfg >> /mnt/flash/lsdev.out
df >> /mnt/flash/lsdev.out
ls -lR /ebrmain >> /mnt/flash/lsdev.out
ls -lR /mnt/ext1 >> /mnt/flash/lsdev.out
# Run the program
/mnt/flash/grays.app > $logPath 2>&1 &
# Security code to kill the program in case of problems
Last edited by racagalro; 11-13-2010 at 12:09 PM.
|booq, cooler, free, pocketbook, sdk|
|Thread Tools||Search this Thread|
|Thread||Thread Starter||Forum||Replies||Last Post|
|Cooler-er don't want to start||Edvb||Interead COOL-ER||4||10-15-2010 04:36 AM|
|Download free eReader app, get a free coffee!||kjk||News||7||07-10-2010 03:31 AM|
|Wiki for Pocketbook Free/Development||wallnuss||PocketBook||18||05-29-2010 08:03 AM|
|Pocketbook SDK, Linux and Wine||mikmak||PocketBook||10||12-09-2009 06:17 AM|
|Hardware Cooler et le copyright||Godzil||Forum Français||0||09-08-2009 12:20 PM|