Pro Micro footprint with USB-C, RP2040, and a VIK connector
- Pro-micro / Sparkfun RP2040 compatible footprint, with VIK connector on the bottom
- Raspberry Pi RP2040 MCU
- Up to 16MB flash memory (depending on component selection and availability)
- USB VBUS detect
- Low profile USB-C mid-mount connector
- Designed to be manufactured and assembled by all common PCBA services (including JLCPCB)
USB VBUS detection on GPIO19.
TODO: put together detailed pinout with reference images
The pinout changed in order to accommodate VIK analog pin specification. See the following pull request to review the changes.
The pinout is compatible with the widely available SparkFun RP2040, but has almost all the additional GPIO from the RP2040 broken out to the VIK connector on the bottom of the controller.
In order to put the board in bootloader mode, quickly short the RESET and ground pins (marked R and GND) while shorting the two through holes on the bottom half of the controller on the top side.
Note: If mounting the controller with components face down, you will lose access to the BOOT through holes. Before mounting the controller, you can solder short wires to these through holes so you can access them. This is only necessary if you can't trigger the bootloader by shorting the RESET and GND pins. The likelihood is that you'll never need to do the BOOT method if using this for a mechanical keyboard running QMK, for example.
There is no reference firmware for this yet, but I will be including both QMK and ZMK firmware.
QMK will be here: https://github.com/sadekbaroudi/qmk_firmware/tree/develop_fingerpunch/keyboards/fingerpunch/svlinky
ZMK will be here: https://github.com/sadekbaroudi/zmk_fingerpunch_controllers
As of this writing (2023-09-14), I have written and tested firmware for the SVLINKY using QMK and a collection of VIK modules.
You can use this as a reference: https://github.com/sadekbaroudi/qmk_firmware/tree/develop_fingerpunch/keyboards/fingerpunch/svlinky
This QMK firmware has everything mapped out such that you can copy it as a starting point, and modify/add/remove pin mappings based on the board that you are connecting the SVLINKY to.
At some point, I'd also like to add a SVLINKY converter using the QMK converters framework.
To manufacture the SVLINKY, you can use the files in the pcb/production directory.
Note: The following instructions are based on JLCPCB's order flow, but is subject to change
Instructions for JLCPCB
- gerbers - upload these from the main PCB screen
- Be sure to PCB Assembly
- For PCBA type, select Standard
- For Assembly Side, select Both Sides
- Click Confirm
- Click next until you get to the bill of materials
- Upload both the bom.csv and the positions.csv (found in the gerber.zip file)
- Double check that all the components are placed appropriately
- Order!
Special thanks to:
- plut0nium for creating the splinky. I used that as a base for this controller.
- pyntiehet for coming up with the name
- jasonhazel, AlaaSaadAbdo, deltawhy, yingeling, bom, ridingintraffic, and the rest of the fingerpunch discord server for always being there to give great input and suggestions!