diff --git a/README.md b/README.md index 912c566..8ebb8fa 100644 --- a/README.md +++ b/README.md @@ -79,6 +79,8 @@ If you don't want to use this board, the firmware should be usable on most RP204 Additional controller buttons and the display are attached to the same (or different if your board has more than one) i2c bus. For the display, use a standard SSD1306 OLED display with 128x64 resolution. The buttons need to be attached to a MCP23017 IO expander. +See [DonConPad](/pcb/DonConPad/) for a exemplary gamepad pcb. + Mind that currently the display and buttons are mandatory to use the controller. ### Physical construction diff --git a/pcb/DonConPad/LICENSE b/pcb/DonConPad/LICENSE new file mode 100644 index 0000000..c11a136 --- /dev/null +++ b/pcb/DonConPad/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2023 Frederik Walk + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the “Software”), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/pcb/DonConPad/README.md b/pcb/DonConPad/README.md new file mode 100644 index 0000000..5019085 --- /dev/null +++ b/pcb/DonConPad/README.md @@ -0,0 +1,19 @@ +# DonConPad - A Simple I2C Gamepad with Display + +This board breaks out an MCP23017 I/O expander to some conveniently placed push buttons and offers a spot for an SSD1306 OLED display. +Both I/O expander and display are connected to the same i2c bus. + +The i2c address for the MCP23017 can be configured using the jumpers JP1, JP2 and JP3, which are pulled down to GND when open. + +![DonConPad PCB](board.jpg) + +## Bill of Materials + +| **Reference** | **Description** | **Digikey Part** | **Notes** | +| ---------------------- | :-------------------------: | :--------------------------: | :-----------------------------------------------------------------------: | +| J1 | SSD1306 OLED Display Module | - | Dimension wise 128x64 or 128x32 should fit. Make sure the pinout matches. | +| U1 | MCP23017 IO Expander | MCP23017-E/SO-ND | | +| SW1-14 | 6x6mm Tactile Switch | e.g. TS02-66-60-BK-100-LCR-D | | +| C1 | 0.1µF SMD Ceramic Capacitor | 1276-1003-1-ND | | +| C2 | 10µF SMD Ceramic Capacitor | 1276-6454-1-ND | | +| R1, R2, R3, R4, R5, R6 | 10kΩ SMD Resistor | 2019-RK73H2ATTD1002FCT-ND | | diff --git a/pcb/DonConPad/board.jpg b/pcb/DonConPad/board.jpg new file mode 100644 index 0000000..2b0bba6 Binary files /dev/null and b/pcb/DonConPad/board.jpg differ