Main > Everything Else |
KADE-compatible AVR vendors reference list |
<< < (7/13) > >> |
jimmer:
Thanks PL1. I did some looking around yesterday, there are a lot of boards out there and I don't understand the pros and cons. ATmega32u2 might be a bit old hat? ( I don't want to get caught by a discontinued board again next year). Also $15 plus tax and shipping and our new GBP exchange rates is too much for a bare board. I've been used to paying £5 for the minimus, so £15 is a bit steep. Lots of china clones of arduino boards based on ATmega32u4, and $6 inc shipping from china is a good price point. http://www.ebay.co.uk/itm/162015552758? A windows HID is one of the easiest things to implement I tihnk. eg https://learn.sparkfun.com/tutorials/pro-micro--fio-v3-hookup-guide But I don't think I have the time to learn all this stuff from scratch, at least not before I need some encoders, so I might just pay someone to sort this out for me, either modify the KADE LOADER code or do something from scratch. I only need two of the KADE options. USB HID keyboard and USB HID keyboard/mouse that takes trackball/spinner input. And I don't need any shifted functions or flipping between different key maps. And I don't need a configuration gui. Just two pieces of code that will program the board, and that I can edit to choose the key codes if wanted. Any offers? |
jimmer:
Calling PL1 ! I've managed to compile some of the KADE hex files (it's a bit hit and miss which ones work straight from the repository). And they don't seem to work if you comment in the atmega32u2. I'm guessing from the comment about 16k works on both that LOADER uses that one for both boards. # NOTE - Stuff compiled for 16k will work on both!! #MCU = at90usb162 # Minimus AVR 16K MCU = atmega32u2 # Minimus AVR 32k Oddly it does produce a hex file if I change the chip to atmega32u4 which is my target anyway. Some of the firmwares use LUFA code, and after copying in some LUFA files for different boards (leonardo and micro) I've managed to produces hex files for a leonardo atmega32u4. So is this progress? I don't know. I'm kind of hoping that all I need to do is understand how pins are designated and adjust that part of the code to match the new board, and then just load the hex to the boards when they arrive ???? In the KADE repository there are some old versions of the firmwares, kade-pin is a simple 20 buttons encoder without the later frills that i don't need. So I'll work on that one. For the trackball, the code for the trackball to USB mouse/keyboard is missing. So I may have to use trackball to USB gamepad. Is that nothing to worry about? (for MAME on PC). |
PL1:
--- Quote from: jimmer on December 29, 2016, 12:49:24 pm ---I've managed to compile some of the KADE hex files --- End quote --- Great news! :notworthy: --- Quote from: jimmer on December 29, 2016, 12:49:24 pm ---Some of the firmwares use LUFA code, and after copying in some LUFA files for different boards (leonardo and micro) I've managed to produces hex files for a leonardo atmega32u4. --- End quote --- You're way deeper in the weeds on this than I've ever been. Hope you're taking good notes so others can duplicate your success. :applaud: --- Quote from: jimmer on December 29, 2016, 12:49:24 pm ---So is this progress? I don't know. I'm kind of hoping that all I need to do is understand how pins are designated and adjust that part of the code to match the new board, and then just load the hex to the boards when they arrive ???? --- End quote --- Sounds like progress to me. ;D As long as the 32u4 input pins defined in the firmware are connected to solder-holes on the board, it's just a matter of loading the firmware and hooking the right wire to the right solder-hole. (and maybe adding a pull-up resistor, depending on the board/bootloader) I'll be glad to help you figure out the pinout(s) and document things so people can use alternate boards. :cheers: Once we have confirmed good writeups for specific board/firmware combinations, I'll add links to the OP. --- Quote from: jimmer on December 29, 2016, 12:49:24 pm ---For the trackball, the code for the trackball to USB mouse/keyboard is missing. So I may have to use trackball to USB gamepad. Is that nothing to worry about? (for MAME on PC). --- End quote --- I never tested any of the KADE trackball/spinner firmwares, but the main thing that I'd be concerned about is that there were a few reports of backspin -- AFAIK the problem was never fixed. Depending on the resolution of your trackball and how fast you spin it, this might be a problem. :dunno Scott |
jimmer:
2 packages each with 2 boards landed on my doormat today. Visually you can tell they are from 2 different factories. They are chinese clones of this board https://www.sparkfun.com/products/12640 I decided the easiest approach was just pile in and use FLIP to load the hex I built and see what happens. But FLIP doesn't connect to the micro board. Not having used FLIP before I got out a new Minimus board and used flip successfully to load a hex to it. I'm guessing I need one of these pullup resistors on the RST or HWD pins like was done on the mattair board. About to have a read and then give something a go. The micropro boards show up as COM3, whereas the minimus shows up as a USB device. |
jimmer:
change of tack: I had been thinking that Arduino IDE route might be better than trying to use the KADE stuff. So instead of working out how to use the board with FLIP, I opened the Arduino IDE and followed the sparkfun examples I pointed out earlier. Very easy to use the IDE and program the board, I've got a basic HID keyboard encoder working and will test it on Defender as soon as I can get it soldered up. I will need to think about debounce and using the internal pull up resistors on the inputs (sounds like the proper way to do it to avoid floating values). I wish I knew more about how MAME/Windows handles input, I expect that should influence the encoder design. I might have to revisit the KADE firmware for trackball later, but at the moment I've got 8 Minimus which will cover me for trackball panels for a while. This might be premature! but you may not hear from me for a while, I've hopefully solved my encoder shortage, so now I've got to get back to building cabinets. edit: as this is no longer on-topic I'll just leave you with this: --- Quote --- #include <Keyboard.h> void setup() { pinMode(9, INPUT_PULLUP); // Set the button as an input Keyboard.begin(); } void loop() { value9 = !digitalRead(9); // closed gives true // do some debounce routine and flip the state if valid input if (flipped) { if (pinstate9) { Keyboard.press(key9);} if (!pinstate9) { Keyboard.release(key9);} } } --- End quote --- |
Navigation |
Message Index |
Next page |
Previous page |