[WIP][4.0.3]ICS CM9 ThinkPad Tablet PORT

Search This thread

quyTam

Senior Member
May 26, 2011
403
41
I've tested Splashtop HD (remote desktop) and the display is not working correctly.

I didn't try it before on 3.1 (so doesn't know if it works before), but I think it's related with the HW acceleration (, Youtube HD)
 

Koshu

Senior Member
Jul 28, 2007
348
463
Here is the logcat of me plugging in the folio.

http://pastebin.com/S8Qs9w5C

Here is the interesting part:

Code:
D/EventHub(  151): No input device configuration file found for device 'Lenovo ThinkPad Tablet'.
E/KeyLayoutMap(  151): /system/usr/keylayout/Generic.kl:161: Expected key code label, got 'YEN'.
E/Keyboard(  151): Could not determine key map for device 'Lenovo ThinkPad Tablet' and no default key maps were found!
I/EventHub(  151): New device: id=8, fd=228, path='/dev/input/event7', name='Lenovo ThinkPad Tablet', classes=0x80000001, configuration='', keyLayout='', keyCharacterMap='/system/usr/keychars/Generic.kcm', builtinKeyboard=false
I/InputReader(  151): Device added: id=8, name='Lenovo ThinkPad Tablet', sources=0x00000101
D/EventHub(  151): No input device configuration file found for device 'Lenovo ThinkPad Tablet'.
E/KeyLayoutMap(  151): /system/usr/keylayout/Generic.kl:161: Expected key code label, got 'YEN'.
E/Keyboard(  151): Could not determine key map for device 'Lenovo ThinkPad Tablet' and no default key maps were found!
I/EventHub(  151): New device: id=9, fd=229, path='/dev/input/event8', name='Lenovo ThinkPad Tablet', classes=0x80000009, configuration='', keyLayout='', keyCharacterMap='/system/usr/keychars/Generic.kcm', builtinKeyboard=false
I/InputReader(  151): Device added: id=9, name='Lenovo ThinkPad Tablet', sources=0x00002103
D/InputReader(  151): BatchSize: 1 Count: 1
D/InputReader(  151): Input event: device=9 type=0x0000 scancode=0x0000 keycode=0x0000 value=0x00000000 flags=0x00000000
D/dalvikvm( 1249): GC_CONCURRENT freed 346K, 21% free 8183K/10311K, paused 1ms+4ms
D/InputReader(  151): BatchSize: 5 Count: 5

Ah thanks. Could you try to replace the /system/usr/keylayout/Generic.kl file with this one? -> http://koshu.de/Generic.kl You might need to reboot after this but pluging out and in the folio should be enough.
 
  • Like
Reactions: Neokazaki

pwstein

Senior Member
Oct 14, 2011
100
34
The Generic.kl did not fix Folio keyboard usage. Pointer and buttons only, still. After replacing file, cold booted, then inserted TPT into folio keyboard. No keypresses are shown, On screen keyboard remains.
 

Koshu

Senior Member
Jul 28, 2007
348
463
The Generic.kl did not fix Folio keyboard usage. Pointer and buttons only, still. After replacing file, cold booted, then inserted TPT into folio keyboard. No keypresses are shown, On screen keyboard remains.

Please try again with http://koshu.de/Generic.kl (Reuploaded a new file). If this isn't working i need another logcat with the changed Generic.kl. The parts with Eventhub and Keylayout are indeed the important parts (for now).

Thanks
 
  • Like
Reactions: Neokazaki

opnsrcaddict

Senior Member
Dec 20, 2010
57
0
Waterford,MI
Still no luck on my end:

Logcat
http://pastebin.com/kj2n22d8

Code:
D/dalvikvm( 1176): GC_CONCURRENT freed 355K, 22% free 7727K/9863K, paused 1ms+4ms
W/InputManagerService(  149): Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@414f5490
D/EventHub(  149): No input device configuration file found for device 'Lenovo ThinkPad Tablet'.
E/KeyLayoutMap(  149): /system/usr/keylayout/Generic.kl:108: Expected key code label, got 'KEYBOARD_LESS'.
E/Keyboard(  149): Could not determine key map for device 'Lenovo ThinkPad Tablet' and no default key maps were found!
I/EventHub(  149): New device: id=10, fd=166, path='/dev/input/event6', name='Lenovo ThinkPad Tablet', classes=0x80000001, configuration='', keyLayout='', keyCharacterMap='/system/usr/keychars/Generic.kcm', builtinKeyboard=false
I/InputReader(  149): Device added: id=10, name='Lenovo ThinkPad Tablet', sources=0x00000101
D/EventHub(  149): No input device configuration file found for device 'Lenovo ThinkPad Tablet'.
E/KeyLayoutMap(  149): /system/usr/keylayout/Generic.kl:108: Expected key code label, got 'KEYBOARD_LESS'.
E/Keyboard(  149): Could not determine key map for device 'Lenovo ThinkPad Tablet' and no default key maps were found!
I/EventHub(  149): New device: id=11, fd=167, path='/dev/input/event7', name='Lenovo ThinkPad Tablet', classes=0x80000009, configuration='', keyLayout='', keyCharacterMap='/system/usr/keychars/Generic.kcm', builtinKeyboard=false
I/InputReader(  149): Device added: id=11, name='Lenovo ThinkPad Tablet', sources=0x00002103
D/InputReader(  149): BatchSize: 1 Count: 1
D/InputReader(  149): Input event: device=11 type=0x0000 scancode=0x0000 keycode=0x0000 value=0x00000000 flags=0x00000000
D/dalvikvm(  427): GC_CONCURRENT freed 446K, 24% free 7013K/9223K, paused 2ms+3ms
D/InputReader(  149): BatchSize: 3 Count: 3
D/InputReader(  149): Input event: device=10 type=0x0004 scancode=0x0004 keycode=0x0000 value=0x00070004 flags=0x00000000
D/InputReader(  149): Input event: device=10 type=0x0001 scancode=0x001e keycode=0x0000 value=0x00000001 flags=0x00000000
D/InputReader(  149): Input event: device=10 type=0x0000 scancode=0x0000 keycode=0x0000 value=0x00000000 flags=0x00000000
D/InputReader(  149): BatchSize: 3 Count: 3

EDIT: I followed your lead and commented out the line that define "KEYBOARD_LESS" (Line 108?) and now the folio seems to work! I'll continue testing all the keys and let you know how it looks, but it seems as if that was the fix.
 

Koshu

Senior Member
Jul 28, 2007
348
463
Still no luck on my end:

Logcat
http://pastebin.com/kj2n22d8

Code:
D/dalvikvm( 1176): GC_CONCURRENT freed 355K, 22% free 7727K/9863K, paused 1ms+4ms
W/InputManagerService(  149): Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@414f5490
D/EventHub(  149): No input device configuration file found for device 'Lenovo ThinkPad Tablet'.
E/KeyLayoutMap(  149): /system/usr/keylayout/Generic.kl:108: Expected key code label, got 'KEYBOARD_LESS'.
E/Keyboard(  149): Could not determine key map for device 'Lenovo ThinkPad Tablet' and no default key maps were found!
I/EventHub(  149): New device: id=10, fd=166, path='/dev/input/event6', name='Lenovo ThinkPad Tablet', classes=0x80000001, configuration='', keyLayout='', keyCharacterMap='/system/usr/keychars/Generic.kcm', builtinKeyboard=false
I/InputReader(  149): Device added: id=10, name='Lenovo ThinkPad Tablet', sources=0x00000101
D/EventHub(  149): No input device configuration file found for device 'Lenovo ThinkPad Tablet'.
E/KeyLayoutMap(  149): /system/usr/keylayout/Generic.kl:108: Expected key code label, got 'KEYBOARD_LESS'.
E/Keyboard(  149): Could not determine key map for device 'Lenovo ThinkPad Tablet' and no default key maps were found!
I/EventHub(  149): New device: id=11, fd=167, path='/dev/input/event7', name='Lenovo ThinkPad Tablet', classes=0x80000009, configuration='', keyLayout='', keyCharacterMap='/system/usr/keychars/Generic.kcm', builtinKeyboard=false
I/InputReader(  149): Device added: id=11, name='Lenovo ThinkPad Tablet', sources=0x00002103
D/InputReader(  149): BatchSize: 1 Count: 1
D/InputReader(  149): Input event: device=11 type=0x0000 scancode=0x0000 keycode=0x0000 value=0x00000000 flags=0x00000000
D/dalvikvm(  427): GC_CONCURRENT freed 446K, 24% free 7013K/9223K, paused 2ms+3ms
D/InputReader(  149): BatchSize: 3 Count: 3
D/InputReader(  149): Input event: device=10 type=0x0004 scancode=0x0004 keycode=0x0000 value=0x00070004 flags=0x00000000
D/InputReader(  149): Input event: device=10 type=0x0001 scancode=0x001e keycode=0x0000 value=0x00000001 flags=0x00000000
D/InputReader(  149): Input event: device=10 type=0x0000 scancode=0x0000 keycode=0x0000 value=0x00000000 flags=0x00000000
D/InputReader(  149): BatchSize: 3 Count: 3

EDIT: I followed your lead and commented out the line that define "KEYBOARD_LESS" (Line 108?) and now the folio seems to work! I'll continue testing all the keys and let you know how it looks, but it seems as if that was the fix.

Ah, great to hear. Are other keyboards working with this fix, too? Will include it into the next release.
 
  • Like
Reactions: Neokazaki

claytonjn

Senior Member
Nov 3, 2011
1,561
836
claytonjamesphotography.webs.com
I installed this last night on my US 16GB WiFi ThinkPad, and I'm happy to report that I was also able to get my keyboard folio working, in fact I'm using it to post this! The only buttons I can find that are not working are the sound mute button, microphone mute button, notification pannel button, settings button, and the zoom buttons. A few other things I noticed right off the bat:


  • Almost every word in this post has been flagged as not in the dictionary. More than not.
    I was unable to connect to my VPNs - both are PPTP
    I unchecked the option to show pattern when unlocking, however the pattern is still shown.
    The signal strength for cell is always showing in the status bar even though I have a WiFi only version
    The Emergency Call button is shown on the lock screen
    I have also noticed issued with flicking or scrolling

I personally may have to switch back to HC until VPN works, but I will definetly miss ICS on here. All of the other bugs I've encountered are reletively minor.
 

baz8080

Member
Nov 29, 2010
47
4
Dublin
After commenting out KEYBOARD_LESS on line 108 I can use 95% of the keyboard although @ and " are swapped because I'm using a UK layout. Tilde and hash are also non-functional.
 

Koshu

Senior Member
Jul 28, 2007
348
463
I installed this last night on my US 16GB WiFi ThinkPad, and I'm happy to report that I was also able to get my keyboard folio working, in fact I'm using it to post this! The only buttons I can find that are not working are the sound mute button, microphone mute button, notification pannel button, settings button, and the zoom buttons.

After commenting out KEYBOARD_LESS on line 108 I can use 95% of the keyboard although @ and " are swapped because I'm using a UK layout. Tilde and hash are also non-functional.

Hm ok, well then i need a little help again from someone with the Folio. I need the keycodes for every Button that isn't working (and what button it is). This might be a little work but i can't do i myself:

  1. Start adb logcat
  2. Push a Button that isn't working
  3. Now the logcat should show a line like:
    Code:
    D/InputReader(  150): Input event: device=7 type=0x0001 scancode=0x00f8 keycode=0x00d3 value=0x00000001 flags=0x00000001
    The device Nr might be different, import is that the type is 0x0001 (Thats a Button event). Then the scancode (0x00f8) is the Code of the Button in hex. The keycode should be zero if the button isn't mapped/working.
  4. Write down the scancode number and which button was pressed and repeat with step 2 for every nonworking button
 
  • Like
Reactions: Neokazaki

claytonjn

Senior Member
Nov 3, 2011
1,561
836
claytonjamesphotography.webs.com
Alright, I'll do that when I get home from work, can't install ADB here unfortunately.

A couple other things I noticed...
Google Maps and Foursquare both tell me I need to enable location services in settings, even though all location services are enabled. Google Maps still seems to get my location but Foursquare never does.

Also, I have been experiencing the tablet freezing similarly to what other users reported. As far as I can tell it has only happened while charging. It doesn't seem to be a complete freeze, more of a lockout from any touch/keyboard/physical button input. The reason I think that is the case is because the last time it happened to me I was typing, and after freezing the cursor was still blinking.

The default browser and Chrome beta are freezing a lot on me, just browsing forums. Perhaps because of the HW acceleration problems? I don't seem to have the problem with dolphin.

EDIT: Wow...I feel really stupid...hiding the lockscreen pattern works perfectly. I had unchecked show passwords but not the lockscreen pattern. That's what I get for flashing a ROM at 4AM and then waking up two hours later for work...
 
Last edited:

baz8080

Member
Nov 29, 2010
47
4
Dublin
The default browser and Chrome beta are freezing a lot on me, just browsing forums. Perhaps because of the HW acceleration problems? I don't seem to have the problem with dolphin.

Chrome freezes on me a lot too. From looking at the ANR logs it seems like chrome sync is the culprit. I'm going to try to disable that and see if it gets better.
 

claytonjn

Senior Member
Nov 3, 2011
1,561
836
claytonjamesphotography.webs.com
Chrome freezes on me a lot too. From looking at the ANR logs it seems like chrome sync is the culprit. I'm going to try to disable that and see if it gets better.

That would make sense because Chrome and the default browser are both supposed to sync, however the default browser sync has never worked right for any of my devices. Chrome works fine on my Galaxy Nexus with AOKP and Franko.Kernal.
 

baz8080

Member
Nov 29, 2010
47
4
Dublin
HI Koshu, here's the info that you asked for. May I take this opportunity to thank you and Jon2555 for all of your hard work on this ROM, it is much appreciated.

These ones in the first batch are the function keys in the top row

Volume Mute
(definitely does nor work, although has a non zero keycode. 0x71 corresponds to key 113 VOLUME_MUTE in Generic.kl)

D/InputReader(150): Input event: device=7 type=0x0001 scancode=0x0071 keycode=0x00a4 value=0x00000001 flags=0x00000000

Microphone Mute
D/InputReader(150): Input event: device=7 type=0x0001 scancode=0x0212 keycode=0x0000 value=0x00000001 flags=0x00000000

Brightness Button
(Dunno if there is a good match for this, as there is only one key and not two for KEY_BRIGHTNESSDOWN & KEY_BRIGHTNESSUP)

D/InputReader(150): Input event: device=7 type=0x0001 scancode=0x0213 keycode=0x0000 value=0x00000001 flags=0x00000000

Settings Button
Input event: device=7 type=0x0001 scancode=0x008d keycode=0x0000 value=0x00000001 flags=0x00000000

Zoom Out
Input event: device=7 type=0x0001 scancode=0x01a3 keycode=0x0000 value=0x00000000 flags=0x00000000

Zoom In
Input event: device=7 type=0x0001 scancode=0x01a2 keycode=0x0000 value=0x00000000 flags=0x00000000

This next batch are the ones from the rest of the keyboard that don't do anything for me

# / ~
This is the key directly to the left of enter and directly to the right of ' / @.

D/InputReader(150): Input event: device=8 type=0x0001 scancode=0x020b keycode=0x0000 value=0x00000001 flags=0x00000000


Sym Key
Not even sure of what this is supposed to do!

Input event: device=7 type=0x0001 scancode=0x0214 keycode=0x0000 value=0x00000001 flags=0x00000000

The final batch of keys are the ones that are swapped in my case because I don't have a US English layout. Not that bothered about these to be honest!

Grave / Backtick
outputs backtick ` without shift
outputs tilde ~ with shift

2 / "
outputs @ with shift, should be " in my case

' / @
outputs " with shift, should be @ in my case

3 / £
outputs # with shift, should be £ in my case
 

Attachments

  • uk_folio.jpg
    uk_folio.jpg
    234.8 KB · Views: 79

claytonjn

Senior Member
Nov 3, 2011
1,561
836
claytonjamesphotography.webs.com
HI Koshu, here's the info that you asked for. May I take this opportunity to thank you and Jon2555 for all of your hard work on this ROM, it is much appreciated.

These ones in the first batch are the function keys in the top row

Volume Mute
(definitely does nor work, although has a non zero keycode. 0x71 corresponds to key 113 VOLUME_MUTE in Generic.kl)

D/InputReader(150): Input event: device=7 type=0x0001 scancode=0x0071 keycode=0x00a4 value=0x00000001 flags=0x00000000

Microphone Mute
D/InputReader(150): Input event: device=7 type=0x0001 scancode=0x0212 keycode=0x0000 value=0x00000001 flags=0x00000000

Brightness Button
(Dunno if there is a good match for this, as there is only one key and not two for KEY_BRIGHTNESSDOWN & KEY_BRIGHTNESSUP)

D/InputReader(150): Input event: device=7 type=0x0001 scancode=0x0213 keycode=0x0000 value=0x00000001 flags=0x00000000

Settings Button
Input event: device=7 type=0x0001 scancode=0x008d keycode=0x0000 value=0x00000001 flags=0x00000000

Zoom Out
Input event: device=7 type=0x0001 scancode=0x01a3 keycode=0x0000 value=0x00000000 flags=0x00000000

Zoom In
Input event: device=7 type=0x0001 scancode=0x01a2 keycode=0x0000 value=0x00000000 flags=0x00000000

This next batch are the ones from the rest of the keyboard that don't do anything for me

# / ~
This is the key directly to the left of enter and directly to the right of ' / @.

D/InputReader(150): Input event: device=8 type=0x0001 scancode=0x020b keycode=0x0000 value=0x00000001 flags=0x00000000


Sym Key
Not even sure of what this is supposed to do!

Input event: device=7 type=0x0001 scancode=0x0214 keycode=0x0000 value=0x00000001 flags=0x00000000

The final batch of keys are the ones that are swapped in my case because I don't have a US English layout. Not that bothered about these to be honest!

Grave / Backtick
outputs backtick ` without shift
outputs tilde ~ with shift

2 / "
outputs @ with shift, should be " in my case

' / @
outputs " with shift, should be @ in my case

3 / £
outputs # with shift, should be £ in my case

In the stock HC on the TPT what you're calling the brightness button (the one that looks like a sun) opened the notification pane (the same as tapping on the clock).

The sym key on stock HC opened something like language settings IIRC. Personally I would like to be able to custom map it to something like the windows key on a traditional keyboard for when I'm doing RDP.

I'll post a picture of my folio's keyboard (US) in a minute, but everything is working properly for me besides the mentioned keys in the top row and the sym key. All my number keys/symbols are working properly.

EDIT:
a6f96835-bf12-a842.jpg
 
Last edited:

baz8080

Member
Nov 29, 2010
47
4
Dublin
Cool, by the way I signed out in Chrome and it was more stable. It still started to hang after a about 10 minutes though and those ANR logs point to something at the rendering stage which could very well be something to do with hardware acceleration as you suspected.
 

claytonjn

Senior Member
Nov 3, 2011
1,561
836
claytonjamesphotography.webs.com
No, thank you! I really never though we would see ICS on the TPT. I was shocked that Lenovo announced they would be pushing it and I really cant believe I already have it. I don't suppose you have any ideas about the VPN not working do you? That's the one thing that may make me revert back to HC :(

EDIT: I know this is jumping the gun a bit, but would it be feasible that eventually we could upgrade the wireless capabilities of our TPTs? I'd really like to put in a dual band a/b/g/n card because I get a lot of interference on the 2.4ghz spectrum at my house. It would also be great if I could put in a 4G card...


Posted from my ThinkPad Tablet running Android 4.0.3
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 49
    ME AND NEITHER KOSHU AREN'T RESPONDING FOR ANY DAMAGE THAT MIGHT BE FOLLOWED BY INSTALLING THIS ROM

    I'm proud to say that a little team of two people(koush and me) successfully ported CM9 to ThinkPad Tablet.

    Special thanks goes to:

    -CyanogenMod team
    -Koshu


    Pictures(more to come):

    ZUytV.jpg


    Video(will be added):

    Installation procedure(will be added):

    Build(will be uploaded when we feel that it's ready for first release):

    Some more info(more to come):

    -IRC Channel ==> ##TPT-ICS(yes two #) on http://webchat.quakenet.org/
    -for general discussion and bugs reporting in common with TPT ICS port as well as some suggestions or help about ICS porting-

    -IRC Channel ==> #thinkpad-android on http://webchat.freenode.net/
    -general discussion about ThinkPad Tablet and Android-

    Resources:

    -Source code ==> will be uploaded

    Don't forget to press thanks button if you like our work(on second post too)!!!

    This will be updated with with info about how port goes and things in common with it
    7
    Public release is near right. At the moment we're dealing with sound but it's semi working and all main features are working nicely like wifi, Bluetooth, touchscreen, rotation etc.
    7
    We made a really nice progress for a short period and first public release maybe hit ground by end of this week! A lot of hardware features work but some mainly are missing like audio, HW acceleration.
    5
    Update 0.0.5 is out. For changlog etc look into 2. Post:
    http://everyrandom.com/files/download.php?file=437alpha005.zip