I always wanted to have a wireless keyboard with touchpad. Preferably with Bluetooth.
My first idea was to purchase a second hand classical Thinkpad keyboard (wit trackpoint), hook it to Nordic nRF51822 and write BLE-HID firmware to it.
I have told this idea to one of my friends who is used to repair notebook computers and he gave me a Samsung notebook without LCD with broken mainboard (on which the official Hungarian Samsung service performed repair...).
It has a nice keyboard with backlight and a -hopefully- smooth trackpad.
Cheap nRF51822 based module with MIFA antenna and most IOs exposed
A broken Samsung ultrabook wo display
After separating the original keyboard's layers at the shift buttons and measuring continuity between the top and bottom traces it turned out that the keyboard and the shift column common (COL0) is broken. The tracks at the left shift seems to be corroded, so I assume that the reason of the dislemanting of the whole notebook was a water accident.
I almost decided to give up on this architecture (and move to a Thinkpad R60 keyboard with an nRF52840 module), but I got an idea to look after a similar keyboard with different layout and move the buttons to that.
In Hungary we use a lot weird accents, so the US keyboard is not suitable for us. Luckily I was able to buy a Spanish keyboard for 15 bucks which arrived safe before the christmas rush.
Aaaand the shift is functioning on this particular one!
I have just got a 100*100 montage from the Dirty, and one of the boards was this one.
This time no major fuckupness were made (or not detected yet). There is a messed up footprint around the touch power switching P FET: SV75 footprint were used instead of the SOT23, but I could get the part populated.
As you can see I have managed to mess up the design: the wrong footprint was used in the final version...
Conclusion: always print the gerbers to paper, and verify the footprint of the unverified critical components.
Or do not use components from vendors who is not capable of creating a datasheet for their product. Yes I have not been able to find mechanical dimensions for the YJ-14015 module. If you are smarter than me in finding this please let me know.
After googling about the ELAN microelectronics corp, I came across the following patchset submitted to the Linux kernel:
https://lwn.net/Articles/496137/ It turned out that the touchpad I2C interface is used as a I2C - HID interface. It is in the vanilia mainline now, so it seems to be a good starting point. Basically I will need to create an I2C - HID - BLE - HID converter.
I have also rerouted the board to align the MIFA antenna to the proper direction:
Also made some paper printouts to verify the physical dimensions:
The BLE module footprint had some problems, but fixed now. The rest of the connector verification waits to my PID controlled flat iron because removing the FPC connectors will require preheating what I do not really have ATM.
The notebook is equipped with a touchpad manufactured by Elan microelectornics Corporation. The board number is 2H214-14201 Rev B. The controller IC is Elan 339360-3100. I have found no information about them on the web. I might run a round with Elan in e-mail, but I do not really have big hopes about it.
I do not have schematic for the original mainboard but have one for an another similar Samsung Ultrabook with discrete graphics codenamed Miranda 13H-EXT.
The pinout of the touch connector is the following:
The KBC3_TCLK/TDATA goes to the superio/micom while the SMB3_CLK/DATA hooked to the PCH's SMBUS to the same one which connects the RAM slot's SPD eeproms. Unfortunately I have no luck powering up the board to boot (if I could not this conversion would be it's destination), so I could not run an I2C detect from Linux to see it is answering.
The KBC3_TCLK/TDATA interface I guess is a PS2. I will power up the board's P3.3V to see if it outputs the clock. PS2 differs from I2C so it would be tricky to interact with it. SMBUS would be better because it could (or should due the lack of free pins) share the same bus with the lipo battery gauge.