Customisable USB adapter for arcade controls.
To make the experience fit your profile, pick a username and tell us what interests you.
We found and based on your interests.
Added timed sample of buttons (16ms) as a countermeasure for contact bouncing.Used Timer 0 to overflow at each 16ms
TCCR0 |= (1 << CS00) | (1<<CS02); // timer 0 prescaler 1024, overflow at FOSC/1024/256
Then wait for Timer 0 overflow before sampling the buttons
// Sample controllers each 16ms for 16MHz crystal (22ms for 12MHz)
if (TIFR & (1<<TOV0)) {
Get_digital_controller_data();
TIFR |= (1<<TOV0); // reset overflow flag
}
...
else
{// or if data has changed
if (memcmp(&gamepad_report_1, &gamepad_report_1_old, sizeof(gamepad_report_t)) != 0)
{
to_send = 1;
}
}
...
no such file or directory
The makefile from github expects a directrory named 'output' to generate then read some files (like .map ) and a folder 'bin' to generate the hex files.
To fix this error message:
That should fix the annoying errors until I fix the repository to include the missing folders.
I've lost some time debugging a firmware until I realized that I was taking the B1,B2,B3,B4 pins on the board by PB1 PB2 PB3 PB4 on the single face board. Then to avoid future mistakes such that I've drew the pinout diagram for this board.
I've just built and tested the conventional components, single faced printed circuit board for AVeRCADE. As I've imagined there were some small short circuits due to the proximity of some tracks but easily detectable with a multimeter. When checking with the magnifier glass I've realized that the board should have stayed longer in the etching bath because most of the short circuits were caused by very thin copper connections that remained from the corrosion.
Here are the 1-inch board side by side with the Single faced board. It has roughly the size of an Arduino.
The same firmware can run on both boards. After all they share exactly the same circuit.
I've just etched the single face PCB. The results were good but I am thinking about changing the width of some tracks to reduce the probability of a short circuit.
The component pads have been enlarged to ease the home built versions of the board.
Just added another PCB layout with conventional components (through-hole) and single sided for ease of diy board manufacturing. The board measures 1.8 x 2.6 inches (roughly 40 x 70 mm) and has connections for VCC and RESET pins. The remaining pins were kept at the same configuration as the original board which means 2 rows of pins, A1-A9 and B1-B9.
The Eagle files are on github under "circuit" folder.
Here are some news on the AVeRCADE project:
Things yet to be done
I have modified USBasp code to run on AVeRCADE. Basically I have did 3 things:
The connections to ISP and LEDs can be seen below. The jumper is optional since AVRDude allows to use the -B option to perform programming at low speed.
The prototype can be seen below.
I have a new firmware on sight for Avercade. It is a composite device for reading a ZX Spectrum (or ZX81 ) keyboard matrix and converting them to keystrokes.
The ZX matrix takes only 13 lines, leaving 6 more lines for reading an Atari compatible joystick.
I plan to reuse code from C64 Key project for the keyboard part.
Connections for Digital Joystick - 14 buttons
Connections for Dual Digital Joystick - 5 buttons
Connections for Six Axis - 12 buttons. Each potentiometer is 100K
Create an account to leave a comment. Already have an account? Log In.
Amigo, poderia me ajudar a compilar a versão digital 14 botões? Eu já fiz projetos com atmega8 gravando o hex com o software pony prog, porém não sei gerar o arquivo hex. Já tentei de várias formas e não consegui, tentei pelo Linux com o comando make, sem sucesso. Você poderia me dizer qual material eu preciso pra realizar está compilação? Vou usar o atmega8 e o cristal de 16mhz para a versão de 14 botões. Obrigado fique com Deus.
Ci SMD 74HC14 Hex Inverter Schmitt Trigger use in opticar sensor joystick :D
This is your one-week reminder to upload design documents: https://hackaday.io/project/7813-the-square-inch-project/log/28566-design-deadline
Man, that quarter really puts the size into persepective!
Really tiny, isn't it? Right after routing the board I've printed it real size on paper and got scared. In my mind came the question "Would I be able to assemble such small board?". Lol!.
[this comment has been deleted]
By the way, thanks also for following the AVeRCADE along with KeyPass.
Thanks Craig! Let me see if I understood it correctly. The Pro Micro receives inputs from buttons (directly) and from PI (I2C) and send the inputs from PI (I2C) to host (USB) and the direct inputs (buttons) to PI (I2C). It looks like it has two roles then.
Well, since the 32u4 does USB in hardware it might be relatively easy to make the AVR play both roles. I think it is also feasible with ATMega8 bitbanging USB communication but anyway if things (I mean Code) get confused you can still use an I2C port expander (PCF8574?) dedicated to read the buttons and your AVR code will deal only with USB<->PI communication.
Hey @danjovic, you can also reply to comments by clicking the gray reply link under the comment :)
Ok thanks! I missed that sometimes, better use my glasses while using the computer, lol!
I think you'e got it mate ha ha!
To be honest with a footprint as small as the AVeRCADE I could fit two of them in the space of the the Pro Micro - use one just for the passing of the button presses to the Pi, and the other to monitor the i2c and send commands to the target PC.
In my head that makes sense, I think! :-)
Either way, your board is absolutely fantastic buddy!
This is tremendous!
I have been looking at options for my #Handheld Programmer to control a set of Gameboy-esque buttons (direction pad, A, B select, start) and pass commands to a Pi via i2c, and also appear as a HID device when attached to a another machine (allowing the Pi to essentially send keystrokes to a target machine via i2c) - I hope that makes sense ha ha!
I have a handful of projects which I had been planning to use an Atmega32u4-based Pro Micros for; the tiny footprint of your great project would be much better suited!
I need some of these :)
Become a member to follow this project and never miss any updates
By using our website and services, you expressly agree to the placement of our performance, functionality, and advertising cookies. Learn More
Boa tarde excelente projeto gostaria de saber se funciona o botão de home no Ps3?