Wireless ErgoDox ???

User avatar
des_illacom

08 Feb 2014, 01:43

Hey guys,
Just like the 'subject' says, wireless ErgoDox... is it even possible? I'm one of many waiting for MD drop to ship out my kit, In the mean time I've been kinda kicking around the idea of hacking a wireless connection together for ED... Been looking at Arduino / ExBee / Wifi ... Reading up on arduino forums, thought i'd share some links , and see if anyone can shed some light on if/how this can be accomplished...

WHY: I am hoping to relocate my PC tower to the closet and get rid of as many wires as possible. The 'master' plan is to have Wacom / ErgoDox / 24" Monitors all "detached" from the tower... But I figure I should start by trying to get ED working first...

HOW: (see attached diagram)
method A (usb over IP(wifi))... ED (teensy) would need connect to an Arduino UNO via USB host shield and send user inputs, from there the signal would need to be passed over to the Wifi shield for broadcasting... The signal would need to be picked up by Router and routed to PC , then "somehow" interpreted as a keystroke(s)

method B (usb over XBEE)...ED (teensy) would need connect to an Arduino UNO via USB host shield and send user inputs, from there the signal would need to be passed over to the XBee Shield for broadcasting... The signal would need to be picked up by another XBEE module that would be connected to the PC through XBee Explorer USB , then it would also "somehow" would be interpreted as a keystroke(s)...

In both methods, ErgoDox would need to be powered through the Arduino...

I'm going to keep researching this idea, so If anyone has suggestions or links to existing solutions that would be great...
Attachments
ARDUINO_ERGODOX_DIAGRAM_V001.jpg
ARDUINO_ERGODOX_DIAGRAM_V001.jpg (52.93 KiB) Viewed 9506 times

User avatar
des_illacom

10 Feb 2014, 22:35

A cool idea was introduced on GeekHack

1.Desktop Computer > running 'Synergy - Server'(any OS)
connected by LAN cable to Network Router(BEST DAMN ROUTER EVER MADE :))

2.Raspberry Pi > running 'Synergy - Client'(Linux OS)
drawing power from USB power supply
connected by USB Wifi Module to the network

3.ErgoDox & Wacom Intous 5 & Whatever else HID device > connected to the Raspberry Pi through a USB HUB

I guess then the question would be, what are the limitations of Synergy:
Is there noticeable lag for HID input, making connection of a Wacom Tablet useless?
Does the Raspberry Pi need to be connected to a monitor to be compatible with Synergy?
Is there a light enough easily implementable battery power solution that would juice the Pi & ErgoDox & Wacom & USB HUB (possibly external monitor)?



If anyone else has any input on this , it would really help...
If this sounds like a viable theory to you guys, I'm going to order up the parts and post a complete breakdown on implementing this setup at home...

This is what the diagram looks like so far:
Raspberry Pi approach.
Raspberry Pi approach.
ARDUINO_ERGODOX_DIAGRAM_V002.jpg (69.38 KiB) Viewed 9469 times

User avatar
Muirium
µ

10 Feb 2014, 22:50

I'm following this. I use Teensies with my keyboards extensively (as a controller or as a converter) and many of my keyboards (Model Ms especially) have lots of empty space available for a big heavy battery, too. That's a useful way around the real challenge of wireless peripheral design: power efficiency.

Filco's Minila Air can run on a few AAs for months. Its Bluetooth module is separate from its controller, I think. There are definitely several ways worth exploring.

Some links:
http://deskthority.net/workshop-f7/stee ... =bluetooth
http://handheldsci.com/kb

User avatar
czarek

14 Feb 2014, 21:56

I was thinking about using this with ErgoDox:
http://www.adafruit.com/products/1535
I would really like bluetooth as it could allow use ErgoDox with iPad.

User avatar
des_illacom

14 Feb 2014, 23:32

Very cool, I think I'm going to add it to my order of parts, would like to have a BT option :) nice find , thank you...

User avatar
Muirium
µ

15 Feb 2014, 09:51


User avatar
matt3o
-[°_°]-

15 Feb 2014, 10:04

I have a RN42hid... I can't say it's that of a good news though :) it's not different from other HID bt modules, and they all have the same issues we all know.

this https://www.sparkfun.com/products/11378 is maybe more interesting, having the power module integrated

User avatar
Muirium
µ

15 Feb 2014, 15:06

Hmm. Potentially! Having browsed through all their links, I can't figure out what it actually hooks up to. (Engineers: use diagrams, please!) So what are we talking about: this plus a Teensy / some other controller?

I suspect that the best power efficiency comes from a single component answer, of course. But we can always through battery power at inefficiency and see what we come up with!

User avatar
matt3o
-[°_°]-

15 Feb 2014, 15:16

it needs a controller (teensy or whatever), but at least the power module is integrated.

User avatar
Muirium
µ

15 Feb 2014, 15:18

How does the controller hook up? A bus?

User avatar
matt3o
-[°_°]-

15 Feb 2014, 15:25

Muirium wrote:How does the controller hook up? A bus?
RX/TX pins on the module to TX/RX on the controller

User avatar
Muirium
µ

15 Feb 2014, 15:28

Cool, I was hoping it was something simple. (Pure serial, right?)

Next question is how much current does a Teensy draw while scanning a matrix with zero keys pressed? Because that's the keyboard's base state, even while typing.

User avatar
matt3o
-[°_°]-

15 Feb 2014, 15:32

a Teensy draws about 7 mA at 3.3V/8MHz (you are going wireless so you most likely want to downvolt and downclock it).

but you could make an algorithm that slows down the scanning over time of inactivity. so the first stroke will have (say) 100ms delay and the others virtually none.

User avatar
Muirium
µ

15 Feb 2014, 15:38

Exactly. How much is the matrix scanning the power hog compared to just the Teensy up and running by itself? (I'm a noob and don't even know if Teensies can be told to sleep for a given time, etc.)

I wouldn't mind having a wake up key to press, for instance, after an hour's absence. That could stretch the lifespan greatly.

User avatar
matt3o
-[°_°]-

15 Feb 2014, 15:42

at 0 activity teensy sucks 2.9 mA, at 10% usage (more realistic) 4 mA.

User avatar
Muirium
µ

15 Feb 2014, 15:46

Okay… a hardware power switch on the underside then!

User avatar
matt3o
-[°_°]-

15 Feb 2014, 15:52

Minila is still running on the first charge, I think it's going for 3 months now. I could live with 1.5/1 month, anything less would be very disappointing.

kile

25 Apr 2014, 00:23

Actually, I think this is possible with the small nRF24LE1 board I used for the PJE's OneHand wireless. It looks like the nRF board is just large enough to fit between the two rows of pins for the Teensy. So it should be possible to make a PCB that will plug into the place for the Teensy and accept the nRF board. Kind of like an adapter. As long as the 15 available IO pins of the nRF are enough for the matrix, I think this should work.

User avatar
pietergen

25 Sep 2014, 20:32

Sorry to kick this one up.... I am thinking about a wireless "microdox"/redTilt (hi Suka !) build, so:

- two halves, half A communicating with half B;

- half B containing the 'brain' that communicates with the computer;

- I'd like to have trackpoints in both halves. Like two of these (no longer in production, but can still be found online ). Setup: one for mousing, one for scrolling; or one as a fast, mouse and one as a slow, precise mouse

- in the ideal case, I'd like to bring only 3 pieces with me: half A, half B, and a USB receiver that I stick in the PC. The receiver is in that case for the keyboard and "mouse" (read: both trackpoints). only 3 pieces

- encryption is not needed for the "mouse", is maybe needed for the communication between the keyboard halves (I'm not sure actually) but is absolutely needed for the keyboard communication with the PC. I don't want to transmit my keystokes, open for everybody to read !

Would this scheme be possible with three nRF24LE1 boards? 1 in half A, 1 in half B and one in a USB receiver... Thoughts ? Thanks !

kile

25 Sep 2014, 20:43

Yes, it seems like it would be possible, but it would require a whole lot of work. Too much to be worth it, really.

User avatar
pietergen

25 Sep 2014, 20:54

Hi kile, thanks for the fast response :D My p.m. was totally not needed ! :D

User avatar
pietergen

25 Sep 2014, 21:09

OK, the simpeler solution is: wireless communication between the halves, but a wired connection from one half to the PC. Question remains:
will I be able to transfer keyboard AND "mouse" data through that one wire?
Is a Teensy capable of processing mouse events?
And will a pc understand a combined keyboard/mouse data stream ?

(for completeness: I use both Linux and Windows machines, I am most worried about the Windows ones, I have learned that they are the 'dumbest')

Post Reply

Return to “Workshop”