20. Project development¶
What does it do?¶
I designed the button box as a custom input device, meant to streamline interactions in gaming, simulations, and even productivity tasks. It provides tactile feedback through well-placed switches, encoders, and buttons, enhancing control beyond the standard keyboard.
Who’s done what beforehand?¶
Plenty of enthusiasts have built button boxes for flight sims and racing setups. I looked into projects from Instructables, previous Fab Academy projects, and Arduino communities, studying how others approached usability and technical challenges. Then, I refined those ideas to better suit my needs.
What did I design?¶
I focused on creating a sleek, well-integrated device that balances function and form. My design included:
- Ergonomic layout to maximize efficiency and comfort.
- Aesthetic considerations for a modern, polished look.
- Thoughtful placement of switches and encoders for intuitive use.
What sources did I use?¶
I pulled information from forums, datasheets, and GitHub repositories to understand best practices. I also consulted with many experts in the lab as they were knowledgeable in their subject of expertise.
What materials and components did I use?¶
- Microcontroller: TBD.
- Switches: A mix of toggle switches, push buttons, and rotary encoders.
- Enclosure: 3d Printed.
- Wiring: Soldered connections for reliability.
- Software: Arduino IDE with the Joystick library.
Where did they come from?¶
I sourced componets from the Lab, Bambu Labs, and Amazon.
How much did they cost?¶
Yes
What parts and systems did I make?¶
- The PCB for efficient input processing.
- The Code for signal handling.
- Enclosure design for stability and aesthetic appeal.
What processes did I use?¶
I went through: - PCB design. - System Integration. - 3D printing the enclosure. - Embedded Networking.
What questions did I answer?¶
I tackled: - Compatibility with different software ecosystems. - Optimal placement and responsiveness of controls. - Power consumption and microcontroller limitations.
What worked? What didn’t?¶
- Worked: Button responsiveness, smooth integration, durable enclosure.
- Didn’t: Initial wiring complexity, firmware troubleshooting, occasional compatibility issues.
How did I evaluate it?¶
I tested it extensively, analyzing responsiveness and durability, and gathered feedback for refinements.
What are the implications?¶
This project contributes to the open-source hardware space, offering a refined approach to custom controllers. It highlights structured design thinking and could expand into gaming.
Dissemination Plan¶
My project will be released under the Creative Commons Attribution-NonCommercial-ShareAlike (CC BY-NC-SA) license. This license allows others to freely use, modify, and share the project for non-commercial purposes, while preserving credit to the original creator and encouraging community collaboration. I chose this license because it supports open access and learning, while preventing unauthorized commercial use. If I decide to turn the project into a product, I may adopt a dual-license model or develop a separate commercial version that can be sold while maintaining the original educational edition as free and open-source.
Placeholders¶
These are in the root of my directory.