[WIP] OneHand - 20% Keyboard
-
- Location: US
- Main keyboard: Custom
- Main mouse: Corsair M95
- Favorite switch: Cherry MX Blue (but use white for noise purposes)
- DT Pro Member: -
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
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
- Mrgoldenzombie
- Location: Ohio
- Main keyboard: Poker II
- Main mouse: Deathadder
- Favorite switch: Brown
- DT Pro Member: -
Pretty cool if you ask me
-
- Location: Indonesia
- Main keyboard: pok3r
- Main mouse: mousekeys
- Favorite switch: mx clears
- DT Pro Member: -
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?
-
- Location: Midwest USA
- Main keyboard: Soon an ErgoDox Infinity
- Main mouse: Logitech MX series
- Favorite switch: Zealios!
- DT Pro Member: -
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.
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.
- PJE
- Location: Michigan, USA
- Main keyboard: Happy Hacking 2 Lite
- Main mouse: Microsoft 4000
- DT Pro Member: -
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
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
- flabbergast
- Location: Southampton, UK
- DT Pro Member: 0120
- Contact:
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...)
- PJE
- Location: Michigan, USA
- Main keyboard: Happy Hacking 2 Lite
- Main mouse: Microsoft 4000
- DT Pro Member: -
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.
- flabbergast
- Location: Southampton, UK
- DT Pro Member: 0120
- Contact:
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.)
(I personally like the F072 a lot - but I've no idea about the nordic/bluetooth stuff.)
- PJE
- Location: Michigan, USA
- Main keyboard: Happy Hacking 2 Lite
- Main mouse: Microsoft 4000
- DT Pro Member: -
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...
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...
- flabbergast
- Location: Southampton, UK
- DT Pro Member: 0120
- Contact:
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.
Charging circuit - I thought that just requires one more chip (like SOT-23-5 size or such) plus a few passives.
- PJE
- Location: Michigan, USA
- Main keyboard: Happy Hacking 2 Lite
- Main mouse: Microsoft 4000
- DT Pro Member: -
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.
I'll look at the TMK firmware to see what it can do. The main issue is allowing easy software updates.
- scottc
- ☃
- Location: Remote locations in Europe
- Main keyboard: GH60-HASRO 62g Nixies, HHKB Pro1 HS, Novatouch
- Main mouse: Steelseries Rival 300
- Favorite switch: Nixdorf 'Soft Touch' MX Black
- DT Pro Member: -
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!
- PJE
- Location: Michigan, USA
- Main keyboard: Happy Hacking 2 Lite
- Main mouse: Microsoft 4000
- DT Pro Member: -
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.
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.
- scottc
- ☃
- Location: Remote locations in Europe
- Main keyboard: GH60-HASRO 62g Nixies, HHKB Pro1 HS, Novatouch
- Main mouse: Steelseries Rival 300
- Favorite switch: Nixdorf 'Soft Touch' MX Black
- DT Pro Member: -
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.
- richfiles
- Location: MN, USA
- Main keyboard: Logitech DiNovo Edge
- Main mouse: Microsoft Optical Notebook Mouse
- Favorite switch: Alps SKCM Amber "Taxi Yellow"
- DT Pro Member: -
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.
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.
- PJE
- Location: Michigan, USA
- Main keyboard: Happy Hacking 2 Lite
- Main mouse: Microsoft 4000
- DT Pro Member: -
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.
I've also been laying out a 40% (as well as 35%) keyboards:
Hopefully I'll have an update soon.
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.
I've also been laying out a 40% (as well as 35%) keyboards:
Hopefully I'll have an update soon.
-
- Location: New York
- DT Pro Member: -
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.
- PJE
- Location: Michigan, USA
- Main keyboard: Happy Hacking 2 Lite
- Main mouse: Microsoft 4000
- DT Pro Member: -
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
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
- hbar
- Location: Germany
- Main keyboard: ħα
- Main mouse: ħα
- Favorite switch: Campagnolo Ergopower
- DT Pro Member: -
Nice work there, PJE. Looking forward to your updates.
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?
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.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.
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?
- hbar
- Location: Germany
- Main keyboard: ħα
- Main mouse: ħα
- Favorite switch: Campagnolo Ergopower
- DT Pro Member: -
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.
ħ
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.
ħ
-
- Location: McFarland WI.
- DT Pro Member: -
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.
- PJE
- Location: Michigan, USA
- Main keyboard: Happy Hacking 2 Lite
- Main mouse: Microsoft 4000
- DT Pro Member: -
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.
I've also been working on a 3D printed tray which will hold the PCB and if needed the battery.
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.
I've also been working on a 3D printed tray which will hold the PCB and if needed the battery.