[WIP] OneHand - 20% Keyboard

Johnny

13 Oct 2015, 07:45

Hi PJE,

I've been lurking on your thread for a while (I first learned about your project on that other site) I think you've done an outstanding job here! Originally, I was researching ideas to design my own individual boards, but I really like what you've done here. I am interested in purchasing two pair of bare PCBs (total of 4) to build two TwoHands. One each for a portable computer, and one for my desk.

Please let me know what you need from me to make this happen.

Thank you,
Johnny

User avatar
Mrgoldenzombie

15 Oct 2015, 04:07

Pretty cool if you ask me

rrrsss

17 Oct 2015, 11:28

just read through these. really excited on what you're building. i'm interested in 2 OneHand so i can use it either for gaming or normal typing. i'll be keeping a close eye. and i'm really interested on what is the final chording/half-keyboard layout, and what is the code that you are using in the teensys. just throwing this one in: is it possible to have mousekeys bound to the keys?

dragon788

26 Nov 2015, 03:17

PJE, I'm definitely interested in a pair of these as well. I've been playing with my Maltron one hand units and they are OK, and especially nice if you are physically restricted to only using one hand and just learning or recovering from RSI they can be beneficial, but for quick shortcuts or chording they aren't really what I need.

It was mentioned previously you are going to a matrix format, have you looked (in your limited free time) at using the TMK firmware or are you staying custom for the ability to retain the chording as well as the communication between halves and the LCD(s) and other devices?

I've got a couple ErgoDox on order and I play to use one to try stenography, but your keyboards with Cherry Reds would probably work just as well if not better and are a lot more compact to boot. With kile's wireless version I can imagine being able to do 200+ wpm with Steno on a single leg in mere moments.

User avatar
PJE

26 Nov 2015, 21:21

Apologies for the lack of progress. Just before I pulled the trigger on the PCBs I saw the STM32F072 CPU, and nRF51822 Bluetooth module...

The STM32F072 has a crystal-less USB making the PCB easier, and a USB bootloader, which should allow software updates over USB. All for around $5.

The nRF51822 module has the same Cortex-M0 CPU as the STM32F072, but does not have USB. I'm looking to see if I'm going to make two different boards, one with the STM32 chip and the option of Bluetooth, one of each, or try and combine them into a common matrix.

I'm also trying to see whether the TwoHand will go back to two interconnected CPUs, or a larger matrix scanned from one side.

PJE

User avatar
flabbergast

26 Nov 2015, 22:07

Just a warning - while the STM32F072 and nordic nRF51822 are both cortex m0, they're definitely not the same chip; the firmware is not going to be directly reusable, and I'm not aware of any library that would support both chips at the moment. Cortex M0 means it's got the same "base" architecture, but most of the stuff that one normally uses is chip specific (including GPIOs, startup code, timers...)

User avatar
PJE

26 Nov 2015, 22:32

I was not expecting to use the same code, but thought it may be possible to make a board which used either CPU to scan the matrix, but given the cost of the STM32 it might be simpler to use this to control the matrix and act as a programming interface for the Bluetooth module. I'm playing with a STM32F072-Discovery module at the moment.

User avatar
flabbergast

26 Nov 2015, 22:44

Using chips as different as these interchangeably is generally impossible also hardware-wise, the pinouts tend to be wildly different. Although you could just do footprints for both of the chips side-by-side, wired to the same matrix, with the intention to always solder in just one of them (which is what you probably meant, rereading your post now). This would require a lot of space though, because the ARM chips generally require at least 4-6 caps and maybe 1-2 resistors for a minimal circuit (you could share some of those though).

(I personally like the F072 a lot - but I've no idea about the nordic/bluetooth stuff.)

User avatar
PJE

26 Nov 2015, 23:09

Separate footprints, with the Bluetooth at the top. The main issue is if your using BT then you need a battery charger circuit, powered by the USB so you can run disconnected.

I've decided to create a simple STM32F072 only board first, and add Bluetooth later.

I'm working on the software using the discovery board at the moment, using the free 256K Keil compiler...

User avatar
flabbergast

26 Nov 2015, 23:28

Nice! (Btw, I've played with F072 discovery board as well; I've managed to run TMK firmware on it.)

Charging circuit - I thought that just requires one more chip (like SOT-23-5 size or such) plus a few passives.

User avatar
PJE

27 Nov 2015, 00:22

My design used a derivative of the Adafruit design, with a battery charger ic connected to the USB, and then step down the battery to 3V or so. The design is very small, but a little tricky to solder - I may need to buy a SMD oven...

I'll look at the TMK firmware to see what it can do. The main issue is allowing easy software updates.

User avatar
scottc

25 Jan 2016, 23:55

Necro post! For people playing with OneHand prototypes - do you have any firmware recommendations? I just got a prototype from flabbergast and I don't know where to start with it!

User avatar
PJE

26 Jan 2016, 01:56

You need to install the Teensy arduino development system (or at least the loader), and I can give you the source code for my initial version.



I'm currently working on an updated version which uses an STM32F072 and has the option of adding a bluetooth hid interface and battery, but work has slowed progress somewhat. I may start with Atreus style two hand version first as it has more space for componnts. I've laid out the keys, CPU and bluetooth, and I'm working on the power circuit.



Drop me a message with your email and what you have, and I'll do what I can to help.

User avatar
scottc

26 Jan 2016, 10:56

Thanks PJE, that would be excellent. For now I am using TMK but of course that doesn't support chording so the OneHand is basically a glorified numpad currently. I'll PM you shortly.

User avatar
PJE

26 Jan 2016, 17:34

@scottc, I'll dig out my code and send it to you.

I had a version which used complex chords originally, but ended up on modes and simpler chords which I found simpler.

User avatar
richfiles

05 Feb 2016, 03:20

This seems like it has a lot of potential! I loaded up on extra keys (from the Danger Zone keycap set on Massdrop), cause I wanted ALL the unique keys from the different child packs. I'm sure I'd have enough keys to populate a pair of these things.

What's it take to get a pair? I am also very comfortable with soldering, so not concerned about that. I can build my own stuff just fine. I even hand solder SMT parts.

User avatar
PJE

14 Feb 2016, 01:33

Hi All,

Sorry for the slow response to the thread. Life's been a little hectic recently...

I'm still working on the STM32F072 based board with bluetooth, but I don't like how big the PCB was getting so I'm moving the CPU location.

I've attached ALL the versions of code I could find for the original design, as well as the touchpad tester and OLED display.

I'm working on the new board this evening, and hope for inspiration on the layout - here's a recent arrangement.
Current new version
Current new version
OneHand_STM32F072.png (27.49 KiB) Viewed 8218 times
I've also been laying out a 40% (as well as 35%) keyboards:
40% layout I'm looking at...
40% layout I'm looking at...
40pct.png (17.75 KiB) Viewed 8218 times
Hopefully I'll have an update soon.
OneHand_All.zip
All the source codes for the current design.
(95.81 KiB) Downloaded 258 times

rsac

16 Mar 2016, 21:50

Curiosity: why did are you making a matrix for this new board? The STM32F072 that you chose has more than enough spare pins to directly address each of the 20 keys, like in your one hand V1.

Expounder

08 Apr 2016, 07:10

Well I am really excited about this project. Will it be possible to get a board shipped to the States when the new version comes out? I have access to good CAD software and know some machinist so I am thinking about designing and having made a custom aluminum and delrin case.

User avatar
chuckdee

08 Apr 2016, 19:56

What this would really be good for is a gamepad, I think. I'm definitely interested in it.

User avatar
Phenix
-p

15 Apr 2016, 00:15

I am also interested, looking forward into process

glyakk

20 Jun 2016, 00:29

I am also interested in this project, has there been any progress on it?

User avatar
PJE

20 Jun 2016, 01:02

Apologies for the lack of progress. I'm working on a simplest PCB design - to allow me to remove the need for the Teensy.

I'm on vacation for the next couple of weeks, so should make some progress.

In the interim I'm going to order some more of the V1 PCBs - and I'll send them out to interested parties while the V2 software is developed.

Sent from my SM-G900V using Tapatalk

Remaker

14 Jul 2016, 03:31

Love this board. You have done some might fine work here on this. I was looking for a macro pad to combine with my ergodox and this will fit perfectly.
Last edited by Remaker on 22 Jul 2016, 22:17, edited 1 time in total.

User avatar
hbar

15 Jul 2016, 09:31

Nice work there, PJE. Looking forward to your updates.
PJE wrote: Separate footprints, with the Bluetooth at the top. The main issue is if your using BT then you need a battery charger circuit, powered by the USB so you can run disconnected.
I looked at the same issue recently: the charging circuit becomes a problem the moment you look at the devices available, as almost all come in weird packages not meant for hand-soldering (QFN etc.), and only few support LiFePO4.

There are types that integrate a Qi receiver and a charger, but none for LiFePO4. Such a chip in an SSOP would be perfect.

BTW, which BLE module are you using?

User avatar
hbar

15 Jul 2016, 15:57

Reading through the topic, PJE, I miss a description of the layout you're currently using. Would you mind showing us how it works? Also, which hand do you use it with?

I'm asking because I've already built a split keyboard with 18 active keys per side, and I'm in the process of testing bits for a new one, and have been playing with the idea of using either half independently as a one-handed keyboard.

ħ

Remaker

29 Jul 2016, 03:51

I am looking to put in an order for some 1h pcbs but I am getting confused by the files. I see the onehand_all zip but which folder should I use for the files? I was looking to use the V2 with the teensy so would I use the files in the onehand_V0_8M folder? I have hand soldered and built several keyboards but this is the first time I would have to go and have the pcb made.

User avatar
PJE

16 Oct 2016, 19:08

Here's the current status of the PCB for the new OneHand design. I've changed this version to use a 1.5u cap on the two larger keys as this allows a more compact PCB, and removes the headache of sourcing stabilizers. I may revert to the 2u keys if needed in the future.

The design uses a 48-pin STM32F072 Microcontroller and has the option of adding an nRF51822-04 Bluetooth BLE module ($4 off EBay) and a Lithium Ion Battery. I've wired all the signals from the BLE module to the STM32, and therefore it should be able to in-circuit reprogram the BLE module with a little effort. There are a couple of routing improvements I've just spotted, but all the components are placed and routed.

The expectation is that you can build a USB only one handed keyboard by not populating some of the components, and also create an I2C second secondary keyboard, which does not require the USB or power supply components to be installed, to speed up build and reduce cost. Parts cost of the design (less switches & caps) is around $25-30, with the second hand being around $10-15.

There's a charging LED in the top middle switch, and the option of either 3 LEDs at the bottom separate from the switches, 3 LEDs embedded in the bottom row of the keyboard, or an RGB LED in the center bottom key using a Gateron switch body.

I'm hoping the BLE module will allow a HID over GATT link to make the keyboard wireless as either a single or two handed design, but I don't know how well this will work. I have a fallback of adding a separate BLE module between the two keyboards to provide the link.

Image
Image

I've also been working on a 3D printed tray which will hold the PCB and if needed the battery.

User avatar
Phenix
-p

05 May 2017, 17:04

Can you show some new process to us? Atm I am looking at an ergonomic board for traveling..

Post Reply

Return to “Workshop”