What's new?

011220

Some more news! As an added service I have arranged that professionally made boards for the ButtonBox2/MiniBox can now be purchased direct from Acetronics in Australia for a reasonable price. For more information about this, look in the PCB section of this site.

011213

I'ts been a long time without updates, over a year! So now I've updated a couple of things:

bullet All information (I hope) about the original ButtonBox has been removed.
bullet We have made a new, more general PCB. Both the ButtonBox2 and the MiniBox can be build uing this "general" PCB. Information about this PCB can be found in the PCB section.
bullet Updated the ButtonBox2 section with pictures of a ButtonBox2 built on the new "general" PCB.
bullet Updated the MiniBox section with pictures of a MiniBox built on the new "general" PCB (not just loose wires like before).
bullet Updated the KBSnoop section with pictures of a KBSnoop built on a PCB.
bullet Updated the Atmel parallel port programming package to v1.01 (mostly small bug-fixes)
bullet Rearranged the Download section a bit.
bullet Added a number of new Gerber files for people who want to order their own PCB's from a PCB manufacturer.

Hopefully, I've got all the changes right, but if you find any obvious mistake, please tell me!

The new "general" PCB can also be used to build a new "Box" which isn't described here yet. It has the same functionality as the ButtonBox2/Minibox, but instead of the ButtonBox2/MiniBox being connected to the PC with a cable, it uses IR (InfraRed light) to send data wireless to the PC. Can be nice to have if you have a PC connected to your TV in the livingroom, and don't want to have long cables running all over the place when you want to play games. I'll get back later with more information about how to build one of those "boxes".

That's all for now!

000917

I have used the KBSnoop to examine the keyboard protocol a bit more closely the last couple of days. During this time I have found some interesting things that wasn't mentioned in the specification we used when we wrote the code for the ButtonBox/ButtonBox2/MiniBox. I have updated the code for the ButtonBox2 and the MiniBox accordingly, so there are new versions for both of them available at the download page.

I have to say that I am amazed how they managed to get the keyboard<->PC protocol so extremely complicated! Before I started on this project I always thought that the keyboard protocol was pretty straightforward, but for some reason it is not.

000910

We have made a new project called KBSnoop. It is a device that can be used to monitor the data that is transmitted between the keyboard (or PS/2 mouse) and the PC.

Click on KBSnoop in the left frame for more information about the KBSnoop.

000902

While I was testing the MiniBox I found a couple of errors I have made in the logical drawings of the hardware for both the ButtonBox2 and the Minibox. It turns out that I have mistakenly drawn a couple of serial resistors instead of pull-up resistors. I have updated both logical drawings, and here is what's corrected:

I'm really sorry about this, and I hope that it does not cause you a lot of troubles.

000816

I seem to be a bit careless, found another bug in the MiniBox code. The Left Shift-key sent the same codes as the Right Shift-key. This has been corrected and a new version (v1.02) can be found on the download page.

000815

I found some small bugs concerning un-initialized variables in the MiniBox code. This has been corrected and a new version (v1.01) can be found on the download page.

000814

A new project has seen the light! Well, actually it's a stripped down version of the ButtonBox2. It is called MiniBox and the main differences from the ButtonBox2 are:

The MiniBox is the result of a request from a guy who had a couple of AT90S2313 laying around. He asked me if it would be possible to build a stripped down version of the ButtonBox2. I thought that it sounded like an interesting idea, so I gave it a try. And it could be done! Click MiniBox in the left frame for more information about the MiniBox.

000626

A new version of the ButtonBox2 Atmel CPU-software is available. Here is what's changed/updated:

We have also added the following on these pages:

I hope that I remembered everything, otherwise you can always look around and see if you find anything new.

000619

Added a picture to the ButtonBox2 pictures, showing the cable that is used to update the software in the Atmel AT90S8515 CPU.

000618

I have made a small change in the ButtonBox2 logical drawing. I corrected the value of the capacitors near the crystal. They should be 10pF, not 15pF. In reality this change does not matter, I just wanted it to be the same value in all drawings. If you already have built a ButtonBox2 with 15pF capacitors, then keep them. There is no need to replace them. I also added a decoupling capacitor to the drawing. The same goes here, you do not have to add it, it works anyway.

000608

I have inserted a small "thing" in the hit-counter frame that tells if I'm online or not. If it says "click for a real person", it means that I'm online and you can chat with me by clicking that icon. If I'm not online and you click the icon, you can leave a message which I will read as soon as I am online again. This free service comes from HumanClick.

000607

OK, now I have updated the ButtonBox2 Atmel CPU software to support the new LED's on the Direct- and Matrix-cards. I also fixed a nasty bug that in rare cases  could cause a lot of strange problems (I had forgotten to save a register when entering the Interrupt routine). I also made some small changes in the button mappings to better comply with MAME.

This version can be used with both the new and old (without LED's) Direct- and Matrix cards.

When the ButtonBox2 is started for the first time after the upgrade, it will overwrite the current button mappings with the new mappings. So if you have made any mappings of your own, you have to redo them again.

000606

The PCB's for the ButtonBox2 has arrived! So now we have built a ButtonBox2 CPU-card, a Direct-card and a Matrix-card (both includes the new Caps-, Num- and Scroll-Lock LED's). I have uploaded a number of pictures of these, look under ButtonBox2 to see them.

I have not yet updated the ButtonBox2 Atmel CPU software to make use of the new LED's on the Direct- and Matrix-cards.

I have also made a couple of descriptions on how to build the new Direct- and Matrix-cards with the new LED's attached.

000604

I have made some small changes here and there on the web pages, and fixed a broken link.

The ButtonBox2 PCB's I ordered have been sent from the manufacturer, so they should be here any day now. Then I will finally have a complete, working ButtonBox2 with both a Direct- and a Matrix-card. I'll put up some pictures of them as soon as I can!!

Oh, I almost forgot, I put up a Guest-book if someone want to comment on these pages.

000531

I have finally completed the PC software needed to download the code to the Atmel CPU on the ButtonBox2. It can be downloaded from the Download page with instructions about how to make the necessary parallel port programming cable.

We have also ordered professionally made PCB's for the ButtonBox2. I think they will arrive within a week or two, so there will soon be pictures of a complete ButtonBox2 here if everything goes according to plan.

We're also in the process of adding Caps Lock, Num Lock and Scroll Lock LED's to both the Direct- and Matrix-card. This may take a while longer, since it is summer and hopefully the weather will be a bit better soon :-)

000412

These pages are now updated to include a description of the ButtonBox2. I have a ButtonBox2 up and running, but I have not yet made a soldered, permanent ButtonBox2 card. So if you decide to build one right away, I cannot guarantee that all drawings are 100% correct yet. But as far as I know, they are.

If you find anything that seems strange about the ButtonBox2, please contact me so that I can correct it if it's wrong.

000323

Robert Palmqvist has continued his work to write PC programs for configuration of the ButtonBox. This time he has written a configuration program with a graphical user interface. It looks like this:

(Click on the picture for a larger view)

I have also split up the files in the download section a bit. So now there is three different files available for download:

I am sorry if this gets a bit confusing, but I do it to be able to keep some sort of order in the version numbers of the ButtonBox components. I'll try not to change this again :-)

I have also completed the software for the ButtonBox 2 mentioned earlier (see What's new 000227). I have it running on a temporary hardware setup, and it works as it should. I'll continue the work on it and will be back with more information about it later.

000317

Mark Single has created a PCB layout for the ButtonBox. It was created using the 30 day evaluation copy of Protel 99 from Protel. Marks version of the ButtonBox PCB is created with the terminal connectors located directly on the CPU PCB. This means that the buttons is connected directly to the main PCB, not to a direct- or matrix-card. This can of course be changed, but you have to do that yourself.

000307

Robert Palmqvist has been kind enough to write a couple of PC programs that can be used to configure the ButtonBox from the PC. During the development of these programs it was necessary to update the software in the ButtonBox, so if you plan to use them YOU HAVE TO UPDATE THE SOFTWARE IN THE PIC16C65A WITH THE v1.01 VERSION.

The new software package (v1.10) can be downloaded from the Download page.

I have also made a few updates as the end of the Software page, to explain a bit about scan codes. These are needed to be able to configure the ButtonBox using Roberts PC software.

000227

Oops, I made a serious error when I drew the logical drawing of the CPU-card. I accidentally swapped the +5V and the ground inputs on the PIC16C65A in the drawing. Inputs 11 and 12 was swapped, and so was input 31 and 32. This has been corrected now, see the updated logical drawing for the correct information. Many thanks to Mark Single for pointing this out to me.

Some of you may also be interested in the fact that we have started working on a new version of the ButtonBox which probably will be called ButtonBox 2. It has a different CPU (an ATMEL AT90S8515), no external EEPROM and does not need as many external components as the PIC. The ButtonBox 2 will be cheaper and easier to build, execute the code faster, have more ROM/RAM/EEPROM and it will be possible to update it's internal software without the need of an expensive PROM programmer. I don't know when it will be ready, but this is what has been done:

As I said, I have no idea when it will be ready, but I'll get back on that later.

991228

Corrected a couple of typos, and added a question to the FAQ.

991222

Well, just about everything since this is my first try at creating a web page!

 

Back to main page