Main Restorations Software Audio/Jukebox/MP3 Everything Else Buy/Sell/Trade
Project Announcements Monitor/Video GroovyMAME Merit/JVL Touchscreen Meet Up Retail Vendors
Driving & Racing Woodworking Software Support Forums Consoles Project Arcade Reviews
Automated Projects Artwork Frontend Support Forums Pinball Forum Discussion Old Boards
Raspberry Pi & Dev Board controls.dat Linux Miscellaneous Arcade Wiki Discussion Old Archives
Lightguns Arcade1Up Try the site in https mode Site News

Unread posts | New Replies | Recent posts | Rules | Chatroom | Wiki | File Repository | RSS | Submit news

  

Author Topic: Keyboard Emulator  (Read 7755 times)

0 Members and 1 Guest are viewing this topic.

Tiger-Heli

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 5447
  • Last login:January 03, 2018, 02:19:23 pm
  • Ron Howard? . . . er, I mean . . . Run, Coward!!!
    • Tiger-Heli
Re:Keyboard Emulator
« Reply #40 on: March 20, 2003, 04:15:23 pm »
Also Tiger-Heli, can you give me digi-key's web address please.
www.digikey.com
It's not what you take when you leave this world behind you, it's what you leave behind you when you go. - R. Travis.
When all is said and done, generally much more is SAID than DONE.

slinger

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 22
  • Last login:December 11, 2006, 11:33:27 pm
  • I'm a llama!
Re:Keyboard Emulator
« Reply #41 on: March 20, 2003, 06:00:37 pm »
Let me see if I can show you why this design will not be susceptable to ghosting.


1--C-|--A
2--|--|--|
3--B--|--|
    4  5  6

If button A and B are pushed at the same time then button C would llook like it was also pressed because current wouls flow along line 1 down line 4 and out line 3 if a typical matrix was used i.e. 1-3 low and 4-6 high

how I did it was this line 1 is high 2-3 are low as well as 4-6 so there is only one path for current to go and that would be along line 1 untill it goes low and line 2 goes high then the only path would be along line 2 and so on...

in a common matrix 1-3 are low and 4-6 are high all the time and the values are just read in.

Like I said before key in is set up in hardware but not in software yet, but that can be fixed later on easily.

I thought about using a bootloader but I don't think there will be enough software updates to warrant that so I'm sticking to using a programmer to burn the chip.

If you guys can think of any features that I think will be nice to have I'll make the changes and post them, otherwise you're on youur own, I'll be gald to nudge you in the right direction though but don't expect me to do all the work for you.

OSCAR

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1770
  • Last login:September 06, 2018, 11:31:53 pm
  • I think Bigfoot is blurry, that's the problem...
    • Oscar Controls
Re:Keyboard Emulator
« Reply #42 on: March 20, 2003, 06:30:55 pm »
The only Buy/Sell/Trade post I could find was this one http://www.arcadecontrols.org/yabbse/index.php?board=2;action=display;threadid=1891;start=0

The "negative feedback" came b/c the guy was selling a buttonbox with Jamma connector for 100 Euro's without the designer's permission (for about $30 in electronic components.)

Not that I'm a huge buttonbox fan, but I wanted to point out that the bad press concerned the seller and his methods, and not the operation and function of the buttonbox itself.

Yes, you are 100% correct and you followed my logic perfectly.  The reason I mentioned it was because Slinger was offering up the plans for a keyboard encoder for free, and some people (not necessarily the regulars on this board) may see this as an avenue for making some $$ from his work.  It has happened before, so I just wanted to point out what happened to the last fellow that tried it.   :)


slinger

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 22
  • Last login:December 11, 2006, 11:33:27 pm
  • I'm a llama!
Re:Keyboard Emulator
« Reply #43 on: March 20, 2003, 06:34:18 pm »
If I see anyone do that I'll take action, this is free and should not be sold or commercially produced.


SirPoonga

  • Puck'em Up
  • Global Moderator
  • Trade Count: (+1)
  • Full Member
  • *****
  • Online Online
  • Posts: 8187
  • Last login:Today at 12:13:15 pm
  • The Bears Still Suck!
Re:Keyboard Emulator
« Reply #44 on: March 20, 2003, 07:27:55 pm »
If I see anyone do that I'll take action, this is free and should not be sold or commercially produced.



How would you do that?  Is your plans copywrited?

Tiger-Heli

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 5447
  • Last login:January 03, 2018, 02:19:23 pm
  • Ron Howard? . . . er, I mean . . . Run, Coward!!!
    • Tiger-Heli
Re:Keyboard Emulator
« Reply #45 on: March 20, 2003, 11:04:04 pm »
If I see anyone do that I'll take action, this is free and should not be sold or commercially produced.
How would you do that?  Is your plans copywrited?
Ok, this is getting interesting!  Let me play devil's advocate and throw out some hypotheticals here.  I will use the buttonbox as an example.  (And I have neither the ability nor the time to act on any of these, so don't worry about me).

I looked on the buttonbox site and didn't see anything saying the plans were copyrighted nor did I see anything saying that it was not legal to sell his products without permission.

Now the questions -

Hypo 1 - I don't understand circuitry design although I have taken some courses in it.  However, it seems pretty clear how the buttonbox is wired.  I am looking to build a similar device with two microprocessors and double the inputs.  I can see how to adapt the button box design to do this, but don't know if I would need dual timer chips, dual capacitors, etc.  But assuming I figured that out, at what point does it become my product to build and sell if I want to, and not a modified ButtonBox.  Remember ButtonBox has never mentioned a dual microprocessor unit and nothing on their page even suggests that it is possible, that part was totally my idea.  OTOH, all the design and component layout for each half of the circuit is strictly ButtonBox and I couldn't reproduce it (without referring to their schematics) if I tried.

Hypo 2 - Let's say I build a ButtonBox for my own use.  It's costs me $25 in parts and 2-3 hours in time.  My plans change, and I realize that I will need an encoder with more inputs, so I sell it to buy a KE-72.  I get $30 from someone on the Buy/Sell/Trade board.  Did I rip anyone off?  Should I send part of the $30 to the ButtonBox designer?  If so, how much should his cut be?  Keep in mind I only made $5 for my 2-3 hours of labor on it.

Hypo 3 - I buy components in bulk and hire legal sweatshop workers to make them and offer them on a website for $30.00.  This is the same as Hypo 2 above, except now it is a business, and now hopefully, I am making $10-$15 per board instead of the $5 each shown above.  Am I now cheating the ButtonBox designer?  Even though he's said he does not sell ready-made boxes and has no plans to either?  Again, what would be a fair cut for him?

Hypo 4 - The guy that was selling the ButtonBox with a Jamma adapter for $100 Euros.  Where is the illegality or the unethicalness of selling these?  Some people mentioned that he couldn't legally make a profit or even sell them without the developer's permission, but remember, the developer put his plans on a website and said "here is how to build one of these", with no restriction (AFAICT) on the use of the plans.  And, like in Hypo 1, it isn't a straight copy b/c the ButtonBox doesn't use a Jamma connector.  I agree it was a rip-off, because the professionally made J-PAC sells for $57 and the components for the ButtonBox J-PAC couldn't have cost much over $30.  So let's say he sells the same product for $50.00.  Is it still Illegal?  Immoral?  What if the price was $30.00?  The real question is "Is it wrong for him to sell the product at all, or just that he was charging so much for it that you would be silly to buy it?"

Well, hopefully this should stir up some good debate!!!

Please post your opinions!!!

It's not what you take when you leave this world behind you, it's what you leave behind you when you go. - R. Travis.
When all is said and done, generally much more is SAID than DONE.

SirPoonga

  • Puck'em Up
  • Global Moderator
  • Trade Count: (+1)
  • Full Member
  • *****
  • Online Online
  • Posts: 8187
  • Last login:Today at 12:13:15 pm
  • The Bears Still Suck!
Re:Keyboard Emulator
« Reply #46 on: March 21, 2003, 12:09:46 am »
Quote
Quote

Could you give suggestions or point to a howto to transfer your plans to pc board:)

Load the board into Winboard print it out on a transparency, place this over your presensitized board, expose it to florecent light for 5min/side then develop and etch, drill and populate.

so let me see if it is this easy.
Goto your site, figure out how to get the circuit to board.  Then get all the parts listed, solder them on in the right spot.  No programming, or anything?

Tiger-Heli

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 5447
  • Last login:January 03, 2018, 02:19:23 pm
  • Ron Howard? . . . er, I mean . . . Run, Coward!!!
    • Tiger-Heli
Re:Keyboard Emulator
« Reply #47 on: March 21, 2003, 12:20:29 am »
Quote
Quote

Could you give suggestions or point to a howto to transfer your plans to pc board:)

Load the board into Winboard print it out on a transparency, place this over your presensitized board, expose it to florecent light for 5min/side then develop and etch, drill and populate.

so let me see if it is this easy.
Goto your site, figure out how to get the circuit to board.  Then get all the parts listed, solder them on in the right spot.  No programming, or anything?

No it's not, he mentions software to download on his site.  And there's an RS232 connection on that PC board.  And earlier in the thread he said to send some command over the serial port to bring up the menu.
It's not what you take when you leave this world behind you, it's what you leave behind you when you go. - R. Travis.
When all is said and done, generally much more is SAID than DONE.

RandyT

  • Trade Count: (+14)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 7013
  • Last login:June 27, 2025, 01:58:08 pm
  • Friends don't let friends hack keyboards.
    • GroovyGameGear.com
Re:Keyboard Emulator
« Reply #48 on: March 21, 2003, 01:45:52 am »
Ok, this is getting interesting!  Let me play devil's advocate and throw out some hypotheticals here.  I will use the buttonbox as an example.  (And I have neither the ability nor the time to act on any of these, so don't worry about me).

I looked on the buttonbox site and didn't see anything saying the plans were copyrighted nor did I see anything saying that it was not legal to sell his products without permission.


Obviously, I AM NOT A LAWYER, so take my comments with the usual "grain of salt" :)

From the source code:

; You can use this code as you see fit, but you cannot sell anything
; that uses this code (or parts of it) without my permission.


Now, this isn't exactly a legal copyright statement, but it probably would offer some protection.

Quote
Now the questions -

Hypo 1 - I don't understand circuitry design although I have taken some courses in it.  However, it seems pretty clear how the buttonbox is wired.  I am looking to build a similar device with two microprocessors and double the inputs.  I can see how to adapt the button box design to do this, but don't know if I would need dual timer chips, dual capacitors, etc.  But assuming I figured that out, at what point does it become my product to build and sell if I want to, and not a modified ButtonBox.  Remember ButtonBox has never mentioned a dual microprocessor unit and nothing on their page even suggests that it is possible, that part was totally my idea.  OTOH, all the design and component layout for each half of the circuit is strictly ButtonBox and I couldn't reproduce it (without referring to their schematics) if I tried.

Even individual subroutines can be copyrighted (in some cases, even patented!).  In the example you gave above, it would probably depend on how much of the code you used "verbatim" to achieve your goals.

Quote
Hypo 2 - Let's say I build a ButtonBox for my own use.  It's costs me $25 in parts and 2-3 hours in time.  My plans change, and I realize that I will need an encoder with more inputs, so I sell it to buy a KE-72.  I get $30 from someone on the Buy/Sell/Trade board.  Did I rip anyone off?  Should I send part of the $30 to the ButtonBox designer?  If so, how much should his cut be?  Keep in mind I only made $5 for my 2-3 hours of labor on it.

Any use or distribution of copyrighted materials not sanctioned by the copyright holder is not allowed.  This goes for any purposes not specifically allowed by copyright law.  You can condition it any way you want, but it always boils down to that.

Quote
Hypo 3 - I buy components in bulk and hire legal sweatshop workers to make them and offer them on a website for $30.00.  This is the same as Hypo 2 above, except now it is a business, and now hopefully, I am making $10-$15 per board instead of the $5 each shown above.  Am I now cheating the ButtonBox designer?  Even though he's said he does not sell ready-made boxes and has no plans to either?  Again, what would be a fair cut for him?

You would have to discuss that with the copyright holder.  Whether it is a business or not has no bearing on the situation.

Quote
Hypo 4 - The guy that was selling the ButtonBox with a Jamma adapter for $100 Euros.  Where is the illegality or the unethicalness of selling these?  Some people mentioned that he couldn't legally make a profit or even sell them without the developer's permission, but remember, the developer put his plans on a website and said "here is how to build one of these", with no restriction (AFAICT) on the use of the plans.  And, like in Hypo 1, it isn't a straight copy b/c the ButtonBox doesn't use a Jamma connector.  I agree it was a rip-off, because the professionally made J-PAC sells for $57 and the components for the ButtonBox J-PAC couldn't have cost much over $30.  So let's say he sells the same product for $50.00.  Is it still Illegal?  Immoral?  What if the price was $30.00?  The real question is "Is it wrong for him to sell the product at all, or just that he was charging so much for it that you would be silly to buy it?"

You still have the copyrighted code to contend with.  If the individual made a professional board of his own design and layout that was compatible with the programmed ATMEL (heck, the blank ATMEL could even be provided so the individual could just DL the code and program it through the board), they would probably be ok selling it. You definitely can't distribute the code without permission from the author.  But again, I'm no Lawyer, so don't take this as legal advice. :)

RandyT

seaner

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 124
  • Last login:October 21, 2003, 02:10:16 pm
    • http://www.beerbot.ca/mame
Re:Keyboard Emulator
« Reply #49 on: March 21, 2003, 01:43:16 pm »
I've done the same, with 56 inputs (many more possible of course).  Works like a charm, but the cost to do the PCB and all of the screw-down headers wound up jacking to cost up a fair bit.
My design was to build an 8x8 (wound up only doing 7x8) matrix switch with diodes.  Worked first time.  The PS/2 protocol was the trickiest part of the whole thing.  I haven't coded up a host-side stack (to interface to another keyboard), but I did put a second ps/2 jack on the board just in case I decide to run pass-thru in the future.

I'm curious to know what route you took.

I'll put my plans up this weekend if anyone is interested.

seaner

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 124
  • Last login:October 21, 2003, 02:10:16 pm
    • http://www.beerbot.ca/mame
Re:Keyboard Emulator
« Reply #50 on: March 21, 2003, 01:54:56 pm »


I'm acutally not using a matrix, there are currently 4 common line and 8 data lines (4x8=32) each common line is turned on the the data is scanned seperately then turned off and the next common line is turned on, and so on.


you may find you have ghosting problems without using switching diodes on each input.  think what happens if you have the following:

outputA-------X-------X     (X closed, O open)
                      |         |
outputB-------X-------O
                      |         |
                     inA      inB

if you drive outputB and read inA, inB, you fill find active signals at both inputs.  You need to stop the current from flowing back onto parallel output lines by placing a diode in series with every switch like this:

output -------------X-----------X
                            |               |
                            A              A
                            |               |
                           inA(bus)    inB(bus)
(assuming you are driving active-low, diodes reversed otherwise)  This lets the low voltage flow out of the switch towards the inputs, but stops it from flowing onto adjacent output lines from the input bus.

Not sure if you considered this or not (and I haven't read far enough down the page to see if this was pointed out by someone else).

I have a full 7x8 matrix working fine.. only downside is I had to mount 56 diodes :)

slinger

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 22
  • Last login:December 11, 2006, 11:33:27 pm
  • I'm a llama!
Re:Keyboard Emulator
« Reply #51 on: March 21, 2003, 06:40:45 pm »
When I finally get the board done and I find out this is happeneing, then I'll add them to the buttons.

Ron

slinger

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 22
  • Last login:December 11, 2006, 11:33:27 pm
  • I'm a llama!
Re:Keyboard Emulator
« Reply #52 on: March 21, 2003, 06:43:06 pm »
 The PS/2 protocol was the trickiest part of the whole thing.  I haven't coded up a host-side stack (to interface to another keyboard), but I did put a second ps/2 jack on the board just in case I decide to run pass-thru in the future.

Yes the PS/2 protocol was the hardest part to do and I also have set up a key in iin hardware and the routines are in software but I'm not polling the key in line I may down the road.

seaner

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 124
  • Last login:October 21, 2003, 02:10:16 pm
    • http://www.beerbot.ca/mame
Re:Keyboard Emulator
« Reply #53 on: March 21, 2003, 09:58:01 pm »
Yes the PS/2 protocol was the hardest part to do and I also have set up a key in iin hardware and the routines are in software but I'm not polling the key in line I may down the road.

Actually, the state machine worked with minimal effort, it was the unexpected 20k pull-down resistor I needed on the Data line.  It was causing outbound codes from the PC to get garbled (0 sometimes read as a 1), so I couldn't ever make it past the keyboard test at power-up on the PC.  Spent about 8 hours in the lab at work scoping that one out :P

About the diodes, if you find you have problems and you don't want to re-fab a PCB, you can just wire them into the cabling that goes to your switches.

Cheers,
Sean