summaryrefslogtreecommitdiff
path: root/keyboards/handwired/MS_sculpt_mobile/readme.md
blob: d435b449fb0ff6d914067d75f84f3e4034f22352 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58

This is a way to take a Microsoft ergonomic bluetooth keyboard, and make it 
into a hard-wired keyboard running QMK. 

The keyboard is known under several different names:
Mobile Bluetooth 5000, Mobile 6000, Sculpt mobile, and Asus rebranded 

I had a stack of them,since they're cheap on ebay, travel well, and are just ergo enough. 

The ribbon cable is 1mm pitch, which is hard to hand solder. I bought a cheap set of 
"pitch adapter" boards https://www.amazon.com/Double-Sided-0-4mm-1-0-Adapter-60mmx38mm/dp/B00OK42118

Cut the original ribbon cable sockets off the bluetooth board using a razor, they're hard to desolder. 
They're also allow the cable to be inserted on top or bottom. 

If I was going to do it again, I'd make the MCU connection come out the top of the keyboard
and avoid the wires dangling out the bottom. 

As I was debugging the matrix, I started to get random failures. In desparation I tried a second MCU, 
but had the same problems. It turns out that the ribbon cable connections can get worn. Shave a
half millimeter off the end of the ribbon cable & the errors go away. 

My method for discovering the matrix was to set up a KEYMAP macro that included all pins. 
See MATRIX_TESTING_KEYMAP if you need it. Then set up a keymap that has all printable symbols
in the first 4 rows. test each key & record output. Then switch the printable symbols to the
bottom 4 rows & repeat. This was enough to show the matrix. 


The full original keymap for the sculpt is 
        A       B       C       D       E       F       G       H   --->  
0       b       n       m       ,       .       /                
1       g       h       "                                          
2       7       8       9       0       Del             PgUp     
3       p       [       ]       \                                
4       y       u       i       o                                      
5       ~       -       +=      j       k       l       ;       5
6       a       s       d       q       w       e,      Up      left    
7       F7      F8      F9      F10     F11     F12             f
    			
----->  I       J       K       L       M       N       O       P       Q       R       
0               Caps                                                            FN      
1                       Vol+    mute    Rctl            vol-    pgdn    LCTL            
2                               Rshift                          LShift                  
3                       Ralt                            LAlt                    
4                                               LGUI                                            
5       6       bakspc  1       2       3       4       F4      F5      F6                      
6       Down    right                           spc     F1      F2      F3      tab             
7       r       t       z       x       c               v       enter   Esc                     

This works with 18 cols + 8  rows on a Teensy++, or Arm based Teensy. 

The Astar mini has all pins exposed , so you can do 18x8
If you want a speaker, LEDs &etc, you'll need to free up a pin.  I recommend joining columns
R and L to the same pin. 

Building - add ASTAR=1 to the compile line or leave out for teensy2++