Newer ThinkPad models use completely new keyboard, including connector.hamish wrote:Do you think this method could generalise to newer Thinkpads than the xx30 generation, or is the way they handle keyboards too different?
Installing classic keyboard into X230 with EC firmware mod
-
nitrocaster
- Junior Member

- Posts: 400
- Joined: Fri Mar 04, 2016 8:38 am
- Location: Moscow, Russia
Re: Installing classic keyboard into X230 with EC firmware mod
For those who interested in buying X220/X230 FHD kit: Read this before sending me a PM!
X230: i7-3520M | 16GB RAM | 512GB M.2 Micron M600 | LG LP125WF2-SPB4 FHD IPS | 9c Li-Ion | Win8.1 Pro 64
X230: i7-3520M | 16GB RAM | 512GB M.2 Micron M600 | LG LP125WF2-SPB4 FHD IPS | 9c Li-Ion | Win8.1 Pro 64
Re: Installing classic keyboard into X230 with EC firmware mod
Ah, sorry - I misread your original message.4bpp wrote:Sorry, I meant the generations that are still newer (xx40~xx60, or perhaps even the Yoga 260 for an actual digitiser machine). Did you have any chance at all to look at the firmware of those?hamish wrote:I've looked at the firmware for three of the xx30 generation laptops, and I was able to find the right keyboard data in all three cases, so I am hoping that it just as straight-forward to apply the same process to others in that generation.
See http://www.thinkwiki.org/wiki/Install_C ... r_Firmware for the current list of firmware I have looked at
(Also, in the xx30 series, does the X230 tablet have the same firmware as the X230? (I wouldn't expect them to be too different, at least...))
I have not bothered to buy any thinkpad newer than an xx30, so I have not looked closely. So, on top of the extensive plastics surgery that would be required due to the completely different keyboard shape:
I have not seen the schematic diagrams for any of these laptops, so I dont know what EC controller they use, however if it is similar, there may be some hope. The keyboard connector cable is completely different, so an adapter would need to be made for the keyboard matrix. The trackpoint buttons dont work the same way with newer generations either, but that is probably just a matter of even more plastics surgery.
Finally, I would expect that the firmware encryption method would have at least had its keys changed with a new generation.
So, not completely impossible, but mostly dependent on getting hardware and ripping it apart - as I mentioned above, I stopped purchasing thinkpad hardware in any volume after the x220 - when in my opinion, they started targeting a much more downmarket audience. If they want to play the "cheap" game, there is always a cheaper manufacturer to recommend - especially if they are going to have generic design, like their current keyboards. I am waiting for the Thinkpad Classic, but dont really expect it to actually be ever manufactured.
Re: Installing classic keyboard into X230 with EC firmware mod
This is excellent work! When do you think you could make a bios or patch for W530 models, and do you know if all the pins for the keyboard connector are the same?
Also, would it be possible to do the flashing under Linux instead of Windows?
Also, would it be possible to do the flashing under Linux instead of Windows?
Current Thinkpads: W530 (functional classic keyboard mod), X301, T61, T60, T43, T23, 600X, 770
Other: mk5 Toughbook cf-19, mk1 Toughbook cf-53
Other: mk5 Toughbook cf-19, mk1 Toughbook cf-53
Re: Installing classic keyboard into X230 with EC firmware mod
Can try and have a look at the W530 firmware in the next couple of days. As far as I know, all the xx30 models have the same keyboard pinout - but I have only personally confirmed that for the x230..brchan wrote:This is excellent work! When do you think you could make a bios or patch for W530 models, and do you know if all the pins for the keyboard connector are the same?
Also, would it be possible to do the flashing under Linux instead of Windows?
Doing the flashing under Linux would require reverse-engineering the dosflash.exe or winflash.exe programs, which seems like it is not worth the effort. I run Linux all the time, but just boot to a DOS disk to run the dosflash.exe - which is not too bad, since the system needs to reboot as soon as it has flashed the firmware anyway (I did it often enough that I created a small DOS partition on my hard disk
Re: Installing classic keyboard into X230 with EC firmware mod
OK, so I had a chance to do this right away, I have updated the git repository with some patches for the w530. The full patch is at https://gist.github.com/hamishcoleman/4 ... d1ec17a59cbrchan wrote:This is excellent work! When do you think you could make a bios or patch for W530 models, and do you know if all the pins for the keyboard connector are the same?
Also, would it be possible to do the flashing under Linux instead of Windows?
Let us know if you try it, so I can mark it as tested.
Re: Installing classic keyboard into X230 with EC firmware mod
Does the X230 tablet share the same ec as the x230?
ThinkPad X200 Tablet, 240GB SSD. Getting ready to pull the trigger on an x230 tablet.
Re: Installing classic keyboard into X230 with EC firmware mod
The x230t uses a different embedded controller firmware, but it has the same keyboard tables in it, so these patches can be adapted for it as well.wabamad wrote:Does the X230 tablet share the same ec as the x230?
Re: Installing classic keyboard into X230 with EC firmware mod
Is there another way to install the patch instead of using dosflash? It doesn't seem available readily available and I can't find any documentation on what specific command to update the bios.
Current Thinkpads: W530 (functional classic keyboard mod), X301, T61, T60, T43, T23, 600X, 770
Other: mk5 Toughbook cf-19, mk1 Toughbook cf-53
Other: mk5 Toughbook cf-19, mk1 Toughbook cf-53
-
Biased Opinion
- Posts: 3
- Joined: Mon Apr 25, 2016 9:35 am
- Location: Brisbane, Australia
Re: Installing classic keyboard into X230 with EC firmware mod
So which buttons are still non fuctional, the only ones i really care about is the home, end delete cluster.
-
Tasurinchi
- Senior ThinkPadder

- Posts: 2009
- Joined: Mon Aug 17, 2009 8:38 am
- Location: Zurich, Switzerland
Re: Installing classic keyboard into X230 with EC firmware mod
Fantastic news!! Thanks to everybody that helped making this work 
IBM Convertible 5140/L40SX/220/240/240X/2*340CSE/360PE/365XD/380D/380E/380XD/380Z/390/560E/560X/2*570/2*600/600E/750Cs/755C/760CD/760EL/760XD/770E
A20p/A22p/A31/i1600/G40/R50p/R61i/S30/SL510/2*T22/4*T4x/11*T6x/6*T40x/6*T5x0/3*W5x0/W700/3*X2x/4*X3x/3*X4x/5*X6x/3*X6xT/12*X2xx/4*X30x/Z60m/3*Z61x
A20p/A22p/A31/i1600/G40/R50p/R61i/S30/SL510/2*T22/4*T4x/11*T6x/6*T40x/6*T5x0/3*W5x0/W700/3*X2x/4*X3x/3*X4x/5*X6x/3*X6xT/12*X2xx/4*X30x/Z60m/3*Z61x
Re: Installing classic keyboard into X230 with EC firmware mod
The dosflash is included in every bios update ISO image - so I hadnt thought of that as an issue. However, now that I consider it, it is not exactly straight-forward to extract.brchan wrote:Is there another way to install the patch instead of using dosflash? It doesn't seem available readily available and I can't find any documentation on what specific command to update the bios.
I'm going to work on making the patches apply to the whole ISO image, so the process should end up being "download the ISO, patch it, stick it on a CD, boot it"
Re: Installing classic keyboard into X230 with EC firmware mod
The only buttons that are not working are Fn+F12 (Hibernate), Fn+F3 (Battery) and Fn+Space (some magnify thing?) - so the important ones are all fine for you.Biased Opinion wrote:So which buttons are still non fuctional, the only ones i really care about is the home, end delete cluster.
-
RealBlackStuff
- Admin
- Posts: 17485
- Joined: Mon Sep 18, 2006 5:17 am
- Location: Mt. Cobb, PA USA
- Contact:
-
Biased Opinion
- Posts: 3
- Joined: Mon Apr 25, 2016 9:35 am
- Location: Brisbane, Australia
Re: Installing classic keyboard into X230 with EC firmware mod
hamish wrote:The only buttons that are not working are Fn+F12 (Hibernate), Fn+F3 (Battery) and Fn+Space (some magnify thing?) - so the important ones are all fine for you.Biased Opinion wrote:So which buttons are still non fuctional, the only ones i really care about is the home, end delete cluster.
Fantastic, ill be getting a classic keyboard soon to put in my x230 so the bios mod will be happening
Re: Installing classic keyboard into X230 with EC firmware mod
Someone needs to breakout the trophy and start etching hamish on it under Middleton.
Maybe there's room on the bottom somewhere for me...someday.
Maybe there's room on the bottom somewhere for me...someday.
- T61 - 6465CTO - T9500 - 15.4" LG WSXGA+ - 8GB OCZ- 120GB EVO 850 SSD - X3100 - Win 8.1 Pro 64-bit
X301 - 2774W8Q - U9400 - 13.3" BOEHYDIS WXGA - 8GB Elpida - 128GB C400 mSATA SSD - 4500MHD - Win 10 Pro 64-Bit
Re: Installing classic keyboard into X230 with EC firmware mod
Thanks, but I cannot take all the credit - it would not have happened without zmatt's decryption code and nitrocaster found half the tables we are patching.Radioguy wrote:Someone needs to breakout the trophy and start etching hamish on it under Middleton.![]()
Maybe there's room on the bottom somewhere for me...someday.
-
Biased Opinion
- Posts: 3
- Joined: Mon Apr 25, 2016 9:35 am
- Location: Brisbane, Australia
Re: Installing classic keyboard into X230 with EC firmware mod
So with this massive hurdle overcome what is the next logical progression in xx30 bios modding. I would say the best thing to tackle next would be the wifi card whitelist. from my understanding it was a check in the EC firmware which stopped the bios whitelists from being able to pass. So with us now being able to mod the EC firmware would it be possible to edit or remove this check and allow newer wifi cards such as the intel 7260. If that could be rolled into the current bios/EC mod it would make xx30 laptops even more attractive to others. I lack the technical knowledge to make changes to the code but im more than happy to test wifi cards and EC mods on my x230.
Re: Installing classic keyboard into X230 with EC firmware mod
I have created a new patch that applies to the Lenovo ISO file, turning it into a bootable automated tool.
So far only the x230 patch has been created, and I will not have time to test that tonight.
I have updated the instructions and links with this new patch on the thinkwiki: http://www.thinkwiki.org/wiki/Install_C ... r_Firmware
So far only the x230 patch has been created, and I will not have time to test that tonight.
I have updated the instructions and links with this new patch on the thinkwiki: http://www.thinkwiki.org/wiki/Install_C ... r_Firmware
Re: Installing classic keyboard into X230 with EC firmware mod
Thanks for your continued great work. The opening post referenced a schematic to identify the pins to be isolated in the keyboard connector. I unfortunately haven't been particularly lucky about finding the relevant schematic; could you perhaps point me at it?
-
nitrocaster
- Junior Member

- Posts: 400
- Joined: Fri Mar 04, 2016 8:38 am
- Location: Moscow, Russia
Re: Installing classic keyboard into X230 with EC firmware mod
I updated the top post with the link.4bpp wrote:Thanks for your continued great work. The opening post referenced a schematic to identify the pins to be isolated in the keyboard connector. I unfortunately haven't been particularly lucky about finding the relevant schematic; could you perhaps point me at it?
For those who interested in buying X220/X230 FHD kit: Read this before sending me a PM!
X230: i7-3520M | 16GB RAM | 512GB M.2 Micron M600 | LG LP125WF2-SPB4 FHD IPS | 9c Li-Ion | Win8.1 Pro 64
X230: i7-3520M | 16GB RAM | 512GB M.2 Micron M600 | LG LP125WF2-SPB4 FHD IPS | 9c Li-Ion | Win8.1 Pro 64
Re: Installing classic keyboard into X230 with EC firmware mod
I dont think you need to isolate any pins, I have just re-examined the schematics and can see that the Fuse F5 is protecting against that short circuit. This fuse will blow the first time the laptop is turned on with the new keyboard and the short will stop.nitrocaster wrote:I updated the top post with the link.4bpp wrote:Thanks for your continued great work. The opening post referenced a schematic to identify the pins to be isolated in the keyboard connector. I unfortunately haven't been particularly lucky about finding the relevant schematic; could you perhaps point me at it?
This is still of concern to anyone who wanted to swap their backlit xx30 keyboard back into the laptop, as that is what is powered via that fuse.
While I was looking at the schematics, I noted that there were a very large number of optional parts in that area, most of them are not populated with any given option. It looks like they have populated "case2" in every engineering stage since Design Validation. To make it easier to see, I re-drew that part of the schematic (schematic) and then went and disassembled my x230 to confirm which parts were populated (close up of keyboard area)
Last edited by hamish on Wed Apr 27, 2016 8:11 am, edited 1 time in total.
Re: Installing classic keyboard into X230 with EC firmware mod
Thanks. Am I correct in the understanding that I'm already in the clear if I only isolate pin 27 one way or another? (In case of doubts or second thoughts, it seems easier to reconnect one signal wire than three...)nitrocaster wrote:I updated the top post with the link.4bpp wrote:Thanks for your continued great work. The opening post referenced a schematic to identify the pins to be isolated in the keyboard connector. I unfortunately haven't been particularly lucky about finding the relevant schematic; could you perhaps point me at it?
-
nitrocaster
- Junior Member

- Posts: 400
- Joined: Fri Mar 04, 2016 8:38 am
- Location: Moscow, Russia
Re: Installing classic keyboard into X230 with EC firmware mod
There's nothing to do with pin 27. You need to disconnect pins 25 and 29 from the keyboard - that can be done with duct tape (as I did) or by removing pins from the keyboard connector.4bpp wrote:Thanks. Am I correct in the understanding that I'm already in the clear if I only isolate pin 27 one way or another? (In case of doubts or second thoughts, it seems easier to reconnect one signal wire than three...)nitrocaster wrote: I updated the top post with the link.
For those who interested in buying X220/X230 FHD kit: Read this before sending me a PM!
X230: i7-3520M | 16GB RAM | 512GB M.2 Micron M600 | LG LP125WF2-SPB4 FHD IPS | 9c Li-Ion | Win8.1 Pro 64
X230: i7-3520M | 16GB RAM | 512GB M.2 Micron M600 | LG LP125WF2-SPB4 FHD IPS | 9c Li-Ion | Win8.1 Pro 64
Re: Installing classic keyboard into X230 with EC firmware mod
First of all, I am very much impressed by the deep level reverse engineering that was necessary to decipher the firmware and to find all keymaps.
Is the removal of the lenovo battery authenticity check included in the patch for the EC firmware that is in the wiki? If not, could it be included?
Is the removal of the lenovo battery authenticity check included in the patch for the EC firmware that is in the wiki? If not, could it be included?
using an X220 (i3->i5->i7, hopefully soon FHD IPS), an X41 (SSD via (m)sata-Mod, IPS, ~100Wh custom battery);
playing with an T430u(buntu), storing a T22, X41t, T42, R61, T61p;
and taking care of the T420s (FHD IPS) of my wife
playing with an T430u(buntu), storing a T22, X41t, T42, R61, T61p;
and taking care of the T420s (FHD IPS) of my wife
-
nitrocaster
- Junior Member

- Posts: 400
- Joined: Fri Mar 04, 2016 8:38 am
- Location: Moscow, Russia
Re: Installing classic keyboard into X230 with EC firmware mod
Fuse F5 does not protect against 4 amps being sent through the keyboard connector. And so it wont blow, fortunately for backlit keyboards.hamish wrote: I dont think you need to isolate any pins, I have just re-examined the schematics and can see that the Fuse F5 is protecting against that short circuit. This fuse will blow the first time the laptop is turned on with the new keyboard and the short will stop.
Parts marked with DY are intended for engeneering version and are not installed in production version.hamish wrote: While I was looking at the schematics, I noted that there were a very large number of optional parts in that area, most of them are not populated with any given option. It looks like they have populated "case2" in every engineering stage since Design Validation. To make it easier to see, I re-drew that part of the schematic (schematic) and then went and disassembled my x230 to confirm which parts were populated (close up of keyboard area)
For those who interested in buying X220/X230 FHD kit: Read this before sending me a PM!
X230: i7-3520M | 16GB RAM | 512GB M.2 Micron M600 | LG LP125WF2-SPB4 FHD IPS | 9c Li-Ion | Win8.1 Pro 64
X230: i7-3520M | 16GB RAM | 512GB M.2 Micron M600 | LG LP125WF2-SPB4 FHD IPS | 9c Li-Ion | Win8.1 Pro 64
-
emeraldgirl08
- ThinkPadder

- Posts: 1759
- Joined: Sun Mar 01, 2009 6:59 pm
- Location: Window Rock, Arizona
Re: Installing classic keyboard into X230 with EC firmware mod
FTFYStefanKo wrote:
Is the removal of the lenovo battery authenticity check included in the patch for the EC firmware that is in the wiki? If not, could it be included? Pretty please!
I hope so too! If an easy to use software tool that eliminates or bypasses the authenticity check is developed and released I plan on replacing my X220 with an X230.
Thinkpad X230 | Lenovo Yoga Tablet 2 | mATX Haswell Desktop
Re: Installing classic keyboard into X230 with EC firmware mod
Oh, so they're connected to some other grounded pin on the keyboard side? (I thought the problem was just that the keyboard connects 25, 27 and 29 to each other, thereby shorting 25/29 to the GND at 27, for some reason...)nitrocaster wrote:There's nothing to do with pin 27. You need to disconnect pins 25 and 29 from the keyboard - that can be done with duct tape (as I did) or by removing pins from the keyboard connector.4bpp wrote: Thanks. Am I correct in the understanding that I'm already in the clear if I only isolate pin 27 one way or another? (In case of doubts or second thoughts, it seems easier to reconnect one signal wire than three...)
Anyway, I'll try what you said. I'm still waiting for the X220 keyboard I ordered to arrive (so I can't quite see for myself yet), but do you think the location to apply duct tape to is fairly obvious once you take it apart? (Some contact just being held together with pressure...?)
Re: Installing classic keyboard into X230 with EC firmware mod
When creating the W530 bios iso, I get the following make error:
Any ideas for why?
Code: Select all
./slice.insert w530.G4HT39WW.img.enc.slice w530.G4HT39WW.img.enc w530.G4HT39WW.s01D5200.FL2
+ cp --reflink=auto w530.G4HT39WW.s01D5200.FL2.orig w530.G4HT39WW.s01D5200.FL2
+ dd status=none if=w530.G4HT39WW.img.enc bs=196608 count=1
+ dd status=none conv=notrunc bs=5242880 seek=1 of=w530.G4HT39WW.s01D5200.FL2
sed -e "s%__FL2%`mdir -/ -b -i g5uj28us.iso.orig@@71680 |grep FL2 |cut -d/ -f3-`%; s%__DESC%`cat g5uj28us.iso.orig.desc`%" autoexec.bat.template >g5uj28us.iso.bat
Total number of sectors (64195) not a multiple of sectors per track (32)!
Add mtools_skip_check=1 to your .mtoolsrc file to skip this test
./slice.insert w530.G4HT39WW.s01D5200.FL2.slice w530.G4HT39WW.s01D5200.FL2 g5uj28us.iso
+ cp --reflink=auto g5uj28us.iso.orig g5uj28us.iso
+ dd status=none if=w530.G4HT39WW.s01D5200.FL2 bs=12718080 count=1
+ dd status=none conv=notrunc bs=3628544 seek=1 of=g5uj28us.iso
mcopy -o -i g5uj28us.iso@@71680 g5uj28us.iso.bat ::AUTOEXEC.BAT
Total number of sectors (64195) not a multiple of sectors per track (32)!
Add mtools_skip_check=1 to your .mtoolsrc file to skip this test
Makefile:158: recipe for target 'g5uj28us.iso' failed
make: *** [g5uj28us.iso] Error 1Current Thinkpads: W530 (functional classic keyboard mod), X301, T61, T60, T43, T23, 600X, 770
Other: mk5 Toughbook cf-19, mk1 Toughbook cf-53
Other: mk5 Toughbook cf-19, mk1 Toughbook cf-53
-
nitrocaster
- Junior Member

- Posts: 400
- Joined: Fri Mar 04, 2016 8:38 am
- Location: Moscow, Russia
Re: Installing classic keyboard into X230 with EC firmware mod
I made a 2-picture manual - see here.4bpp wrote: Anyway, I'll try what you said. I'm still waiting for the X220 keyboard I ordered to arrive (so I can't quite see for myself yet), but do you think the location to apply duct tape to is fairly obvious once you take it apart? (Some contact just being held together with pressure...?)
For those who interested in buying X220/X230 FHD kit: Read this before sending me a PM!
X230: i7-3520M | 16GB RAM | 512GB M.2 Micron M600 | LG LP125WF2-SPB4 FHD IPS | 9c Li-Ion | Win8.1 Pro 64
X230: i7-3520M | 16GB RAM | 512GB M.2 Micron M600 | LG LP125WF2-SPB4 FHD IPS | 9c Li-Ion | Win8.1 Pro 64
Re: Installing classic keyboard into X230 with EC firmware mod
It looks like mtools must have changed between versions. Which version are you using? I've got 4.0.18 installed.brchan wrote:When creating the W530 bios iso, I get the following make error:
Any ideas for why?Code: Select all
. mcopy -o -i g5uj28us.iso@@71680 g5uj28us.iso.bat ::AUTOEXEC.BAT Total number of sectors (64195) not a multiple of sectors per track (32)! Add mtools_skip_check=1 to your .mtoolsrc file to skip this test Makefile:158: recipe for target 'g5uj28us.iso' failed make: *** [g5uj28us.iso] Error 1
Can you try running "MTOOLS_SKIP_CHECK=1 mcopy -o -i g5uj28us.iso@@71680 g5uj28us.iso.bat ::AUTOEXEC.BAT"
This is the very last command before the ISO image is complete, so if that command works, you could then test it.
(A simple boot test can be done using a virtual machine: "qemu-system-i386 -enable-kvm -cdrom g5uj28us.iso")
If it works with that setting, I can update the makefile to add it permanently
-
- Similar Topics
- Replies
- Views
- Last post
-
-
FS: X230 US keyboard (backlit) - $25, X230 screen panel - free
by systema » Mon May 08, 2017 8:57 am » in Marketplace - Forum Members only - 0 Replies
- 254 Views
-
Last post by systema
Mon May 08, 2017 8:57 am
-
-
-
X230T keyboard into X230?
by nycmaster » Sun May 28, 2017 11:54 am » in ThinkPad X230 and later Series - 1 Replies
- 123 Views
-
Last post by Thinkpad4by3
Sun May 28, 2017 12:00 pm
-
-
-
X220/X230 to flash or not to flash coreboot after FHD mod
by carcuevas » Sat Jan 14, 2017 7:14 am » in ThinkPad X200/201/220 and X300/301 Series - 22 Replies
- 3329 Views
-
Last post by jaspen-meyer
Fri Apr 14, 2017 9:34 am
-
-
-
X230 + UltraBase mod => USB 3.0 ?
by notik » Mon Jan 30, 2017 2:19 pm » in ThinkPad X230 and later Series - 3 Replies
- 936 Views
-
Last post by notik
Mon Feb 13, 2017 7:27 pm
-
Who is online
Users browsing this forum: TheMagicT410 and 1 guest



