Multi Touch ? Mod Edit: Use this thread for the purpose. - XPERIA X8 General

Let's say I root my phone and install one of those 2.2 or 2.3 roms ,would I have multi touch ?
Sorry for the noob question ,but I just couldn't find the answer.

couldn't find answer? here are min. 5 threads about it.. someone say no someone yes.. i think no

removed...

You can NOT get MT lol. Unless you crack bootloader.

haha, i love all this threds about MT its impossible guys to day when someone crack that bootloader - i dont think im going to live that long

kakawo said:
haha, i love all this threds about MT its impossible guys to day when someone crack that bootloader - i dont think im going to live that long
Click to expand...
Click to collapse
sorry for my english.I used google translate.
You can do multitouch driver as a module. This
kernel module to be unloaded from memory the old driver and load a new one. one person did it for the ebook.
can somebody help to make it to our phone.
links to the Web in a text file

andrej456 said:
sorry for my english.I used google translate.
You can do multitouch driver as a module. This
kernel module to be unloaded from memory the old driver and load a new one. one person did it for the ebook.
can somebody help to make it to our phone.
links to the Web in a text file
Click to expand...
Click to collapse
Did Any1 tried this ? My X8 is not rooted yet

This is done for other device. need to do on xperia x8.
need someone who knows well the programming language c.

yep, it has been told that this is for the devices with the 1.5 firmware and it's not working on X8

Sully.E said:
yep, it has been told that this is for the devices with the 1.5 firmware and it's not working on X8
Click to expand...
Click to collapse
sorry for my english.I used google translate.
You can compile the kernel and modules. According to this guide
http://forum.xda-developers.com/showthread.php?t=977146
only after "make clean" needs to be done "make semc_shakira_defconfig"
then "make menuconfig" and "make" or "make modules"
config file is located in /kernel\arch\arm\configs\semc_shakira_defconfig
driver is in \kernel\drivers\input\touchscreen\
synaptics_i2c_rmi.c or synaptics_i2c_rmi4.c
need to change it, add a function unload the old driver
http://translate.google.com/transla...rver.net/2010/11/blog-post.html&client=ubuntu
and change the driver under multitouch. as did the man on the G1
http://lukehutch.wordpress.com/android-stuff/
compile the kernel and modules
copy the module to your phone in /system/lib/modules/
then run the module with the command in the console "insmod"
http://linux.about.com/od/commands/l/blcmdl8_insmod.htm
only need someone who knows well the programming language c and make it to our phone.
add an example of drivers from G1

@andrej456:
It's not clear, do we have to make ONLY kernel module in /system or we have to replace driver in kernel itself too?

blagus said:
@andrej456:
It's not clear, do we have to make ONLY kernel module in /system or we have to replace driver in kernel itself too?
Click to expand...
Click to collapse
we must replace the driver in the kernel
driver is loaded into memory at boot
Here is the text of the "dmesg"
Code:
<6>[ 2.194121] msm72k_udc: reset controller
<6>[ 2.198791] synaptics_load_rmi4_func_regs: Func:f11_2D Query_Base:0x80 Cmd_Base:0x5f Ctrl_Base:0x26 Data_Base:0x18
<6>[ 2.208818] synaptics_load_rmi4_func_regs: Func:f08_BIST Query_Base:0x7e Cmd_Base:0x5e Ctrl_Base:0x20 Data_Base:0x15
<6>[ 2.219328] synaptics_load_rmi4_func_regs: Func:f01_RMI Query_Base:0x69 Cmd_Base:0x5d Ctrl_Base:0x1e Data_Base:0x13
<6>[ 2.230314] usb: notify offline
<6>[ 2.235506] msm72k_udc: suspend
<6>[ 2.331561] synaptics_ts_probe: nbr_panels:1 nbr_fingers:1 data_size:5
<6>[ 2.332454] synaptics_ts_probe: fw_rev:2 max_x:1689 max_y:2534
<6>[ 2.338291] synaptics_ts_probe: max_x 1689, max_y 2534
<6>[ 2.343406] synaptics_ts_probe: inactive_x 0 0, inactive_y 0 0
<6>[ 2.349209] synaptics_ts_probe: snap_x 0-0 0-0, snap_y 0-0 0-0
<6>[ 2.355471] input: synaptics-rmi-touchscreen as /devices/virtual/input/input0
<6>[ 2.362759] synaptics_ts_probe: Start touchscreen synaptics-rmi-touchscreen in interrupt mode
<3>[ 2.370899] cyttsp_init: Failed to request GPIO 112
<3>[ 2.375508] cyttsp_core_init: platform init failed!
<4>[ 2.380506] cyttsp-i2c: probe of 0-0024 failed with error -12
<6>[ 2.386329] cyttsp_i2c_init: Cypress TrueTouch® Standard Product I2C Touchscreen Driver (Built Jan 18 2011 @ 23:43:30) returned 0
<6>[ 2.398618] SEMC GPIO Matrix Keypad Driver: Start keypad matrix for shakira_keypad in interrupt mode
<6>[ 2.407599] input: shakira_keypad as /devices/virtual/input/input1
<6>[ 2.413983] msm72k_udc: reset
<6>[ 2.416269] msm72k_udc: portchange USB_SPEED_HIGH
need to do to when downloading our driver, old driver was unloaded from memory
need to initialize the new driver, find the old driver and unloaded from memory
about to do so
find the old driver
Code:
struct device_driver * other;
other = driver_find (SYNAPTICS_I2C_RMI_NAME, & i2c_bus_type); other = driver_find(SYNAPTICS_I2C_RMI_NAME, &i2c_bus_type);
if (other) if (other)
{ {
printk ("Previous driver found:% s \ n", other-> name); printk( "Previous driver found: %s\n" , other->name);
return-ENOMEM; return -ENOMEM;
} }
unload old driver from memory
Code:
struct i2c_driver * otherDriver;
struct device_driver * other; struct device_driver * other;
other = driver_find (SYNAPTICS_I2C_RMI_NAME, & i2c_bus_type); other = driver_find(SYNAPTICS_I2C_RMI_NAME, &i2c_bus_type);
if (other) if (other)
{ {
otherDriver = to_i2c_driver (other); otherDriver = to_i2c_driver(other);
printk (KERN_ERR "Previous driver found:% s, addr 0x% x, owner% x \ n", other-> name, (int) otherDriver, (int) other-> owner); printk(KERN_ERR "Previous driver found: %s, addr 0x%x, owner %x\n" , other->name, ( int )otherDriver, ( int )other->owner);
i2c_del_driver (otherDriver); i2c_del_driver(otherDriver);
} }

I found the source code of the ebook
I found it here
xttp://nookdevs.com/Talk:Multitouch
xttp://runserver.net/temp/synaptics_i2c_rmi.c
it does not work for our phone. will use it as an example

But there is still the problem of accessing kernel and replacing driver... I'll see what I can do, although

manutdsnake said:
You can NOT get MT lol. Unless you crack bootloader.
Click to expand...
Click to collapse
I think bootloader is cracked, check bin4ry's flasher, modify the kernel.sin with multitouch drivers, then, flash it(with bin4ry's flasher) and there you go

not yet =S
But lets pray for the developers =D

bogdan_mihai554 said:
I think bootloader is cracked, check bin4ry's flasher, modify the kernel.sin with multitouch drivers, then, flash it(with bin4ry's flasher) and there you go
Click to expand...
Click to collapse
NO, it's NOT, it's kernel from OFFICIAL Japanese update...

mukambc said:
not yet =S
But lets pray for the developers =D
Click to expand...
Click to collapse
Yeah, but can't the kernel(.sin file) be modded and then flashed??(I once flashed an X10 kernel on the x8...won't boot but hey, it flashed ), now i got Gingerbread on my x8 :>:> And i'm waiting for a M.T Kernel...So, if the bootloader's not cracked, how is it that you can flash kernels with Bin4ary's flasher?? So, just modd the .sin file(put Mt. driver) and you're done ^_^

Is Synaptics T1021A hardware capable of multitouch? It will be great if somebody will add this function for us thanx

really interesting on all about MT.
should this be stickied? so we can persuade the developer to do this..

Related

linux on htc magician

i've been trying to find who is working on this project?
whats the updates?
where are the updates??
i have found only old post and threads about this
and old download links.
I am working on the kernel, but we need some more people for userspace support (be that android, openmoko, or just plain and simple angstrom images - making dialer and sms applications etc. work). The best place to get current information about linux on magician is the #htc-linux IRC channel on freenode.net.
cool
ok cool i dont have much time to dedicate now as i'm involve with other projects i may be able to help you with userlands at the end of the year i pm you when i'm ready
really excited about this
This project has died ? or?
andor44 said:
This project has died ? or?
Click to expand...
Click to collapse
nope just lacking someone for the userland
ph5 is working on the kernel
How is the kernel going i would like so see linux run on magican
check
http://forum.xda-developers.com/showthread.php?t=369149
something going on there
lock n' load marines ;-)
I know my way around tweaking/hacking HW to get working under linux...
did to few times back with some stuff on adestop PC.
1. I need a running kernel
2. A terminal
3. SDK and IDE for userland tools (GNU suite)
4. A ipk repository to leech from
5. duded and fellows of all sorts
6. time
Already done for the 1 and partly for the 2
shall we?
progress
although i liked qtopia better, i put that Armostrong thingie (foun in the tmp folder of our ftp server here...
The kernel is 2.6.21 hh20
1. and it boots to the gui
2. it let make me calls (777 answered right)
3. it shows incoming calls (although won't pick up the hook)
4. It begun showing messages (half way through upgrade)
5. It has ateminal and a touch type keyboard (querty lol)
6. it let me define usb0 network device
7. It let me log in via ssh as root (pasword is empty: just hit enter)
then i fiddled with the ipkg tool:
I managed to let it run trough squid proxy when i couldn't make it route...
file: /etc/ipkg.conf
Code:
# Must have one or more source entries of the form:
#
# src <src-name> <source-url>
#
# and one or more destination entries of the form:
#
# dest <dest-name> <target-path>
#
# where <src-name> and <dest-names> are identifiers that
# should match [a-zA-Z0-9._-]+, <source-url> should be a
# URL that points to a directory containing a Familiar
# Packages file, and <target-path> should be a directory
# that exists on the target system.
# Proxy Support
#option http_proxy http://proxy.tld:3128
#option ftp_proxy http://proxy.tld:3128
option http_proxy http://172.31.0.3:3128
option ftp_proxy http://172.31.0.3:3128
#option proxy_username <username>
#option proxy_password <password>
# Offline mode (for use in constructing flash images offline)
#option offline_root target
dest root /
lists_dir ext /var/lib/ipkg
172.31.0.3:3128 is the URL of my proxy - edit as appropriate before storing to the sd card
If all goes well i promise...
... i make an image (128MB) of the whole SD card i used...
;-)
Ah harrr sharky
a thought beastie this one !
got to see the end of the upgrade of ipkg and got the device hang...
another hard reset ahoy
:-(
see if it boots again?
(stay tuned...)
at least it boots...
no X this time ?
just the blank screen...
have to troubleshoot
???? got a funny menu on the screen and couldn't get pass it?
boy a wish someone here had any clue
cest73 said:
???? got a funny menu on the screen and couldn't get pass it?
boy a wish someone here had any clue
Click to expand...
Click to collapse
it seems it has problem with default calibration:
the X appears but the calibrator fails :-(
EDIT:
nope, it was DBUS - failing to start due of missing users!
was a bit offline these days my magician is broken some stupid chip burn out after years of good service i ve sent it to taiwan for repair but i have little hope
i ll see if i can buy another one on ebay these days
we should talk on irc one of these days cest73 (althought i am usually online at weird hours)
elivildarkknight,
Im +01h off Greenwich, so we shall try it?
OTOH:
the main issue regarding useable Liunx is:
1. A fast hard-reset able ROM (bare 2003SE) [i don't have now]
2. A SD card reader [i have]
3. A decent image of a working kernel [have the 2.6.21 hh20 of Armstrong's 2008.1]
4. A way to make magician respond to a ssh log in upon USB connect [i seek the way right now]
5. A decent userspace stack able to bring all magician's HW to life [once we can make it 'network']
6. A decent environment before the X or any WM is started for fallback [this can be done IMHO]
7.
try to get in touch with phillip zabel he is working on the kernel and can help you on the image there is a working qtopia image floating around you can try to see the config they used for the display and other stuff a booting kernel with an image on sd should be ok for a start
the developers of blueangel also may help i ll try to see who is working on there image
i'm at +5 GMT the main problem is that i have few free time because of exams and real life
my magician is going to Taiwan for repair now so i m left with the hermes right now
will be happy to help you anyways
in april i'll be more on irc try to keep us update on your work
roger to that
ok
we shall take the time then...
i thought about a ncurses based teminal keyboard emulation controlled with the jog dial...
continued troubleshooting for magician...
it appears i miss the calibration procedure somehow
As i can't use it as a normal phone under moko yet, i'm limited for how long i'm able to play with it...
I will try again today to get at least something launched over that X...
I somehow like more the QT stack?
progress report...
My distro is Slackware so i found this:
http://wiki.openmoko.org/wiki/USB_Networking#Slackware_.28tested_with_12.1.29
Does not even work, but the page was useful:
When i connect the Magician while running Linux, i get to a terminal and become root:
Code:
# dmesg
there i see that usb0 is now available:
Code:
usb0: unregister 'cdc_subset' usb-0000:00:1d.1-2, Linux Device
usb 3-2: new full speed USB device using uhci_hcd and address 19
usb 3-2: configuration #1 chosen from 2 choices
usb0: register 'cdc_subset' at usb-0000:00:1d.1-2, Linux Device, 16:ce:a6:75:bd:58
usb 3-2: New USB device found, idVendor=0525, idProduct=a4a2
usb 3-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
usb 3-2: Product: RNDIS/Ethernet Gadget
usb 3-2: Manufacturer: Linux 2.6.21-hh20/pxa27x_udc
so i manually bring up the usb0 from my host:
Code:
# ifconfig usb0 192.168.0.200
# ifconfig usb0 up
# ping 192.168.0.202 -c4
PING 192.168.0.202 (192.168.0.202) 56(84) bytes of data.
64 bytes from 192.168.0.202: icmp_seq=1 ttl=64 time=1.25 ms
64 bytes from 192.168.0.202: icmp_seq=2 ttl=64 time=1.96 ms
64 bytes from 192.168.0.202: icmp_seq=3 ttl=64 time=1.76 ms
64 bytes from 192.168.0.202: icmp_seq=4 ttl=64 time=1.56 ms
#
You have to know the rest for the routing to the internet to be successful...
i hope this helps a bit?
adding the parameter
Code:
psplah=false
to the default.txt:
Code:
set KERNEL zImage
set CMDLINE "root=/dev/mmcblk0p2 console=tty0 rootdelay=1"
bootlinux
to be:
Code:
set KERNEL zImage
set CMDLINE "root=/dev/mmcblk0p2 console=tty0 rootdelay=1 [U]psplah=false[/U]"
bootlinux
disables the nice spalsh screen while boot-up, allowing one to see why the darn thing is hanging...

galaxy sII Backtrack5 and Usb Host

Hi I've been working on adding support for usb host support in backtrack 5 running on a chroot session.
The ultimate goal is to be able to use a usb wifi adapter for pentesting, as the interal wifi doesnt support layer-2 or packet injection.
i created the usb host cable,by jumping pin 4 to 5, and was able to power my device by splicing in DC power to the cable.
i'm having issues with busybox in the chroot session. i have ver 1.9 running on the android OS but it seems like there are missing modules in backtrack. NO LSUSB!! grr
i just cant get it to give me any output what so ever
#lsusb
#
. But i know the chroot session reads the host device (OTG). running dmesg (full output attached):
[ 3881.112070] max8997_muic_usb_cb: usb mode=3
[ 3881.112087] otg_power_cb: otg power = 1
--
[ 3881.114323] usb usb cable = 3
[ 3881.114348] usb Enable usb LDO.
[ 3881.114396] max8997-charger max8997-charger: max8997_disable_charging: disable charging
[ 3881.114536] usb check ldo vcc_d(192)
[ 3881.114704] usb check ldo vcc_a(192)
[ 3881.114889] otg_dbg: in s5pc110_otg_drv_probe()::00075
[ 3881.114900] => s3c_otg_drv_probe
[ 3881.115115] otg_host_phy_int : USBPHYCTL=0x1,PHYPWR=0xa40,PHYCLK=0x7,PHYTUNE=0x819b3,USBCFG=0x0
[ 3881.266334] s3c_otghcd s3c_otghcd: S3C OTGHCD
[ 3881.266406] s3c_otghcd s3c_otghcd: new USB bus registered, assigned bus number 2
[ 3881.266463] s3c_otghcd s3c_otghcd: irq 135, io mem 0x12480000
[ 3881.268360] max8922-charger max8922-charger: max8922_enable_charging: disable charging,TA
[ 3881.496575] hub 2-0:1.0: USB hub found
[ 3881.496598] hub 2-0:1.0: 1 port detected
[ 3881.496618] otg_dbg: in root_hub_feature()::00477
[ 3881.496625] => case SetPortFeature -USB_PORT_FEAT_POWER
[ 3881.497347] otg_dbg: in s5pc110_otg_drv_probe()::00175
[ 3881.497358] => OTG HCD Initialized HCD, bus=C110 OTG Controller, usbbus=2
[ 3881.498518] usb otg host : registered
[ 3881.498530] host_notify: ndev name=usb_otg: from state=0 -> to state=1
[ 3881.499742] usb change mode ret=0
--
[ 3883.372113] otg_dbg: in root_hub_feature()::00483
[ 3883.372126] => case SetPortFeature -USB_PORT_FEAT_RESET
[ 3883.432171] otg_dbg: in otg_handle_interrupt()::00087
[ 3883.432182] => Port Interrupt
[ 3883.432192] otg_dbg: in process_port_intr()::00271
[ 3883.432203] => port enable/disable changed
[ 3883.502695] usb 2-1: new high speed USB device using s3c_otghcd and address 2
[ 3883.522370] svn usbdev_open, skip usb_autoresume_device
[ 3883.522488] svn usbdev_open, skip usb_autosuspend_device
[ 3883.524055] hub 2-1:1.0: USB hub found
[ 3883.524407] hub 2-1:1.0: 4 ports detected
[ 3883.534375] max8922-charger max8922-charger: max8922_is_charging: charging state = 0x1
[ 3883.762482] usb 2-1.1: new high speed USB device using s3c_otghcd and address 3
[ 3883.784996] usb 2-1.1: device v0bda p8187 is not supported
[ 3883.785068] host_notify: ndev name=s3c_otghcd: from state=0 -> to state=5
[ 3883.805674] hub 2-1:1.0: unable to enumerate USB device on port 1
--
[ 3932.353319] usb_port_resume = 1283, 4
--
[ 5492.343091] usbsvn_request_resume:run time resume
[ 5492.343107] Host USB : Resume
[ 5492.422261] usb_port_resume = 1283, 4
[ 5492.422906] usb 1-2: svn L0 p.s=1
i have the driver for the device (alfa network ,AWUS036h) and it is supported in linux.
i was able to build the driver in the chroot session, but since it is an ARM distro, will the driver even work.
any help would be awesome.
Some success!
I finally got lsusb to recognize the devices. after many many recompilation of busybox,turns out it was a binding problem between the android and the chroot session.
i ran in terminal emulator: ($mnt = the chroot mount point)
#mkdir -p $mnt/dev/bus/usb
#mount -o bind /dev/bus/usb /$mnt/dev/bus/usb
and now in the chroot session:
[email protected]:/#lsusb
Bus 002 Device 002: ID 05e3:0608 Genesys Logic, inc USB-2.0 4-port HUB
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 1519:0020
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
as you can see i plugged in a usb hub to power the device, just to test.
i'm going to be working on compiling the driver.
hopefully beaple to use the aircrack suite soon on my phone.
Two cheers for you mate. Hope you bring in something soon.
Sent from my GT-I9100 using XDA Premium App
Driver
I'm trying to compile the RTL8187 driver for the ARM architecture . I've never done this sort of thing, so any advice on kernel modules would be greatly appreciated.
i'm using the ARM toolchain from :
http://www.codesourcery.com/sgpp/lite/arm/portal/[email protected]=lite
compiling with the i19100 kernel source compiled by XDA members (not the tar files from samsung).
If anyone has any experience with Cross compiling, any help would be awesome.
Holy crap i hope u get this running.
I would love to have bt4 on my phone
I hope u make a full how to guide once u r done
Great work
Boom! Awesome stuff
Zionator said:
Holy crap i hope u get this running.
I would love to have bt4 on my phone
I hope u make a full how to guide once u r done
Great work
Click to expand...
Click to collapse
bt5 is already avalible for i9100
http://forum.xda-developers.com/showthread.php?t=1162662
more good stuff
i've finally got the driver compiled for ARM without it spewing Piles of errors.
now i've actually got to test them.
2 modules:
ieee80211.ko
rtl8187.ko
these would either be loaded in android OS with "insmod" in the init.rc file, so it's loaded on boot. Or in the backtrack 5 chroot session.
now i've got LSUSB working and displaying Some connected devices, however devices such as usb keyboards and My Wifi card are not displayed (the Usb host port is displayyed though)
From the reading i've done i'm pretty sure this is due to a vendor permissions issue.
in a file simmilar to this:
/etc/udev/rules.d/50-android.rules
now i havnt been able to find this file on my phone. or simmilar.
this file allows the types of vendors allowed to connect.
an example command to be added:
Code:
SUBSYSTEM=="usb_device", SYSFS{idVendor}=="0bb4", MODE="0666", NAME=="android"
When i run lsusb on my ubuntu virtual machine, with the card plugged in i get:
Bus 002 Device 002: ID 0bda:8187 Realtek Semiconductor Corp. RTL8187 Wireless Adapter
so i'd have to add a line like this :
Code:
SUBSYSTEM=="usb_device", SYSFS{idVendor}=="0bda", MODE="0666", NAME=="Realtek"
so in short, If ANYBODY knows where a vendors permission file resides, please post something.
sweet thanks
HUGE!
O MAN i had no IDEA i'd get this far, i've never even used linux that much untill i got this phone!
so as it turns out the permission issue with pretty well ALL devices is very prevalent
you have to allow android OS to connect to specific vendors, i've tested it woth sevral keyboards.
the vendor codes can be found here
HTML:
http://developer.android.com/guide/developing/device.html
but here they are
Code:
Company USB Vendor ID
Acer 0502
ASUS 0b05
Dell 413c
Foxconn 0489
Garmin-Asus 091E
Google 18d1
HTC 0bb4
Huawei 12d1
K-Touch 24e3
KT Tech 2116
Kyocera 0482
Lenevo 17EF
LG 1004
Motorola 22b8
NEC 0409
Nook 2080
Nvidia 0955
OTGV 2257
Pantech 10A9
Philips 0471
PMC-Sierra 04da
Qualcomm 05c6
SK Telesys 1f53
Samsung 04e8
Sharp 04dd
Sony Ericsson 0fce
Toshiba 0930
ZTE 19D2
so an example of this.
i have a lenovo usb keyboard that i want to use.
so log in as root, create file /etc/udev/rules.d/51-android.rules, and add these line:
SUBSYSTEM=="usb_device", SYSFS{idVendor}=="17EF", MODE "0666", NAME=="lenovo"
so in bash:
Code:
su
mount -o remount,rw system /system
mkdir -p /etc/udev/rules.d/
cd /etc/udev/rules.d/
echo SUBSYSTEM=="usb_device", SYSFS{idVendor}=="17EF", MODE "0666", NAME=="lenovo" > 51-android.rules
THIS can be applied to any usb device, so far as i;ve tested. if you cant find the vendor codes in the table, you can get them by plugging the device into a linux box and running lsusb and it's the first set of digits so
bus ### dev ###: ID <this one>:blah "some company"
i'll put together a full tutorial up since NO ONE HAS PUT ONE UP AS FAR AS I"VE SEEN. this would add support for pretty well android devices with OTG host mode!!
Any news on this ?
So ****tiest week ever
my galaxy s2 stopped working, put it in to charge and it wont turn on. no lights no nothing.
i've tried a usb jig.
no dice.
i phoned samsung to get it repaired to replaced.
i sent it in a week ago and i just got it Rushed back from them saying that since it's not a canadian phone; they cant service it.
turns out it was bought in chile.
i have a 700$ paperweight. isnt that awesome
JDouce said he managed to compile a driver successfully
Damn, that's worst news I heard all day. Any ideas how it happened?
Sorry to hear that ... there must be a way to fix your phone without sending it to Chile
Td8f4, huge thanks for posting your findings.
I compiled kernel modules for my ralink3070, which is the . I even had them loaded with insmod. But it didn't work. dmesg says "this device is not supported".
Any news on this, is this manual written some place?
I tried writing this udev rule, but with no effect so far. I am also running on Galaxy S2, with Lite'ning ROM 6.1 (Android 2.3.4, Kernel 2.6.35-11 ninphetamine 2.0.5+).
Edit: I did not see page 2 of this thread... sorry for your phone Td8f4... but then trying to get the warranty when you re-flashed it... and overclocked it, you have little chances. Good luck anyway.
If anyone get the USB device to actually appear in lsusb, give me a sign, I only get flashdrives and hubs to appear, a serial2usb won't.
I now figured out that the problem was due to CONFIG_SEC_WHITELIST and driver/usb/core/sec_whitelist.h One or the other has to be modified, both have been tested to be working. With the default falues, devices other than a few defined one (HID, cameras, mass storage, hub) won't be connected at all and will not appear in lsusb or dmesg.
The next step once they appear in lsusb and dmesg with a line "usb 2-1: device v0403 p6001 is not supported" is to find which driver is needed and either compile it within the kernel, or compile it as a module and insmod it manually. You have succeeded that step when you get a new line in dmesg from your device driver.
The next step again is to find an application using the driven device (I am at that step now, for a usbserial device)
Hi,
I am currently trying to get the usbserial-module working on Siyah-kernel.
In fact, usbserial and ftdi_sio both load (the same device works fine with those modules on a desktop. Yes, I have compiled them for ARM agains Siyah-Kernel and not just copied them from desktop ;-) ), but s3c_otghcd 'snatches' away the device before I can get a hold of it.
Have a look at my post here:
http://forum.xda-developers.com/showpost.php?p=18299539&postcount=3712
If you can give me any further leads (should "CONFIG_SEC_WHITELIST=n" be enough, and does it break other things, like mouse / hub support?), that would be very much appreciated .
EDIT: Got it working with an external DIGITIZER, I can now watch analog signals with 5 GS/s on my phone... oscilloscope to go!
So "CONFIG_SEC_WHITELIST=n" breaks nothing (thumbdrives still work), but enables a whole world of possibilities.
EDIT2: A nice picture can be seen here:
http://forum.xda-developers.com/showpost.php?p=18328481&postcount=4032
watching this thread with great interest, if the OP has a donate link to go towards a new phone i'm sure plenty of people might contribute
Td8f4 said:
So ****tiest week ever
my galaxy s2 stopped working, put it in to charge and it wont turn on. no lights no nothing.
i've tried a usb jig.
no dice.
i phoned samsung to get it repaired to replaced.
i sent it in a week ago and i just got it Rushed back from them saying that since it's not a canadian phone; they cant service it.
turns out it was bought in chile.
i have a 700$ paperweight. isnt that awesome
JDouce said he managed to compile a driver successfully
Click to expand...
Click to collapse
Depending on how far you want to go to repair it, you can always unbrick your phone. Search for Jtag repair. You can reflash through the built in testing ports.
some new?? galaxy S2 LIVE???

Accessing uart on Galaxy Nexus i9250

I'm going to do some low-level software development on Samsung Galaxy Nexus (replacing kernel with custom one doing stuff that are not Android-related). To do so I'll require accessing uart output of bootloaders and Linux.
I'm looking for an information how to connect to i9250's uart serial port and possibly other stuff.
Currently the best what I've found is The all-in-one Galaxy S2 Hack Pack (http://forum.xda-developers.com/showthread.php?t=1316501), but obviously this is not entirely what I'm looking for. The i9250 service manual maybe some help too. If anyone has any information regarding this matter, please post.
dpc.ucore.info said:
I'm looking for an information how to connect to i9250's uart serial port and possibly other stuff.
Click to expand...
Click to collapse
To get access to your kernel's, bootloader's logs through UART you need UART jack(dont know this word in english, I think I guess 'jack') on your board, in your case i9250's.
If developers of board didn't add that jack to pcb design, your attempts to view logs will be unsuccessful.
If you find UART pins of your SoC, connect it to UART-USB converter and plug to your PC.
In bootloader sources you will find to which UART port debug messages will go, if your SoC has more than one controller.
In linux's kernel case debug port you could assign through startup string, like bootargs in uboot, or through menuconfig.
But all this stuff depends on have you got UART pins on board or not.
dpc.ucore.info said:
I'm looking for an information how to connect to i9250's uart serial port and possibly other stuff.
Click to expand...
Click to collapse
First you have to tell us what hardware you have! Find some links to "tear-aparts / tear-downs" etc. Also make sure, what you find, corresponds to your device. Samsung is going wild when it comes to making (incompatible) product variations. When we know the hardware we can start to find out the rest... In your case the most important is to find out about the application processor (AP), baseband processor (P) and the micro-USB mux.
Its the Galaxy Nexus GSM/HSPA version. It has an OMAP4460. The processor found on the pandaboard.
This device should have external UART.
Have you tried 619Kohms on the USB port yet? Most samsung device, including this one, have a FSA chip. This is the first way to tell if UART is properly connected.
If it is, than you can probe deeper to find the internal UART which will show more. The Internal UART connection will show UART before the FSA chip is initialized giving you even more to work with.
It's likely that because this is an OMAP chip, it should have the following characteristics:
192600 or 115200 bps
8 bits per word
1 stop bit
No parity
No flow control
1.8V high, Open drain
I'm not sure if the FSA chip will increase that level to 3V or not.
To briefly clarify (and confirm) what Adam says.
There is already built in UART-USB functionality controlled by the FSA (MUX). Thus you can just connect an external microUSB connector with appropriate resistor values, to get a serial connection. (Just google "I9x00 USB JIG"). But if you decide to use internal UART pins on the PCB, then you get earlier access to everything and you can start reading already at the IBL (Initial Boot Loader) stage, which are the absolute first characters coming out of phone after a reboot.
I can confirm the 619Kohm trick works on Galaxy Nexus. I used a 3.3V USB/UART breakout card. Serial output:
�����[sbl_board_charger_init_post] : Succeed set model data : 0x78!!!!!
====== VCELL : 368500, SOC : 23, nType : 4 ======
[Charger] nScaledVCELL : 368500000, nDesriedSOC, : 23, nMaxSOC : 43, nMinSOC : 3
[ omap_power_get_reset_source :47] PRM_RSTST : 0x1
[ __omap_usbacc_test_donwload_by_musb :280] nDeviceType : 0x4
[ omap_usbacc_get_reboot_reason :333] nJigStatus = 0x00000001
[ __sbl_board_hw_init_late :719] final reboot mode in cable = 0x20000
[ __sbl_board_hw_init_late :730] Wake up by TA / USB / JIG
* FB base addr = 0xbea70000!
* PANEL_S6E8AA0_ID_READ : 0x12, 0x8e, 0x9f.
[ omap_power_get_reset_source :47] PRM_RSTST : 0x1
message.command =
message.status =
message.recovery =
Starting kernel at 0x81808000...
<hit enter twice to activate fiq debugger>
AST_POWERON
This is what comes prior to the above, in case anyone is interested.
-- OMAP 00004460 (version 04460e11) PPA release 1.6.1 Hash 30639809--
Device type: HS, DEBUG OFF
CPFROM HAL API support integrated
THERMAL support integrated: Run Time + Boot time
HDCP support integrated
-- PROD PPA RC3.2.3 --
Reset reason = 00037ba2
PRM_RSTST = 00000002
PPA freed 2992 bytes
Texas Instruments X-Loader 1.41 (Nov 16 2011 - 16:28:45)
Starting OS Bootloader from MMC/SD1 ...
EXCEPTION : CM_CLKMODE_DPLL_ABE = 0x7
EXCEPTION : CM_IDLEST_DPLL_ABE = 0x1
EXCEPTION : CM_CLKSEL_DPLL_ABE = 0x804018
EXCEPTION : CM_CLKMODE_DPLL_CORE = 0xf
EXCEPTION : CM_IDLEST_DPLL_CORE = 0x1
EXCEPTION : CM_CLKSEL_DPLL_CORE = 0x7d05
EXCEPTION : CM_CLKMODE_DPLL_PER = 0x107
EXCEPTION : CM_IDLEST_DPLL_PER = 0x1
EXCEPTION : CM_CLKSEL_DPLL_PER = 0x1400
EXCEPTION : CM_CLKMODE_DPLL_MPU = 0x117
EXCEPTION : CM_IDLEST_DPLL_MPU = 0x1
EXCEPTION : CM_CLKSEL_DPLL_MPU = 0x807d07
CFG_LOADADDR = 0xa0208000
1st instruct = 0xEA000007
[ __omap_twl6030_init_vbat_cfg :49] SA_PHOENIX_START_CONDITION = 0x8
[ __omap_twl6030_init_vbat_cfg :54] SA_PH_CFG_VBATLOWV = 0x80
[ __omap_twl6030_init_vbat_cfg :63] SA_PH_CFG_VBATLOWV = 0x80
[ __omap_twl6030_init_vbat_cfg :86] SA_BBSPOR_CFG = 0x78
Now, could we have the English translation (of all that above) please?
[And if debug is OFF, how can we turn it ON?]
I seem to be able to count 4 bootloaders there, how many damn boot loaders are there!?
USB - UART 619Kohm cable
Would anyone build a custom 619Kohm mini-USB to UART cable and ship it in the U.S. or India? We need it.
Is there any supplier of this in the U.S.?
Thanks,
Bahadir
I've attached a circuit diagram. You will need to modify your cable. You will need a UART device like the FTDIFriend or Bus Pirate. I specified the communications settings above.
Here is the cable modifications and where to hook up on the MicroUSB port.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Power is disconnected
Data- and Data+ are your signal lines.
Pin X (aka Pin4) is connected to ground via 619Kohm resistor
Ground is used as a reference.
Just tear up a MicroUSB cable and modify it as above.
I managed to get the UART cable done and also some output from there. Now my questions is has anyone managed to get kernel boot log out of the UART as well? Atm. I get only the bootloader things:
Code:
[sbl_board_charger_init_post] : Succeed set model data : 0x78!!!!!
====== VCELL : 380250, SOC : 57, nType : 4 ======
[Charger] nScaledVCELL : 380250000, nDesriedSOC, : 60, nMaxSOC : 80, nMinSOC : 40
[ omap_power_get_reset_source :47] PRM_RSTST : 0x1
[ __omap_usbacc_test_donwload_by_musb :280] nDeviceType : 0x4
[ omap_usbacc_get_reboot_reason :333] nJigStatus = 0x00000001
[ __sbl_board_hw_init_late :719] final reboot mode in cable = 0x20000
[ __sbl_board_hw_init_late :730] Wake up by TA / USB / JIG
* FB base addr = 0xbea70000!
* PANEL_S6E8AA0_ID_READ : 0x12, 0x8e, 0x9d.
[ omap_power_get_reset_source :47] PRM_RSTST : 0x1
message.command =
message.status =
message.recovery =
Starting kernel at 0x81808000...
So does anyone know what kernel configs and cmdline I need in order to get the kernel messages out from the UART?
Thanks in advance.
Where is the actual resistor values determined? I know it has something to do with the USB MUX, but are the actual values determined by code or by hardware? Or is the Nexus MUX different? I'm wondering because according to this thread (for the GT-I9100) the resistor value should be R = 523 K.
---------- Post added at 11:58 AM ---------- Previous post was at 11:55 AM ----------
iamsage2 said:
So does anyone know what kernel configs and cmdline I need in order to get the kernel messages out from the UART?
Click to expand...
Click to collapse
Check the link above...
...and let us know how it goes.
[EDIT] I've just answered my own questions, plus a resistor reference table over here.
I managed to get the kernel output out with the 619K resistor. Just had to enable some kernel options of FIQ_DEBUGGER
Code:
CONFIG_FIQ_DEBUGGER=y
CONFIG_FIQ_DEBUGGER_NO_SLEEP=y
# CONFIG_FIQ_DEBUGGER_WAKEUP_IRQ_ALWAYS_ON is not set
CONFIG_FIQ_DEBUGGER_CONSOLE=y
CONFIG_FIQ_DEBUGGER_CONSOLE_DEFAULT_ENABLE=y
And have the console=ttyFIQ0 on cmdline. Thanks for the nice thread
Hey guys... I just got a Galaxy Nexus. I'm going to be doing some work. I used UART for the first time last night.
This works differently than standard UART with SBL or U-BOOT. How do you access the command line parmeters for the kernel, or do you need to take a kernel, un-boot.img it and then add new parmeters?
AdamOutler said:
...How do you access the command line parmeters for the kernel, or do you need to take a kernel, un-boot.img it and then add new parmeters?
Click to expand...
Click to collapse
Probably you don't remember this and this. But basically you can use the sblParam tool, to look at and set your command line on the fly. (Do backup and check that the output of that program is the same, as it was originally developed for a different phone.) You can check with:
# hexdump -C /mnt/.lfs/param.blk
BTW. Do you know what the voltage levels are for Tx/Rx (D+/D-), when using the various resistor values, for USB/UART?
In particular the values:
150K UART Cable
255K Factory Mode Boot OFF-USB
301K Factory Mode Boot ON-USB
523K Factory Mode Boot OFF-UART
619K Factory Mode Boot ON-UART
I'd also like to know if the voltages changes when switching USB/UART mode when using:
a) The PhoneUtil menu: *#7284#
b) The ServiceMode menu : *#197328640#
Code:
==> MAIN MENU --> COMMON --> DIAG CONFIG
[1] LOG VIA USB *
[2] LOG VIA UART
Why?
1) It may be possible that there are already level-shifters built in to the MUX, and thus we may no longer need to build level shifter UART cables.
(Your PC should automatically recognize a new serial device, using one of the ~7 drivers included in the Samsung CDC, when connecting disconnecting via USB and using some (?) of the resistors above.)
2) I have the FTDI FT232R-3V3 cable and need to check if its TTL 5V or CMOS 3.3V levels on the output..
This is all hypothetical, so it may be that I'm on a wild goose chase... But I'm still waiting for my μUSB breakout connector and cable...and then found out I may have the wrong levels for my cable.
Thanks.
Its supposed to be 3v3. 5v works fine thanks to the fsa chip
Those menus dont exist on my stock device.
AdamOutler said:
Those menus don't exist on my stock device.
Click to expand...
Click to collapse
Really!? I don't believe it. They must have changed the code(s) to something else. Sometimes you also need to write the "*#" parts twice before or after the number, for reasons unknown, but probably some lame attempts to further hide these menus from curious users. Did you try *#0011#? (Or any other of the hundreds of "hidden" function codes?) No worry, we can find them by looking in the baseband or the available Apps on the phone...
[EDIT] Ah, I just remembered, the various codes are pointers to the various sub-menus in the servicemode app, so if they have updated this app, which they surely have if you're on ICS and Nexus, the sub-entry codes have likely changed as well. (Remember that this app is just a wrapper for the real/native code running on BP which is different for different platforms (phones). However, most main entry codes should always be the same. Like 0011 and 06 etc etc.
Also try:
Code:
# find / -iname "*service*"
If indeed none of these menus are available, they must have done some interesting kernel mods to extend the auto-detection and for tweaking functionality elsewhere. You're on ICS 404, right?
E:V:A said:
Really!? I don't believe it. They must have changed the code(s) to something else. Sometimes you also need to write the "*#" parts twice before or after the number, for reasons unknown, but probably some lame attempts to further hide these menus from curious users. Did you try *#0011#? (Or any other of the hundreds of "hidden" function codes?) No worry, we can find them by looking in the baseband or the available Apps on the phone...
[EDIT] Ah, I just remembered, the various codes are pointers to the various sub-menus in the servicemode app, so if they have updated this app, which they surely have if you're on ICS and Nexus, the sub-entry codes have likely changed as well. (Remember that this app is just a wrapper for the real/native code running on BP which is different for different platforms (phones). However, most main entry codes should always be the same. Like 0011 and 06 etc etc.
Also try:
Code:
# find / -iname "*service*"
If indeed none of these menus are available, they must have done some interesting kernel mods to extend the auto-detection and for tweaking functionality elsewhere. You're on ICS 404, right?
Click to expand...
Click to collapse
I dont have find or hexdump yet. I have decided that any modifications i do to this device will be CASUAL implementations. I am running stock 4.0.2 ICL53F.i9250XWKL2.
I believe there is a root exploit out there i can port into CASUAL. Its a matter of getting time to do it.

debugging UART3 (ttyMSM2) in gen2

Could somebody answer this question. The ZTE Blade has a serial connector at the back, also see http://android.modaco.com/topic/325947-rs232-on-the-blade/ .
I've seen some old kernel logs, http://pastebin.com/YWtjyRhQ, on a gen1 where ttyMSM2 is found and intialized.
[01-01 00:00:00.470011] [1: swapper]msm_serial: detected port #2
[01-01 00:00:00.470011] [1: swapper]msm_serial.2: ttyMSM2 at MMIO 0xa9c00000 (irq = 11) is a MSM
[01-01 00:00:00.470011] [1: swapper]msm_serial: driver initialized
Click to expand...
Click to collapse
On my device, which is winflashed to GEN2, so i can't test this hypthesis myself unfortunately, i can't get my device to find this serial port. I have a feeling ZTE didn't just disabled fastboot they also disabled this UART3 port, which is a true shame as i want to use this port to display the printk messages to debug some stuff. Question, did ZTE disable UART3 and is it possible to get the port working again..
To test it, you'll need a kernel where config_serial_msm=y and you should see if ttyMSM2 is seen.
Have you tried talking to wbaw? I think he knows tpt stuff quite well
Can answer my own question now, 2.6.32 makes the serial port work..

Kernel Source for Nook Glowlight 2013 (BNRV500)

EDIT: The files have now reappeared on B&N's servers. For safety and convenience I've attached the Nook-1.3.0 and Nook-1.3.1 Delta files here in one Zip file. Hope this helps someone else. I'm off to try patching this kernel.
Hi all!
Does anyone have a copy of the source code for the 2013 Glowlight? The links on B&N's site aren't working. I've tried hunting around on XDA, but it doesn't seem as though anyone has ever uploaded them here.
Nook OS version on my GL 2013 is 1.3.2, but I'm guessing 1.3.0 and 1.3.1 aren't that different and would be better than nothing.
Thank you!
Alex
Found them! B&N must have fixed their site, because the links are working again. I've attached them here in one Zip file just in case they go missing again. I've also popped them on the Wayback Machine.
I've managed to build the kernel using the Sourcery G++ Lite 2010q1-202 toolchain. There was a tiny tweak needed to get it to work with newer versions of Perl, but otherwise it's compiled without a problem. I've tried with a couple of later Linaro toolchain builds, but they failed.
Patch-wise I'm trying to get features as close to the NST modded kernels as possible. The kernel on my old NST has the smartassv2 CPU governor and the SIO scheduler, so I've found patches for those and added them.
I have a few other patches, but no success so far. FastMode needs quite a few tweaks for the patch to work. USB Host Mode compiles fine but does nothing, with no chipset shown in Renate's USB Mode Utility. Finally, I can't work out how to overclock to 1000 MHz.
I'm sure a lot of these issues are solved somewhere in this forum, or there are at least clues (the "Hacking the New Nook Glowlight" thread has certainly helped). I haven't found the answers yet. It's not an urgent project - my NST is still hanging on for dear life - so I'm just working on it when I have a few minutes or feel inspired to do so.
I'll post updates here as I work things out. If anyone has any tips or can offer any help, please do reply to this thread.
albrow said:
USB Host Mode compiles fine but does nothing, with no chipset shown in Renate's USB Mode Utility.
Click to expand...
Click to collapse
The old driver(s) exposed:
Code:
/sys/devices/platform/musb_hdrc/mode
/sys/devices/platform/musb_hdrc/vbus
/sys/devices/platform/i2c_omap.1/i2c-adapter/i2c-1/1-0048/twl4030_usb/vbus
/sys/devices/virtual/sec/switch/adc
/sys/devices/platform/bq24073/regulator/regulator.5/state
/sys/devices/platform/bq24073/force_current
I've uploaded what I've done so far to GitHub.
GitHub - PocketNerdIO/nook-kernel-1.3.1: Kernel for the Nook Glowlight 1 (BNRV500), based on B&N's stock kernel (nook-1.3.1, Android 2.1, Linux 2.6.29-omap1) with some extra patches.
Kernel for the Nook Glowlight 1 (BNRV500), based on B&N's stock kernel (nook-1.3.1, Android 2.1, Linux 2.6.29-omap1) with some extra patches. - GitHub - PocketNerdIO/nook-kernel-1.3.1: Kern...
github.com
Currently the only changes from stock are adding SIO and smartassv2. I've attached the uImage and .config files, should you want to give them a go yourself.
I don't know how many NG1 users are still out there, but hopefully someone will find this useful.
Sidenote: I'm a Linux user. If you run ADB in Linux first, Renate's ADBGRAB runs perfectly in Wine. See the screenshot below.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
I'll try look into it.
I thought I should add that I've already adjusted the partition table. My NG1 currently has a uRamdIsk that mounts /sdcard as a simlink, but some apps really don't like this. I think I'm going to repurpose "reserve" as /sdcard instead.
Code:
NAME FSTYPE FSVER LABEL SIZE
sdb
├─sdb1 vfat FAT32 boot 76M
├─sdb2 vfat FAT32 rom 16M
├─sdb3 ext2 1.0 factory 190M
├─sdb4
├─sdb5 ext2 1.0 288M
├─sdb6 vfat FAT32 NOOK 2.5G
├─sdb7 ext3 1.0 cache 239M
├─sdb8 ext3 1.0 reserve 15M
└─sdb9 ext3 1.0 userdata 300M
albrow said:
Renate's ADBGRAB runs perfectly in Wine.
Click to expand...
Click to collapse
Gosh! Glad to hear it.
Don't forget that for a simple grab give it a filename:
Code:
adbgrab grab.png /o90
Rotate works on this (but not Scale /s)
For interactive:
Code:
adbgrab /s.5
Rotate & Scale work.
Mouse clicks and most keys work on this (but slowly due to Android "input" command which does it in Java).
Renate NST said:
Don't forget that for a simple grab give it a filename:
Code:
adbgrab grab.png /o90
Rotate works on this (but not Scale /s)
For interactive:
Code:
adbgrab /s.5
Rotate & Scale work.
Mouse clicks and most keys work on this (but slowly due to Android "input" command which does it in Java).
Click to expand...
Click to collapse
Thank you! I'm going to try running a few more of your tools with Wine in the next few days. I'm especially interested in patching the Reader using MergeSmali, as well as swapping versions (seeing if the one in 1.2.1/1.2.2 is better than the one in 1.3.1).
I added some compilation tweaks to the code so that it aimed at Cortex-8 rather than a generic ARMv7 build. The changes are on Github and will be part of the next binary I release.
I've been wondering if it's worth trying to find some other patches for this old kernel to give it a speed boost, or maybe more battery savings. I'm guessing it's not worth trying to get it running with a newer kernel (2.6.32/35/36). To be honest I don't know much about kernel hacking beyond some beginner-level C and adding patches. For now I'd like to get things like multitouch and FastMode running, which shouldn't be too tough.
With a quick tweak to the code, the kernel now compiles and boots with Linaro 2012-08 (gcc 4.7.2). I'll push the change to Github later.
I was also able to compile it with Linaro's gcc 4.9.4, but unfortunately the NG1 wouldn't boot. I probably need to work out how to look at u-boot and kernel logs to see if it's fixable, but it's not as important as getting the other patches working.
I'm slowly going through Guevor's old patch file (v4) for the NST. I've added the option for Veno TCP congestion control to the kernel. The change is up on Github. Plus, here's my latest kernel compiled with Linaro gcc 4.7.2, along with the config. To recap, here's the changelog from the stock Nook 1.3.1 kernel (2.6.29):
Compiles (and boots) with Linaro gcc 4.7.2
Fixed to compile with modern versions of Perl
Use SIO I/O Scheduler as default
Use smartassv2 as default
Add Veno TCP congestion and set as default
Not a huge number of changes from stock, but hopefully still some improvements. Next up are FastMode, Multitouch and USB Host. There are also the overclocking settings, but I'm less sure about whether they're all that worthwhile.
EDIT: Realised that I'd uploaded a kernel compiled with the Sourcery toolchain, so I've just uploaded one compiled with Sourcery and one with Linaro gcc 4.7.2. Feel free to test both.
In other news (cc @Renate NST), the stock Reader on my device really doesn't like files loaded using the Temblast Library, which is a massive shame as it's my preferred library app. It takes a long time to load the file, and then has no indexing whatsoever: "Content" does nothing, "go to" shows "Page 3 of 0", and highlighting a word crashes the reader. It's not the end of the world as I can use the stock Library, although I don't know if it's going to read the files in /sdcard. Further research required.
Also, this version of the stock reader REALLY dislikes Button Savior drawing over the top of it. This is most noticeable when the trigger fades out. It will try to refresh the screen at every gradient of change, sometimes making the device unresponsive for up to 30 seconds. I thought there was a way of turning off the fade-out, but I can't find it. One workaround is to close the Button Savior panel, press home, wait for the button to fade, then go back to the reader. It's times like this when I actually miss the "n" button bar on the NST. I can live without physical buttons if the virtual ones do the job well enough.
Think my next task will be to rearrange the partitions so that there's a proper /sdcard rather than a symlink.
albrow said:
The stock Reader on my device really doesn't like files loaded using the Temblast Library...
Click to expand...
Click to collapse
That's very strange. If it opens the intended book then it should be ok from there.
In my world the reader gets the last reading point by itself.
Maybe your reader is expecting something extra in the intent and it isn't handling the lack gracefully?
Does it always go to page 1 even if you've read further?
albrow said:
Also, this version of the stock reader REALLY dislikes Button Savior...
Click to expand...
Click to collapse
Mmm, I dislike those things too.
I was looking at the Onyx Boox Poke 3. It has only a power button, no home, no anything.
It has this arc of icons that follows your finger, a bit like Button Savior.
It's great hardware but I'd have to do a bunch of work to make it clean.
Renate NST said:
Maybe your reader is expecting something extra in the intent and it isn't handling the lack gracefully?
Click to expand...
Click to collapse
I'm certain you're right on this, but I have no idea how to monitor that.
Renate NST said:
Does it always go to page 1 even if you've read further?
Click to expand...
Click to collapse
Yes, unless you're re-opening the same book that is currently open (i.e. Reader is already running in the background with that book.
I've just noticed something with this Reader. It NEVER does a refresh on a page turn, nor when the bottom menu appears or disappears. It sometimes does a refresh when it first loads a book, but not always. But if something tries to draw over the top of it (Button Savior, the Android volume HUD), it refreshes on every change to the screen.
I have a theory on this. When trying to apply the FastMode patches, I noticed that the nook 1.3.1 kernel has more functionality than the one from 1.2.x. I've attached them both here, along with a diff of the two files. Could it be that this newer Reader uses a "new" (given the device is 8 years old) screen drawing method that the NG1 is switching in and out of when something draws over the top of Reader?
I might compile another kernel with the old kernel driver to see what it does.
Renate NST said:
I was looking at the Onyx Boox Poke 3. It has only a power button, no home, no anything.
It has this arc of icons that follows your finger, a bit like Button Savior.
It's great hardware but I'd have to do a bunch of work to make it clean.
Click to expand...
Click to collapse
Oh, don't tempt me! Hacking around with Android 2.1 does feel futile in 2021, but I'm not sure if I want to spend $189 on an ereader right now.
So, a quick update. I've managed to get the OTG patch on and enable the right kernel options (thanks to guevor's old NST .config file). It can now see devices!
Unfortunately, even though I've enabled block devices and SCSI, no new devices are showing in /dev. I'm sure I'm just missing some kernel options.
I found a later version of Linaro's gcc, specifically 4.7.3 from April 2013, which creates a bootable kernel. I think this is the latest version of gcc that will work properly with this code - any later and I just get a freeze at boot, not even a bootloop. It would've been nice (for me) to run a 64 bit compiler, but this works for now so I'll stick with it.
Latest amendments are on Github. I'm not at my laptop at the moment so I don't have a copy of the uImage or .config, but I'll add them when I'm next about.
Finally, I was wondering how easy it would be to "backport" this kernel to work on the NST or NST/G. It might just require an old .config file such as guevor's one. I don't know how useful that would be for anyone, especially as it doesn't have multitouch or FastMode, but it might provide some better screen writing code. I guess it could be a good experiment.
Hmm, it's interesting that it's not showing any interfaces or endpoints.
Are you using UsbMode-2.2.apk?
What does dmesg say when you plug it in?
Does a keyboard or something else work fine?
I think I've only got 2.1 on there actually - an old copy from when I was setting up my NST many years ago. I'll download 2.2 and get the dmesg log tonight. I don't have the USB stick or an OTG cable with me.
Do I need usbhostd as well, or is that only for the KitKat Nooks?
albrow said:
Do I need usbhostd as well, or is that only for the KitKat Nooks?
Click to expand...
Click to collapse
No, that's only for Glow2/3/4
I couldn't get UsbMode 2.2 to install on the NST or the NG1, but 2.1 runs fine on both. I've tried my Microsoft Ergonomic Keyboard on the NG1. It's showing in UsbMode, but dmesg comes up with this:
Code:
<6>[ 283.243438] usb 1-1: new low speed USB device using musb_hdrc and address 7
<3>[ 283.445098] usb 1-1: device v045e p00db is not supported
<6>[ 283.452697] usb 1-1: configuration #1 chosen from 1 choice
For the Sandisk OTG memory stick I get the following (of course, this could just be the stick asking for too much current):
Code:
<6>[ 589.997344] usb 1-1: new high speed USB device using musb_hdrc and address 9
<3>[ 590.163635] usb 1-1: device v0bda p0109 is not supported
<6>[ 590.171295] usb 1-1: rejected 1 configuration due to insufficient available bus power
<4>[ 590.179595] usb 1-1: no configuration chosen from 1 choice
Here's an Apple Mighty Mouse:
Code:
<6>[ 666.583343] usb 1-1: new low speed USB device using musb_hdrc and address 10
<3>[ 666.771850] usb 1-1: device v05ac p0304 is not supported
<6>[ 666.779510] usb 1-1: configuration #1 chosen from 1 choice
And for a laugh I thought I'd plug my NST into the NG1:
Code:
<6>[ 1193.856811] usb 1-1: new high speed USB device using musb_hdrc and address 21
<3>[ 1194.021789] usb 1-1: device v2080 p0003 is not supported
<6>[ 1194.029296] usb 1-1: rejected 1 configuration due to insufficient available bus power
<4>[ 1194.037597] usb 1-1: no configuration chosen from 1 choice
I'm sure I've just not enabled something in the kernel, but right now I'm not sure what.
OK, here's an interesting thing.
I thought I'd try plugging in an unpowered USB 2.0 Hub, which was recognised:
Code:
<6>[ 1858.059326] usb 1-1: new high speed USB device using musb_hdrc and address 25
<6>[ 1858.222869] usb 1-1: configuration #1 chosen from 1 choice
<6>[ 1858.229644] hub 1-1:1.0: USB hub found
<6>[ 1858.233978] hub 1-1:1.0: 4 ports detected
And then I plugged in the USB stick into the hub... which also worked and created /dev/block/sda and sda1!
Code:
<6>[ 2031.161499] usb 1-1: reset high speed USB device using musb_hdrc and address 25
<6>[ 2031.968811] usb 1-1.3: new high speed USB device using musb_hdrc and address 26
<3>[ 2032.104217] usb 1-1.3: device v0bda p0109 is not supported
<6>[ 2032.111999] usb 1-1.3: configuration #1 chosen from 1 choice
<6>[ 2032.130249] scsi0 : SCSI emulation for USB Mass Storage devices
<7>[ 2032.139739] usb-storage: device found at 26
<7>[ 2032.144134] usb-storage: waiting for device to settle before scanning
<5>[ 2037.149627] scsi 0:0:0:0: Direct-Access Generic- SD/MMC 1.00 PQ: 0 ANSI: 0 CCS
<6>[ 2037.273895] usb 1-1.3: reset high speed USB device using musb_hdrc and address 26
Unfortunately the Apple Mighty Mouse did what it did before, although it showed as being plugged in to the hub.
Code:
<6>[ 79.115997] usb 1-1.2: new low speed USB device using musb_hdrc and address 3
<3>[ 79.238891] usb 1-1.2: device v05ac p0304 is not supported
<6>[ 79.246276] usb 1-1.2: configuration #1 chosen from 1 choice
albrow said:
I couldn't get UsbMode 2.2 to install on the NST or the NG1.
Click to expand...
Click to collapse
Well, it looks like someone has to do some regression testing.
Edit: @albrow 2.2 works fine on my NST. I don't have a BNRV500.
If the logcat tells you something could you post it?
albrow said:
Code:
<6>[ 590.171295] usb 1-1: rejected 1 configuration due to insufficient available bus power
You should always test questionable USB OTG things using a powered hub.
After you get it working you can try flying solo.
Click to expand...
Click to collapse

Categories

Resources