PDA

View Full Version : ADB on Linux host for Arnova



petrus
03-27-2012, 06:02 PM
For the ones that want their Arnova 10G2 recognized in linux : simply open file /etc/udev/rules.d/51-android.rules (create it if it doesn't exist)

and add the following line ;

SUBSYSTEM=="usb", SYSFS{idVendor}=="0e79", SYSFS{idProduct}=="1433", MODE="0666", OWNER="username"

username, here is the linux user you are using

If you have another device, plug it in, and launch lsusb command
What I have as a result of this command :

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 13d3:5702 IMC Networks
Bus 005 Device 002: ID 13d3:3315 IMC Networks
Bus 001 Device 010: ID 0e79:1433 Archos, Inc.


The last line with Archos Inc is what we are looking for. The numbers just after the ID text is the meaningful numbers we need : in the format idVendor:idProduct
So just edit the etc/udev/rules.d/51-android.rules file with this info.
If you installed eclipse and the android SDK, you should be able to test your developped apk on your tab
or you should use any adb command to backup or restore your apk files after flashing a new rom.

Edit : In some cases, if your archos or arnova device is still not recognized, launch this command :

echo "0x0e79" >> ~/.android/adb_usb.ini

This will add the "archos" vendor to the known vendors.

Finless
03-27-2012, 06:05 PM
Awesome post! STICKY :)

Bob

petrus
03-27-2012, 06:21 PM
Thanks bob. In fact that can be used for any arnova or archos tab under linux.
Maybe if linux dev can provide useful adb commands here that would help.
I will try to give you some useful stuff I do with adb here. Really powerful tool indeed. I mainly use this stuff to deploy my development apk on my tablet with eclipse. That is really faster than the android emulator, and you really can see how it performs on a real device.

If you have questions on linux adb or eclipse dev with your tablet, that would be my pleasure to answer. The more dev we have, the better :)

AND Linux is really a great choice for developpers in my opinion. (only my opinion though)

Miklaus
03-28-2012, 12:10 PM
Hi petrus, as I see you are good with scripts and linux, I wanted to ask how I can enable the init.d folder on system / etc / init.d.

I've tried editing the file boot.img init.rc in this code

# Enable init.d folder
exec/sbin/sysinit.rc
on property:cm.filesystem.ready=1

In sbin/sysinit.rc I wrote this code

#!/system/bin/sh

export PATH =/sbin:/data/local/bin:/vendor/bin:/system/sbin:/system/bin:/system/xbin
/system/bin/logwrapper /system/xbin/run-parts /system/etc/init.d

Then I added the init.d folder on system/etc and I added a script in "99test" with this code:

#!system/bin/sh

touch /data/local/tmp/init.d_log_test.txt
echo "done" >> /data/local/tmp/init.d_log_test.txt
sync;
setprop cm.filesystem.ready 1;

Also busybox is in system/bin I added the binary run-parts in system/xbin
First it hasn't worked, but after putting the correct permissions tablet don't boot
I've tried different ways but I can't get start the script on boot and I would like you to give me some advice
thanks in advance and sorry for my english

Finless
03-28-2012, 12:54 PM
Miklaus, see this post here on the Go CLever tablet where Artural figured out a way. Seems if the use of init.d is not in our kernel it will not work directly. Using a battery.sh allows a way to do it.

http://www.freaktab.com/showthread.php?216-A-new-1-4-ROM-coming


Bob

petrus
03-28-2012, 01:24 PM
Miklaus, sorry I can't help on this one. I am not really familiar with how android handles startup scripts. I know the linux way to do, but I am not sure where they are launched on android.

Finless
03-28-2012, 02:02 PM
On many tablets the manufacturer implemented what is caled init.d. If that is in the kernel then it looks in a folder called init.d for scripts. You name the scripts 01xxx, 02xxx, 03xxx etc to process them in a specific order. However many of the cheaper tablets did not implement init.d even though it shows setup in init.rc. They just took it out of the kernel.

So Artural found on the GO Clever the same problem. No processing of the init.d folder. But he found a way as described on XDA to put a call in battery.sh which then calls a script. You can add scripts to battery.sh. Pretty cool work around and does exactly what you want like init.d would.

Petrus, I was thinking of doing something similar for 1.5 ROM. That is on first boot it runs a "wizard" that is your APK and the user can install APKs on first boot!. I may do this later for 1.6 or something.

Bob