This repository contains firmware code for the arcin v1.1, a custom game controller board with support for 11 buttons, 2 analog or quadrature encoders, 2 always-on LCDs, and WS2812B LED lighting via the B9 connector.
The svre9
branch in this repository contains modifications to improve user experience when using this board with DJ Dao SVRE9 or SVSE5 game controllers outfitted with arcade-style encoders.
The original codebase by zyp is available at: http://cgit.jvnv.net/arcin/log/?h=conf (the svre9
branch is based on the current HEAD of the conf
branch, 1cb55ca06ecbc3666d3bf66a583a768f69bf9278
)
- Install nix: https://nixos.org/manual/nix/stable/installation/installing-binary.html
git submodule init
nix-shell
make
- Grab the ARM toolchain: https://launchpad.net/gcc-arm-embedded/+download
- You will need SCons to build the image: http://scons.org/pages/download.html
git submodule init
: this will pull the externallaks
submodule, which contains headers for the hardware used by the arcin.- Supplementary scripts will require Python (2.7) as well as the hidapi plugin: https://pypi.python.org/pypi/hidapi/0.7.99.post16
scons
./hidflash.py arcin.elf
See simpletest.py
for an example test script to monitor HID reports generated by an arcin controller.
After building an image using scons
, use the Python script in the arcin-utils directory to build a custom hidloader EXE with your new firmware image embedded into it. This EXE can be given to users to easily flash their device.
./hidloader_append.py arcin.elf hidloader_v2.exe arcin_flash_custom.exe