Author Topic: Thinking in a new keyboard project, some doubts...  (Read 3932 times)

0 Members and 1 Guest are viewing this topic.

Offline Nightlane

  • Thread Starter
  • Posts: 7
  • Location: Spain, Madrid
Thinking in a new keyboard project, some doubts...
« on: Fri, 24 October 2014, 06:49:15 »
Hey,

I have been looking a bit over anduino and over that other chip to which Soarer developed a firmware.

This is a bit a test of a concept, for fun and, If able, to build something (or give ideas to other developers). I am a coder and a gamer, so I am looking a keyboard for those both activities. :)

I am looking for a 60% keyboard design.

Some extra especial keys. Those special keys my plan is to send an special code (any code not used for other function) and catch it in one running application to do special tasks.

A wire for each key.

Pooling rate as 1000.

Create a complex backlit system (I am being inspired in that RGB backlight now in some keyboards, but a 1 color and 8bit status is a good start but maybe too expensive). Being able to update the backlit behaviour in a safe way, if possible.

Mouse capabilities... first as ducky mini, later will add some custom controls.

*************


The first stage of my plan is at first look for or if not found define a circuit to be able go multiply inputs and outputs, using a bus to serialize data through it to set or read data from these input/outputs, do pollings, etc.

In the while analyze arduino and other solutions as the main controller...





The first doubt is about that I have used in the past programs which were used like a virtual trainer to place digital electrical components and then be able to check how they works together. I have seen KiCad but as far as I have looked at it I do not seen that it have this type of functionality. Can please you recommend me a program to do this? And free? :)  (Arduino/other chip compatible?)
« Last Edit: Mon, 27 October 2014, 11:15:38 by Nightlane »

Offline jacobolus

  • Posts: 3661
  • Location: San Francisco, CA
Re: Returning to this...
« Reply #1 on: Fri, 24 October 2014, 23:01:16 »
Are you designing your own PCB, or just hand wiring your keyboard? Both are viable: for just a single keyboard, hand wiring is probably faster, easier, and cheaper, but the soldering itself will be a bit harder than soldering to a PCB.

I don’t quite understand what you mean by virtual trainer software. Keyboard circuits are pretty simple, I don’t think you need to simulate them first.

By the way, I recommend you change the thread topic/title to something a bit more expressive than “returning to this”.

Offline Nightlane

  • Thread Starter
  • Posts: 7
  • Location: Spain, Madrid
Re: Thinking in a new kb project (mainly researching), some doubts...
« Reply #2 on: Mon, 27 October 2014, 09:11:28 »
Are you designing your own PCB, or just hand wiring your keyboard? Both are viable: for just a single keyboard, hand wiring is probably faster, easier, and cheaper, but the soldering itself will be a bit harder than soldering to a PCB.
For the idea I have I need to build a PCB, to use additional chips.

I don’t quite understand what you mean by virtual trainer software. Keyboard circuits are pretty simple, I don’t think you need to simulate them first.
I am talking about those type of programs where you place components, wire them, simulate/debug them, and maybe be able to create an optimized PCB.

Just I do not know yet  the proper name in English language to this type of software.

Yeah, maybe it is simpler to do it directly in kicad, but I am interested too in know a good program of that type, for this or future projects. Curiosity!

By the way, I recommend you change the thread topic/title to something a bit more expressive than “returning to this”.
:O, sure, done, thanks you for pointing that!!

Offline Oobly

  • * Esteemed Elder
  • Posts: 3929
  • Location: Finland
Re: Thinking in a new keyboard project, some doubts...
« Reply #3 on: Wed, 29 October 2014, 07:35:47 »
QUCS is a good "circuit simulator" and is open source and free: http://qucs.sourceforge.net/

It takes some time to learn how to use it, but it's very good and flexible. Great for analog circuits, such as amplifiers, crossovers, etc.

Not very useful for keyboards, though, IMHO. Mostly you're going to design around the controller chip you use and there won't be many external components. So it may be better just to lay them out in KiCad according to the datasheet for the controller you choose.
Buying more keycaps,
it really hacks my wallet,
but I must have them.

Offline Nightlane

  • Thread Starter
  • Posts: 7
  • Location: Spain, Madrid
Re: Thinking in a new keyboard project, some doubts...
« Reply #4 on: Thu, 06 November 2014, 04:09:51 »
QUCS is a good "circuit simulator" and is open source and free: http://qucs.sourceforge.net/

Thanks you! I have read too about that this software can work with digital circuits... I will give it a try.

...

Returning to the matter, I am thinking in using an arduino micro as the controller, as 20 inputs/outputs should be enough to handle all the functionality that I am looking.

Now I am looking for the names of those already designed circuits which does:
* when the tick comes, copy its X inputs into its X outputs. inside there are flipflops.
* from 8 bits input generate a 0..5V analog voltage.

I want to design an graduated backlit system. It is simple to design but the problem is that the options are not so many, we could use tons of generic chips containing basic logical constructions (and dacs), which requires space, which a keyboard usually do not have, or instead design it in detail so a chip could be built... but it is very expensive.

Hmmm, maybe there is something already done and that  could be adquired by common means. Maybe a chip with tons of analog outputs.
I have found some options: http://www.ti.com/lit/ds/symlink/tlc7226.pdf, http://playground.arduino.cc/learning/4051, http://www.ti.com.cn/cn/lit/ds/symlink/cd74hc4051-ep.pdf, http://www.nxp.com/documents/data_sheet/74HC_HCT4051.pdf, http://www.onsemi.com/PowerSolutions/product.do?id=MC14067B, http://www.analog.com/en/switchesmultiplexers/multiplexers-muxes/adg726/products/product.html, http://ams.aeroflex.com/pagesproduct/datasheets/mux/mux8501.pdf

 But maybe it is not what I am looking for. I remember using a chip for convert 0 to 5V to a 8 bits value, but I do not remember the name. I do not know if the opposite is a dac, or if maybe the dac is more powerful and maybe more costly, or maybe not what I need. And if I remember correctly, a multiplex does the task of having an input, copy it by a selected output of many, but it do not "save" the output of previous settings, so additional circuitry should be used...

Am I right? :-P

Offline yasuo

  • Posts: 978
  • Location: ID
  • spanengan puyeng newbie
Re: Returning to this...
« Reply #5 on: Thu, 06 November 2014, 04:18:30 »
Are you designing your own PCB, or just hand wiring your keyboard? Both are viable: for just a single keyboard, hand wiring is probably faster, easier, and cheaper, but the soldering itself will be a bit harder than soldering to a PCB.
handwiring is not really cheaper :-X
Logitech MK220 Colemak DH
SplitSyml by Moz BlacksMx fuk blacks

2/3 8.5pm                                          in de la my september month ya da all get my fukka "fake message"

Offline vvp

  • Posts: 887
Re: Returning to this...
« Reply #6 on: Thu, 06 November 2014, 10:12:17 »
Are you designing your own PCB, or just hand wiring your keyboard? Both are viable: for just a single keyboard, hand wiring is probably faster, easier, and cheaper, but the soldering itself will be a bit harder than soldering to a PCB.
handwiring is not really cheaper :-X
I cannot imagine how you could design and get PCB etched for less than just hand-wiring it. Notice that hard-wiring which most people do here is more complicated that it needs to be. Use this method:
http://deskthority.net/workshop-f7/katy-keyboard-or-k80cs-key80-contoured-split-t8524.html#p181273
It does not take much time when you do not need to fiddle with insulation. Or (if you feel you need the insulation there) then use "enameled" wire. Use high temperature (about 420°C) to burn of the insulation coating. Use lower temperature for soldering the wire to switches and diodes (or be very quick so that you do not overheat them). If using two different temperatures then two irons are handy. One at about 420°C (or even more) for burning off the insulation, the other one at about 330°C for soldering.

Offline yasuo

  • Posts: 978
  • Location: ID
  • spanengan puyeng newbie
Re: Returning to this...
« Reply #7 on: Thu, 06 November 2014, 10:22:19 »
Are you designing your own PCB, or just hand wiring your keyboard? Both are viable: for just a single keyboard, hand wiring is probably faster, easier, and cheaper, but the soldering itself will be a bit harder than soldering to a PCB.
handwiring is not really cheaper :-X
I cannot imagine how you could design and get PCB etched for less than just hand-wiring it. Notice that hard-wiring which most people do here is more complicated that it needs to be. Use this method:
http://deskthority.net/workshop-f7/katy-keyboard-or-k80cs-key80-contoured-split-t8524.html#p181273
It does not take much time when you do not need to fiddle with insulation. Or (if you feel you need the insulation there) then use "enameled" wire. Use high temperature (about 420°C) to burn of the insulation coating. Use lower temperature for soldering the wire to switches and diodes (or be very quick so that you do not overheat them). If using two different temperatures then two irons are handy. One at about 420°C (or even more) for burning off the insulation, the other one at about 330°C for soldering.
yeah the difilicut is design pcb but after its done to pcb maker i think arround $10+ if low cost after it's then all are easy i think
handwiring expensive in layer cases
« Last Edit: Thu, 06 November 2014, 10:26:11 by yasuo »
Logitech MK220 Colemak DH
SplitSyml by Moz BlacksMx fuk blacks

2/3 8.5pm                                          in de la my september month ya da all get my fukka "fake message"

Offline vvp

  • Posts: 887
Re: Returning to this...
« Reply #8 on: Thu, 06 November 2014, 10:34:11 »
yeah the difilicut is design pcb but after its done to pcb maker i think arround $10+ if low cost after it's then all are easy i think handwiring expensive in layer cases
Well, if you are making a custom keyboard then you hardly can do it without a custom PCB (or hand-wiring the switch matrix).

Offline Nightlane

  • Thread Starter
  • Posts: 7
  • Location: Spain, Madrid
Re: Thinking in a new keyboard project, some doubts...
« Reply #9 on: Tue, 11 November 2014, 09:22:58 »
I am thinking on using an arduino micro for this project.

I am defining the buses.

Do you know a nice dac system to have many analog outputs? I am looking for a multiplexed dac...

You have a 8 bit bus, you put those data into a dac and get an analog signal, then I would like an analog demultiplexer which from one input, I could select by which one of it's outputs this analog value will go out by, and then this value should stay while I modify other outputs.

I wish I am being understandable.

Offline vvp

  • Posts: 887
Re: Thinking in a new keyboard project, some doubts...
« Reply #10 on: Tue, 11 November 2014, 14:10:23 »
If you want DACs for driving LEDs then use rather PWM.

Offline Oobly

  • * Esteemed Elder
  • Posts: 3929
  • Location: Finland
Re: Thinking in a new keyboard project, some doubts...
« Reply #11 on: Tue, 11 November 2014, 15:40:20 »
This is great for driving LED's: http://www.adafruit.com/product/1427

You can send it I2C signals, it can address up to 1024 LED's and has 16 levels of PWM brightness.
Buying more keycaps,
it really hacks my wallet,
but I must have them.

Offline Nightlane

  • Thread Starter
  • Posts: 7
  • Location: Spain, Madrid
Re: Thinking in a new keyboard project, some doubts...
« Reply #12 on: Tue, 11 November 2014, 16:32:32 »
This is great for driving LED's: http://www.adafruit.com/product/1427

You can send it I2C signals, it can address up to 1024 LED's and has 16 levels of PWM brightness.
Oh, It is nice, really I am looking to control each led independently and this chip can only set the same PWM to all the LEDs. I will make a note about this chip because it could be a nice possibility to take into account for other type of effects or for another gatget...

If you want DACs for driving LEDs then use rather PWM.
Ty! I will look for some already made chip with the possibility to set an input to a PWMed output... something like a demultiplexor...


« Last Edit: Wed, 12 November 2014, 03:28:23 by Nightlane »

Offline vvp

  • Posts: 887
Re: Thinking in a new keyboard project, some doubts...
« Reply #13 on: Wed, 12 November 2014, 04:57:21 »
It is a pity that HT16K33 cannot control LED duty cycle individually.

Offline dashing_girlboy

  • Posts: 41
Re: Thinking in a new keyboard project, some doubts...
« Reply #14 on: Sun, 16 November 2014, 02:28:49 »
I would think that to be extensive enough, you might want to have 2 teensy running separately. one to be your keyboard controller, another to be the the LED controller.

Offline Findecanor

  • Posts: 5040
  • Location: Koriko
Re: Thinking in a new keyboard project, some doubts...
« Reply #15 on: Sun, 16 November 2014, 07:05:55 »
One microcontroller would be enough for a backlit 60%, even if it has three LEDS per key (RGB). You would need some kind of helper chip/s for addressing the LED matrix/matrices though but those are bountiful, small and inexpensive. There are lots of projects out there for doing RGB LED cubes with Arduino (same microcontroller family as Teensy) that you could use for inspiration.

The Red Scarf firmware based on Hasu's TMK does it already in one backlight colour.
🍉

Offline Nightlane

  • Thread Starter
  • Posts: 7
  • Location: Spain, Madrid
Re: Thinking in a new keyboard project, some doubts...
« Reply #16 on: Sun, 16 November 2014, 16:38:09 »
It is a pity that HT16K33 cannot control LED duty cycle individually.
Yeah, it is. I could design the circuitry using flipflops, PWMs/DACs, etc. But, the problem is convert it to a real circuit. Using already made chips could be a nice solution but it is a requirement that there is a chip with most of the functionality. I fnot, you could need tons of chips to get the same result and that could be prohibitive in cost and space.

And to "print"a chip...