Hike News
Hike News

【CLOSED】【GB】Alt Controller Board for HHKB

类型: GB
作者: hasu
发布时间: 2014-03-29 11:25:37
更新时间: 2015-05-01 00:48:56
原链接: https://geekhack.org/index.php?topic=56494.0


Now this GB is closed and you can buy this from my new artisan service thread.
https://geekhack.org/index.php?topic=71517.0
I’d distribute my extra controller boards to mitigate expense of development(and get a beer :D it is gas/lube to me when coding and soldering).
https://geekhack.org/index.php?topic=12047.0

PCB design files and firmware source code ara available here.
https://github.com/tmk/HHKB_controller
https://github.com/tmk/tmk_keyboard/tree/master/keyboard/hhkb
Sample firmware is loaded to the board for test purpose, but you are required to learn how to compile and load your own configuration.
Post here if you have question or suggestion about this distribution.
UPDATE:
2015/03/29 changed price: $39->$40
2015/04/04 all of listed orders were invoiced.
2015/04/12 added keymap editor for BT controller. See MANUAL/Keymap section below.
2015/05/01 closed this GB and moved to artisan service.
RULE:
0. Read this post carefully and ask me if you have a question before palce a order.

  1. PM(Personal Message) and let me know which controller you need(USB or BT, Pro2 or JP), your location/country and email address for notification(optional).
  2. When the boards become available you will get PM from me. You don’t have to pay until then.
  3. If no response to my PM within three days you will be postponed/removed from the list.
    CONDITION:
    Price:
    $40 + $8(shipping) = $48USD in total [for USB Controller]
    $80 + $10(shipping) = $90USD $75 + $9(shipping) = $84USD in total [for Bluetooth Controller]
    Payment: via Paypal
    Shipping: Registered Small Packet with tracking and insurance
    DISCLAIMER:
    USE AT YOUR OWN RISK. I can not be liable for any damage.
    NO FRIENDLY CUSTOMER SUPPORT. You are required to teach yourself first.
    NOT PROFESSIONAL JOB. I’m not a professional.
    NOT LEAD FREE. I use leaded solder to assemble.
    CONTROLLER VARIANTS:
    USB Pro2 - you can order
    USB JP - you can order
    Bluetooth Pro2 - you can order
    Bluetooth JP - read

More
Bluetooth JP Controller is possible electronically but to install the board you have to overcome its case problem.
See this photo, black one is JP model while white is Pro2. As you can see JP bottom case has no hole for switch and LEDs. To install the controller into JP 1) you need to drill bottom case to make holes or 2) you can use Pro2 bottom half with JP top half as the photo indicates.
http://i.imgur.com/c6Rcxff.jpg
Bluetoothcontroller can be used as USB controller too, see this post.
https://geekhack.org/index.php?topic=56494.msg1595705/#msg1595705
Capabilities: TBD
Limiations: TBD
NOTE:

ALL REVISIONS HAS NO ERRATA FOR USB CONTROLLER
Rev.A: 2013/06
Rev.B: 2014/03
Rev.C: 2014/08
Rev.D: 2014/10 Fix for Bluetooth https://geekhack.org/index.php?topic=56494.msg1541485/#msg1541485
Rev.E: 2014/11 Fix for Bluetooth https://geekhack.org/index.php?topic=56494.msg1556749/#msg1556749
Rev.F: 2014/12
Rev.F(batch2): 2015/01
Rev.G: 2015/03 https://geekhack.org/index.php?topic=56494.msg1675635/#msg1675635
MANUAL:
Firmware/Keymap
More

Keymap Editor
You can try HHKB keymap editor first. You can download pre-build firmware after editing your keymap. It use a bit old and not full functional firmware but it will work.
http://www.tmk-kbd.com/tmk_keyboard/editor/index.html

Build firmware
To edit your keymap and build firmware check these documents. To use some functions and tweak keymap thoroughly you need to build yourself.
https://github.com/tmk/tmk_keyboard
https://github.com/tmk/tmk_keyboard/blob/master/doc/keymap.md
https://github.com/tmk/tmk_keyboard/blob/master/doc/build.md
https://github.com/tmk/tmk_keyboard/wiki/FAQ
In short,
Code: [Select]

$ cd keyboard/hhkb
and
Code: [Select]

make -f Makefile
for USB
Code: [Select]

$ make -f Makefile.rn42
for BT
Installation
More

  1. Unscrew three bolts on bottom and open case.
  2. Unscrew bolt at top left on board and unmate connector to remove original board.
    Note that you don’t need any tool to unmate. See this.
  3. Mate connector of Alt board and screw.
    For Bluetooth: Connect Lipo battery to board. Battery should be fixed with double sided adhesive tape or something but too strong stickyness may deform and damage battery when you remove it.
  4. Close case and scew bolts.
    Bluetooth Controller
    More


BT Switch
This turn on Bluetooth function of controller and switch keyboard into BT mode. When this switch is off keyboard works in USB mode.
BT LED
It lights red when Bluetooth is connected to host, blinks red(once per second) when waiting for connection and blinks red(10 times per second) when Bluetooth module is config mode.
Power LED
When keyboard are powered with USB it lights green if battery is fully charged or ligths red if charging. And it also lights red to alarm when not powered and battery is low.
Charging with USB
Lipo battery can be charged when keyboard is powered with USB cable. You can power it with USB port on PC and 5V USB power adapter. Charging battery with low voltage takes long time or can’t charge full. Note that cheap or unpowered USB hub may not be able to supply enough power.
Paring
You can connect keyboard with OS specific method during red BT LED is blinking. You can make up to eight pairing with different hosts, according to manual of RN-42.
http://en.wikipedia.org/wiki/Bluetooth/#Pairing_and_bonding
Auto Connect
Keyboard is automatically connected to host once pairing process is done. Keyboard is always connected host to which keyboard connected last time.
This means you can’t connect keyboad to other hosts when the last host are in reachable range. In this case you will have to make keyboard into paring mode forcibly using magic command and redo pairing process.
Magic commands
Prefix of magic command are LShift + RShift.

  • i displays Bluetooth information on hid_listen console.
  • b displays battery voltage on console.
  • Delete enter/exits Bluetoot module RN-42 config mode on console. See RN-42 manual.
  • Scroll Lock initialize module with TMK default configuration.
  • p put keyboard into paring mode focibly.
  • u switches between USB and Bluetooth mode.
    RN-42 config mode
    You need hid_listen to access this mode. You can change configuration of Bluetooth module with this. Don’t change baud rate! Never! Firmware will lose access to the modlue and you need to communicate to the module with 3.3V UART adapter hardware to fix this problem.
    See this for configuration commands.
    http://ww1.microchip.com/downloads/en/DeviceDoc/bluetooth_cr_UG-v1.0r.pdf
    Bluetooth Battery
    More

BT Controller doesn’t include battery. I can recommend Sparkfun Lipo battery(850mA or 1000mA) but you will be able to find proper batteries at many sites on the net.
You need to use 3.7V Lithium Ion Polymer battery with JST PH 2pin connector and battery protection circuit. Battery space inside HHKB is around 54mm x 50mm and its height is 7mm(or 8mm).
https://geekhack.org/index.php?topic=56494.msg1597883/#msg1597883
LIPO BATTERY IS VERY DANGEROUS, TAKE EXTRA CARE OF YOUR SAFETY AND PROPERTY. For your safety check this.
https://learn.adafruit.com/li-ion-and-lipoly-batteries
https://www.sparkfun.com/tutorials/241
WAITING LIST:
If you want to add your name on the list, PM(Personal Message) and let me know which controller you need(USB or BT, Pro2 or JP), your location/country and email address for notification(optional).
Read this post carefully and ask me if you have a question.

More

For USB board
Quote No back order.
Currently lead time is very short. This list won’t be updated.(04/20)
For BT board
Quote No back order.
Currently lead time is very short. This list won’t be updated.(04/20)
PROCESSING STATUS:
Quote Name List PM Res Paid Shipped Delivered Rev


masticasesos 12/04 01/06 —– —– —– —– -
echo0 10/13 01/06 01/07 01/07 01/07 01/13 F
mashby 10/14 01/06 —– —– —– —– -
HoffmanMyster 10/14 01/06 01/08 01/08 01/08 01/17 F
Vizir 10/22 01/06 01/07 —– —– —– -
jahkeup 10/25 01/06 01/07 01/07 01/07 01/24 F
jaemzp 11/03 01/10 01/12 01/12 01/13 02/01 F
cooldiscretion 11/14 01/06 01/07 —– —– —– -
woodada 11/14 01/08 01/08 01/08 01/08 01/26 F
kaesve 11/16 01/08 01/09 01/09 01/09 01/14 F
osxoep 11/16 01/08 01/10 01/10 01/13 01/19 F
esoomenona 03/30 01/30 01/31 01/31 02/02 02/10 Fb
Matt3o 12/05 01/30 01/30 01/30 02/02 03/04 Fb
argcargv 10/11 01/30 01/30 —– —– —– -
naasfu 10/18 01/30 02/01 02/01 02/02 02/10 Fb
bazh 10/30 01/30 01/30 —– —– —– -
yicaoyimu 11/16 02/04 02/04 02/04 02/04 02/13 Fb
Elocutive 11/16 02/04 02/04 —– —– —– -
Synjin 11/16 02/04 02/04 02/04 02/04 02/15 F
Jakes 11/20 02/04 02/05 02/05 02/05 02/18 F
tpc2084 01/16 02/04 02/04 02/04 02/04 02/13 F
amzee 11/17 02/15 02/18 —– —– —– -
shawn24 11/20 02/15 02/15 02/15 02/23 03/04 F
shawn24 11/20 02/22 02/22 02/22 02/23 03/04 Fb
rssll 11/18 02/18 —– —– —– —– -
tzskp1 12/01 02/22 02/22 02/22 02/23 02/24 F
frontier 12/03 02/22 —– —– —– —– -
IonutZ 12/19 02/22 03/10 03/10 03/16 03/28 Fb
Vizir 10/22 02/22 02/22 —– —– —– -
deci 09/20 02/22 02/22 02/22 02/23 03/21 Fb
rdev5 12/04 02/22 —– —– —– —– –
x1a0 12/09 02/22 02/26 02/26 02/27 03/07 Fb
jmolino 12/29 02/27 03/06 03/10 03/10 03/25 Fb
P233 01/10 02/27 02/27 02/28 03/02 03/07 F
tinymao 01/13 02/27 02/27 02/27 02/27 03/04 F
MJ45 01/16 02/27 02/27 03/01 03/02 03/09 F
Cakered 03/07 03/07 03/07 03/07 03/09 03/13 Fj
yankez001 03/13 03/13 03/13 03/13 03/13 03/16 Fj
TheOtherAdam 01/16 03/27 03/27 03/27 03/27 04/10 G
exitfire401 01/16 03/27 03/27 —– —– —– –
trizkut 01/16 03/27 03/27 03/27 03/27 04/06 G
Finn 01/17 03/27 03/27 03/27 03/30 G
rjradical 01/21 03/27 03/27 03/28 03/30 04/11 G
RoastPotatoes 02/11 03/27 03/27 03/27 03/30 04/07 G
byker 01/03 03/29 03/29 03/29 03/30 04/09 Fb
Vizir 01/07 03/29 03/29 03/29 03/30 04/08 Gb
cooldiscretion 11/14 03/29 —– —– —– —– –
coolbho3k 01/16 03/29 —– —– —– —– –
yaro_b 02/11 03/29 03/29 03/29 03/30 04/05 G
steve.v 02/16 03/29 03/29 03/29 04/01 04/09 G
evera 02/21 03/29 —– —– —– —– –
beestingza 02/23 03/29 04/02 G
pexon 02/23 03/29 —– —– —– —– –
whodevil 02/27 03/29 03/30 03/30 03/30 04/10 G
duq 03/03 03/29 04/01 04/01 04/01 G
snakeyes 03/04 03/29 03/30 03/30 04/01 G
Synjin 01/16 03/29 03/29 03/29 03/30 G
btctopre 03/10 04/01 04/01 04/01 04/01 G
kvictor 03/11 04/01 —– —– —– —– –
JanitorJoe 03/22 04/01 04/01 04/01 04/02 04/11 G
Bucake 03/25 04/01 04/02 04/02 04/03 G
posmicanomaly 03/28 04/01 04/01 04/01 04/01 04/09 G
moralles 01/17 04/01 04/01 04/01 04/01 Gb
Sygaldry 12/10 04/01 04/03 04/04 04/06 Gb
tuantruong 01/27 04/01 —– —– —– —– –
FrostyToast 02/21 04/02 04/03 04/04 04/06 04/11 Gb
redskull 03/06 04/02 —– —– —– —– –
darkshu 03/13 04/02 04/02 04/02 04/03 04/11 Gb
xorkbd 04/02 04/03 04/03 04/03 04/06 04/07 G
braidn 03/15 04/04 04/09 Gb
Greed 03/17 04/04 04/04 04/04 04/06 Gb
Pemdas 03/21 04/04 04/04 04/04 04/06 Gb
shrubkeys 03/28 04/04 04/07 04/11 Gb
moda38 03/28 04/04 04/04 04/05 04/06 Gb
jackiecanev2 04/03 04/04 04/04 04/04 04/06 Gb
kubatyszko 04/04 04/04 04/04 04/05 04/06 04/07 Fj
Sherlock 04/04 04/04 04/06 04/06 04/06 Gb
Belfong 04/04 04/04 04/05 —– —– —– –
jeff95723 04/07 04/07 04/07 04/07 04/07 Gb
yomammary 04/09 04/09 04/09 04/09 04/10 Gb
RoboKrikit 04/09 04/10 04/10 04/10 04/10 G
LaPoune 04/10 04/10 04/10 04/12 04/15
justinyhuang 04/11 04/11 04/13 —– —– —– –
CalvinW 04/12 04/12 04/12 04/12 04/15
SeeThruHead 04/12 04/12 —– —– —– —– –
ryukojiro 04/13 04/13 04/17 04/17 04/20 G/*
Oatburner 04/14 04/14 04/14 04/14 04/15 G
tinymao 04/17 04/17 04/17 04/17 04/20 Gb
xiaosilent 04/17 04/17 04/17 04/17 04/20 Gb
matobaa 04/17 04/17 04/17 04/17 04/20 G
thefebruaryman 04/18 04/18 04/18 04/18 04/20 G


Name List PM Res Paid Shipped Delivered Rev

,