Author Topic: Blue Pill - a serial concept  (Read 12563 times)

0 Members and 1 Guest are viewing this topic.

Offline bpiphany

  • Thread Starter
  • Posts: 1033
  • Location: Stockholm, Sweden
  • bpiph is a special type of crazy. //mkawa
Blue Pill - a serial concept
« on: Thu, 15 January 2015, 01:20:46 »
87382-0

I made this design to test how well it would work using a serial protocol to read keys and light LEDs. The main idea is that it would be easy to build an input device consisting of several modules by simply daisy chaining them. Reflecting that there is no on-board controller, and no location to mount any specific controller board. There is a 6-pin (plus VCC and GND) serial interface to add any controller circuit of choice. The PCB fits into the Poker case.

One pin of the key switches is connected to one individual input pin on a 74hc165 shift register. Each input pin has an external pull-up resistor in a resistor network shared with three other inputs.

There are LED solder pads for all switch location. 21 of them are connected to a single TLC5947 LED driver. It is a serial communication chip with 24 LED outputs, and 12-bit PWM on each channel.

87376-1
87378-2
87380-3


The layout options are symmetric. Because of this there is a "gap" in the home row. This gap can be placed in the absolute center or offset one key to the left for a more traditional layout. The space bar configurations also reflects the symmetric idea. There are a couple of options both for the symmetric and the offset layouts. Backspace splits into two separate keys. Left and right shift splits as well. For the offset layouts a 2.25 unit return can be chosen, with a 3 unit shift (or 2+1 unit).

87488-4

Connecting a controller
88779-5

[more content to be added]
« Last Edit: Mon, 26 January 2015, 07:37:28 by bpiphany »

Offline Hzza

  • Posts: 377
  • Location: Windsor, UK
Re: Blue Pill - a serial concept
« Reply #1 on: Thu, 15 January 2015, 02:29:38 »
Love everything about this, when can we order? :D

Offline suicidal_orange

  • * Global Moderator
  • Posts: 4771
  • Location: England
Re: Blue Pill - a serial concept
« Reply #2 on: Thu, 15 January 2015, 04:00:58 »
So how well does it work? 

From here it looks like a nightmare to build with all those SMD chips but I guess that just adds to the satisfaction when it's done.  Looking forward to the "more content" :)
120/100g linear Zealio R1  
GMK Hyperfuse
'Split everything' perfection  
MX Clear
SA Hack'd by Geeks     
EasyAVR mod

Offline jdcarpe

  • * Curator
  • Posts: 8852
  • Location: Odessa, TX
  • Live long, and prosper.
Re: Blue Pill - a serial concept
« Reply #3 on: Thu, 15 January 2015, 12:05:17 »
I knew it was only a matter of time before you came out with something like this. I think the philosophy is sound. If only this weren't that damn symmetric stagger, haha.
KMAC :: LZ-GH :: WASD CODE :: WASD v2 :: GH60 :: Alps64 :: JD45 :: IBM Model M :: IBM 4704 "Pingmaster"

http://jd40.info :: http://jd45.info


in memoriam

"When I was a kid, I used to take things apart and never put them back together."

Offline CPTBadAss

  • Woke up like this
  • Posts: 14364
    • Tactile Zine
Re: Blue Pill - a serial concept
« Reply #4 on: Thu, 15 January 2015, 12:10:11 »
This is really cool. Looking forward to seeing updates :).

Offline SpAmRaY

  • NOT a Moderator
  • * Certified Spammer
  • Posts: 14667
  • Location: ¯\(°_o)/¯
  • because reasons.......
Re: Blue Pill - a serial concept
« Reply #5 on: Thu, 15 January 2015, 12:11:51 »
Posting to remind myself to check back for more info.

Offline Hzza

  • Posts: 377
  • Location: Windsor, UK
Re: Blue Pill - a serial concept
« Reply #6 on: Thu, 15 January 2015, 12:20:05 »
I knew it was only a matter of time before you came out with something like this. I think the philosophy is sound. If only this weren't that damn symmetric stagger, haha.

I'm pretty sure normal stagger/60% layouts are possible.

Check this post on DT.

Offline byker

  • Literally Canada
  • ** Moderator Emeritus
  • Posts: 3136
  • Location: Gone fishin
Re: Blue Pill - a serial concept
« Reply #7 on: Thu, 15 January 2015, 12:44:11 »
This is cool, I am excited to see more!  :)

Offline geniekid

  • Posts: 763
  • Location: Chicago, IL
Re: Blue Pill - a serial concept
« Reply #8 on: Thu, 15 January 2015, 13:54:15 »
I'm having a hard time understanding this.  So I would wire the Latch/LEDs/Enable/Clock/Load/Keys holes to a controller (like a Teensy) and then wire the controller to the GND/VCC/D+/D- holes (which presumably connect to the USB mount holes)?  And if I wanted to add another module (like a Function row) I'd wire the LLECLK holes from module A to module B (are those the 3 and 3 diagonally lined holes near the USB mount?) and then wire the LLECLK holes from module B to the controller (and then back to either module A or B for USB connectivity)?

Offline bpiphany

  • Thread Starter
  • Posts: 1033
  • Location: Stockholm, Sweden
  • bpiph is a special type of crazy. //mkawa
Re: Blue Pill - a serial concept
« Reply #9 on: Thu, 15 January 2015, 14:22:56 »
I knew it was only a matter of time before you came out with something like this. I think the philosophy is sound. If only this weren't that damn symmetric stagger, haha.
I'm pretty sure normal stagger/60% layouts are possible.
Check this post on DT.
Nah, there are two different symmetric staggers, one with "the gap" (mind the gap could have been a catchy name as well...) absolutely centered and one with the gap shifted one position to the left. Symmetry is another part of breaking conventions.

I'm having a hard time understanding this.  So I would wire the Latch/LEDs/Enable/Clock/Load/Keys holes to a controller (like a Teensy) and then wire the controller to the GND/VCC/D+/D- holes (which presumably connect to the USB mount holes)?  And if I wanted to add another module (like a Function row) I'd wire the LLECLK holes from module A to module B (are those the 3 and 3 diagonally lined holes near the USB mount?) and then wire the LLECLK holes from module B to the controller (and then back to either module A or B for USB connectivity)?

Actually I cheated a bit on my own concept.. The mini-usb connects power to the main board, the USB leads are then broken out next to the usb-connector. I attach an USB cable there and plug it into a Teensy. The Teensy is then connected to the 6 pins at the other end of the board. After all that I ran a bit out of speed and decided to just finish the thing up. So I didn't put the other end of the 6-pin interface in. There should have been an input as well. Now there is only output available from the board. In a chained setup this board would have to be at the end furthest away from the controller.


Offline geniekid

  • Posts: 763
  • Location: Chicago, IL
Re: Blue Pill - a serial concept
« Reply #10 on: Thu, 15 January 2015, 15:16:04 »
I'm having a hard time understanding this.  So I would wire the Latch/LEDs/Enable/Clock/Load/Keys holes to a controller (like a Teensy) and then wire the controller to the GND/VCC/D+/D- holes (which presumably connect to the USB mount holes)?  And if I wanted to add another module (like a Function row) I'd wire the LLECLK holes from module A to module B (are those the 3 and 3 diagonally lined holes near the USB mount?) and then wire the LLECLK holes from module B to the controller (and then back to either module A or B for USB connectivity)?

Actually I cheated a bit on my own concept.. The mini-usb connects power to the main board, the USB leads are then broken out next to the usb-connector. I attach an USB cable there and plug it into a Teensy. The Teensy is then connected to the 6 pins at the other end of the board. After all that I ran a bit out of speed and decided to just finish the thing up. So I didn't put the other end of the 6-pin interface in. There should have been an input as well. Now there is only output available from the board. In a chained setup this board would have to be at the end furthest away from the controller.

I think I understand now - every module would have a 6-pin input and a 6-pin output to chain them together.  At one end of the chain would be a controller which would be wired to a USB connector, either on the controller board or one of the module boards.  Correct me if I'm wrong :)

Offline bpiphany

  • Thread Starter
  • Posts: 1033
  • Location: Stockholm, Sweden
  • bpiph is a special type of crazy. //mkawa
Re: Blue Pill - a serial concept
« Reply #11 on: Thu, 15 January 2015, 15:34:14 »
It sounds like you got it right =)

Offline bpiphany

  • Thread Starter
  • Posts: 1033
  • Location: Stockholm, Sweden
  • bpiph is a special type of crazy. //mkawa
Re: Blue Pill - a serial concept
« Reply #12 on: Fri, 16 January 2015, 07:41:34 »
I do have a few boards to sell at the moment. I also have the necessary components. Soldering the LED driver without a re-flow oven has been no fun. It has a large thermal pad under its belly. I had intended to leave some copper open on the flip side to be able to re-flow that pad with an iron. Either I forgot or I designed the openings in the solder mask too small. The good news is that I have a package of four toasters ready for pickup at the post office. I've long thought I need I bigger oven. When I've set that up I will easily solder the components before shipping.

I paid $30 for the PCBs, the components were $10 (the LED driver a large part of that). Since this is a prototype run, and a potential larger future production would come in cheaper I am prepared to come out very short ahead. Shipping would be $10 as a rough estimate. With $5 for my time doing the soldering $55 is probably the least I could ask at the moment.

Offline joey

  • Posts: 2296
  • Location: UK
Re: Blue Pill - a serial concept
« Reply #13 on: Fri, 16 January 2015, 08:59:57 »
I paid $30 for the PCBs
Where are PCBs so cheap?

Offline twiddle

  • Posts: 165
    • Portfolio
Re: Blue Pill - a serial concept
« Reply #14 on: Sat, 17 January 2015, 15:15:23 »
Out of curiosity, is there a reason you didn't use SPI or something like that for communication between the modules, and rolled your own?

Offline jacobolus

  • Posts: 3661
  • Location: San Francisco, CA
Re: Blue Pill - a serial concept
« Reply #15 on: Sat, 17 January 2015, 17:13:46 »
ZXCVB seem to all be shifted over by one key. B is going to be a real pain in the ass to reach.

Offline bpiphany

  • Thread Starter
  • Posts: 1033
  • Location: Stockholm, Sweden
  • bpiph is a special type of crazy. //mkawa
Re: Blue Pill - a serial concept
« Reply #16 on: Mon, 19 January 2015, 02:50:19 »
I paid $30 for the PCBs
Where are PCBs so cheap?

pcbwing.com, they are the best! That said without having tried anyone else =) They have always been very helpful and the boards seem to be top quality.

Out of curiosity, is there a reason you didn't use SPI or something like that for communication between the modules, and rolled your own?

I don't know if I would call it my own.. It's the serial protocol of the shift registers and LED driver. Very fast and simple, and I don't really know what either I2C or SPI is. I just make stuff work =) But I suppose putting a I2C-able controller in each part of the system and then connecting those together is still very viable.

ZXCVB seem to all be shifted over by one key. B is going to be a real pain in the ass to reach.

The picture would just be an example of how you could do it. With full programmability you can of course choose whatever layout you want. Myself I always used the key next to my my pinky for the 'Z'-key in contrary to how you are "supposed" to do. On my daily keyboard I have a 2 unit shift and ZXCVB like in the picture above. I never had any trouble reaching 'B'. That's actually only half a unit extra reach for 'B' and at least my index fingers are quite reachy. Or if you happen to use 'B' very often, put some other letter there. Also 'B' is not a very common letter, at least not in the English language.

There is of course also no reason to stop at tweaking the physical key placement. Why not change the layout as well, dvorak, colemak or whatever you think is best for you? Try this instead.
« Last Edit: Mon, 19 January 2015, 02:59:56 by bpiphany »

Offline islisis

  • Posts: 120
  • Location: Tokyo, Japan
Re: Blue Pill - a serial concept
« Reply #17 on: Tue, 20 January 2015, 11:21:39 »
pieterGen's shared center shift layout convinced me that i need this board now :) best of luck with its production!

could you see any room for an optional trackpoint and bluetooth in this design?

also, i just noticed that the top photo is not symmetric like the pcb. i hope symmetric is the way you go :P
« Last Edit: Tue, 03 February 2015, 16:47:37 by islisis »

Offline MOZ

  • KING OF THE NEWBIES
  • * Maker
  • Posts: 3981
  • Location: Jo'burg
  • Busy making stuff
Re: Blue Pill - a serial concept
« Reply #18 on: Wed, 21 January 2015, 06:50:31 »
This is very interesting, specially the modularity. I started something like this last winter, but ran out of steam as real life caught on. However when I was working on my project, I was considering I2C and then went onto to abandon it due to the latency and potentially slow scan speeds after a couple of modules were connected. What speeds are you expecting with the daisy chains and having perhaps 3-5 modules?

Offline islisis

  • Posts: 120
  • Location: Tokyo, Japan
Re: Blue Pill - a serial concept
« Reply #19 on: Sat, 31 January 2015, 23:47:53 »
would it be possible to consider a design where the top number row is aligned with the r3 row below it? the 0.25U stagger can't be maintained anyway, and i think thay aligned keys would be less of a stretch than 0.5U stagger, as well as preserve 'home position' fingering.

Offline RominRonin

  • * Maker
  • Posts: 305
  • Location: VIENNA
Re: Blue Pill - a serial concept
« Reply #20 on: Tue, 17 May 2016, 10:08:10 »
As a fan of symmetrical layouts, I like the Blue Pill pcb. Where can we find out if this gets the GB treatment?

Offline need

  • Posts: 460
Re: Blue Pill - a serial concept
« Reply #21 on: Tue, 17 May 2016, 10:12:58 »
This really should be on massdrop, it will be huge.

Offline AKmalamute

  • HHKB Scrub
  • Posts: 837
  • Location: Western WA, USA
serial concept
« Reply #22 on: Tue, 17 May 2016, 15:48:12 »
My first response was "Can you even attach a keyboard to COM1 on modern OSses?" (I found a website selling software that lets you do that, so the answer actually is YES)

My second thought was "Oh  :( That would make for a heavy, bulky, easily split cable" If I had this, I expect I'd crazy glue some velcro strips to either end of the module cables, so they could be attached to the next module in an impact-resistant way. I'm already dealing with Windows occasionally deciding USB keyboards are for newbs (Thus a RS232 keyboard intrigues me but I'd settle for PS2) I don't need to add three inline connectors that need to be reseated to try and revive my ability to log out normally.

HHKB-lite2, Dvorak user

Offline bpiphany

  • Thread Starter
  • Posts: 1033
  • Location: Stockholm, Sweden
  • bpiph is a special type of crazy. //mkawa
Re: Blue Pill - a serial concept
« Reply #23 on: Sun, 22 May 2016, 22:37:41 »
As a fan of symmetrical layouts, I like the Blue Pill pcb. Where can we find out if this gets the GB treatment?

This really should be on massdrop, it will be huge.

I still have the same number of few boards to get rid of.. Interest seem bleak, but honestly I haven't pushed much either =) I built one for a friend and I have to say it was a little  bit finicky to have the controller hanging by the wires. I probably could have done a less sloppy job though, and I should have taken photos... It all fits into a Poker case in the end though.

My first response was "Can you even attach a keyboard to COM1 on modern OSses?" (I found a website selling software that lets you do that, so the answer actually is YES)

My second thought was "Oh  :( That would make for a heavy, bulky, easily split cable" If I had this, I expect I'd crazy glue some velcro strips to either end of the module cables, so they could be attached to the next module in an impact-resistant way. I'm already dealing with Windows occasionally deciding USB keyboards are for newbs (Thus a RS232 keyboard intrigues me but I'd settle for PS2) I don't need to add three inline connectors that need to be reseated to try and revive my ability to log out normally.

Well for a starter, Windows is for newbs ;) And no I don't expect anyone to attach a keyboard to their serial port. (Universal Serial Bus is another matter...)

Offline bpiphany

  • Thread Starter
  • Posts: 1033
  • Location: Stockholm, Sweden
  • bpiph is a special type of crazy. //mkawa
Re: Blue Pill - a serial concept
« Reply #24 on: Mon, 21 November 2016, 05:06:11 »
Not just flogging the horse. Someone asked for it and here is the schematic.

* tinysym_schematic.svg (1447.5 kB - downloaded 284 times.)

Offline tee-eye

  • Posts: 25
  • Location: oregon
Re: Blue Pill - a serial concept
« Reply #25 on: Mon, 21 November 2016, 20:16:00 »
Not just flogging the horse. Someone asked for it and here is the schematic.

(Attachment Link)

thank you so much

Offline AKmalamute

  • HHKB Scrub
  • Posts: 837
  • Location: Western WA, USA
Re: Blue Pill - a serial concept
« Reply #26 on: Tue, 22 November 2016, 01:06:14 »
I'd still be interested in attaching a keyboard to my COM port...
Is there any logical reason that couldn't be done with this arrangement? It would just mean the off-board controller would encode for serial output.

 Or, keeping with the theory of maximum modularity, one 328P could be used to encode to serial, and the detached to make room for a USB -native controller. Or the ever-popular PS2, which is still on nearly all the machines I routinely work with.

HHKB-lite2, Dvorak user