geekhack

geekhack Projects => Making Stuff Together! => Topic started by: Strelok on Wed, 20 February 2013, 23:57:49

Title: [Updated] Wireless GH60
Post by: Strelok on Wed, 20 February 2013, 23:57:49
Progress:[████1░░░░2░░░░3░░░░4]
1:Conceptualize
2:Prototype
3:Revise
4:Produce (whatever that ends up meaning)


What we're working on here is a collaborative effort to make the GH60 wireless for users that want it. A wireless 60% board would be small, portable, be able to connect to phones and tablets, and most importantly, there wouldn't be a wire running across your desk ruining the Feng Shui.

Originally I was thinking it would be pretty easy to just stick an Arduino and a battery in the case and everything would automagically work, but agodinhost has actually figured out how to do it. komar007 has made some revisions to the GH60 to provide for expansion boards like this one, but we still need to know what people want.

If you're interested in the project, please give your input on what you would like to see


These are the options various options available to us according to agodinhost:

1) GH60 current version + usb charger + 5v booster + bluetooth:
(http://dl.dropbox.com/u/94589680/option-1.PNG)
* 5v, running @16Mhz
+ easy to build
- requires a minor GH60 PCB review
- some wiring required
- need someway to fix each module inside the case
- not modular at all

2) GH60 current version + usb charger + bluetooth:
(http://dl.dropbox.com/u/94589680/option-2.PNG)
* 3.3v, running @8Mhz (the firmware need to be tested at this speed)
+ uses fewer components
+ easier option to build
+ cheaper option to build
- requires a minor GH60 PCB review
- some wiring required
- need someway to fix each module inside the case
- not modular at all

3) Shield for 1 OR 2
(http://dl.dropbox.com/u/94589680/option-3.PNG)
+ no wiring required
+ shield fixed by connectors or sockets
+ so so modular
- not so easy to build, requires a new PCB for the shield itself
- requires a minor GH60 PCB review
- thicker (3 stacks)

4) GH60 v2 + usb charger + 5v booster + Teensy 2.0 + bluetooth AND
5) GH60 v2 + usb charger + Teensy 2.0 + bluetooth:
(http://dl.dropbox.com/u/94589680/option-4.PNG)
(http://dl.dropbox.com/u/94589680/option-5.PNG)
+ easy to build
+ cleaner matrix design
+ modular
- requires a major GH60 PCB review
- some wiring required
- need someway to fix the modules inside the case

6) GH60 v2 + Shield - usb charger + 5v booster + Teensy 2.0 + bluetooth AND
7) GH60 v2 + Shield - usb charger + Teensy 2.0 + bluetooth:
(http://dl.dropbox.com/u/94589680/option-6.PNG)
(http://dl.dropbox.com/u/94589680/option-7.PNG)
+ cleaner matrix design
+ no wiring required
+ shield fixed by connectors or sockets
+ modular
- requires a major GH60 PCB review
- not so easy to build, requires a new PCB for the shield itself
- thicker (3 stacks)

8 ) GH60 v2 + Complete custom controller PCB.
+ cleaner matrix design
+ cleaner controller design
+ no wiring required
+ controller fixed by connectors or sockets
+ smaller
+ modular
- requires a major GH60 PCB review
- hard to build, requires a new PCB for the controller itself
- slower option (more items to design)
- more expensive option
- more error prone
Title: Re: Wireless GH60
Post by: WhiteFireDragon on Thu, 21 February 2013, 00:49:11
Controller, firmware, hardware that transmits info, integrating all this on the PCB, and a receiver on the other end. Definitely won't happen on this first round of GH60.
Title: Re: Wireless GH60
Post by: Strelok on Thu, 21 February 2013, 01:54:54
Controller, firmware, hardware that transmits info, integrating all this on the PCB, and a receiver on the other end. Definitely won't happen on this first round of GH60.

I assumed that, I was thinking more along the lines of Arduino Micro + Buetooth Module + batteries.
Title: Re: Wireless GH60
Post by: mkawa on Thu, 21 February 2013, 13:01:50
the major problem is powering the board via batteries. a bluetooth tx/rx chip is possible to add via the hackerpads, but it's not clear that you could hook a battery up to the VCC hackerpad and not fry something
Title: Re: Wireless GH60
Post by: mkawa on Thu, 21 February 2013, 13:02:38
regardless, this would probably requiring designing a daughterboard and a custom casing to accomodate the extra board
Title: Re: Wireless GH60
Post by: TDub on Thu, 21 February 2013, 13:58:41
Not entirely in context since the GH60 already has a controller, but I saw this on kickstarter and thought it might be interesting for building a wireless keyboard project:

http://www.kickstarter.com/projects/kenburns/tinyduino-the-tiny-arduino-compatible-platform-w-s?ref=category

It has an optional expansion to work with batteries, which might eliminate the battery complexity that everyone seems to dread.
Title: Re: Wireless GH60
Post by: Strelok on Thu, 21 February 2013, 15:18:17
I've been doing some research and apparently the real issue is finding something both small and capable of being a USB host, rather than a USB device.
Title: Re: Wireless GH60
Post by: hasu on Fri, 22 February 2013, 11:11:19
You need radio transparent case, Lipo battery, charger chip, and bluetooth module which supports UART or SPI. You'll be able to connect module to GH60 spare pins. Then rest of work is only software job.

Or I guess you can just take apart this and push its guts into GH60 case if it has enough room.
http://handheldsci.com/kb
Title: Re: Wireless GH60
Post by: mashby on Fri, 22 February 2013, 12:11:10
When I got back into mechanical keyboards, I really thought I'd miss having a wireless keyboard. Surprisingly, it hasn't been that big of a deal -- which is probably due to the cable I got from Mimic.  :p

That being said, it would be nice to have the option to be wireless, so I'm curious where this going. Very interested.
Title: Re: Wireless GH60
Post by: Aleksander on Fri, 22 February 2013, 17:59:34
I was planning on trying to do a wireless conversion with THIS (https://www.sparkfun.com/products/11378)
Is connects as bluetooth HID and accepts serial HID stream from the controller in the keyboard.. so some coding on the keyboard-end, the thing I linked to and a LiPo battery... at least that is my theory... :)
Title: Re: Wireless GH60
Post by: Strelok on Fri, 22 February 2013, 23:05:35
I was planning on trying to do a wireless conversion with THIS (https://www.sparkfun.com/products/11378)
Is connects as bluetooth HID and accepts serial HID stream from the controller in the keyboard.. so some coding on the keyboard-end, the thing I linked to and a LiPo battery... at least that is my theory... :)

I'm looking at a similar Bluetooth HID SMD, but Arduino branded, connected to an Arduino Micro. I've used microcontrollers before but not since highschool. It's looking like the complicated part is going to be connecting the keyboard to the controller as a USB device, since most controllers aren't naively USB Hosts. Some people I'm talking to have recommended removing the controller from the keyboard and taking switch input directly so remove a layer abstraction, which would potentially be simpler and more power efficient. I may also be able to reverse engineer Komar's firmware for the switch input, with permission of course.
Title: Re: Wireless GH60
Post by: mkawa on Fri, 22 February 2013, 23:26:44
listen to hasu. you'll have much easier access to the SPI pins than you will to the USB pins. the trickiest thing will be switching between charging and voltage supply modes on the lipo's supporting circuit without frying anything (assuming you can supply at all from the broken out vcc and gnd pins that komar supplies)
Title: Re: Wireless GH60
Post by: Strelok on Fri, 22 February 2013, 23:37:57
You need radio transparent case, Lipo battery, charger chip, and bluetooth module which supports UART or SPI. You'll be able to connect module to GH60 spare pins. Then rest of work is only software job.

Or I guess you can just take apart this and push its guts into GH60 case if it has enough room.
http://handheldsci.com/kb

So what you're saying is that I can, take the raw SPI output from keypresses to the Arduino, and write firmware send that via Bluetooth to the computer, right?
Title: Re: Wireless GH60
Post by: mkawa on Sat, 23 February 2013, 00:46:22
neg.

atmega <-> SPI <-> bluetooth PHY

when powered but not plugged into usb, the teensy firmware writes to the bluetooth phy. otherwise, it writes to usb. you can also pull other cool tricks like clocking the avr down on battery power, etc :D
Title: Re: Wireless GH60
Post by: hasu on Sat, 23 February 2013, 03:49:55
Sparkfun module Aleksander linked to looks like nice and it can be controlled via UART from ATMega on GH60.

I also tried bluetooth mod  on my HHKB with bluegiga WT12 connected via UART.
But I'm not using this anymore, there are many problems to solve.
Power management(saving/charging) and Bluetooth pairing are difficult part for me.

Just FYI. Don't use this for your design because this is just experimental attempt without any document.
circuit:
https://raw.github.com/tmk/tmk_keyboard/master/keyboard/hhkb/doc/Bluetooth_img/BT_circuit.jpg
source code:
https://github.com/tmk/tmk_keyboard/tree/master/keyboard/hhkb
result:
Title: Re: Wireless GH60
Post by: mkawa on Sat, 23 February 2013, 08:48:13
the difficulty with the sparkfun module is the one i mentioned earlier (and you mention again :P). the pinout and circuit is inappropriate for powering/charging. sparkfun has other modules that are just mounted SMD bluetooth PHYs that are better suited for the purpose, but have to be combined with a "smart" battery board of some kind (which i don't see on their site, unfortunately :()
Title: Re: Wireless GH60
Post by: mashby on Sat, 23 February 2013, 09:38:49
This makes me wish I hadn't thrown away my Apple BT keyboard after I broke it. Would have been interesting to source out just the BT and battery parts.

Don't know if it'd have been of any use and I would have had to send it to one of you to actually do anything with it since I'm a newb at this stuff.

Our course now that I think about it, I don't know that this would be replicable. Step 1: buy a $70 Apple keyboard!  :eek:
Title: Re: Wireless GH60
Post by: mkawa on Sat, 23 February 2013, 10:46:37
yah, the raw parts are cheaper than that :P

so is making a small run of the pcbs required. the trick is just picking the battery circuit components, as before. most bluetooth phys i've seen have no trouble with either uart or spi.
Title: Re: Wireless GH60
Post by: agodinhost on Fri, 01 March 2013, 17:08:05
I saw here (http://shiggyenterprises.wordpress.com/2012/10/25/creating-your-own-keyboard-from-scratch-bluetooth-hid-and-key-layout-translation/) that when using bluetooth it would limit the keyboard to a 6KRO (assuming normal hid, no special drivers at the OS side).

It's pretty easy to connect this bluetooth module (http://www.ebay.com/itm/30ft-Wireless-Bluetooth-RF-Transceiver-Module-serial-RS232-TTL-HC-05-for-arduino-/180957186752?pt=LH_DefaultDomain_0&hash=item2a21e38ac0) to teensy (assuming that we still have free pins). It uses normal tx/rx to communicate with the atmega and this hidapi (http://www.signal11.us/oss/hidapi/) library would help to avoid headaches.

And regarding the lipo charger sparkfun sells this (https://www.sparkfun.com/products/10217) open source module ...

It's a pretty cool project but I think that it would require more time updating the firmware than the hardware (I'm reeeeeeeeeeeealy slow writing C/C++ code).

PS: this bluetooth module that I linked above seems to be the cheapest one out there, BC whatever - it's programmable too but forget about it, the compiler price is absurd.
Title: Wireless GH60
Post by: mkawa on Mon, 04 March 2013, 10:32:25
that bluetooth board looks like it only has rs-232. i don't think the atmega komar used has native rs-232, only spi and i2s
Title: Wireless GH60
Post by: mkawa on Mon, 04 March 2013, 10:36:14
the sparkfun lipo charger module might be interesting, but i suspect we'll either need to buy them and pull the usb plugs off or clone the board design to properly subsid to our board and on top of that break the 5v signal from the usb on komar's board to route through the socket the lipo board plugs into. overall, non-trivial
Title: Re: Wireless GH60
Post by: agodinhost on Mon, 04 March 2013, 15:24:13
that bluetooth board looks like it only has rs-232. i don't think the atmega komar used has native rs-232, only spi and i2s

Native rs-232? It uses normal tx-rx, we will need a logic level converter (https://www.sparkfun.com/products/8745?) (to convert to and from 5 and 3.3v) but I did already saw a few guys using the module without it.
The Leonardo board uses the same atmega32u4 chip used on Teensy 2.0.

This (http://captainunlikely.blogspot.co.uk/2012/05/bambilight-cheap-bluetooth-ambilight.html) project uses this very same module.
Title: Re: Wireless GH60
Post by: agodinhost on Mon, 04 March 2013, 15:56:06
the sparkfun lipo charger module might be interesting, but i suspect we'll either need to buy them and pull the usb plugs off or clone the board design to properly subsid to our board and on top of that break the 5v signal from the usb on komar's board to route through the socket the lipo board plugs into. overall, non-trivial

Agree, we will have to have the module - otherwise we will have to make our own arduino+charger module (hmmm - I like this idea too). This module is simple - no big deal on it (take a look at the schematic (https://www.sparkfun.com/products/10217)) it uses only 6 components.

Sorry, I forgot that the teensy operates at 5v (not at 3.3v) - so it will require a 5v booster (https://www.sparkfun.com/products/10968) too.

Something like this:
1) Remove teensy usb connector
2) PC USB goes to the charger USB
3) The lipo goes to the charger input
4) The charger output is connected to the 5v booster input
5) The booster output goes to the teensy's 5v and gnd
6) The charger D+ and D- goes to teensy D+ and D-.

There is a second module with the charger AND the booster in only one board, here (https://www.sparkfun.com/products/11231).

I don't have none of this modules at here - I do have only the charger ic and the 5v booster (I'm a poor bastard - always looking for cheap alternatives) but I wanna give a try, just don't push me, I'm slow!

I did used another simpler charger IC before (maxim) but it's out of stock and seems it will not be for sale anymore.

I just found the same 5v booster (http://www.ebay.com/itm/1-5V-5V-500mA-DC-DC-Converter-Step-Up-Boost-Module-USB-Charger-MP3-MP4-Ph-/370670424027?pt=LH_DefaultDomain_0&hash=item564dadcfdb) on ebay, less than 2 bucks!!!
>>UPDATED<< This  (http://www.ebay.com/itm/1pcs-DC-DC-Converter-Step-Up-Boost-Module-1A-3V-to-5V-New-/230911409078?pt=LH_DefaultDomain_0&hash=item35c3647bb6)5v booster is ready to be used (the one that I've linked above will require to remove the usb connector)
The USB charger (http://www.ebay.com/itm/New-5V-Mini-USB-1A-Lithium-Battery-Charging-Board-Charger-Module-IN-4V-8V-/400353508118?pt=LH_DefaultDomain_0&hash=item5d36edbb16) on ebay, US$ 1.55
Title: Re: Wireless GH60
Post by: mkawa on Mon, 04 March 2013, 16:32:19
that bluetooth board looks like it only has rs-232. i don't think the atmega komar used has native rs-232, only spi and i2s

Native rs-232? It uses normal tx-rx, we will need a logic level converter (https://www.sparkfun.com/products/8745?) (to convert to and from 5 and 3.3v) but I did already saw a few guys using the module without it.
The Leonardo board uses the same atmega32u4 chip used on Teensy 2.0.

This (http://captainunlikely.blogspot.co.uk/2012/05/bambilight-cheap-bluetooth-ambilight.html) project uses this very same module.
right, the board uses an old-school serial interface. for interchip communication the teensy avr supports SPI and i2c _natively_. it can speak any arbitrary interface though with appropriate programming of the gpio pins. the code you linked to does just that. the only issue then is that komar has to break out the gpio pins on the board.

anyway, because of the power issue, komar has to build support into the pcb, so if people want this, NOW is the time to suggest a nice modular schematic that will allow the gh60 board to support power and wireless daughterboards. as it is, the wireless might work with appropriate firmware, but the power is probably not going to...

eta: also remember that if major changes are required to the pcb, we should be able to produce or obtain these optional daughterboards in bulk at reasonable prices. if all you want is to build a one-off, i can definitely see a way to hack up even the beta pcb to support this stuff. it will be ugly, but for a one-off, ugly should be a-ok..
Title: Re: Wireless GH60
Post by: Strelok on Mon, 04 March 2013, 16:40:17
that bluetooth board looks like it only has rs-232. i don't think the atmega komar used has native rs-232, only spi and i2s

Native rs-232? It uses normal tx-rx, we will need a logic level converter (https://www.sparkfun.com/products/8745?) (to convert to and from 5 and 3.3v) but I did already saw a few guys using the module without it.
The Leonardo board uses the same atmega32u4 chip used on Teensy 2.0.

This (http://captainunlikely.blogspot.co.uk/2012/05/bambilight-cheap-bluetooth-ambilight.html) project uses this very same module.
right, the board uses an old-school serial interface. for interchip communication the teensy avr supports SPI and i2c _natively_. it can speak any arbitrary interface though with appropriate programming of the gpio pins. the code you linked to does just that. the only issue then is that komar has to break out the gpio pins on the board.

anyway, because of the power issue, komar has to build support into the pcb, so if people want this, NOW is the time to suggest a nice modular schematic that will allow the gh60 board to support power and wireless daughterboards. as it is, the wireless might work with appropriate firmware, but the power is probably not going to...

eta: also remember that if major changes are required to the pcb, we should be able to produce or obtain these optional daughterboards in bulk at reasonable prices. if all you want is to build a one-off, i can definitely see a way to hack up even the beta pcb to support this stuff. it will be ugly, but for a one-off, ugly should be a-ok..

I want to do this but all the electronics lingo in here is a little above my head. I would totally put in for a GB.
Title: Re: Wireless GH60
Post by: agodinhost on Mon, 04 March 2013, 16:49:57
... the only issue then is that komar has to break out the gpio pins on the board.
Yup, it will need pins 0 and 1.
>> UPDATED <<
Yup, it will need pins 7 and 8 when using teensy 2.0.

anyway, because of the power issue, komar has to build support into the pcb, so if people want this, NOW is the time to suggest a nice modular schematic that will allow the gh60 board to support power and wireless daughterboards. as it is, the wireless might work with appropriate firmware, but the power is probably not going to...
+1 modular

eta: also remember that if major changes are required to the pcb, we should be able to produce or obtain these optional daughterboards in bulk at reasonable prices. if all you want is to build a one-off, i can definitely see a way to hack up even the beta pcb to support this stuff. it will be ugly, but for a one-off, ugly should be a-ok..
IMHO a modular approach would help to simplify future modifications and improvements.
Title: Re: Wireless GH60
Post by: mkawa on Mon, 04 March 2013, 16:52:08
i think the challenge is power.. it's not insurmountable, but you have to route the 5v from the usb to the expansion socket before going to the controller circuit (or anything else...) and then provide an idiot-proof (because i'm an idiot and will inevitably screw this up) way to jumper the power when the expansion socket is not filled

note that you have to do this all while fitting into the case designs that exist and are being worked on (!!)
Title: Re: Wireless GH60
Post by: agodinhost on Mon, 04 March 2013, 16:56:21
I want to do this but all the electronics lingo in here is a little above my head. I would totally put in for a GB.

It's not hard as it seems - but it would require some wiring and re-rerouting in the GH60 board, the atmega32u4 pins 20 and 21 will have to be wired to bluetooth tx rx (this is the hardest part, IMO).
The Charger and booster are quite easy (assuming the linked modules).
Give me some time then I'll try to help and post some pictures (I've already warned - I'm slow)
Title: Re: Wireless GH60
Post by: mkawa on Mon, 04 March 2013, 17:00:16
can you design a single board that can handle these things based on those two boards and that routes the external pins to the same form factor as the gh60 hackerpads? i'm going to try to run another set of prototypes of the gh60 board, and it would be just about right, if the gh60 is made more modular at the same time, to prototype any modules we might want..
Title: Re: Wireless GH60
Post by: agodinhost on Mon, 04 March 2013, 17:05:17
i think the challenge is power.. it's not insurmountable, but you have to route the 5v from the usb to the expansion socket before going to the controller circuit (or anything else...) and then provide an idiot-proof (because i'm an idiot and will inevitably screw this up) way to jumper the power when the expansion socket is not filled
Didn't understood this "expansion socket" part.

note that you have to do this all while fitting into the case designs that exist and are being worked on (!!)
Yup, I can help at the tests and proof of concept of these modules that I've proposed.

I'm not used to Kicad (I'm used to use eagle) but I don't have any compatible GH60 or the case.
+1 Komar
8-))
Title: Re: Wireless GH60
Post by: agodinhost on Mon, 04 March 2013, 17:19:12
can you design a single board that can handle these things based on those two boards and that routes the external pins to the same form factor as the gh60 hackerpads? i'm going to try to run another set of prototypes of the gh60 board, and it would be just about right, if the gh60 is made more modular at the same time, to prototype any modules we might want..

I'm planning to test this whole idea on my breadboards at here, it will be easier to me:
First the charger and the booster, then the bluetooth (using the charger and booster).
After that, assuming that we still have two free pins, we will have to re-route a bit the design in order to free the tx/rx pins in order to assign then to the bluetooth module.

IF there is no free pins we will have to review the matrix ...

At this point I need to ask about which approach to take in this modularity idea:
1) just connect the original "modules" as they are (charger, booster, teensy, bluetooth)

2) "develop" our own modules (harder, not sure if it's a good idea, I don't like to reinvent the wheel but it would be smaller and would require less conectors I think)

Re-routing the gh60 board will take some time - I did already had that in mind when I first saw the GH60 design.
I'm quite new on keyboards layouts and I'm kinda afraid to mess up with the layout - it will take sometime as I still need to learn how to use Kicad.

We still need to decide which lipo to use.
Any 1s 1c low discharge would be good for me - but we still need to decide, there are too many out there (http://www.hobbyking.com/hobbyking/store/uh_listCategoriesAndProducts.asp?idCategory=86&LiPoConfig=1&sortlist=&CatSortOrder=desc).
Title: Re: Wireless GH60
Post by: mkawa on Mon, 04 March 2013, 17:36:26
komar needs to redesign the pcb to get this, but there will be four free pins

by "socket" i mean that both boards should be designed to be mated by a commercially available male header and female socket. the gh60 beta board has something that's spaced about right for some molex product somewhere, but it only provides access to SPI. if you read the gh60 threads you'll see that he's planning on expanding this area to include the free gpio pins
Title: Re: Wireless GH60
Post by: SmallFry on Mon, 04 March 2013, 17:37:30
The GH60 files are open source, if you guys wanted to tinker with them.
Title: Re: Wireless GH60
Post by: agodinhost on Mon, 04 March 2013, 17:58:45
komar needs to redesign the pcb to get this, but there will be four free pins
Awesome, he already did an excellent work!

by "socket" i mean that both boards should be designed to be mated by a commercially available male header and female socket. the gh60 beta board has something that's spaced about right for some molex product somewhere, but it only provides access to SPI. if you read the gh60 threads you'll see that he's planning on expanding this area to include the free gpio pins
You mean this (http://www.ebay.com/itm/50pc-HDD-Molex-3-Harddisk-Connector-Metal-Contact-Pin-female-Crimp-terminal-/111008611653?pt=LH_DefaultDomain_0&hash=item19d8a0fd45)?
I like the idea - but a molex requires wires and I do hate wires! The crimping tool (http://www.ebay.com/sch/i.html?_odkw=molex+plier&_osacat=0&_from=R40&_trksid=p2045573.m570.l1313&_nkw=molex+crimping+tool&_sacat=0) is way worst to use.

I was thinking on something simpler like those 40p Single Row 2.54m Double Male pin (http://www.ebay.com/itm/140341619488?ssPageName=STRK:MESINDXX:IT&_trksid=p3984.m1436.l2649)

You don't even need to use the female header - you can use the male header to solder both boards. The female header would be optional (thicker).

Something like what Dmw did into his HH:
(http://humblehacker.com/keyboard/images/hh1_proto_1/Teensy++%20Added.jpg)
Title: Re: Wireless GH60
Post by: mkawa on Mon, 04 March 2013, 17:59:45
molex sells pcb-mounted headers and sockets too. no wires

molex, TE, etc. all have full lines..
Title: Re: Wireless GH60
Post by: Strelok on Mon, 04 March 2013, 18:03:15
I was thinking horizontally mounted female headers and 90degree male pins when I pictured it in my head.
Title: Re: Wireless GH60
Post by: agodinhost on Mon, 04 March 2013, 18:06:27
Please, could you guys post some links or pictures of what you do have in mind?
I'm trying to figure it out but I'm no parts expert (I'm a humble developer - underpaid and living on a jungle!)
Title: Re: Wireless GH60
Post by: agodinhost on Mon, 04 March 2013, 18:35:55
It's a shame that this (https://www.sparkfun.com/products/11017) board is retired.
It works at 3.3v so it does not requires a 5v booster, uses the atmega32u4 and has a lipo charger.
We would have only to wire the keyboard matrix, plug the bluetooth module on it's xbee socket and connect the lipo.
Since it's using 3.3v it works at 8Mhz - to work at 16Mhz it will require the booster in order to step up the 3.7v lipo output to 5v.

They also have this another, not retired however out of stock, version here (https://www.sparkfun.com/products/11520).
I don't know the difference ...

Well, it's open source, we can still take advantage of it's idea right?

By the way: Teensy is not 100% open source, they use one modified LUFA version (you have only the hex file - they didn't open the source of it).
I would go to arduino micro - it's quite new (2 months old, tops) and it's kinda hard to find at here yet.
Title: Re: Wireless GH60
Post by: hasu on Mon, 04 March 2013, 21:00:13
That boards seems to be nice and we can learn from that schematic
3.3V and 8MHz configuration is clearly better in terms of power consume and It doesn't need 5-3.3V level shifter to interface with Bluetooth module.
Regarding power saving I don't know ATmega32u4 is better choice than other controller like PIC, ARM or etc. But this controller is common and almost only option for DIY keyboard around here.

Teensy's halfkay bootloader is not open but I think other tool/example sources is open. I'm not a fundamentalist, so to me no problem to use their product :) Shipping cost is a problem to me.

Title: Re: Wireless GH60
Post by: agodinhost on Mon, 04 March 2013, 21:48:13
3.3V and 8MHz configuration is clearly better in terms of power consume and It doesn't need 5-3.3V level shifter to interface with Bluetooth module.
True, less 3 components for the tx line (the rx line does not requires a level converter - or it's the opposite?) and it will not require the booster too.
Way simpler.
I'm not sure if 8Mhz it's enough to run the tmk_keyboard firmware ...

Regarding power saving I don't know ATmega32u4 is better choice than other controller like PIC, ARM or etc. But this controller is common and almost only option for DIY keyboard around here.
PIC is really good and cheap - but it's kinda jurassic (sorry, it's) and all firmware code that we already have would have to be revised (too much work, IMHO).
8152? same as the PIC above.
ARM is not cheap and the simpler ARM is way too complex for me (Cortex 8? A9? too many options and as far as I know there is no cheap developer board for all these options yet - just a few). Too much for just a keyboard (IMO) and it would require firmware review too.
ATMEGA is cheap, well documented and the 32u4 is good for an usb ic without host (the at90 is way better - has complete host but it is not so cheap or easy to find).

Teensy's halfkay bootloader is not open but I think other tool/example sources is open. I'm not a fundamentalist, so to me no problem to use their product :) Shipping cost is a problem to me.
I'm on the same page man, the shipping cost to Brazil is crazy!
My last order on ebay was one Dell AT 102W, I got it by 20 bucks - the shipping cost were 50!!

I would say to continue with teensy - it uses the 43u4 anyway. It's not a big deal to change it later if we decide for that.
Title: Re: Wireless GH60
Post by: hasu on Mon, 04 March 2013, 22:28:29
3.3V and 8MHz configuration is clearly better in terms of power consume and It doesn't need 5-3.3V level shifter to interface with Bluetooth module.
True, less 3 components for the tx line (the rx line does not requires a level converter - or it's the opposite?) and it will not require the booster too.
Way simpler.
I'm not sure if 8Mhz it's enough to run the tmk_keyboard firmware ...

Also I'm not sure and never tried it at 8MHz, but my HHKB runs without problem at 12MHz with ATMga328p(and V-USB) now.
I think It will and it should work at any proper cycle. If it doesn't work I'll work on that problem.

For a while I'll also stick with 32u4 because I've got spare 20 chips of that  from digikey :D
Title: Re: Wireless GH60
Post by: mkawa on Mon, 04 March 2013, 22:40:31
cheaper forwarding to jp is something that can probably be set up no problem, since base usps postage will probably be fine. brazil otoh i'm not sure about; how is the govt mail service there?

arm chips are getting pretty cheap -- look at teensy 3.0 and the other lightweight cortex micro platforms that are popping up. pic's time is just generally over -- it is just a dying isa.

the issue with future keyboard designs will not be avr or arm but probably finding auxiliary MCUs for doing high current PWM of lots of analog devices: ie, RGB LED controllers. arm might get us slightly faster communication with these devices, but the cost of the led MCU will probably be much higher than the cost of the usb host micro..
Title: Re: Wireless GH60
Post by: Strelok on Mon, 04 March 2013, 22:49:09
I would go to arduino micro - it's quite new (2 months old, tops) and it's kinda hard to find at here yet.

I have an Arduino Micro on hand, but all I've done with it thus far is make it blink.
Title: Re: Wireless GH60
Post by: agodinhost on Mon, 04 March 2013, 23:14:45
Also I'm not sure and never tried it at 8MHz, but my HHKB runs without problem at 12MHz with ATMga328p(and V-USB) now.
ATMga328p DIP is simpler to solder and we won't need the crystal nor the 2 capacitors that it would require if not running at 8Mhz! Less components ...

I think It will and it should work at any proper cycle. If it doesn't work I'll work on that problem.
Deal, my C++ is worst than my english and it's way slow (my LUFA and V-USB knowledge is basic).

For a while I'll also stick with 32u4 because I've got spare 20 chips of that  from digikey :D
Rich guy! I do have 6, all atmel free samples. The Digikey or Farnell shipping cost for a resistor to Brazil is something like US$ 50,00!

---

... brazil otoh i'm not sure about; how is the govt mail service there?
Far from good: problems at the customs office, the postman sometimes fell in love by your package, sometimes the salt of the sea just mess up with your stuff and last but not least Murphy law is always there. The ETA for anything from US is 1 month, from China is 3 weeks (don't know why China is faster - just guessing that the guy at the customs office think it's something fake or cheap).

... look at teensy 3.0 and the other lightweight cortex micro platforms that are popping up.
I never used this version, 3.0 right? I don't know about it's acceptance, still didn't saw a living soul using this board ...

... the issue with future keyboard designs will not be avr or arm but probably finding auxiliary MCUs for doing high current PWM of lots of analog devices: ie, RGB LED controllers. arm might get us slightly faster communication with these devices, but the cost of the led MCU will probably be much higher than the cost of the usb host micro..
The number of free ports is important too, IMHO.

---

I have an Arduino Micro on hand, but all I've done with it thus far is make it blink.
Camon!!! you just turned it on - it cames blinking already!
8-)
Title: Re: Wireless GH60
Post by: Strelok on Mon, 04 March 2013, 23:15:39
Please, could you guys post some links or pictures of what you do have in mind?
I'm trying to figure it out but I'm no parts expert (I'm a humble developer - underpaid and living on a jungle!)

Bottom is what I had in my head when I started this thread, but I don't know how difficult USB is to program for.
Top is what I imagine after reading your EE jargon.

(http://i.imgur.com/zJrRAfT.png)
Title: Re: Wireless GH60
Post by: komar007 on Tue, 05 March 2013, 05:18:00
Catching up with the thread...
As far as I understand, what I need to add is a header for the expansion board. The expansion board should have BT and power chip with a battery and a battery charger.
So I need to provide the 4 remaining I/O pins, VCC, GND and VCC output, so that the expansion board can provide power either from a battery or connect VCC input to VCC output in USB mode, and charge the battery when USB is connected.
VCC will be connected to VCC output on the motherboard with a solder bridge. When one wants to use the expansion board, they'll desolder the bridge. That's how I see it...


EDIT: or maybe that VCC and VCC output solution is unnecessary. Just VCC should be enough.
Title: Re: Wireless GH60
Post by: TDub on Tue, 05 March 2013, 06:44:08
Another link that might be useful:
http://little-scale.blogspot.de/2013/01/teensy-xbee-simple-native-usb-wireless.html

A setup with teensy and xbee (2 of each) which has the battery stuff all figured out. Not sure if it can do charging of the batteries though.
Title: Re: Wireless GH60
Post by: agodinhost on Tue, 05 March 2013, 08:02:04
... As far as I understand, what I need to add is a header for the expansion board ...
Err, nope, as far as I understood the idea is to build one modular keyboard matrix without any specific controller on it. This board will have some kind of headers to connect it's columns/rows pins to our external controller bundle. It will required a major change since we will have to remove all teensy stuff from the current version and re-route the columns/rows pins to these headers (we still didn't decide about which headers to use).

Komar, I think it would be better to wait a bit - we are still deciding which path to take.

I'll add some sketches to let this idea clear, later today.
Title: Re: Wireless GH60
Post by: komar007 on Tue, 05 March 2013, 08:08:59
Okay,
I'll break out the pins anyway though, since I need them for hacking purposes.
Title: Re: Wireless GH60
Post by: komar007 on Tue, 05 March 2013, 08:09:13
Double post:/
Title: Re: Wireless GH60
Post by: agodinhost on Tue, 05 March 2013, 08:13:22
... teensy and xbee (2 of each) ...
Our idea is to use bluetooth right?

Xbee is a complete different animal, way more expensive than the 6 bucks bluetooth module suggested here. Xbee is suggested for long distances (kilometers), we don't need it in an keyboard. I linked the Sparkfun Arduino Fio only as a reference, it uses the Xbee connector, true - but the idea here is to connect an bluetooth xbee compatible module on it (not one real xbee).
Title: Re: Wireless GH60
Post by: Strelok on Tue, 05 March 2013, 09:14:55
... As far as I understand, what I need to add is a header for the expansion board ...
Err, nope, as far as I understood the idea is to build one modular keyboard matrix without any specific controller on it. This board will have some kind of header to connect it's columns/rows pins to our external controller bundle. It will required a major change since we will have to remove all teensy stuff from the current version and re-route the columns/rows pins to this header (we still didn't decide about the header).

Komar, I think it would be better to wait a bit - we are still deciding which path to take.

I'll add some sketches to let this idea clear, later today.

Would it not be easier to just make an expansion port of sorts? Plug something into the existing keyboard matrix opposed to replacing the matrix?
Title: Re: Wireless GH60
Post by: agodinhost on Tue, 05 March 2013, 12:04:48
Would it not be easier to just make an expansion port of sorts? Plug something into the existing keyboard matrix opposed to replacing the matrix?
Yes, it would. We are not going to replace the matrix - we are going to remove all controller components and re-route the matrix to use some common connectors.

However, if I got it right, our goal here is flexibility. If you tie the controller to the keyboard matrix anytime you decide for
an modification on this controller you will have to review the whole PCB (instead of only the controller). You will see the pros and cons of each approach later - I'll post some sketches to help to figure it out.

... i'm going to try to run another set of prototypes of the gh60 board, and it would be just about right, if the gh60 is made more modular at the same time, to prototype any modules we might want..
+1 modular ...
Title: Re: Wireless GH60
Post by: agodinhost on Tue, 05 March 2013, 13:24:27
Our options, pros and cons:

1) GH60 current version + usb charger + 5v booster + bluetooth:
(http://dl.dropbox.com/u/94589680/option-1.PNG)
* 5v, running @16Mhz
+ easy to build
- requires a minor GH60 PCB review
- some wiring required
- need someway to fix each module inside the case
- not modular at all

2) GH60 current version + usb charger + bluetooth:
(http://dl.dropbox.com/u/94589680/option-2.PNG)
* 3.3v, running @8Mhz (the firmware need to be tested at this speed)
+ uses fewer components
+ easier option to build
+ cheaper option to build
- requires a minor GH60 PCB review
- some wiring required
- need someway to fix each module inside the case
- not modular at all

3) Shield for 1 OR 2
(http://dl.dropbox.com/u/94589680/option-3.PNG)
+ no wiring required
+ shield fixed by connectors or sockets
+ so so modular
- not so easy to build, requires a new PCB for the shield itself
- requires a minor GH60 PCB review
- thicker (3 stacks)

4) GH60 v2 + usb charger + 5v booster + Teensy 2.0 + bluetooth AND
5) GH60 v2 + usb charger + Teensy 2.0 + bluetooth:
(http://dl.dropbox.com/u/94589680/option-4.PNG)
(http://dl.dropbox.com/u/94589680/option-5.PNG)
+ easy to build
+ cleaner matrix design
+ modular
- requires a major GH60 PCB review
- some wiring required
- need someway to fix the modules inside the case

6) GH60 v2 + Shield - usb charger + 5v booster + Teensy 2.0 + bluetooth AND
7) GH60 v2 + Shield - usb charger + Teensy 2.0 + bluetooth:
(http://dl.dropbox.com/u/94589680/option-6.PNG)
(http://dl.dropbox.com/u/94589680/option-7.PNG)
+ cleaner matrix design
+ no wiring required
+ shield fixed by connectors or sockets
+ modular
- requires a major GH60 PCB review
- not so easy to build, requires a new PCB for the shield itself
- thicker (3 stacks)

8 ) GH60 v2 + Complete custom controller PCB.
+ cleaner matrix design
+ cleaner controller design
+ no wiring required
+ controller fixed by connectors or sockets
+ smaller
+ modular
- requires a major GH60 PCB review
- hard to build, requires a new PCB for the controller itself
- slower option (more items to design)
- more expensive option
- more error prone

that's it, let's begin ...
Title: Re: Wireless GH60
Post by: Strelok on Tue, 05 March 2013, 17:12:56
Our options, pros and cons:
...
that's it, let's begin ...

Wow awesome.

You'll have to talk to Komar, but I think any major GH60 revisions are unlikely, I don't know think everyone would want the GH60 set back significantly just to allow a niche feature like this.

If we can test the firmware at 8mHz and it works, the voltage booster ideas can be thrown out, correct?

I think 2 or 3 are our best bet, but I'm not well versed on the subject.
What does everyone else think?

Edit: I'm going to update the first post with information.
Title: Re: Wireless GH60
Post by: agodinhost on Wed, 06 March 2013, 06:52:04
You'll have to talk to Komar, but I think any major GH60 revisions are unlikely, I don't know think everyone would want the GH60 set back significantly just to allow a niche feature like this.
Komar is already doing some review into the PCB for himself I think.

If we can test the firmware at 8mHz and it works, the voltage booster ideas can be thrown out, correct?
Yes, that's correct.

I think 2 or 3 are our best bet, but I'm not well versed on the subject.
2 is more a prototype - assuming some basic electronics knowledge and some wiring I think that anyone with those parts is already able to assembly and play with this option (don't forget the firmware, it needs the hid/bluetooth support code).
3 is cool, but I'm more fond to 6 or 7.
8 is just a dream at this point - we still even decided about the connectors to use, imagine 8?

BTW: it took me 4 hours to draw all these cute little drawings so, please, give your 5 cents!!!
 :D
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Wed, 06 March 2013, 13:38:43
I forgot to list this option, 9:
We could use the Arduino Fio + Bluetooth Xbee module:

Arduino Fio v3 - ATmega32U4 (http://www.ebay.com/itm/Fio-v3-ATmega32U4-Use-with-Xbee-Arduino-Compatible-USA-/190799239772?pt=LH_DefaultDomain_0&hash=item2c6c855a5c) OR Arduino FIO Atmega328P (http://www.ebay.com/itm/Arduino-FIO-Atmega328P-Use-with-Xbee-USA-/200884175555?pt=LH_DefaultDomain_0&hash=item2ec5a142c3).
This ATMEGA328P version requires an V-USB based firmware.

The Bluetooth XBee compatible module (http://www.ebay.com/itm/Bluetooth-to-serial-port-module-BluetoothBee-compatible-with-existig-Xbee-socket-/271059175453?pt=LH_DefaultDomain_0&hash=item3f1c62c81d)
Take a look at the top of this shield - our little guy BC417!!!

* 3.3v, running @8Mhz (the firmware need to be tested at this speed)
+ready to use
+modular
- price
- requires a minor GH60 PCB review
- some wiring required
- need someway to fix the module inside the case
- thicker (3 stacks)
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Wed, 06 March 2013, 13:40:39
double post ...
sorry
Title: Re: Wireless GH60
Post by: Strelok on Wed, 06 March 2013, 14:04:44
I'll make a post in Interest Checks and link to here.
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Wed, 06 March 2013, 15:05:14
How about this connector?

Option A:

(http://dl.dropbox.com/u/94589680/ATX%2020%20pins%20connector.JPG)
ATX 20 Pins power connector, PCB mount

It has 20 pins, more than enough to wire all our rows/columns ...

+ 20 pins
+ cheap
+ easy to find
+ easy to solder
- way thicker
Title: Re: [Updated] Wireless GH60
Post by: alaricljs on Wed, 06 March 2013, 15:07:02
It's also huge
Title: Re: [Updated] Wireless GH60
Post by: WhiteFireDragon on Wed, 06 March 2013, 15:13:46
How about this connector?
ATX 20 Pins power connector, PCB mount

lol you kidding me? That's the older ATX PSU connectors. It'll be fine for prototyping, but good luck ever getting that into a case for a final production board.
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Wed, 06 March 2013, 15:17:05
Option B:
(http://dl.dropbox.com/u/94589680/2.54mm%20Double%20Row%20Angle%20Header.JPG)

Option C:
(http://dl.dropbox.com/u/94589680/2.54mm%20Double%20Row%20Header.JPG)

Option D:
(http://dl.dropbox.com/u/94589680/2.54mm%20Single%20Row%20Header.JPG)

+ 40 pins and you can break it down
+ cheap
+ easy to find
+ easy to solder
- exposed pins
- easy to bend

Option E:
An VGA connector? 15 pins
 ;)
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Wed, 06 March 2013, 15:20:54
lol you kidding me? That's the older ATX PSU connectors. It'll be fine for prototyping, but good luck ever getting that into a case for a final production board.
You choose, it's only one option - but I do agree, it's way big!

My personal preference is B, I do use it everyplace I can.

Any other option guys? Please?
We need to decide which connector to use in order to review the PCB ...
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Wed, 06 March 2013, 17:00:31
For those whom are willing to start to prototype:

The TX RX pins are 7 and 8 on teensy 2.0 - not 0 and 1 as I said before, sorry, 0 and 1 are used as tx rx on arduino - take a look:
Teensy, Using the UART (Real Serial Port) (http://www.pjrc.com/teensy/td_uart.html)
We need to remember that this is not the uC pinout - it's the teensy pinout.

The ATMEGA2U4 tx rx pins are 20 and 21, as you can confirm on his datasheet (http://academy.cba.mit.edu/classes/embedded_programming/doc7766.pdf).

>>UPDATED<<
This (http://www.ebay.com/itm/150893897657?ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1497.l2649) bluetooth module already came with the logic level converter required to talk to the teensy without ant risky of burning the rx line. This is the very same BC417 module soldered on one "shield" to make our lives easier.
Title: Re: [Updated] Wireless GH60
Post by: Strelok on Wed, 06 March 2013, 18:09:19
I was thinking we could mount however many we need of these, facing sideways, to the GH60 PCB:
(http://www.poeticmonkey.com/ebay/connectors/4pin-sock/4pin-sockets.jpg)

We can hard mount the expansion board into the GH60 with 90° pins like these:
(http://i01.i.aliimg.com/photo/v0/541325931/1_0mm_90_degree_pin_header.jpg)

Or, put more sockets on the expansion board and use male to male pin wires to connect them, like a bread board, so that if you break a pin you only need to replace a wire. I don't think bending pins will be an issue though.

If we can prototype this on the current GH60 somehow, and there is enough interest, we can have custom boards printed with only the necessary components, this way we can control the form factor and reduce production cost.
Title: Re: [Updated] Wireless GH60
Post by: hasu on Wed, 06 March 2013, 22:04:34
agodinhost, these bluetooth modules on ebay  doesn't support HID protocol, you have to implement HID yourself with low level API(HCI?). I don't know how difficult that is, though I'm sure that is not a simple job.

Roving and Bluegiga modules support HID for us, this is a reason why they are not cheap as ebay one.
And it may be difficult to obtain those modules from outside of US /Europe such as Japan or Brazil. IIRC, Mouser doesn't ship Bluegiga module to Japan due to radio regulation.
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Wed, 06 March 2013, 22:18:21
... these bluetooth modules on ebay  doesn't support HID protocol, you have to implement HID yourself with low level API(HCI?). I don't know how difficult that is, though I'm sure that is not a simple job.
Yup, it's not a simple job. That's why I did already mentioned that would be easier to use the hidapi (http://www.signal11.us/oss/hidapi/) library in the first page. I never used this library myself, I saw some guys using it with teensy and they were happy. BC417 is way popular and cheap and I did already used it with arduino without problems.

Roving and Bluegiga modules support HID for us, ...
I don't know these modules that you mentioned.
I just did one search on ebay for these modules that you suggested and I think they are way too expensive, 54 bucks for an bluetooth module? geee, you are an rich man!!!
 :)

Are these the modules that you mentioned?
Bluegiga WT12 Breakout Board by EWS (http://www.ebay.com/itm/Bluegiga-WT12-Breakout-Board-by-EWS-/250855379255?pt=LH_DefaultDomain_0&hash=item3a68255137)
RN-42 - Bluetooth Module BOB - Roving Networks (http://www.ebay.com/itm/RN-42-Bluetooth-Module-BOB-Roving-Networks-Use-with-Arduino-Pro-Mini-/190658844738?pt=LH_DefaultDomain_0&hash=item2c64271842)

... this is a reason why they are not cheap as ebay one.
I don't know why these modules that you suggested are so expensive but I don't think it's because of the "internal" HID support, sorry. Take a look at this (http://www.ebay.com/itm/Mini-Wireless-Bluetooth-Keyboard-for-PC-iPhone-iPod-PS3-/170579393204?pt=Other_Tablet_eReader_Accessories&hash=item27b752fab4) bluetooth keyboard, it does have support for HID and it's cheap (US$ 7.5).

And it may be difficult to obtain those modules from outside of US /Europe such as Japan or Brazil. IIRC, Mouser doesn't ship Bluegiga module to Japan due to radio regulation.
No restrictions here in Brazil for BC417 (nor in Switzerland) and it's kinda easy to get it - most of our electronic stuff is imported from China anyway.
Would be good to check it in US and others.
Title: Re: [Updated] Wireless GH60
Post by: Strelok on Wed, 06 March 2013, 23:49:34
I have this (https://www.sparkfun.com/products/10269) bluetooth module that supports HID I think.
Title: Re: [Updated] Wireless GH60
Post by: aggiejy on Thu, 07 March 2013, 00:10:02
I have this (https://www.sparkfun.com/products/10269) bluetooth module that supports HID I think.

Was this already mentioned?  https://www.sparkfun.com/products/10823  Or would that not work?
Title: Re: [Updated] Wireless GH60
Post by: Strelok on Thu, 07 March 2013, 00:55:37
Was this already mentioned?  https://www.sparkfun.com/products/10823  Or would that not work?

This would probably work.
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Thu, 07 March 2013, 06:21:45
I have this (https://www.sparkfun.com/products/10269) bluetooth module that supports HID I think.
This RN-42 module seems to be the same animal mentioned by hasu.

Was this already mentioned?  https://www.sparkfun.com/products/10823  Or would that not work?
This is the RN-42 module without any accessory. Teensy running at 16Mhz, 5v, will require one logic level converter (as it is for the BC417 module).
Even using this module, most probably, we will still need changes in the firmware code, at least a few tests.
Don't buy it thinking that it will be "plug and play" and that everything will work as a whistle - will be more like "plug and pray".

I'm fond to BC417 because of the reasons aforementioned.
Title: Re: [Updated] Wireless GH60
Post by: hasu on Thu, 07 March 2013, 07:40:28
Bluegiga WT12 and Roving RN-42 also has CSR chip, maybe I guess their hardware is almost same as cheap one. What its firmware on the chip offers is important, not chip itself, I think. I know people likes cheaper option, but it is not necessarily cost effective, in particular for DIY project.

But building up HID stack up on HCI yourself is very interesting and challenging job. After quick search I found this project by LUFA guy Dean. It communicates with bluetooth HID device with AVR and USB bt dongle. It looks like this is closer to what you need than hidapi. http://code.google.com/p/bluetooth-explorerbot/

My another concern is those cheap Serial-Bluetooth adapter may not support HCI interface, though I'm not sure. You can find its datasheet says something about HCI?

I'd like to say that I'm not trying to discourage you to do that challenge :D
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Thu, 07 March 2013, 08:28:29
What its firmware on the chip offers is important, not chip itself, I think.
Agree. The RN-42 offers too many protocols and functions, that's why - IMHO - it's more expensive than the BC CSR:
- BCSP, DUN, LAN, GAP SDP, RFCOMM, and L2CAP protocols
All of these are at firmware level ...

I know people likes cheaper option, but it is not necessarily cost effective, in particular for DIY project.
It depends if you are building just one or hundreds of boards, mkawa already mentioned that:
... if all you want is to build a one-off, i can definitely see a way to hack up even the beta pcb to support this stuff. it will be ugly, but for a one-off, ugly should be a-ok..
We still haven't decided about the approach to follow but I already know (my magic 8 ball warned me) that we aren't going to be able to attend everybody's wishes (even mine).  I found the "raw" RN-42 module on ebay for about US$ 16,00 - so so 10 bucks more than the BC.

... After quick search I found this project by LUFA guy Dean. It communicates with bluetooth HID device with AVR and USB bt dongle. It looks like this is closer to what you need than hidapi. http://code.google.com/p/bluetooth-explorerbot/
Nice project! I'll have to get some free time to see the details about this explorer ...
I think you are right, I took a peek into the HIDAPI source code and it doesn't seems to be what we need.

>>UPDATED<<
This (http://shiggyenterprises.wordpress.com/2012/10/25/creating-your-own-keyboard-from-scratch-bluetooth-hid-and-key-layout-translation/) project uses the Arduino R3 (ATMega16u2+ATMega328) + RN-42 and sends raw HID data emulating one keyboard .
This (http://pmb.neongrit.net/blog/?p=1) guy already used arduino + bluetooth (BC417 module) + HID into his project and seems that it worked fine. My idea is to write an port of it to teensy (it wouldn't be so hard it would?)
There is also this another HID/MIDI library, the HIDUINO (http://www.dimitridiakopoulos.com/hiduino) (source code here (https://github.com/ddiakopoulos/hiduino)) for reference.

My another concern is those cheap Serial-Bluetooth adapter may not support HCI interface, though I'm not sure. You can find its datasheet says something about HCI?
Do we really need this HCI support? HID with support for mode 0000 (keyboard) would not be enough?

I'd like to say that I'm not trying to discourage you to do that challenge :D
You are not (yet  :D ).
Worst case scenario I'll build my own version.  ;)

Anyway I do have at home 4 BC417 and I just found one sparkfun charger/booster. My plan for this weekend (with my wife's permission, sure) is to work on the basic prototype. I'm going to wire all modules together according to the option 1 and then I'll try to write some code as proof of concept - this code will send keypresses to the pc (just that). The first part is okay, no big deal. I'll update this topic with my findings ...

hasu? do you already have the RN-42 module?
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Thu, 07 March 2013, 13:01:17
I was thinking we could mount however many we need of these ...
I think it's okay - seems that all connectors that you pointed are common 2.54mm male headers too, so it will be easy to change then later if required.
+1 2.54mm male whatever header
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Sun, 10 March 2013, 10:28:42
Hi guys.

Please, any news regarding the firmware running at @8Mhz?

I'm not sure but seems that there are two firmware versions been used on GH60, is that right?
Hasu's tmk_keyboard (LUFA)
Komar's version, it's LUFA based?

There is any other version? Any V-USB variant?
Title: Re: [Updated] Wireless GH60
Post by: komar007 on Sun, 10 March 2013, 11:00:31
Mine's custom, no LUFA.
It should run on 8 MHz, though I haven't tested it.
Title: Re: [Updated] Wireless GH60
Post by: hasu on Sun, 10 March 2013, 11:24:11
I don't have time to try @8MHz and further work now. But I have a plan to work on my bluetooth HHKB again if I can get time.

Right, GH60 has two versions of firmware at this time.
My firmware includes V-USB, LUFA and PJRC stack support you will be able to swap those USB stacks easily.
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Sun, 10 March 2013, 13:15:44
It should run on 8 MHz, though I haven't tested it.
Please, could you try it at 8Mhz Komar? This test will guide us to decide if we are going to use or not the 5V booster in the GH60 wireless version.
Aren't you using V-USB too?

My firmware includes V-USB, LUFA and PJRC stack support you will be able to swap those USB stacks easily.
Awesome, I think that this flexibility will make our lives easier.

Komar, please, I do already have the github url to the tmk_keyboard but I don't know if you do already have posted the link to take a look at your version. Could you?
Title: Re: [Updated] Wireless GH60
Post by: komar007 on Sun, 10 March 2013, 16:57:08
I need to buy a crystal. I don't think I have 8MHz at home. But I don't think it can be a problem. The docs say 8MHz is the "standard" crystal to generate 96MHz by PLL, so I'm actually using a non-standard config now...
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Sun, 10 March 2013, 21:13:03
I need to buy a crystal...
You don't need, you can use the internal oscillator, no crystal is required.
Title: Re: [Updated] Wireless GH60
Post by: tp4tissue on Sun, 10 March 2013, 21:25:18
:D

And here I thought 'wireless" was blasphemy..

cool stuff...

was polling rate discussed?
Title: Re: [Updated] Wireless GH60
Post by: hasu on Sun, 10 March 2013, 22:21:14
I confirmed it works at USBKEY with AT90USB1287 at 8MHz crystal. Not fully tested but it seems to be OK.
You need to change only chip(MCU) and freq(F_CPU) setting in makefile.

I didn't try internal RC oscillator. Try it when you make your prototype.
Title: Re: [Updated] Wireless GH60
Post by: Strelok on Sun, 10 March 2013, 22:51:18
:D

And here I thought 'wireless" was blasphemy..

cool stuff...

was polling rate discussed?

People who whine about wireless connectivity haven't used it since the '90, or think they're Fatal1ty.

Polling rate has not been discussed yet, although I doubt it's nearly as much of an issue with keyboards as it is with mice.
Title: Re: [Updated] Wireless GH60
Post by: tp4tissue on Sun, 10 March 2013, 22:53:46
:D

And here I thought 'wireless" was blasphemy..

cool stuff...

was polling rate discussed?

People who whine about wireless connectivity haven't used it since the '90, or think they're Fatal1ty.

Polling rate has not been discussed yet, although I doubt it's nearly as much of an issue with keyboards as it is with mice.

Fatal1ty? where've you been :D

no body wants to be him for halloween anymore..

Anyway.. on the subject of polling...  how much "more" power is used for 1khz vs 125 standard. and would it matter if we had nice batteries
Title: Re: [Updated] Wireless GH60
Post by: hasu on Sun, 10 March 2013, 23:04:40
>>UPDATED<<
This (http://shiggyenterprises.wordpress.com/2012/10/25/creating-your-own-keyboard-from-scratch-bluetooth-hid-and-key-layout-translation/) project uses the Arduino R3 (ATMega16u2+ATMega328) + RN-42 and sends raw HID data emulating one keyboard .
This (http://pmb.neongrit.net/blog/?p=1) guy already used arduino + bluetooth (BC417 module) + HID into his project and seems that it worked fine. My idea is to write an port of it to teensy (it wouldn't be so hard it would?)
I believe former one is what exactly we want. This keyboard can communicate with host  with Bluetooth HID profile. While, latter one is not bluetooth keyboard, blackberry and Arduino with  Bluetooth *serial emulation* module receives key strokes from blackberry and sends forward them to PC via USB HID.

I think you must need Bluetooth HID profile to use keyboard with notePC, Android, ipad, or iphone.
(To hook up to Apple products some special treats may be needed, I guess.)


Quote
My another concern is those cheap Serial-Bluetooth adapter may not support HCI interface, though I'm not sure. You can find its datasheet says something about HCI?
Do we really need this HCI support? HID with support for mode 0000 (keyboard) would not be enough?
I think so If you are trying to implement HID profile yourself.
What is that? I don't know 'mode 0000' at all.


Quote
Anyway I do have at home 4 BC417 and I just found one sparkfun charger/booster. My plan for this weekend (with my wife's permission, sure) is to work on the basic prototype. I'm going to wire all modules together according to the option 1 and then I'll try to write some code as proof of concept - this code will send keypresses to the pc (just that). The first part is okay, no big deal. I'll update this topic with my findings ...

hasu? do you already have the RN-42 module?
No. I have WT12 in one of my HHKBs.
Title: Re: [Updated] Wireless GH60
Post by: komar007 on Mon, 11 March 2013, 03:06:37
I need to buy a crystal...
You don't need, you can use the internal oscillator, no crystal is required.
You can't do USB full speed with internal RC.
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Mon, 11 March 2013, 08:57:19
I confirmed it works at USBKEY with AT90USB1287 at 8MHz crystal. Not fully tested but it seems to be OK.
Awesome!

You need to change only chip(MCU) and freq(F_CPU) setting in makefile.
Yup, the fuse settings.

I didn't try internal RC oscillator. Try it when you make your prototype.
The internal oscillator runs at 8Mhz too. The main concern here is to be sure that the uC speed will not affect the firmware execution (internal or not). I read somewhere that a USB device requires at least 16Mhz (I don't know if LUFA is affected by this).
I'll give it a try anyway.

I need to buy a crystal...
You don't need, you can use the internal oscillator, no crystal is required.
You can't do USB full speed with internal RC.
Nope, you can't. I was saying to use the internal oscillator (crystal) to execute your code at 8Mhz ...

Polling rate has not been discussed yet, although I doubt it's nearly as much of an issue with keyboards as it is with mice.
We could define the polling rate as one parameter, with a minimum and maximum values to be safe, the rate value is kinda personal. I'm not sure but I think that LUFA does the pooling internally to dispatch the USB events.
Title: [Updated] Wireless GH60
Post by: phetto on Mon, 11 March 2013, 09:11:37
What modifications will have to be madeto a case?
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Mon, 11 March 2013, 09:15:02
What modifications will have to be madeto a case?
We are still prototyping and doing some proof of concepts - dunno.
The main idea is to change nothing but we don't know if it will be possible ...
Title: [Updated] Wireless GH60
Post by: phetto on Mon, 11 March 2013, 09:36:22
If nothing has to be done with the case, Heeeeellooo duck poker!
Title: Re: [Updated] Wireless GH60
Post by: komar007 on Mon, 11 March 2013, 13:49:30
You can't do USB full speed with internal RC.
Nope, you can't. I was saying to use the internal oscillator (crystal) to execute your code at 8Mhz ...
Okay, so I think there shouldn't be any problems. I think I have tested some older versions at 2MHz with internal prescaler.


BTW, the expansion header is currently near the controller:
[attach=1] (view from the top)
Does this make sense? I can still move it around a bit.


I'll be making the next and (hopefully) last prototype before group buy soon.

Title: Re: [Updated] Wireless GH60
Post by: bpiphany on Tue, 12 March 2013, 03:55:24
You don't need, you can use the internal oscillator, no crystal is required.
You can't do USB full speed with internal RC.

I've run pjrc's keyboard code with both the 32u4 and the 32u2 on the internal oscillator with some success. It's not guaranteed to be stable though. The 32u4 can actually be made  to run in low speed mode, and the internal oscillator should be good enough for this. It's in the documentation somewhere. I haven't really read up on that, but you decide the USB speed by pulling either D+ or D- high I think (done internally). I wish they would have included this option for the 32u2 as well since I am more interested in the smaller package =)
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Tue, 12 March 2013, 08:14:48
The 32u4 can actually be made  to run in low speed mode, and the internal oscillator should be good enough for this.
We do need the higher speed guaranteed under 3.3v, I think that 8Mhz will be good enough.
Below 8Mhz, most probably, we will face some issues with lost keypresses (assuming it works). I never used any speed lower than what the internal uC oscillator provides.

BTW, the expansion header is currently near the controller:
(Attachment Link) (view from the top)
Does this make sense? I can still move it around a bit.
I'll take a look asap.

(http://dl.dropbox.com/u/94589680/20130312-Komar-firstReview.png)
Those are the expansion pins is that right Komar?
Give me 1 hour, I'm checking it.
We will need at least the pins 20 and 21 (ATMega32u4 TX and RX), 5v, 3.3v, GND and any unused pin into this header.
Title: Re: [Updated] Wireless GH60
Post by: esoomenona on Tue, 12 March 2013, 08:29:53
Why is that PCB so shocked?
Title: Re: [Updated] Wireless GH60
Post by: hasu on Tue, 12 March 2013, 10:04:48
BTW, the expansion header is currently near the controller:
(Attachment Link) (view from the top)
Does this make sense? I can still move it around a bit.
I'll take a look asap.

Show Image
(http://dl.dropbox.com/u/94589680/20130312-Komar-firstReview.png)

Those are the expansion pins is that right Komar?
Give me 1 hour, I'm checking it.
We will need at least the pins 20 and 21 (ATMega32u4 TX and RX), 5v, 3.3v, GND and any unused pin into this header.

No, they are via holes. You can find six expansion pins at middle bottom part of the pic. They are labeled as +,-,0,1,2,3.
In current GH60 design RXD(PD2) and TXD(PD3) are used for key matrix scan, though I don't know about new design.
You can use software serial to communicate with module instead of hardware UART even if those pins are not available.
Title: Re: [Updated] Wireless GH60
Post by: hasu on Tue, 12 March 2013, 10:07:39
oops, sorry for double post.
Title: Re: [Updated] Wireless GH60
Post by: Strelok on Tue, 12 March 2013, 11:08:52
The 32u4 can actually be made  to run in low speed mode, and the internal oscillator should be good enough for this.
We do need the higher speed guaranteed under 3.3v, I think that 8Mhz will be good enough.
Below 8Mhz, most probably, we will face some issues with lost keypresses (assuming it works). I never used any speed lower than what the internal uC oscillator provides.

BTW, the expansion header is currently near the controller:
(Attachment Link) (view from the top)
Does this make sense? I can still move it around a bit.
I'll take a look asap.

Show Image
(http://dl.dropbox.com/u/94589680/20130312-Komar-firstReview.png)

Those are the expansion pins is that right Komar?
Give me 1 hour, I'm checking it.
We will need at least the pins 20 and 21 (ATMega32u4 TX and RX), 5v, 3.3v, GND and any unused pin into this header.

No, it's these.

(http://i.imgur.com/t6y4wVo.png)
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Tue, 12 March 2013, 11:29:46
No, it's these.

No ...
Ohh, I thought it was the ISP connector.
I didn't checked the datasheet yet ...

In current GH60 design RXD(PD2) and TXD(PD3) are used for key matrix scan, though I don't know about new design.
You can use software serial to communicate with module instead of hardware UART even if those pins are not available.
I'm not sure if the software serial works well with the bluetooth module (RN or CSR).
Anyone?

A few bluetooth references:
http://www.seeedstudio.com/wiki/Bluetooth_Shield
http://www.seeedstudio.com/wiki/Serial_port_bluetooth_module_%28Master/Slave%29
http://www.george-smart.co.uk/wiki/Bluetooth_RS232_Module

I'm still updating my blog with the USB Lipo Charger wiring options and as soon as I finish it I'll start to work on the Bluetooth wiring.

I think it's better to wait a bit until we do make sure that everything works fine just to avoid to stay changing the PCB layout.
Any other idea guys?
8-))
Title: Re: [Updated] Wireless GH60
Post by: Strelok on Tue, 12 March 2013, 11:42:24
I overlayed  the Picture of the expansion pins onto the revA and highlighted what is likely the best place for a recess in a case. This is a top view.

Do you think about 4"x3" will be enough room?
Edit: I just realized the expansion holes are in the front, but the extra room in the case is in the back. We will have to use wires to connect expansion boards.

(http://i.imgur.com/T68upYO.jpg)

This should be thick enough for at least one layer of extra PCB with headers.

(http://i.imgur.com/5T8qani.jpg)
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Tue, 12 March 2013, 12:17:42
I don't know about the exact case height but I think it will be harder to use these connectors in this position. We will have to use 2.54mm angle pins or only wire.

At the usb side the case is higher, there is more room for these pins and for our modules.

(http://dl.dropbox.com/u/94589680/20130312%20gh60%2B%2B%20module%20disposition.png)
Title: Re: [Updated] Wireless GH60
Post by: Strelok on Tue, 12 March 2013, 12:22:18
I don't know about the exact case height but I think it will be harder to use these connectors in this position. We will have to use 2.54mm angle pins or only wire.

At the usb side the case is higher, there is more room for these pins and for our modules.

Show Image
(http://dl.dropbox.com/u/94589680/20130312%20gh60%2B%2B%20module%20disposition.png)


Yeah it looks like this is our best bet:

(http://i.imgur.com/peIL0I2.jpg)
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Tue, 12 March 2013, 12:44:17
For our prototype I think it's good enough.
Title: Re: [Updated] Wireless GH60
Post by: jdcarpe on Tue, 12 March 2013, 14:35:33
This was just posted in the DIY resources thread:

Here is another great product: a Bluetooth keyboard adapter that turns a USB/PS2 keyboard into a Bluetooth keyboard. Just got mine. Works like a charm on my Model-M and iPad.

http://handheldsci.com/kb


Title: Re: [Updated] Wireless GH60
Post by: Strelok on Tue, 12 March 2013, 14:54:46
This was just posted in the DIY resources thread:

Here is another great product: a Bluetooth keyboard adapter that turns a USB/PS2 keyboard into a Bluetooth keyboard. Just got mine. Works like a charm on my Model-M and iPad.

http://handheldsci.com/kb



I think hasu already linked that. It's too bulky and obtrusive for my tastes, something that resides within the case is infinitely better in my opinion.

We could potentially reverse engineer it, but I don't know if it would be worth $70.
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Tue, 12 March 2013, 14:55:54
This was just posted in the DIY resources thread:
Yup, there is a bunch of adapters of this kind out there.
I would love to put my hands into one of these to see what it does, otherwise I would pass (US$ 60,00??? Camon!!! I'm no rich!!!)
Part of the fun is the creation process itself - no guts no glory right?
8-))

thanks jdcarpe
Title: Re: [Updated] Wireless GH60
Post by: hasu on Tue, 12 March 2013, 20:35:14
LOL. I don't want to remind of my money and time spent for these things.

As for software serial I used it with WT12 at 38.4kbps with ATMega328P@12MHz.

BTW, Poker stock case profile. These values are not exact, just FYI.
(http://i.imgur.com/L28E2Ukl.jpg)
Title: Re: [Updated] Wireless GH60
Post by: Strelok on Wed, 13 March 2013, 00:02:52
LOL. I don't want to remind of my money and time spent for these things.

As for software serial I used it with WT12 at 38.4kbps with ATMega328P@12MHz.

BTW, Poker stock case profile. These values are not exact, just FYI.

If WhiteFireDragon's aluminium case is size we should have no problem fitting anything in there. It is the same shape, but he has weight slots on the inside.
Title: Re: [Updated] Wireless GH60
Post by: Matt3o on Wed, 13 March 2013, 03:49:00
Can't believe I missed this thread.

To avoid switching from BT to USB can't we just take power to charge the battery from the USB and keep using the BT for rx when the keyboard is wired?
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Wed, 13 March 2013, 09:04:30
To avoid switching from BT to USB can't we just take power to charge the battery from the USB and keep using the BT for rx when the keyboard is wired?
The USB will power the charger, the lipo will be connected into the charger, the "main board" will be connected into the charger output.
Take a look here (http://drianoxaman.blogspot.com.br/2013/03/arduino-usb-lipo-charger-5v-booster.html).

We still didn't decided about how the expansion will work when connected into the USB.
IMHO would be better to work as we do today (normal USB events, Hasu firmware).
When disconnected is kinda obvious: bluetooth on.

Note that when running under bluetooth the keyboard will be limited to 6KRO (the HID report has a length size limit)
Title: Re: [Updated] Wireless GH60
Post by: Matt3o on Wed, 13 March 2013, 09:10:32
well if the kb works undervolted it should be a lot easier
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Wed, 13 March 2013, 09:30:22
well if the kb works undervolted it should be a lot easier
What do you mean? I didn't get that ...
Title: Re: [Updated] Wireless GH60
Post by: Matt3o on Wed, 13 March 2013, 09:35:43
I mean if we can run the cpu at 3.3v@8mhz
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Wed, 13 March 2013, 09:46:18
I mean if we can run the cpu at 3.3v@8mhz
Oic, true, it's our desire until so far.
Title: Re: [Updated] Wireless GH60
Post by: Matt3o on Wed, 13 March 2013, 10:45:44
don't know if you are aware of the the arduino micro
It has the ATMega328P and it can also output 3v. might be useful at least for prototyping.
Title: Re: [Updated] Wireless GH60
Post by: Strelok on Wed, 13 March 2013, 10:51:05
don't know if you are aware of the the arduino micro
It has the ATMega328P and it can also output 3v. might be useful at least for prototyping.

We are aware, I have one. If I recall agodinhost doesn't have access to one because they're fairly new and not found locally near him yet.
Title: Re: [Updated] Wireless GH60
Post by: Matt3o on Wed, 13 March 2013, 11:05:34
can proxy if needed. anyway I believe mouser has them.
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Wed, 13 March 2013, 11:49:37
... If I recall agodinhost doesn't have access to one because they're fairly new and not found locally near him yet.
Yup, the closest seller is on ebay, somewhere out there.

can proxy if needed. anyway I believe mouser has them.
Mouser, Farnell, Digikey - all of then are way expensive to me because of the shipping price (no lesser than 40 bucks!).
I do have at home one Leonardo Pro and one Groovy (they made these ones before the "official" Leonardo and Micro).
I'm planning to get a few micros and it would help me a lot man, cause you know - we never know when we will burn something.

much much much obliged, thanks! 8-))
Would it be okay for you?
Title: Re: [Updated] Wireless GH60
Post by: Matt3o on Wed, 13 March 2013, 12:06:30
the Arduino Store ships internationally at €10 I believe, check it out. Not that bad if you get at least 2 boards. Anyway if you need help catching them, just let me know.
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Wed, 13 March 2013, 12:41:43
It has the ATMega328P and it can also output 3v ...
Actually the Arduino Micro uses the ATMega32u4, the same uC used on Teensy 2.0.  :D

the Arduino Store ships internationally at €10 I believe, check it out. Not that bad if you get at least 2 boards. Anyway if you need help catching them, just let me know.
I'll, thanks man.
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Fri, 22 March 2013, 19:35:51
Please, I'm looking for Komar's rev b files
They are not at github (komar's main url)

Anyone?
Title: [Updated] Wireless GH60
Post by: jdcarpe on Fri, 22 March 2013, 23:35:03
He hasn't posted them yet.
Title: Re: [Updated] Wireless GH60
Post by: komar007 on Sat, 23 March 2013, 03:08:05
Sorry, just pushed.
Please bear in mind this is not final and will change.
Title: Re: [Updated] Wireless GH60
Post by: Matt3o on Sat, 23 March 2013, 03:38:10
just out of curiosity... why the USB to the top left? I always see the port in that position but wouldn't be better to place it in a centered position?
Title: Re: [Updated] Wireless GH60
Post by: mkawa on Sat, 23 March 2013, 08:37:59
compatibility with the easily available poker/pure case
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Sat, 23 March 2013, 09:53:28
Sorry, just pushed.
Please bear in mind this is not final and will change.
Sure, and thanks Komar!  :D

compatibility with the easily available poker/pure case
I really don't like this position - center, IMHO, is better to position the keyboard anywhere is your computer ...

I saw somewhere in the GH forum that the poker case has one missing standoff too.

So, there is any chance to, someday, we get one GH 100% specific case? Our own case?
I think we used the poker case as "standard" only to take advantage of the pre-existing aluminum expensive cases, is that right?
Title: Re: [Updated] Wireless GH60
Post by: Matt3o on Sat, 23 March 2013, 10:07:04
I'm having this CNC milled for a 65% design

[attach=1]

1 unit should be around €50. Hope to have it in my hands by the end of the month
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Sat, 23 March 2013, 10:26:26
I'm having this CNC milled for a 65% design ...
Gosh, I hate you!!!
I'm so envy, geeeeeee
I bet you are not married ...

Compact and clean, awesome design dude!
Could we get our hands at your cad files?
I'm not a CAD guy but I'm sure that someone at GH is able to get your design and change it to something specific for our desires (another topic - we will have a lot of ideas on it).
Title: Re: [Updated] Wireless GH60
Post by: Matt3o on Sat, 23 March 2013, 11:21:36
well, actually I'm married :)

anyway the problem is not the design but finding a place to have it CNC'd (at a decent price)

As soon as I get prototypes I'll post some pictures, if you are willing to modify the PCB to meet this case design there's no problem for me to share the CAD sources.

Note that my kb design is 65% but it fits a 15x5 layout (so it should fit the GH60)
Title: Re: [Updated] Wireless GH60
Post by: Lugoues on Wed, 27 March 2013, 11:34:29
I'm having this CNC milled for a 65% design

(Attachment Link)

1 unit should be around €50. Hope to have it in my hands by the end of the month

Looks amazing! I wouldn't mind a Pure CNC case ^^

On-Topic though, I would be happy to drop a bit of cash to test a prototype of this. I don't know enough about the design aspect but I'd be happy to build and test it!
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Wed, 27 March 2013, 17:14:00
So, yesterday I was talking with Matt3o when the postman popped in at here bringing my loved bluetooth parts ...
You know, going back to the prototype.
I'll have some news, soon ...
Title: Re: [Updated] Wireless GH60
Post by: Strelok on Wed, 27 March 2013, 17:29:29
So, yesterday I was talking with Matt3o when the postman popped in at here bringing my loved bluetooth parts ...
You know, going back to the prototype.
I'll have some news, soon ...

Awesome, we're moving right along.
Title: Re: [Updated] Wireless GH60
Post by: TheQsanity on Thu, 28 March 2013, 00:12:13
Haven't had time to read all this yet but when I do, maybe I could help ;P
Title: Re: [Updated] Wireless GH60
Post by: hankz on Tue, 02 April 2013, 01:01:57
well, actually I'm married :)

anyway the problem is not the design but finding a place to have it CNC'd (at a decent price)

As soon as I get prototypes I'll post some pictures, if you are willing to modify the PCB to meet this case design there's no problem for me to share the CAD sources.

Note that my kb design is 65% but it fits a 15x5 layout (so it should fit the GH60)
Hi

the GH60 is fit the case that you design?

and I use that to draw a 3D pictuer

the different thing is the USB position.
[attach=1][attachimg=1]
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Tue, 02 April 2013, 05:35:42
Back with some results and findings that I got into my prototype.

So I have bad and good news, let's start with the bad news and then we can plan our next move based on my results:

1) Hasu is right, the CSR Bluetooth board does not came in with HCI support in. I think it's why this board is so cheap, no firmware support at all.
2) CSR HAS one complete HID firmware but it came with the BlueLab 4.1 compiler, but this price is kinda offensive for a few of us.
3) Deam Camera wrote only what he needed for his Explorer Bot theses on his HIC, L2CAP, SDP layers. His HID firmware is not 100% ready for our application - we would have to take a peek into his code to see what we will have to write.

So, the GH60 Bluetooth CSR version will take a while, I'm not sure about how much time it will take.
Hasu seems to be the most HID/USB/C skilled guy between us, so Hasu = Master and Me = blaster (until so far).
Whom else would be able to work on this HID initiative? Would be good to have one idea of man power ...

At this point the RN-42 or Bluegiga seems to be the best option. We could work on a intermediate version with these modules just to release the GH60 Bluetooth ...

So?
Title: Re: [Updated] Wireless GH60
Post by: mkawa on Tue, 02 April 2013, 06:16:09
soarer also knows USB HID protocol inside and out :)
Title: Re: [Updated] Wireless GH60
Post by: Matt3o on Tue, 02 April 2013, 06:31:14
I have very very little electronics skill but I was able to connect a bluegiga (on HID by default) to an arduino and have it pair as a keyboard. Now from here to design the PCB there's an abyss...
Title: Re: [Updated] Wireless GH60
Post by: mkawa on Tue, 02 April 2013, 07:07:15
both the rn-42 and wt21 are pretty barebones modules, but the wt21 is actually significantly smaller (like 10mm shorter). it is, however, about 3$ more at the highest price tier. still, for this one chip we're looking at 20$, vs 20$ for all the passive and active components on the gh60 board :P

anyway, other than the size, the rn-42 looks better application-wise. both do fine with UART (the rn42 can also act as the USB host, but imo that's not the right way to go..), but the wt21 only speaks raw serial, and would rely on the avr to implement the bluetooth HID stack. the rn-42 has a bluetooth HID profile in firmware, and can speak HID via serial. the bluegiga wt12 implements bluetooth HID onboard, but is the same size as the rn-42 and is 10 bucks more. my vote is for the rn42
Title: Re: [Updated] Wireless GH60
Post by: hasu on Tue, 02 April 2013, 09:20:19
WT21 is class 1 device which probably consumes more power than class 2. You'll want to use class 2 device for long battery life.
And WT21 doesn't seem to be supported by iWRAP firmware offering HID stack. WT12 is good option if you go with Bluegiga.

I found Roving new firmware update(6.15 3/26/2013) for RN42 in user manual. Sounds good!
But also I found this FAQ. Too bad :(  You need to find the module with latest firmware.
http://www.rovingnetworks.com/Current_Firmware
Quote
Q:  How do I upgrade the firmware?
A:  There is currently no way to upgrade Bluetooth firmware in the field.  Please contact your local sales office.
Meanwhile, you can upgrade WT12 yourself with Bluegiga tool. New iWRAP5 firmware is available from their support site. You need to register with decent email address to enter the site, they didn't accept free mail service address like gmail unfortunately. annoying :(
Title: AW: [Updated] Wireless GH60
Post by: mbc on Tue, 02 April 2013, 10:42:01
To lazy to read through the thread. But very interested in this.
Would be great if it could remember several pairings and easily toggle between them
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Tue, 02 April 2013, 13:06:31
I have very very little electronics skill but I was able to connect a bluegiga (on HID by default) to an arduino and have it pair as a keyboard. Now from here to design the PCB there's an abyss...
I think it would require one level converter and one LDO (exact the same things required by the CSR module).

We will need one function to envelop our scan codes, I think it will be kinda similar of this piece of code:

Code: (cpp) [Select]
static void sendKeyState(){
   if(stateChanged){
      calcKeyCodes();
      byte hidReport[REPORT_LENGTH] = {0xFD,0x09,0x01,modifiers[0],0x00,0x00,0x00,0x00,0x00,0x00,0x00};
      for(int i = 0; i < keyCodeIndex; i++){
         hidReport[5 + i] = keyCodes[i];
      }
      for(int i = 0; i < REPORT_LENGTH; i++){
         Serial.write(hidReport[i]);
      }
      Serial.flush();
   }
}

I got this piece of code from Dirk Porsche blog (http://shiggyenterprises.wordpress.com/2012/10/25/creating-your-own-keyboard-from-scratch-bluetooth-hid-and-key-layout-translation/), keyboard boot mode? He used this code into his Sparkfun BlueSmirf (https://www.sparkfun.com/products/10938?) based keyboard (BlueSmirf is based on the RN-42 already mentioned here).

So Matt3o, these missing parts  (the level converter and LDO) are all in this BlueSmirf module and it's open source.

I'm still up to work into the CSR HID but, as I mentioned earlier, it will take more time than I expected.
Hasu mentioned that it would be a good challenge - and there is no Open Source HID stack out there at this moment (as far as I know) ...

hankz, awesome design man!

So:
+1 RN-42 (temporary and quick solution - for those who are in a hurry to get one GH60 wireless keyboard)
+1 to our own Open Source HID Stack
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Tue, 02 April 2013, 13:11:05
Sorry, double post ...
Title: Re: [Updated] Wireless GH60
Post by: Matt3o on Tue, 02 April 2013, 13:14:24
just to be clear. I'm using this

(http://i.imgur.com/EZZsOnT.jpg)
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Tue, 02 April 2013, 13:34:52
just to be clear. I'm using this ...
Ops, sorry - BlueGiga, we would need a similar "shield" to your module too.
Title: Re: [Updated] Wireless GH60
Post by: Matt3o on Tue, 09 April 2013, 01:48:14
I've found this http://www.seeedstudio.com/wiki/Lipo_Rider_Pro to handle the power management thing. If I get it right it automatically switches from USB power to battery power (and even solar panels). The USB is pass through so you can also use it to program a teensy or an arduino.

It's a huge device but maybe something to start from. I ordered one that should arrive this week, it's relatively inexpensive.
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Tue, 09 April 2013, 08:17:31
I've found this http://www.seeedstudio.com/wiki/Lipo_Rider_Pro to handle the power management thing. If I get it right it automatically switches from USB power to battery power (and even solar panels). The USB is pass through so you can also use it to program a teensy or an arduino.

It's a huge device but maybe something to start from. I ordered one that should arrive this week, it's relatively inexpensive.
Should not be better to keep it small and cheap? I've already proposed one charger into my blog (http://drianoxaman.blogspot.com/2013/03/arduino-usb-lipo-charger-5v-booster.html), what's the point in this one Matth3o? Pros and cons?
I thought and assumed that the power/charger were a closed subject.

Up to Friday I'll buy one RN-42 and one giga module. As soon as it arrives I will test the tmk iWrap support to see if it still works with the new giga modules. The hardware part is not an issue for both of these modules (it's kinda similar to what I've already proposed in the CSR version).

Guys, please, I'm on the same page?
Title: Re: [Updated] Wireless GH60
Post by: Matt3o on Tue, 09 April 2013, 08:44:14
yours is definitely better, not trying to pollute your post just giving alternatives. (ps: mine is cheaper)
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Tue, 09 April 2013, 09:44:29
yours is definitely better, not trying to pollute your post just giving alternatives. (ps: mine is cheaper)
Sorry, not even cheaper!
 :D

I bought 10 charges on ebay (http://www.ebay.com/itm/130797819392?ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1497.l2649) by US$15,00 with shipping, the one that you did linked is US$9,50 without shipping (and only one piece).
Title: Re: [Updated] Wireless GH60
Post by: Matt3o on Tue, 09 April 2013, 10:12:21
yours is definitely better, not trying to pollute your post just giving alternatives. (ps: mine is cheaper)
Sorry, not even cheaper!
 :D

I bought 10 charges on ebay (http://www.ebay.com/itm/130797819392?ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1497.l2649) by US$15,00 with shipping, the one that you did linked is US$9,50 without shipping (and only one piece).

China FTW! :)

how do you passthrough data to the USB (to program the arduino/teensy)?
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Tue, 09 April 2013, 12:05:13
how do you passthrough data to the USB (to program the arduino/teensy)?
When on 5v only two simple wires.
I do still need to finish the post where I was supposed to show this wiring but I'm still waiting for these modules.
As soon as they arrive I'll be able to post the wiring pictures and to test the 3,3v wiring before pushing to you guys.

Take a look at my USB Header (http://drianoxaman.blogspot.com/2013/03/homebrew-usb-20-header.html) ...
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Tue, 09 April 2013, 12:09:45
how do you passthrough data to the USB (to program the arduino/teensy)?
When on 5v only two simple wires.
I need to finish the post where I was supposed to show this wiring but I'm still waiting for these modules.
As soon as they arrive I'll be able to post the wiring pictures and to test the 3,3v wiring before pushing to you guys.

Take a look at my USB Header (http://drianoxaman.blogspot.com/2013/03/homebrew-usb-20-header.html) ...
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Tue, 09 April 2013, 12:40:22
Reading the Sparkfun's forum I saw that they sell two RN-42 "versions" there: one without the HID firmware pre-installed (https://www.sparkfun.com/products/10253) by 16 bucks and another one that come with the HID firmware (https://www.sparkfun.com/products/10823) by 20 bucks.
Be careful when buying then because the modules are the same, there is no way to identify then visually, only the firmware is different ...

The cheapest price I've found for the RN-42 HID version until so far is 20 bucks (plus US$ 9 shipping)
Please, anyone got it for less?
Title: Re: [Updated] Wireless GH60
Post by: mkawa on Tue, 09 April 2013, 12:58:55
mouser has them for 17 or 18/ea in qs of 1 to 40. i'm guessing this is the hid not installed version. if you have the hid installed/uninstalled part numbers, you can look the prices..
Title: Re: [Updated] Wireless GH60
Post by: hasu on Tue, 09 April 2013, 18:54:08
Firmware version of RN-42 is more important and you should sure it has latest version, IMO.

Because Roving module cannot be updated by consumers as I posted.
http://geekhack.org/index.php?topic=40514.msg840307#msg840307
Title: Re: [Updated] Wireless GH60
Post by: tlt on Wed, 10 April 2013, 16:33:12
Hi, I have been planing to make a custom wireless keyboard and have done some experiments with the Bluetooth & LiPo Add-On for Makey Makey (https://www.sparkfun.com/products/11378) and a Atmega32u4 breakout also from Sparkfun. With this board you get HID Bluetooth, battery charging and powering of BT module and controller on the same board. I'm running the controller at 16Mhz on 3,7 volt and that seems to work fine. Sparkfun is doing the same thing with the Makey Makey. Atmega32u4 breakout have a 3,3 volt jumper and It is suppose to run fine att 16Mhz even thought it's overclocking it.

I haven't found the schematics for the GH60 but It wound be good to have the UART, I2C on the expansion port.
Title: Re: [Updated] Wireless GH60
Post by: Matt3o on Wed, 10 April 2013, 16:56:43
that BT module is killer, tlt! gotta try it!
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Wed, 10 April 2013, 18:00:53
I haven't found the schematics for the GH60 but It wound be good to have the UART, I2C on the expansion port.
Yup, it would be good for expansions ...
Title: Re: [Updated] Wireless GH60
Post by: hasu on Sat, 20 April 2013, 02:15:12
I updated my WT12 to iWRAP5 and fixed my code to support both vertical and horizontal mouse wheels. iWRAP5 can accept custom report descriptor now this will allow you to implement various functions. I guess NKRO over BT is possible :p

And key lagging seems to get slightly better than iWRAP4. It is still noticeable and will be annoying to some people.
I connect the module to controller with software UART at 38400. I couldn't increase its speed to 115200bps with my code. If UART speed is important for lagging it may need hardware USART engine.



Title: Re: [Updated] Wireless GH60
Post by: Matt3o on Sat, 20 April 2013, 02:17:30
thanks hasu, your code has been really inspirational for my custom projects. I'll be soon working on the BT module, I hope I could help you improve it.
Title: Re: [Updated] Wireless GH60
Post by: komar007 on Sat, 04 May 2013, 10:28:24
Guys, here's how rev B currently looks. This is very close to production version. The view is on the bottom layer, but from the top (so it's mirrored).
[attach=1]
Could you check if the expansion port's position makes sense and if your wireless module will easily fit the case in this position?
Title: Re: [Updated] Wireless GH60
Post by: Strelok on Sat, 04 May 2013, 16:53:13
Guys, here's how rev B currently looks. This is very close to production version. The view is on the bottom layer, but from the top (so it's mirrored).
(Attachment Link)
Could you check if the expansion port's position makes sense and if your wireless module will easily fit the case in this position?

Assuming the expansion port is the 6 pins near the chip, we can most likely work with that, but moving them closer to either top corner of the board would most likely be preferable. Most of the cases we are trying to take into consideration are thicker towards the top, so that's where the expansion boards will have to reside. We can get wires anywhere, but if the ports are at the top, we could add angled pins to them so expansion boards would be truly "plug and play".
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Thu, 06 June 2013, 20:21:31
Finally I got in my hands that dammed RN-42 HID module.
I'm going to design a small shield to plug in this guy into my 8u4 this weekend and as soon as I got anything solid I'll be back at here to "report" my whereabouts to you fellas.

I didn't got the WT module yet - sorry. I'm kinda short of money building one 3d printer and my wife is squeezing my pockets to keep our finances in order at here (she does miracles ohh she does).

So, yes, this thread is still alive too! (I warned that I'm slow - not my fault right?)
Title: Re: [Updated] Wireless GH60
Post by: Strelok on Thu, 06 June 2013, 20:33:39
Awesome!
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Thu, 06 June 2013, 23:48:17
For the coders that are not sleeping yet I just found some code that I think will help us.

Arduino + RN-42 Bluetooth module HID (http://stackoverflow.com/questions/16243602/arduino-rn-42-bluetooth-module-hid), the guy is trying to build one keyboard using arduino+rn-42 and at the end of the thread another guy points to his work at the github (https://github.com/silverball).

And I'm going to design one shield for our RN-42 based on this video (http://www.youtube.com/watch?feature=player_embedded&v=IjeIPP7dRDk#!) (mostly) ...


I'm going to use Sparkfun's BlueSMiRF HID (https://www.sparkfun.com/products/10938) schematic to get the basic stuff we need and then I'll add anything else required ...

Title: Re: [Updated] Wireless GH60
Post by: madderoftime on Sat, 29 June 2013, 10:56:44
I think the work you are doing here is great. Wanted to pipe up but most of this is above me atm since I am learning yet.
My thoughts just to get them somewhere: After reading through the thread I didn't see anyone give pause to the fact of having the transmitter inside a metal case with the only semi clear transmit out the switch placements. It has been semi-constant to try to put it in the case but I think it might be a good idea for the transmitter to at least be in plastic outside the case. Module style that could fasten to the outside of any case. I was imagining a hole made in the bottom of the case as a pass-through for wires then a contoured plate mounted between the feet holding the battery and circuitry and then a right-angle small acrylic part with transmitter mounted to the back of the case. Double stick tape or 2 screws. Just an idea. Thanks. Keep up awesome work!
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Sat, 29 June 2013, 12:30:50
After reading through the thread I didn't see anyone give pause to the fact of having the transmitter inside a metal case with the only semi clear transmit out the switch placements...
Good point man, and it's true!
However, for those whom, just like me, are going to use an acrylic or plastic case this is not a concern.
I'm poor and married so I'm not going to spend money on a metallic expensive case (at least not before I win in the lottery or get a divorce).  :D

We don't know where the BT module will be placed exactly yet. ATM we are only reserving "room space" to fit our module and battery. Definitely we will need some help into this matter to figure out the best possible position to avoid any interference in the radio signal for those rich bastards guys that are going to use the metallic case.

I would try to use the case itself as an antenna but I know ahead that antenna is a tough subject (out of my humble IQ limits right now).

I'm taking note of this "possible issue" for the future.
Thanks man!
Title: Re: [Updated] Wireless GH60
Post by: gnubag on Tue, 02 July 2013, 03:06:58
http://www.kickstarter.com/projects/kytelabs/bleduino-bluetooth-40-ble-made-easy-arduino-compat?ref=category

would this be useful/usable?
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Tue, 02 July 2013, 07:45:22
would this be useful/usable?
It uses ATmega32u4 and it's pretty cool and small.
I don't know this BLE Bluetooth module - I'm not sure IF it has HID support.
I'm right now doing some research on it.

There is the Arduino Fio too - but, IMHO, it's kinda expensive (almost 40 bucks).
This one you pointed seems to be cheaper. Assuming it gets the minimum number of bakers it will cost something like US$ 34 (plus US$ 5 for shipping outside US).
Thanks by the hint man!
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Tue, 02 July 2013, 07:55:13
There is no mention to the Bluettoth module ...
Silly me - BLE means "Bluetooth Low Energy", it's not the module/vendor name.

I added one question there regarding the HID support.
Let's wait and see.

We do have two scenarios at here:
1) It does have HID support:
    Definitively it would make our lives easier.
    We would have only to attach the LiPo+Booster/charger and we would be good to go.

2) It doesn't have HID support:
    I'll continue doing what I'm doing using the teensy/Arduino micro.
    (unless someone else came with a new idea)
Title: Re: [Updated] Wireless GH60
Post by: Matt3o on Tue, 02 July 2013, 08:01:17
they say it doesn't have HID at the moment but they might add it in the final version.
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Tue, 02 July 2013, 08:09:38
they say it doesn't have HID at the moment but they might add it in the final version.
Ahhhhhhhhhhhhhhhhhh
It was soooooo cool.

Anyway they are planning to release it only after nov/2013 (by theirs published schedule)

Gosh!
What's the point in having another arduino BT module without HID?
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Wed, 03 July 2013, 11:20:09
 Kytelabs says:

Quote
Hello Woody! Right now the BLEduino uses a custom profile, but we're still working on supporting more types of profiles, like HID. Let us know if you have any other questions. Thank you!
Title: Re: [Updated] Wireless GH60
Post by: hasu on Sun, 28 July 2013, 11:48:27
I found this mod with RN-42HID on twitter. The post written in Jpanese but you guys may be interested. He uses Arduino Pro, Roving module and some components for battery power supply.

http://addsict.hatenablog.com/entry/2013/07/27/164647
https://github.com/addsict/YetAnotherHHKBController
Title: Re: [Updated] Wireless GH60
Post by: xiaokucha on Mon, 29 July 2013, 11:57:22
Still prefer the usb host way, which doesn't need to open the keyboard case, no damage to the keyboard :D

Trying to build an usb host bluetooth adapter using the USB3300 USB HS Board to act as both host and slave.  With this usb physical board plus mcu and bluetooth, it should work.

Now I don't know which mcu to use, cortex-m0 m3 m4 or any other mcu.  I am a software dev, totally blind in hardware...  Any expert in this field?
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Mon, 29 July 2013, 14:57:46
Still prefer the usb host way, which doesn't need to open the keyboard case, no damage to the keyboard :D

Trying to build an usb host bluetooth adapter using the USB3300 USB HS Board to act as both host and slave.  With this usb physical board plus mcu and bluetooth, it should work.

Now I don't know which mcu to use, cortex-m0 m3 m4 or any other mcu.  I am a software dev, totally blind in hardware...  Any expert in this field?
One Arm uC seems way too much for this kinda of application. IMHO it's one sledgehammer to kill one ant, you know. Why not keep up with what the GHs are already using? atmega8u4 is one awesome uC (for it`s price range and for a keyboard it seems to be more than enough).
Title: Re: [Updated] Wireless GH60
Post by: xiaokucha on Mon, 29 July 2013, 16:14:18
Still prefer the usb host way, which doesn't need to open the keyboard case, no damage to the keyboard :D

Trying to build an usb host bluetooth adapter using the USB3300 USB HS Board to act as both host and slave.  With this usb physical board plus mcu and bluetooth, it should work.

Now I don't know which mcu to use, cortex-m0 m3 m4 or any other mcu.  I am a software dev, totally blind in hardware...  Any expert in this field?
One Arm uC seems way too much for this kinda of application. IMHO it's one sledgehammer to kill one ant, you know. Why not keep up with what the GHs are already using? atmega8u4 is one awesome uC (for it`s price range and for a keyboard it seems to be more than enough).

The problem is that it needs the USB link layer, I am not sure it is related to the SoC usb controller inside cortex-m or it can be written in code, need more study :D
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Mon, 29 July 2013, 19:07:40
Still prefer the usb host way, which doesn't need to open the keyboard case, no damage to the keyboard :D

Trying to build an usb host bluetooth adapter using the USB3300 USB HS Board to act as both host and slave.  With this usb physical board plus mcu and bluetooth, it should work.

Now I don't know which mcu to use, cortex-m0 m3 m4 or any other mcu.  I am a software dev, totally blind in hardware...  Any expert in this field?
One Arm uC seems way too much for this kinda of application. IMHO it's one sledgehammer to kill one ant, you know. Why not keep up with what the GHs are already using? atmega8u4 is one awesome uC (for it`s price range and for a keyboard it seems to be more than enough).

The problem is that it needs the USB link layer, I am not sure it is related to the SoC usb controller inside cortex-m or it can be written in code, need more study :D
Have you already saw LUFA, V-USB and Oleg's USB Library? (oleg is the guy behind the Google ADK, the Androidk Development Kit is based on his awesome work).

I'm no USB expert, far from that, but this is the material that I'm using to learn all this stuff (and, sure, the USB specs) and it's a lot of stuff ...

Hasu is the USB master around here, try to talk a bit with him. There are a few others but, honestly, I can't recall - my memory today is low ...
Title: Re: [Updated] Wireless GH60
Post by: xiaokucha on Mon, 29 July 2013, 22:58:38
just ordered the cortex-m3 with bluetooth and usb otg module, I will do some hands-on while learning the usb otg host and slave mode switch.

What I want is that while connecting to pc, the keyboard works in slave mode, while disconnected, it works with bluetooth.  Or the mcu could receive some special combination key code like alt+f8, to switch from bluetooth to usb slave mode, vice versa.
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Tue, 30 July 2013, 09:14:24
just ordered the cortex-m3 with bluetooth and usb otg module, I will do some hands-on while learning the usb otg host and slave mode switch.

What I want is that while connecting to pc, the keyboard works in slave mode, while disconnected, it works with bluetooth.  Or the mcu could receive some special combination key code like alt+f8, to switch from bluetooth to usb slave mode, vice versa.
Hmm, as far as I understood it is more related to the way you did connected your power source. I wrote something regarding this switching mode into my blog (http://drianoxaman.blogspot.com.br/2013/03/arduino-usb-lipo-charger-5v-booster.html). No big deal. The hardest part for me is enveloping the USB info through HID ...

For the GH60 BT, I think I did finished the hardware wiring and right now I'm still working into BT firmware ...
Title: Re: [Updated] Wireless GH60
Post by: JonasDK on Fri, 23 August 2013, 14:53:41
Have this been dropped, or is it on some kind of pause or what?
Title: Re: [Updated] Wireless GH60
Post by: gnubag on Fri, 23 August 2013, 15:09:40
Have this been dropped, or is it on some kind of pause or what?

most likely waiting for prototype pcb for testing.
Title: Re: [Updated] Wireless GH60
Post by: Strelok on Fri, 23 August 2013, 20:17:48
Have this been dropped, or is it on some kind of pause or what?

We're just waiting for Agodinhost's prototype to be completed, from there we'll move on to refinements and production.
Title: Re: [Updated] Wireless GH60
Post by: debt4lyfe on Fri, 30 August 2013, 19:27:39
just have to say, this board is exciting, i hope it all goes well
Title: Re: [Updated] Wireless GH60
Post by: JonasDK on Tue, 17 September 2013, 09:45:13
Any news? Haven't the prototypes been shipped a long time ago?
Title: Re: [Updated] Wireless GH60
Post by: Strelok on Tue, 17 September 2013, 10:05:30
Any news? Haven't the prototypes been shipped a long time ago?

The GH60 prototypes, this is a separate, related project.
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Tue, 17 September 2013, 15:22:26
Vacation mode active.
So I'll have some time to finish this project ...
Title: Re: [Updated] Wireless GH60
Post by: aggiejy on Tue, 17 September 2013, 20:53:23
1+
Title: Re: [Updated] Wireless GH60
Post by: madderoftime on Fri, 20 September 2013, 11:34:35
The GH60 has the ability for a complete LED set so we would need to keep that in mind and the power requirements for the battery pack. Or a way to separate that so that the full set of lights would not be available for wireless operation.
Title: Re: [Updated] Wireless GH60
Post by: Strelok on Fri, 20 September 2013, 11:54:00
The GH60 has the ability for a complete LED set so we would need to keep that in mind and the power requirements for the battery pack. Or a way to separate that so that the full set of lights would not be available for wireless operation.

You would have to simply not install LEDS.
Title: Re: [Updated] Wireless GH60
Post by: gnubag on Fri, 20 September 2013, 11:57:38
The GH60 has the ability for a complete LED set so we would need to keep that in mind and the power requirements for the battery pack. Or a way to separate that so that the full set of lights would not be available for wireless operation.

You would have to simply not install LEDS.

maybe there is a possibility that leds can be enabled when the GH60 is running off USB instead of the battery.
(or just do it manually)
Title: Re: [Updated] Wireless GH60
Post by: Lugoues on Fri, 20 September 2013, 14:21:50
The GH60 has the ability for a complete LED set so we would need to keep that in mind and the power requirements for the battery pack. Or a way to separate that so that the full set of lights would not be available for wireless operation.

I thought the GH60 wasn't getting LED support at all?
Title: Re: [Updated] Wireless GH60
Post by: Strelok on Fri, 20 September 2013, 15:24:28
The GH60 has the ability for a complete LED set so we would need to keep that in mind and the power requirements for the battery pack. Or a way to separate that so that the full set of lights would not be available for wireless operation.

I thought the GH60 wasn't getting LED support at all?

I haven't checked up on it in a while, but If I recall correctly the holes and pads for LEDs are there, they just don't trace to anything, so you would have to wire them yourself.
Title: Re: [Updated] Wireless GH60
Post by: JonasDK on Fri, 20 September 2013, 15:37:27
The GH60 has the ability for a complete LED set so we would need to keep that in mind and the power requirements for the battery pack. Or a way to separate that so that the full set of lights would not be available for wireless operation.

I thought the GH60 wasn't getting LED support at all?

I haven't checked up on it in a while, but If I recall correctly the holes and pads for LEDs are there, they just don't trace to anything, so you would have to wire them yourself.

AsI'm aware of, you'll need a module for it. The matrix is already there.
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Sat, 21 September 2013, 15:39:57
The GH60 has the ability for a complete LED set so we would need to keep that in mind and the power requirements for the battery pack. Or a way to separate that so that the full set of lights would not be available for wireless operation.

I thought the GH60 wasn't getting LED support at all?
Me too however I think that komar007 changed his mind in the REdesign process ...
Title: Re: [Updated] Wireless GH60
Post by: Lugoues on Sat, 21 September 2013, 16:17:28
The GH60 has the ability for a complete LED set so we would need to keep that in mind and the power requirements for the battery pack. Or a way to separate that so that the full set of lights would not be available for wireless operation.

I thought the GH60 wasn't getting LED support at all?
Me too however I think that komar007 changed his mind in the REdesign process ...

Been out of the loop for the past few months, looked up Rev B and it seems you are correct. ^^
Title: Re: [Updated] Wireless GH60
Post by: Strelok on Thu, 26 September 2013, 23:00:00
Hey guys...

https://www.adafruit.com/products/1535/
Title: Re: [Updated] Wireless GH60
Post by: esoomenona on Fri, 27 September 2013, 11:55:56
Not much in the way of technical details, huh? Interesting though.
Title: Re: [Updated] Wireless GH60
Post by: aggiejy on Sat, 28 September 2013, 17:19:15
That looks great!  Certainly going to order one to play with.
Title: Re: [Updated] Wireless GH60
Post by: yicaoyimu on Sat, 28 September 2013, 20:35:16
Just reply to register my interest.
Title: Re: [Updated] Wireless GH60
Post by: hasu on Sun, 06 October 2013, 18:27:40
Just a question to someone working with RN-42. What version is your module?
I got RN-42-EK from local store and it has the latest 6.15.
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Wed, 09 October 2013, 09:19:42
Hey guys...

https://www.adafruit.com/products/1535/
Really interesting!
The RN-42 HID version costs more than 20 bucks and this one that you linked is a bit cheaper.
I'll get one or two of these in order to make some tests - they say you can build one Bluetooth keyboard in less than one hour! It's just a shame that we will still need the uC board (this one is only the blue tooth module - as far as I understood). It seems that it already cames with the level converter - I'm guessing it by the pictures I saw. I would not be surprised IF the Bluetooth module used in this board came up to be the RN-42 itself ...

I'm trying to read it's tutorial in order to see the whole picture.

And yes, my vacation time is over and now I'll be back to try to finish this project ...
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Wed, 09 October 2013, 09:30:15
I was wrong in my guess, it does not uses the RN-42.

From it's manual:
" The module consists of a CSR BlueCore with custom firmware on a breakout PCB."
 :D

This CSR module most probably is that Chinese cheaper one I linked previously!!!
Obviously they don't say exactly what CSR module they are using on it, gosh.

However the documentation (http://learn.adafruit.com/downloads/pdf/introducing-bluefruit-ez-key-diy-bluetooth-hid-keyboard.pdf) seems a bit thin, I'm still reading it to make sure that I'm seeing everything that I should see ...

I read into this documentation a section teaching how to upgrade the Bluetooth module firmware - seems that it is required in order to use their custom firmware. Would be awesome to know which module exactly they are using ... Raspberry PI specific, nothing to do with the BT module itself.

For my own reference (https://forum.sparkfun.com/viewtopic.php?p=91380).
Title: Re: [Updated] Wireless GH60
Post by: csmith1991 on Wed, 09 October 2013, 19:31:40
I've been watching this thread for awhile now. On a whim I was looking for a bluetooth module for a completely unrelated project. Found this: http://kcwirefree.com/kc22.html. It has a HID profile, and has some nice quantity discounts should this make it to a GB. Thought it'd be worth mentioning.
Title: Re: [Updated] Wireless GH60
Post by: hasu on Wed, 09 October 2013, 20:34:11
Interesting. KC is offering firmware and update tool. The module receives raw HID frame and seems to meet our requirement but document is a tad scarce.

As for pricing RN-42 is fairly cheap, I think.
Roving is a subsidiary of Microchip now and we can get it for $15.27 or less  from their DIRECT shop.
http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en558330
http://www.microchipdirect.com/ProductSearch.aspx?Keywords=RN42
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Wed, 16 October 2013, 08:06:04
Interesting. KC is offering firmware and update tool. The module receives raw HID frame and seems to meet our requirement but document is a tad scarce.

As for pricing RN-42 is fairly cheap, I think.
Roving is a subsidiary of Microchip now and we can get it for $15.27 or less  from their DIRECT shop.
http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en558330
http://www.microchipdirect.com/ProductSearch.aspx?Keywords=RN42
Yup, for small quantities the RN-42 seems to be the cheapest option until so far.

I've been looking for some other alternatives but no success.

Tried the BT 43:
==========
Hi Woody,

Many thanks for giving us the chance to propose our Bluetooth solutions for your project needs.
We're a wireless module manufacturer with wifi and BT solutions and we also write and maintain our own BT certified stack.

We also sell the BT-243 USB stick which is a very good way to quickly evaluate the functionality of the modules.
It's very quick, simple and convenient to just plug the USB stick into a PC's USB port and run something like Windows HyperTerminal then start to send it AT commands.
No need to solder up wires to a bare module before you can start testing

Regarding your request for pricing:

Modules    10-24    25-49    50-99    100-499    500-1k
BT43-LT  $16.55    $15.45    $14.15    $12.75    $11.70

Please include your FedEx/UPS/TNT/DHL/other carrier account number to cover the shipping cost.
--------------------------

I've tried to contact Blue Packet to see the prices of the BPM730 module however nobody there seems to care about small sales quantities ...

My dream is to get the firmware source code to update the CSR HC-06 module into one HID enabled module (I bet it was what the Bluefruit EZ-Key guys did)

I saw a few vendors at alibaba but most of then are selling the CSR HC-06 saying it is HID enabled (by the pictures I saw) and I'm kinda afraid of fake or modules without HID
Title: Re: [Updated] Wireless GH60
Post by: Strelok on Tue, 19 November 2013, 10:15:13
I found this:

http://imgur.com/a/rfWYr
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Tue, 19 November 2013, 11:19:04
I found this:

http://imgur.com/a/rfWYr
Awesome work.
It's more or less what I wanna do.
Left to right:
1) The bigger green board seems to be the keyboard controller
2) The arduino pro mini (I would use the micro - I do prefer the atmega32u4)
3) The resistors there are being used as level converter (step down/step up)
4) The bt module with level conversion/ldo
5) Dunno what is this last board - I'm assuming it's a simple usb shield ...

Until so far I slowed down this project because of the GH60 delivery date
however I will take it back soon.

Our solution will be kinda simpler - we don't need a second uC (like the guy did into the project you linked).
Title: Re: [Updated] Wireless GH60
Post by: csmith1991 on Tue, 19 November 2013, 22:19:27
I found this:

http://imgur.com/a/rfWYr

He outlined what he did to make this: http://www.reddit.com/r/MechanicalKeyboards/comments/1qz5jd/i_couldnt_find_a_mechanical_bluetooth_keyboard/cdi18o0
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Thu, 19 December 2013, 14:32:59
Another BT IC to work with:
nRF8001 (http://www.nordicsemi.com/eng/Products/Bluetooth-R-low-energy/nRF8001)
more techie bla bla bla (http://www.nordicsemi.com/eng/News/News-releases/Product-Related-News/Nordic-Semiconductor-launches-enhanced-nRF8001-with-upgraded-Bluetooth-stack-further-extending-class-leading-power-saving-performance)

Thanks to our pal kolonelkadat (http://geekhack.org/index.php?topic=52467.msg1164931#msg1164931).

Until so far:
- This IC does have HID
- BT 4.0
- low power
- one SDK with lots of samples

- can be found easily?
- It's cheap?
- Cheaper than the RN-42?

I found a few dev boards using this IC (http://www.ebay.com/itm/Geeetech-official-Bluetooth-Low-Energy-BLE-Shield-work-with-Arduino-Uno-Mega-/331039222919?pt=LH_DefaultDomain_0&hash=item4d1379ac87) on ebay by 30 bucks!! (not sure if they are the "enhanced" version yet)

I think that I'll be able to use this IC instead of our loveable RN-42. Any thoughts?

Anyway I'm still looking for something using this IC, something already coded (whom knows?)

In parallel I'm getting back the RN-42 BT project ...
Komar/WFD just emailed me to inform that my GH60 proto were packaged and deployed then I think that now is a good time to get back to it isn't?
Title: Re: [Updated] Wireless GH60
Post by: komar007 on Thu, 19 December 2013, 14:47:31
The price of nRF8001 is rather sensible, it's hard to obtain, like most nordic chips, but I think it might be a good choice. The question is, how many extra components it needs to work. I haven't checked the specs yet.
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Thu, 19 December 2013, 15:03:03
The price of nRF8001 is rather sensible, it's hard to obtain, like most nordic chips, but I think it might be a good choice. The question is, how many extra components it needs to work. I haven't checked the specs yet.
I'm assuming it does recognizes AT commands (like most normal modems in the market).
The level converter, charger/booster and lipo would be the same.
I'm still reading all data.

Just found another IC that seems to have the HID stack, the CC2540!
The BLE SDK (part of CC2540 documentation) (http://www.ti.com/tool/ble-stack) says it does have HID support. I found some cheap modules on ebay, something close to 10 bucks!
This guy is the new kid in the block, IMHO! Kinda a baby yet - This SDK with HID support was launched on 12-nov-2013.

I think that someone in heaven is listening to my prayers!!!
HID HID HID HID HID HID
 :p

By the way - I just saw another arduino board on ebay using this CC2540 and our ATmega32U4 - called Blueduino (http://www.ebay.com/itm/BlueDuino-arduino-compatible-Pro-Micro-plus-BLE-bluetooth-4-0-5V-16MHz-/261351079225?pt=US_Radio_Comm_Antennas&hash=item3cd9bcfd39))
It seems to be quite cool ...
Title: Re: [Updated] Wireless GH60
Post by: huynx on Mon, 23 December 2013, 08:38:01
Nice to hear about CC2540, or CC2541
I see this sample project: HIDEmuKbd
Title: Re: [Updated] Wireless GH60
Post by: bcg on Mon, 23 December 2013, 08:50:40
FYI, don't know if you guys have looked at it already but I integrated Adafruit's Bluefruit with hasu's firmware:

http://geekhack.org/index.php?topic=50183.0;topicseen

Its really easy to use, you don't need any other components other than the atmega32u4 to drive it.  I has a built in regulator already so it will thrive on 5v if that's what you're operating at already

Think its only certified for the US right now, but it uses a very similar (or the same) protocol as the RN-42 HID stack which is a bit harder to use (ie I think you'll need extra components) but it is still relatively inexpensive.  hasu is working with that one for the HHKB controller i believe
Title: Re: [Updated] Wireless GH60
Post by: multipla on Mon, 27 January 2014, 07:05:26
How's the status on this?
Title: Re: [Updated] Wireless GH60
Post by: JonasDK on Mon, 27 January 2014, 09:22:51
How's the status on this?

 As i know this isn't moving before the final PCB is revealed.
Title: Re: [Updated] Wireless GH60
Post by: clickclack123 on Sat, 01 March 2014, 04:58:21
I'm curious whether it is possible to do nkro over a bluetooth connection?? Anyone know?
Title: Re: [Updated] Wireless GH60
Post by: hasu on Sat, 01 March 2014, 20:11:46
Maybe possible. Not sure. Just a guess from a glance at spec.
Title: Re: [Updated] Wireless GH60
Post by: wan40657819 on Thu, 06 March 2014, 12:32:06
rx and tx pin of ATMega32u4 are used by matrix but it is still possible to connect the hid bluetooth module with software serial.
the pcb of mobile charger could be used instead of the charger and booster.some of it are quite small
sorry for my poor english
Title: Re: [Updated] Wireless GH60
Post by: SeeThruHead on Wed, 14 May 2014, 16:41:55
Just stumbled across this. Recently returned a Minila Air. Very excited to see this come to fruition.
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Wed, 14 May 2014, 21:42:40
Just stumbled across this. Recently returned a Minila Air. Very excited to see this come to fruition.
The GH60 is almost out there - then we will be back to business ...
 :D
Title: Re: [Updated] Wireless GH60
Post by: malu1989 on Tue, 27 May 2014, 13:06:02
I just read the hole thread and I like it.
The only thing I'm missing, is an On/Off switch to turn it completely off when you take it with you.
Perhaps it is possible to add some holes on the extension PCB so you can connect a switch if you
want to.
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Tue, 27 May 2014, 13:53:02
I just read the hole thread and I like it.
The only thing I'm missing, is an On/Off switch to turn it completely off when you take it with you.
Perhaps it is possible to add some holes on the extension PCB so you can connect a switch if you
want to.
It's true, I haven't thought about that.

We will have to choose the switch footprint - I don't like of most of the smd switches - they tend to break easily ...

Do you have any suggestion?
Title: Re: [Updated] Wireless GH60
Post by: malu1989 on Wed, 28 May 2014, 08:45:00
I haven't thought about a specific switch yet. Just thought you could add some solder pads. Then you could solder some wires and add a switch that can be screwed to a hole in the case or something like that.
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Wed, 28 May 2014, 11:10:06
I haven't thought about a specific switch yet. Just thought you could add some solder pads. Then you could solder some wires and add a switch that can be screwed to a hole in the case or something like that.
That works too.
Title: Re: [Updated] Wireless GH60
Post by: malu1989 on Fri, 30 May 2014, 02:46:13
Just a few thoughts i ran into.
Did you think about how to switch the power supply to the controller.
When the USB is connected i think it is better to disconnect the power from the Lipo to the controller.
Otherwise you could have power running into your USB port destroying it.
So you would need some kind of automatic source select.
You also have to pay attention to not connect the power out from the Lipo to the loading input.
Is there a decision to use 5V or 3V3 yet?
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Fri, 30 May 2014, 07:50:39
Did you think about how to switch the power supply to the controller.
When the USB is connected i think it is better to disconnect the power from the Lipo to the controller.
Otherwise you could have power running into your USB port destroying it.
So you would need some kind of automatic source select.
I'm not totally sure but I think the booster/charger that we choosed already does it.
We still have to review the firmware in order to send the scancodes via BT report instead of USB callbacks.

Take a look at here (http://drianoxaman.blogspot.com.br/2013/03/arduino-usb-lipo-charger-5v-booster.html) to see where I did stop.

You also have to pay attention to not connect the power out from the Lipo to the loading input.
Is there a decision to use 5V or 3V3 yet?
5v. With 3,3v we would have to downclock the atmega32u4. My idea is to use one 5v charger/booster connected into the 3,7 lipo (link above).
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Wed, 18 February 2015, 21:05:18
I'm alive, still.

My chinese / japanese friends out there: I'm looking for the Broadcomm BCM20730 datasheet. It's kinda hard to find this datasheet, most stuff that I found is in japanese / chinese (really dunno).

This module is used into some apple keyboards. Anyone? Please?

I'm also looking for someone with one RN-42HID module and a CSR programmer (please, PM me).
ty
Title: Re: [Updated] Wireless GH60
Post by: hasu on Thu, 19 February 2015, 00:18:21
Can you post the link of the japanese datasheet? I can read Japanese and I have RN-42 modules. what do you want in fact?
Title: Re: [Updated] Wireless GH60
Post by: agodinhost on Thu, 19 February 2015, 07:45:36
Hi Hasu.

I'm looking for any info regarding the HID layer implementation. I bought 5 of these little modules from aliexpress however the vendor didn't provided any info.

I've found this pdf (http://download.csdn.net/detail/lovebeyond1014/5325094), but I coun't manage do download it.

I've found also this other links below, it seems to be some kind off thread talking about this datasheet. I'm not sure if they really have this doc:
http://www.btspeaker.cn/plugin.php?id=attachcenter:page&aid=66
http://www.btspeaker.cn/thread-47-1-1.html
http://www.52rd.com/bbs/Archive_Thread.asp?SID=214206&TID=3
http://lanya123.com/forum.php?mod=viewthread&tid=4852

There is a lot of garbage in my search, I just googled "BCM20730 datasheet" and it came back with a lot of chinese links ...

There is a lot of guys looking for this datasheet by what I saw into those links above.
Any help will be welcome!
 ;D

Can you post the link of the japanese datasheet? I can read Japanese and I have RN-42 modules. what do you want in fact?
Title: Re: [Updated] Wireless GH60
Post by: hasu on Thu, 19 February 2015, 08:24:41
They are all Chinese sites and I couldn't navigate them at all :D
Title: Re: [Updated] Wireless GH60
Post by: congia on Sun, 22 February 2015, 01:24:23
... There is a lot of garbage in my search, I just googled "BCM20730 datasheet" and it came back with a lot of chinese links ...

There is a lot of guys looking for this datasheet by what I saw into those links above.
Any help will be welcome!
 ;D


A Chinese friend of mine helped me to navigate through the maze of Chinese links and get Broadcom Bluetool  ;D Going through the fairly skim documentation of thousands of commands that you can send to the module, I think, unless you're a Bluetooth genius, it's going to take a lot of time to get started. IMO, it would be easier to make clones of the RN42-HID instead. It may not be as energy efficient per say (Bluetooth 2.0 vs 3.0), but it would be easier.
Title: Re: [Updated] Wireless GH60
Post by: paublo on Thu, 16 April 2015, 05:14:38
Hi Guys,

FYI and waiting for update of Bluetooth keyboard.

Regards,

From China.
Title: Re: [Updated] Wireless GH60
Post by: paublo on Thu, 16 April 2015, 05:19:15
Datasheet of BCM20730
Title: Re: [Updated] Wireless GH60
Post by: congia on Tue, 05 May 2015, 10:33:04
I recently got a couple of TP-BCM730 (the ones from DX.com that uses BCM20730) and laid out a breakout board for the modules. I just put in an order for the PCBs (https://oshpark.com/shared_projects/fkYORRsk (https://oshpark.com/shared_projects/fkYORRsk)). Hopefully, I can get a basic interface working with this module once I've got the breakout board.
Title: Re: [Updated] Wireless GH60
Post by: hasu on Tue, 05 May 2015, 17:25:51
Intresting module. Keep us updated!

Quoted from document, do you already know how to program the matrix? It seems external EEPROM/Flash stores keymapping info but I don't know how I can program it.
Quote
Programmable keyscan matrix interface, up to 8 × 20 key-scanning matrix

Or can I use the module with UART HCI?
Title: Re: [Updated] Wireless GH60
Post by: congia on Wed, 06 May 2015, 01:06:47
The module is programmed using HCI or proprietary UART commands using Broadcom BlueTool, which is extremely expensive and extremely hard to find if you decide not to buy millions of Broadcom modules and sign a contract with them. Attached to the post is a document I found on programming the module. [attach=1]

BluePacket also has an evaluation board for the BCM20730 but using their own module with different pin-out. I inquired about their EVM and programming custom matrix with a PS/2 mouse but they says that it has to be done individually for each module on their side and the cost of purchasing the EVM is very expensive, iirc, around $100-$300. It has only UART port, a few buttons, a PS/2 interface using their special firmware, etc. but no JTAG for ARM so I'm quite certain that UART is the only way to program it.



Title: Re: [Updated] Wireless GH60
Post by: congia on Sat, 30 May 2015, 16:28:23
I got the breakout boards a few days ago but I could not get the module to respond to any of the commands sent from Bluetool (http://www.btspeaker.cn/thread-2950-1-1.html). It's hopeless thus far. I even tried soldering a pull-up resistor for the reset button despite the datasheet saying it doesn't need one - still doesn't respond to any commands.

The GND pins location checks out according to DX's datasheet for the module so the TX, RX lines should be right.

EDIT: It replies 0x0 (Success) to the reset command every now and then but that's it.
Title: Re: [Updated] Wireless GH60
Post by: I0x0I on Thu, 25 June 2015, 10:39:43
Hi, I'm new here and interested in making an open soure low cost bluetooth keyboard myself. I found some DIYers have already made a bluetooth GH60 board and they are selling it,  it comes with the bluetooth module, battery and the keyboard controller .Here's the link to the video, http://v.youku.com/v_show/id_XMTI1MzUxNjUyOA==.html?from=s7.8-1.2&x (http://v.youku.com/v_show/id_XMTI1MzUxNjUyOA==.html?from=s7.8-1.2&x) if the link doesn't work, I will try to port it to YouTube. The board looks pretty cool but it's a closed project and it's not cheap (about 60 bucks). Based on the picture of their bluetooth module, I guess they are using the CSR1011 module like this one http://www.trlinktek.com/pro.asp?pid=19 (http://www.trlinktek.com/pro.asp?pid=19). And I also found some sources of the CSR10XX keyboard examples http://www.pudn.com/downloads550/sourcecode/comm/detail2270551.html (http://www.pudn.com/downloads550/sourcecode/comm/detail2270551.html) ,so I assume this can be done by compiling the source and flash it into the bluetooth module, which will required a development kit. Thought the module is cheap(6 bucks) the CSR development kit is very expensive(about 50 to 150 bucks), so I go on to find some other models. The NRF51822 seems to be a good choice as the development kit only cost 15 bucks and the module is still cheap, also, there're keyboard examples of the module https://github.com/finnurtorfa/nrf51/tree/master/lib/nrf51sdk/Nordic/nrf51822/Board/nrf6310/ble/ble_app_hids_keyboard (https://github.com/finnurtorfa/nrf51/tree/master/lib/nrf51sdk/Nordic/nrf51822/Board/nrf6310/ble/ble_app_hids_keyboard). I will have a try on it in July, did you guys have any experience working on this module? Or probably the module can be simply flash by spi downloader, no need to use the development kit?
Title: Re: [Updated] Wireless GH60
Post by: congia on Thu, 25 June 2015, 12:04:38
Hi, I'm new here and interested in making an open soure low cost bluetooth keyboard myself. I found some DIYers have already made a bluetooth GH60 board and they are selling it,  it comes with the bluetooth module, battery and the keyboard controller .Here's the link to the video, http://v.youku.com/v_show/id_XMTI1MzUxNjUyOA==.html?from=s7.8-1.2&x (http://v.youku.com/v_show/id_XMTI1MzUxNjUyOA==.html?from=s7.8-1.2&x) if the link doesn't work, I will try to port it to YouTube. The board looks pretty cool but it's a closed project and it's not cheap (about 60 bucks). Based on the picture of their bluetooth module, I guess they are using the CSR1011 module like this one http://www.trlinktek.com/pro.asp?pid=19 (http://www.trlinktek.com/pro.asp?pid=19). And I also found some sources of the CSR10XX keyboard examples http://www.pudn.com/downloads550/sourcecode/comm/detail2270551.html (http://www.pudn.com/downloads550/sourcecode/comm/detail2270551.html) ,so I assume this can be done by compiling the source and flash it into the bluetooth module, which will required a development kit. Thought the module is cheap(6 bucks) the CSR development kit is very expensive(about 50 to 150 bucks), so I go on to find some other models. The NRF51822 seems to be a good choice as the development kit only cost 15 bucks and the module is still cheap, also, there're keyboard examples of the module https://github.com/finnurtorfa/nrf51/tree/master/lib/nrf51sdk/Nordic/nrf51822/Board/nrf6310/ble/ble_app_hids_keyboard (https://github.com/finnurtorfa/nrf51/tree/master/lib/nrf51sdk/Nordic/nrf51822/Board/nrf6310/ble/ble_app_hids_keyboard). I will have a try on it in July, did you guys have any experience working on this module? Or probably the module can be simply flash by spi downloader, no need to use the development kit?
Nordic and csr no, but I've got a working CC2541 firmware for keyboard and mouse hid bridge. It's somewhere on the forums. One issue to fix is reduce the current consumption and add LED report support. What I have is pretty barebone.
Title: Re: [Updated] Wireless GH60
Post by: I0x0I on Fri, 03 July 2015, 07:23:58
I've found something called BCM20730 SDK, which contains some tools like ARM Realview development suite, Cygwin, ADK and Bluetool. I have no idea what it is but it seems related to your module, do you want to check it out?
Title: Re: [Updated] Wireless GH60
Post by: congia on Fri, 03 July 2015, 10:11:24
Oh yes please.
Title: Re: [Updated] Wireless GH60
Post by: I0x0I on Fri, 03 July 2015, 11:22:58
http://pan.baidu.com/s/1dDcncGx (http://pan.baidu.com/s/1dDcncGx)
Title: Re: [Updated] Wireless GH60
Post by: cutterline on Mon, 27 July 2015, 02:27:21
Just found this discussion and I decided to join as I'm currently trying to hack BCM20730 based keyboard such as Filco MJ2 convertible/minila air and matias laptop pro (Yofree YFBT-07 same as Ouya controller can, this is confirmed as I have one). I'd like to give them another layout like colemak on the fly.

So far based from hacking attempt of previous gen of BCM keyboard with BCM2042. [1] (http://www.keyglove.net/2011/03/15/interfacing-with-a-bcm2042-bp20422-bluetooth-hid-module/) [2] (https://geekhack.org/index.php?topic=19104.0)

We can conclude as long as you can program the EEPROM firmware you can do anything and possibly get the multi devices pairing like Filco's (need schematic confirmation though). Until I stumbled this thread, I was in a blind how I can try to program the eeprom but there is no datasheet/wiring diagram for make-do development board.

@Congia
Can you please try using Adk and RVDS(+Cygwin) and see if you can connect and program with your pcb?
I can't do anything right now because I don't have a debugger yet, waiting for bus pirate to come in 2-3 weeks  :-[.

=====
On another occasion, there is also another good candidate based on nRF51882 with good documentation from seeed (http://www.seeedstudio.com/depot/low-power-consumption-BLE40-module-with-24GHz-PCB-antenna1628mm-p-2278.html?cPath=19_21) which needs FT232RL for developing. Datasheet (http://www.seeedstudio.com/document/BLE40nRF510102DK%20datasheet.pdf)
This is also used in Varmillo's bluetooth line up like VB87M (https://www.massdrop.com/buy/varmilo-vb87m-bluetooth)

http://pan.baidu.com/s/1dDcncGx (http://pan.baidu.com/s/1dDcncGx)
I couldn't find bluetool, care to elaborate?
No cygwin as well but can be downloaded from cygwin.net
Title: Re: [Updated] Wireless GH60
Post by: congia on Mon, 27 July 2015, 10:42:59
I have no idea how to use RDVS to code for the 20730 tbh, like selecting target type, programming and debugging etc. No idea how to get started either. I'm sort of already given up on trying to use this module. I got a BusPirate but I also don't know how SPI could be used for this chip. Connecting BP to the module does nothing.

What I have been doing though, is improving my CC2541 hid bridge firmware so that it would use lower power and integrate LED reports into the sucker.

For the nRF51882 I think you would need a J-Link for programming. IIRC, the chip exposes its JTAG lines.
Title: Re: [Updated] Wireless GH60
Post by: cutterline on Mon, 27 July 2015, 19:49:05
I have no idea how to use RDVS to code for the 20730 tbh, like selecting target type, programming and debugging etc. No idea how to get started either. I'm sort of already given up on trying to use this module. I got a BusPirate but I also don't know how SPI could be used for this chip. Connecting BP to the module does nothing.

What I have been doing though, is improving my CC2541 hid bridge firmware so that it would use lower power and integrate LED reports into the sucker.

For the nRF51882 I think you would need a J-Link for programming. IIRC, the chip exposes its JTAG lines.
Ah I see, well I'm most probably gonna try dumping the firmware first and see what I can do. I'm not an expert as well so the chances of getting the give up boat are high.

For nRF51882 you only need FT232RL with some wiring, well that if the datasheet is correct though (or maybe only via UART not SWD).
It contains how to make make do dev board by yourself and I think the dev board itself is around $70 at mouser.
Title: Re: [Updated] Wireless GH60
Post by: congia on Tue, 28 July 2015, 00:10:59
Or you could just use RN-42HID. It is proven to work and quite mature. While individual module costs are rather expensive, it shares the same core as HC-05 serial Bluetooth modules so for educational purposes... You got the drift, as long as it stays educational though.
Title: Re: [Updated] Wireless GH60
Post by: cutterline on Tue, 28 July 2015, 03:35:24
Or you could just use RN-42HID. It is proven to work and quite mature. While individual module costs are rather expensive, it shares the same core as HC-05 serial Bluetooth modules so for educational purposes... You got the drift, as long as it stays educational though.
Nah, I had had problems with devices running below version 3 before, it's quite problematic with the later version so if I were to invest some time, I prefer v3 and up
I think HM-10(CC2540) is a better for me.

Regarding those 2 (BCM20730 and nRF51882), they should be worth the time as they are proven to be reliable by having commercial keyboard products in the market.
As you said, you can do all educational things on it, maybe I'll grab VB87M to see what the schematic it got and try nRF51882 if I have no luck with broadcom (most probably will).
 
Maybe GH60 wireless can be designed like Filco's or Matias's, they separate the keyboard matrix pcb and the MCU/BT module. It makes life a lot easier, if you like to tamper with it.
Title: Re: [Updated] Wireless GH60
Post by: kirkvomit on Thu, 30 July 2015, 14:05:29
Found this on taobao https://item.taobao.com/item.htm?spm=a230r.1.14.241.B75Mcq&id=520030658772&ns=1&abbucket=16#detail
Title: Re: [Updated] Wireless GH60
Post by: cutterline on Thu, 30 July 2015, 19:50:08
Found this on taobao https://item.taobao.com/item.htm?spm=a230r.1.14.241.B75Mcq&id=520030658772&ns=1&abbucket=16#detail
Looks promising but a review would be better to know whether it has issues or not.
I only found a video of it capable of switching devices like Filco's (http://v.youku.com/v_show/id_XODU5NzM0ODg4.html?from=y1.7-1.2)
Title: Re: [Updated] Wireless GH60
Post by: I0x0I on Wed, 02 September 2015, 00:43:43
Hi everyone! My bluetooth keyboard finally works ;D. It took me a long time to make the motherboard for the bluetooth module and debugging.I am using a 51822 module provided by waveshare http://www.wvshare.com/product/Core51822-B.htm (http://www.wvshare.com/product/Core51822-B.htm). The motherboard is totally homemade so it doesn't have a good looking . Since I am working on repairing a dell venue travel keyboard instead of the GH60, the smaller connector besides the keyboard connector is for the touchpad. Nordic has provided many example on how to use their chiphttps://developer.nordicsemi.com/ (https://developer.nordicsemi.com/), my case is building on the top of the ble_hid_keyboard example and the cherry example, I will publish my codes to github after cleaning it up.

 [attach=1]
Title: Re: [Updated] Wireless GH60
Post by: I0x0I on Thu, 03 September 2015, 10:58:33
The code have been published on https://github.com/I0x0I/DIY-A-BLE-Keyboard (https://github.com/I0x0I/DIY-A-BLE-Keyboard), have fun :-)
Title: Re: [Updated] Wireless GH60
Post by: hasu on Thu, 03 September 2015, 15:54:32
great job! thanks!

Title: Re: [Updated] Wireless GH60
Post by: vulpes on Sat, 05 September 2015, 04:40:16
This looks awesome, thanks I0x0I!
Can you confirm this (http://www.aliexpress.com/item/Core51822-B-BLE4-0-Bluetooth-2-4G-Wireless-Module-nRF51822-Onboard-Rev3-features-32kB-RAM-supports/32374207080.html?ws_ab_test=201407_4,201444_6,201409_3) is same thing as module you are using, only broken out?

@hasu, are you going to have fun with this? TMK port maybe?  ;D

EDIT:
This (http://www.aliexpress.com/item/Low-Power-NRF51822-Wireless-Module-2-4G-Wireless-SOC-Single-Chip-BLE4-0-Bluetooth-Module/32334236969.html?ws_ab_test=201407_4,201444_6,201409_3) look even better with external antenna connector, could be useful with aluminum cases.
Title: Re: [Updated] Wireless GH60
Post by: I0x0I on Sat, 05 September 2015, 12:01:26
Yeah, that's totally the same @vulpes
Title: Re: [Updated] Wireless GH60
Post by: vulpes on Sat, 05 September 2015, 15:52:25
Just ordered one board, looking forward to having something to flash on it. :)
Title: Re: [Updated] Wireless GH60
Post by: joric on Sat, 09 April 2016, 15:54:26
This is totally awesome. How did you flash it (is basic UART sufficient)? How to add USB interface to it (can it run V-USB)? May I just upload new firmware over the air, as advertised?

Upd: related http://www.rogerclark.net/arduino-on-the-nrf51822-bluetooth-low-energy-microcontroller/
Not very convenient because you'd have to buy additional hardware but not very expensive after all.
The "Development Board" ($16) is not a programmator but rather just a breadboard (modules use a non standard pin spacing).
Guess you'd need atleast STM32 ARM Cortex-M3 Leaflabs Leaf Maple Mini (http://www.aliexpress.com/item/F85-Free-Shipping-STM32-ARM-Cortex-M3-Leaflabs-Leaf-Maple-Mini-Module-for-Arduino/32447795436.html) ($4.25 with shipping) to flash the chip.
And this is the probably the cheapest module NRF51822 Wireless Bluetooth Module (http://www.aliexpress.com/item/F10643-3-3-Pcs-NRF51822-Wireless-Bluetooth-Module-Networking-Module-US-Freeshipping/32235643641.html) ($4.40 with shipping).

Upd2: bought all wireless stuff (except Li-PO battery, that I ordered earlier) for about $10, here's the album - http://imgur.com/a/ej9hD
Title: Re: [Updated] Wireless GH60
Post by: I0x0I on Thu, 14 April 2016, 04:22:30
To flash the chip you will need a JTAG programmer instead of a UART one, but it seems that by using openOCD, event Arduino can be used as a JTAG programmer so it doesn't really means you need to buy another programmer and I'm going to try it out. The OTA update looks like to be kind of a feature of a firmware, which means new firmware can be updated over the air only when the chip already has a firmware that supports OTA update. In the new softdevice, the OTA update feature also makes uploading firmware over UART possible, but I havn't seen any V-USB example so far, if you want to use USB you may also need a AVR controller ;-)
Title: Re: [Updated] Wireless GH60
Post by: pomk on Thu, 14 April 2016, 07:52:02
Should someone have the patience required for porting v-usb for this chip, you could then write your own bootloader to show the device as a usb flash drive and make firmware updates through that channel  :))
Title: Re: [Updated] Wireless GH60
Post by: I0x0I on Thu, 14 April 2016, 08:28:03
Should someone have the patience required for porting v-usb for this chip, you could then write your own bootloader to show the device as a usb flash drive and make firmware updates through that channel  :))
Could V-USB work without some special hardware support? If so, it would be really nice  :D. Single chip solution for a wire/wireless dule mode keyboard!!!  But a JTAG programmer will still be needed as most of the module doesn't come with a spacial firmware/bootloader so you will have to use the programmer to flash that.
Title: Re: [Updated] Wireless GH60
Post by: pomk on Thu, 14 April 2016, 09:48:41
Should someone have the patience required for porting v-usb for this chip, you could then write your own bootloader to show the device as a usb flash drive and make firmware updates through that channel  :))
Could V-USB work without some special hardware support? If so, it would be really nice  :D. Single chip solution for a wire/wireless dule mode keyboard!!!  But a JTAG programmer will still be needed as most of the module doesn't come with a spacial firmware/bootloader so you will have to use the programmer to flash that.

V-USB does not require any USB specific HW, I believe that only one interrupt line and a second gpio line without the interrupt requirement is all it needs. It does however contain some ARV specific assembler code that would have to be ported to ARM assembly.
Title: Re: [Updated] Wireless GH60
Post by: I0x0I on Thu, 14 April 2016, 11:50:24
Should someone have the patience required for porting v-usb for this chip, you could then write your own bootloader to show the device as a usb flash drive and make firmware updates through that channel  :))
Could V-USB work without some special hardware support? If so, it would be really nice  :D. Single chip solution for a wire/wireless dule mode keyboard!!!  But a JTAG programmer will still be needed as most of the module doesn't come with a spacial firmware/bootloader so you will have to use the programmer to flash that.

V-USB does not require any USB specific HW, I believe that only one interrupt line and a second gpio line without the interrupt requirement is all it needs. It does however contain some ARV specific assembler code that would have to be ported to ARM assembly.
Maybe this (https://github.com/lemcu/LemcUSB) project could help, awesome!
Title: Re: [Updated] Wireless GH60
Post by: pomk on Thu, 14 April 2016, 14:06:27
That might be a good start, but I really don't have the time to invest right now.
Title: Re: [Updated] Wireless GH60
Post by: I0x0I on Thu, 14 April 2016, 19:35:03
Will add that to the TODO List and I plan to do some work this summer ;-)
Title: Re: [Updated] Wireless GH60
Post by: joric on Tue, 19 April 2016, 16:41:18
Will add that to the TODO List and I plan to do some work this summer ;-)

Not really related, but how do you think is it possible to place the entire bluetooth controller into a cherry mx keychain like this one:

(http://i.imgur.com/JTlCHe1.jpg)

Possibly with a BGA rf51 like this one:

(http://i.imgur.com/vAlws5I.jpg)

...and a clock battery (the space under the switch is about 14x14x4 mm).

Upd: That BGA (Ball Grid Array) version of nrf51822 is 3.38 x 3.38 x 0.35 mm, available on aliexpress at $6.40 for 2 chips ($3.20 a piece).
http://www.aliexpress.com/item/100-New-Original-2-pcs-lot-NRF51822-CEAA-R-NRF51822-N51822-2-4G-Wireless-Bluetooth-4/32326904057.html
Supply voltage is 1.8 ~ 3.6V.

Upd2: To hell with that BGA, it's unmaintable. QFN is almost just as small (6x6 mm) but much easier to solder and trace ($1.50 a piece).
http://www.aliexpress.com/item/2450BM14E0003-NRF51822-original/32506627004.html

(http://i.imgur.com/U4rmdW3.jpg)

Though both need an external 16 Mhz quartz an a bunch of capacitors.
Breakout boards: https://www.nordicsemi.com/eng/nordic/download_resource/20350/2/68176419
Title: Re: [Updated] Wireless GH60
Post by: I0x0I on Wed, 20 April 2016, 12:18:26
Will add that to the TODO List and I plan to do some work this summer ;-)
Not really related, but how do you think is it possible to place the entire bluetooth controller into a cherry mx keychain like this one:
Show Image
(http://i.imgur.com/JTlCHe1.jpg)

Possibly with a BGA rf51 like this one:
Show Image
(http://i.imgur.com/vAlws5I.jpg)

and a clock battery (the space under the switch is about 14x14x4 mm).
Check this (https://www.nordicsemi.com/eng/content/download/41032/693157/version/1/file/Product+brief+3rd+party+Modules+v1.0.pdf)out, there are some modules that can meet your demand ;-)
Title: Re: [Updated] Wireless GH60
Post by: joric on Sat, 21 May 2016, 20:08:39
My dream is to get the firmware source code to update the CSR HC-06 module into one HID enabled module (I bet it was what the Bluefruit EZ-Key guys did)

Well, it's pretty simple http://imgur.com/a/1LHSR (link to album)

(Not a source code though, just binary RN-42 firmware, but it doesn't use fixed keymap, it just processes AT commands from the main controller.)

(http://i.imgur.com/WTFRiTl.jpg)

(http://i.imgur.com/EhmO2QZ.jpg)

Here is the link to RN-42 firmware: https://mega.nz/#!o9Qz2BJb!3vO5wX6bHokQbN08HC6f4-3tTo96TI4HMwDi2j-u0HQ

Before flashing make sure you set mac and antenna settings right. Check out this video:


Title: Re: [Updated] Wireless GH60
Post by: joric on Sat, 20 August 2016, 13:45:17
Update about NRF51822.

Failed to receive the stm32 for a while so I bought Segger J-LINK and dev board.

Segger: http://www.ebay.com/itm/152132013811 just $15, reliable seller and fast shipping.

With Segger I was able to use nrf manual and Keil as here https://devzone.nordicsemi.com/tutorials/2/

Managed to flash https://github.com/I0x0I/DIY-A-BLE-Keyboard and got a working bluetooth 4.0 keyboard (use nrf51sdk9).

It's a bit more expensive than stm32 but it's worth it.

Also (a slightly cheaper solution) is to buy an ST-Link.
Bought it here http://www.ebay.com/itm/331803020521 just $3.20 from the same seller.

This is how it looks with Segger (it doesn't power up the chip so the board needs external power):
(http://i.imgur.com/xQl3T7Q.jpg)

Just hook it up, run nRFgo Studio, flash softdevice, run Keil, flash firmware and you're good to go.

ST-LINK needs fewer wires. You may hook it up to the dev board (SWCLK - SWD, SWDIO - SWIO):

(http://i.imgur.com/koCl506.jpg)

Or to the nrf51822 module directly (SWCLK - SCLK, SWDIO - SDO):

(http://i.imgur.com/NgRKEVl.jpg)

I haven't managed to set up Keil work with ST-Link, but it works fine with OpenOCD.

Download s110 softdevice.hex, build your app.hex in keil and put it somewhere (I used C:\Temp):

Commands:

Code: [Select]
cd openocd-0.10.0-dev-00247-g73b676c\bin-x64
openocd -f interface/stlink-v2.cfg  -f target/nrf51.cfg
telnet 127.0.0.1 4444
nrf51 mass_erase
program C:/Temp/s110_nrf51822_8.0.0_softdevice.hex
program C:/Temp/nrf51422_xxac_s110.hex
reset

Program output:

Code: [Select]
openocd -f interface/stlink-v2.cfg  -f target/nrf51.cfg           
Open On-Chip Debugger 0.10.0-dev-00247-g73b676c (2016-03-12-15:05)                                                 
Licensed under GNU GPL v2                                                                                           
For bug reports, read                                                                                               
        http://openocd.org/doc/doxygen/bugs.html                                                                   
Info : auto-selecting first available session transport "hla_swd". To override use 'transport select <transport>'. 
Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SW
adapter speed: 1000 kHz                                                                                             
Info : Unable to match requested speed 1000 kHz, using 950 kHz                                                     
Info : Unable to match requested speed 1000 kHz, using 950 kHz                                                     
Info : clock speed 950 kHz                                                                                         
Info : STLINK v2 JTAG v21 API v2 SWIM v4 VID 0x0483 PID 0x3748                                                     
Info : using stlink api v2                                                                                         
Info : Target voltage: 3.258278                                                                                     
Info : nrf51.cpu: hardware has 4 breakpoints, 2 watchpoints                                       

telnet 127.0.0.1 4444
> Open On-Chip Debugger
> nrf51 mass_erase
> program C:/Temp/s110_nrf51822_8.0.0_softdevice.hex
nrf51.cpu: target state: halted
target halted due to debug-request, current mode: Thread
xPSR: 0xc1000000 pc: 0xfffffffe msp: 0xfffffffc
** Programming Started **
auto erase enabled
Padding image section 0 with 2112 bytes
using fast async flash loader. This is currently supported
only with ST-Link and CMSIS-DAP. If you have issues, add
"set WORKAREASIZE 0" before sourcing nrf51.cfg to disable it
nrf51.cpu: target state: halted
target halted due to breakpoint, current mode: Thread
xPSR: 0x61000000 pc: 0x2000001e msp: 0xfffffffc
wrote 93184 bytes from file C:/Temp/s110_nrf51822_8.0.0_softdevice.hex in 3.923701s (23.192 KiB/s)
** Programming Finished **
> program C:/Temp/nrf51422_xxac_s110.hex
nrf51.cpu: target state: halted
target halted due to debug-request, current mode: Thread
xPSR: 0xc1000000 pc: 0x000006d0 msp: 0x000007c0
** Programming Started **
auto erase enabled
using fast async flash loader. This is currently supported
only with ST-Link and CMSIS-DAP. If you have issues, add
"set WORKAREASIZE 0" before sourcing nrf51.cfg to disable it
nrf51.cpu: target state: halted
target halted due to breakpoint, current mode: Thread
xPSR: 0x61000000 pc: 0x2000001e msp: 0x000007c0
wrote 20480 bytes from file C:/Temp/nrf51422_xxac_s110.hex in 0.900467s (22.211 KiB/s)
** Programming Finished **
> reset

P.S. Dudes, who don't like the whole NRF51822 mess and Cortex-M0+ may flash cheap HC-06 modules into RN42 HID modules and control them from any MCU of your liking, http://imgur.com/a/1LHSR

P.P.S. For non-wireless dudes. If someone wants to use pro micro ($3) instead of teensy 2.0 ($20) for a 87-key matrix, apparently it's possible, see https://hackaday.io/project/8282-alpen-clack/log/27395-matrix "It turns out that Pro Micro doesn't break out all the pins. In fact, it only breaks out 18 GPIO pins, and uses 2 more for build-in LEDs, leaving the remaining 5 pins unconnected. OK, with some delicate soldering I can reclaim the two LED pins - just remove the LEDs and solder wires in that place. That gives me 20 pins to work with. My keyboard has 88 keys. That means, that if I make a matrix 8×11, I can support them all with 19 pins, and even have one pin left".

P.P.P.S Also it's possible to make your own Bluetooth HID Relay (essentially, http://handheldsci.com/kb, but much, much cheaper) using an arduino and converted HC-06 (unfortunately you'd still need to buy an USB host shield board): http://hackaday.com/2016/09/04/convert-any-usb-keyboard-to-bluetooth/

Upd: flashing HM-10 (Bluetooth 4.0) modules (CHECK IT OUT): https://geekhack.org/index.php?topic=62236.msg2300518#msg2300518
Title: Re: [Updated] Wireless GH60
Post by: joric on Mon, 22 August 2016, 19:14:36
just in case
(http://i.imgur.com/Pawr7h9.png)
Title: Re: [Updated] Wireless GH60
Post by: clickclack123 on Mon, 22 August 2016, 20:55:36
Will add that to the TODO List and I plan to do some work this summer ;-)
Not really related, but how do you think is it possible to place the entire bluetooth controller into a cherry mx keychain like this one:
Show Image
(http://i.imgur.com/JTlCHe1.jpg)

Possibly with a BGA rf51 like this one:
Show Image
(http://i.imgur.com/vAlws5I.jpg)

and a clock battery (the space under the switch is about 14x14x4 mm).
Check this (https://www.nordicsemi.com/eng/content/download/41032/693157/version/1/file/Product+brief+3rd+party+Modules+v1.0.pdf)out, there are some modules that can meet your demand ;-)

I would try buying one of those cheap BT camera buttons on ebay and see what's inside it.

They're basically a one-key bluetooth keyboard, although it's probably not possible to change what key it sends.

Also, thanks for all the info, joric and I0x0I!!
Title: Re: [Updated] Wireless GH60
Post by: janglad on Tue, 22 November 2016, 14:04:39
Wouldn't it be possible to just connect an Adafruit EZ Key module to a GH60 PCB and rub QMK on it à la this:

Title: Re: [Updated] Wireless GH60
Post by: joric on Wed, 23 November 2016, 14:10:24
Well, duh! I guess. Should be pretty possible. The mod is described here: https://www.reddit.com/r/MechanicalKeyboards/comments/3psx0q/the_planck_keyboard_with_bluetooth_guide_and/

Connected as here:
(http://i.imgur.com/cwDUxkM.png)

The firmware is standard QMK with BLUETOOTH_ENABLE.
Pretty costly though, about $40 combined and not very power efficient, considering that EZ key thing is Bluetooth 2.1.


Title: Re: [Updated] Wireless GH60
Post by: janglad on Wed, 23 November 2016, 16:17:23
Well, duh! I guess. Should be pretty possible. The mod is described here: https://www.reddit.com/r/MechanicalKeyboards/comments/3psx0q/the_planck_keyboard_with_bluetooth_guide_and/

Connected as here:
Show Image
(http://i.imgur.com/cwDUxkM.png)


The firmware is standard QMK with BLUETOOTH_ENABLE.
Pretty costly though, about $40 combined and not very power efficient, considering that EZ key thing is Bluetooth 2.1.

It's only BT 2.1? I thought it was 4.0 al along for some reason... What I would totally love was QMK support for the Bluefruit Feather which is pretty much perfect: 32u4, build in battery charger, built in Bluetooth Smart module,...

https://learn.adafruit.com/adafruit-feather-32u4-bluefruit-le/overview
Title: Re: [Updated] Wireless GH60
Post by: pomk on Wed, 23 November 2016, 17:44:03
Pretty costly though, about $40 combined and not very power efficient, considering that EZ key thing is Bluetooth 2.1.
While BT4 is more power efficient, it is entirely possible to build a BT2.1 keyboard that has a battery life close to a year using that 2000 mAh lipo pack (the limiting factor being the self discharge rate of the battery pack, which is about 10% per month). The problems is that neither qmk nor the EZ key are designed to be very power efficient. I mean QMK on GH60 uses probably more than 10 mA of current while basic matrix reading is possible to do with just about 100 uA. Even the EZ key utilizes some form of busy wait and has power consumption figures that are way out of scope (about 25mA) for a proper bluetooth keyboard firmware implementation. Even the DCDC powersupply on EZ key uses more current than is necessary for a properly implemented bluetooth keyboard as a whole.

The solution is to use single chip bluetooth solutions that can also scan the matrix, which allows for a simpler power optimization problem. The only thing missing currently is that there is no TMK/QMK/kiibohd ported for any such chip.
Title: Re: [Updated] Wireless GH60
Post by: janglad on Thu, 24 November 2016, 12:32:37
Pretty costly though, about $40 combined and not very power efficient, considering that EZ key thing is Bluetooth 2.1.
While BT4 is more power efficient, it is entirely possible to build a BT2.1 keyboard that has a battery life close to a year using that 2000 mAh lipo pack (the limiting factor being the self discharge rate of the battery pack, which is about 10% per month). The problems is that neither qmk nor the EZ key are designed to be very power efficient. I mean QMK on GH60 uses probably more than 10 mA of current while basic matrix reading is possible to do with just about 100 uA. Even the EZ key utilizes some form of busy wait and has power consumption figures that are way out of scope (about 25mA) for a proper bluetooth keyboard firmware implementation. Even the DCDC powersupply on EZ key uses more current than is necessary for a properly implemented bluetooth keyboard as a whole.

The solution is to use single chip bluetooth solutions that can also scan the matrix, which allows for a simpler power optimization problem. The only thing missing currently is that there is no TMK/QMK/kiibohd ported for any such chip.

That is a good point, and yeah there should really be a power efficient fork of qmk... I have that Bluefruit Feather board laying around hoping that one day someone will write some nice firmware for it...
Title: Re: [Updated] Wireless GH60
Post by: joric on Tue, 29 November 2016, 09:32:10
Made USB2BT for my CM Novatouch.

(http://i.imgur.com/XjJU5Ov.jpg)

(http://i.imgur.com/NSvnqEZ.jpg)

(http://i.imgur.com/eIqds17.jpg)

Used manual from here http://hackaday.com/2016/09/04/convert-any-usb-keyboard-to-bluetooth/

USB Host Shield Mini is 3.3v both for USB logic and for USB power line so make sure your arduino has 3.3v regulator (USB normally uses 3.3v logic line and a separate power line). CM Novatouch ought to use 5v for its topre controller, so you'd have to cut the USB power line and solder directly to the USB connector via DC-DC 5v booster. Since it's two regulators, bluetooth 2.0 module, usb host and a topre switchboard - battery life is of course ridiculous, something about 3 hours on a 500 mAh battery, maybe 6-8 hours on 1200 mAh.

Upd: apparently it's possible to use touch sensor such as TTP223B for waking up (it consumes only just about 7 uA). I tried to connect it to the steel plate of my CM Novatouch, with sensor this size it detects hands at about 2 cm which is kind of cool.

(http://i.imgur.com/RdBwyrf.jpg)
Title: Re: [Updated] Wireless GH60
Post by: KINGPIN on Fri, 16 December 2016, 10:38:13
I hope this won't trigger you but there is a chip developed just to turn almost USB keyboard into Bluetooth HID keyboard and allow USB pass through while charging when plugged in USB by using a arm processor. I bought it and might make a post of it really soon(like a week later) here's the link of the Chinese seller.  http://m.intl.taobao.com/detail/detail.html?spm=a1z5f.7632060.0.0&id=542300386181
Title: Re: [Updated] Wireless GH60
Post by: joric on Sun, 18 December 2016, 04:15:22
*TRIGGERED* is it available somewhere except taobao? Can't get through all that chinese.
Upd: ordered it too (taobao supports Overseas addresses now). Costs about $15 (99 CNY+shipping).
Full link: https://world.taobao.com/item/542300386181.htm?spm=a312a.7700714.0.0.UcGK1p
Pictures, just in case:

(http://i.imgur.com/FWcMvQd.jpg)

(http://i.imgur.com/9cDA0Dr.jpg)

(http://i.imgur.com/KEfoila.jpg)

Really have no idea what it's made from, looks like TQFP-64 PIC32 with maybe cc2541 on the rear side.
Title: Re: [Updated] Wireless GH60
Post by: I0x0I on Wed, 21 December 2016, 04:04:30
*TRIGGERED* is it available somewhere except taobao? Can't get through all that chinese.
Upd: ordered it too (taobao supports Overseas addresses now). Costs about $15 (99 CNY+shipping).
Full link: https://world.taobao.com/item/542300386181.htm?spm=a312a.7700714.0.0.UcGK1p
Pictures, just in case:

Show Image
(http://i.imgur.com/FWcMvQd.jpg)


Show Image
(http://i.imgur.com/9cDA0Dr.jpg)


Show Image
(http://i.imgur.com/KEfoila.jpg)


Really have no idea what it's made from, looks like TQFP-64 PIC32 with maybe cc2541 on the rear side.

Probably it's a STM32F105 as that IC has USB Host support.
Title: Re: [Updated] Wireless GH60
Post by: leang on Sat, 28 January 2017, 20:41:29
Hi, everyone. Has any further work been done with the TaoBao chip? I'm curious to see where this project is.
Title: Re: [Updated] Wireless GH60
Post by: joric on Thu, 23 February 2017, 01:02:06
I got no luck with the taobao chip. They don't really ship overseas, had to cancel and get a refund. It gets kind of expensive with side shipping services.
Title: Re: [Updated] Wireless GH60
Post by: joric on Tue, 18 April 2017, 19:37:02
Finally an NRF51822-based orthogonal split wireless keyboard https://www.reddit.com/r/MechanicalKeyboards/comments/66588f/wireless_split_qmk_mitosis/

(http://i.imgur.com/CXMx8RK.jpg)

Title: Re: [Updated] Wireless GH60
Post by: joric on Thu, 18 May 2017, 15:41:53
My another project, World's smallest keyboard (http://imgur.com/a/OkwEb).

Uses cc2540 module from aliexpress ($3.10, 11.2 x 15.1 mm, with onboard usb support): https://www.aliexpress.com/item/MK00283-Bluetooth-4-BLE-from-the-module-serial-communication-direct-drive-mode-RF-BM-S02-CC2540/32658399946.html

(http://i.imgur.com/VS3MYzK.jpg)

(http://i.imgur.com/Zs7yGTf.jpg)

I'll try to figure out the best way to utilize a 1-key keyboard, maybe build an army of those :)

Reminds me of this sketch by Peter Serafinowicz:


Full album: http://imgur.com/a/OkwEb
Title: Re: [Updated] Wireless GH60
Post by: gerold on Wed, 30 August 2017, 12:17:33
Any recommendations on converting a 60% MK to wireless one?
Is there an easy approach to date?
Title: Re: [Updated] Wireless GH60
Post by: joric on Thu, 31 August 2017, 20:54:01
Yes, actually you can try ordering that $20 module from taobao https://world.taobao.com/item/542300386181.htm looks like he ships internationally now. There are a lot of examples in the feedback section, looks like this modile is pretty popular in china, someone has even managed to mod an actual GH60 with it, using humongous 5000mAh battery that could work at least a few days on a single charge.

(http://i.imgur.com/OAj2uMV.jpg)

(http://i.imgur.com/jgluT3O.jpg)

I really have no idea what chip it uses this is the best pic I could get:

(http://i.imgur.com/xzJtcMY.png)

Looks like there's no separate USB host (MAX3421E) on the PCB so that QFN controller could actually be STM32F105 (USB host and client) and the module on the rear side definitely looks like a CC2541 clone (I have a similar one).

Upd: there's also a funny thing, wake up touch module ($3) https://world.taobao.com/item/548629862732.htm Looks like people use it with the module above. According to the description you don't even need a physical button it's rather a proximity sensor (probably TTP223B based).

(http://i.imgur.com/rD3nOa2.jpg)
Title: Re: [Updated] Wireless GH60
Post by: lishi on Sun, 10 September 2017, 01:05:32
It looks like there's already a bluetooth gh60: BLE60 that ran in China last year.


Unfortunately I'm not able to actually find that much info on it...


(http://i.imgur.com/PimEN10.jpg)
Title: Re: [Updated] Wireless GH60
Post by: gerold on Mon, 11 September 2017, 05:14:27
It looks like there's already a bluetooth gh60: BLE60 that ran in China last year.


Unfortunately I'm not able to actually find that much info on it...


Show Image
(http://i.imgur.com/PimEN10.jpg)


Would be awesome, if we can find out more about this one :)