Custom PCB
FreedomWing Joystick Adapter
Overview
The FreedomWing Joystick Adapter provides a way to connect a powerchair joystick to a gaming system. This can enable someone to game with the same joystick they use to control their powerchair. This adapter is compatible with joysticks that attach to the powerchair via a DB9 connector.
The FreedomWing was designed by ATMakers in collaboration with The AbleGamers Charity and GRA-V Robotics. Makers Making Change updated the design of the PCB and created a basic set of documentation for FreedomWing 1.1.
More information available at ATMakers website: http://atmakers.org/featherwing
Usage
- Disable wheelchair motors.
- Disconnect the joystick DB9 connector from wheelchair.
- Connect the joystick DB9 connector to the FreedomWing Adapter Input.
- Connect the FreedomWing Adapter USB cable to the host device. (Use a suitable adapter if necessary.)
Cost
The approximate cost of materials to make a single FreedomWing Joystick Adapter is $75.
Build Instructions
As Open Source Hardware, all of the code and files necessary to construct the device are available for free at the linked repository. Refer to the Bill of Materials, 3D Printing Guide, and Assembly Guide.
SKILLS REQUIRED
- 3D Printing
- Custom PCB
- Soldering
TIME REQUIRED
- 3D Printing Time: 2h30m
- Assembly Time: 1h
TOOLS
- 3D Printer
- Soldering Iron
- Small screwdriver
- Side Cutters
3D PRINTING
This design utilizes a 3D printed enclosure. The enclosure consists of a total of four parts, with a print time of approximately 2h30m.
CUSTOM PRINTED CIRCUIT BOARD (PCB)
This design utilizes a custom printed circuit board (PCB). These may be obtained in small quantities (typically 5) from custom PCB manufacturers.
Attribution
The FreedomWing was designed by ATMakers in collaboration with The AbleGamers Charity and GRA-V Robotics.
Makers Making Change updated the design of the PCB and created a basic set of documentation for FreedomWing 1.1.
Rocket Switch Interface
Overview
The Rocket Switch Interface is a switch interface device which enables users to operate their computer or smartphone devices using assistive switches. The Rocket Switch Interface supports up to two 3.5 mm assistive switches.
Usage
Both switches can be used as inputs when short pressed, switch 1 can be used to change the operation mode when it’s pressed and hold for 4 seconds. The device can operate in several modes:
- Switch Mode: This mode can be used along switch control software available for Windows and Android Operating Systems. Switch 1 outputs A key and switch 2 outputs B key.
- Switch Mac Mode: This mode can be used along switch control software available for Mac Operating Systems. Switch 1 outputs F1 key and Switch 2 outputs F2 key.
- Mouse Mode: This mode can be used to simulate a mouse button click. Switch 1 performs left mouse click and Switch 2 performs right mouse click.
- Settings Mode: The settings mode allows the user to adjust the reaction time between switch presses. The minimum reaction time is 50 ms (Level 10) and maximum reaction time is 500 ms (Level 1). The default reaction time is Switch 1 decrements the reaction level by 1 level and switch 2 increments the reaction level by 1 level as well.
Cost
$45 ($15.16 Components and 3D prints; ~$30 for order of custom PCBs)
Build Instructions
The Rocket Switch Interface consists of 3D printed parts, electronic components, and custom Arduino program. The Assembly Guide is available at the GitHub repository.
Skills Required
- 3D Printing
- Soldering
- Custom PCB
- Microcontroller programming
Time Required
3D Printing Time: 49 Minutes
Assembly Time: 20 Minutes
Software Setup Time: 15 Minutes
Tools
- Soldering Iron and 60/40 electronics solder
- Needle nose pliers
- Side cutters
- Medium Phillips screwdriver
- Optional clamp or vise to align PCB’s.
Components
- 1X Rocket Switch Interface PCB
- 1X Adafruit Rotary Trinkey (i.e., https://www.adafruit.com/product/4964)
- 2X SJ-43514 3.5mm Jack Stereo
- 2X 7 kOhms 1/4W Through Hole Resistor
- 1X Light Pipe
- 1X M3 6MM Pan Head Machine Screw Phillip
3D Printing
- 1X Top Case (3D)
- 1X Bottom Case (3D)
- 1X Assembly Jig (3D)
Custom PCB
This design utilizes a custom PCB. Five boards (minimum quantity) can be obtained for approximately $30 CAD (shipping included).
Programming
A custom Arduino code (Rocket_Switch_Interface.ino) needs to be flashed using Arduino IDE.
Design
The PCB was designed using Autodesk EAGLE, and the enclosure was designed using Autodesk Fusion 360.
Attribution
Designed by Makers Making Change
Designer:
- Milad Hajihassan, Makers Making Change
Contributors:
- Derrick Andrews, Makers Making Change
Enabled Controller Wireless
Overview
The Enabled Controller Wireless is an open-source switch interface that enables adaptive switches and analog joysticks to be used with a compatible Bluetooth device such as a computer, tablet, or phone. The switches and/or joysticks can be used to input keyboard, mouse, or joystick commands, depending on how the device is configured. The device accepts up to 8 adaptive switches (3.5 mm) and up to two dual axis analog joysticks as inputs.
The Enabled Controller Wireless can emulate a Bluetooth keyboard or a Bluetooth mouse.
Usage
- Connect assistive switch(es) to the appropriate input port(s). The switch input ports are labeled A, B, C, D, Left, Down, Right, Up.
- Connect analog joysticks to the desired joystick input ports. The joystick input ports are labelled A1 and A2.
- Connect a micro USB cable to the Power Bank to power the Enabled Controller Wireless if you are not using the internal battery.
- Connect the Enabled Controller Wireless to the host device (e.g. computer, tablet) via Bluetooth.
- Turn On the Bluetooth feature on the host device.
- Scan and find a device named “Enabled-Controller”.
- Pair and connect the host device to the “Enabled-Controller”
- The RGB LED will turn to blue on successful connection attempt.
- Activation of the switches or movement of the joysticks will result in different actions depending on the software version and operating mode.
Features:
The Wireless version emulates a keyboard or a mouse. Refer to the Enabled Controller Wireless User Manual for more details.
The USB version offers the following four modes:
1) Keyboard switch
When a connected switch is activated, the device transmits a customizable keystroke.
2) Keyboard Morse Code
Two connected switches are used to input Morse code dots and dashes. Theses dots and dashes are converted to characters and transmitted as keystrokes.
3) Mouse Morse Code
Two connected switches are used to input Morse code dots and dashes. These dots and dashes are converted to and transmitted as mouse commands.
4) Mouse
5) Settings
( Used to change reaction time )
The mode is changed by performing a long press on a switch connected to input D.
Build Instructions
A complete set of documentation, including Bill of Materials, Assembly Guide, and User guide are available at the GitHub link.
The estimated cost of the Enabled Controller Wireless is $77 CAD. The device consists of a number of off-the-shelf electronic components, a custom printed circuit board, a 3d printed enclosure, and some mechanical fasteners.
Battery Interrupter (Flex PCB)
Overview
A battery interrupter lets you use an accessible switch to turn on and off many battery-operated toys and devices. The battery interrupter interrupts the flow of power from the battery until an attached assistive switch is activated. This is a flexible battery interrupter that can be used with AAA, AA, C, or D sized batteries.
Note: This design utilizes a custom PCB, so it is not cost effective for small quantities (< 50). If you need a small quantity of battery interrupters, the Battery Interrupter (Soldered) design is likely a better option.
Usage
Initial Setup
The flexible battery interrupter is inserted within the battery enclosure either between two batteries or between a battery and a battery terminal. The flexible battery interrupter can be trimmed with scissors to match the size of battery. The wires to the jack are routed to the outside of the battery enclosure.
Typical Usage
An assistive switch is connected to the battery interrupter switch jack. If there a power switch on the electronic device or toy, it is placed into the on position. Activating the assistive switch should then activate the electronic device or toy.
Build Instructions
Bill of Materials
1X Battery Interrupter Flexible PCB ($2 – $126)
1X 3.5 mm Jack (https://www.digikey.ca/en/products/detail/cui-devices/SJ1-3513/738683, ~$2 CAD + $11 Shipping)
1X 3D Printed Jack Case (~ 1.1 g of filament, $0.03)
1X 3D Printed Jack Case Spacer (~ 0.4 g of filament, $0.01)
Tools
- Scissors
- Soldering Iron
- Solder
Custom PCB
This design requires a custom flexible printed circuit board (PCB). All of the information and files required to have the PCB fabricated are within the GitHub repository.
The price will vary widely depending on the fabricator, the quantity of boards, and the selected shipping option.
Assembly
A detailed assembly guide is available on GitHub or within the zipped release.
- Solder the jack to the flexible PCB.
- Insert the jack with the spacer into the jack case.
- Thread the retainer ring onto the jack.
Attribution
Initial concept and design: Dale Grover
V1.0 Design and Assembly Instructions: Makers Making Change
ATMakers KeySwitch
Overview
The ATMakers Keyswitch is a low-cost assistive switch interface that allows a user to connect up to 5 external assistive switches with 3.5 mm plugs to a computer, tablet, smartphone, or AAC device with a USB port. The Keyswitch sends keystrokes and/or mouse movement when the external switches are activated, and can easily be configured to change the keystrokes that are sent.
Usage
Connect one and up to 5 assistive switches to the ATMakers Keyswitch. Plug the USB cable into the computer, tablet, smartphone, or AAC device with a USB port.
Build Instructions
Bill of Materials
To assemble the mount with the switch, you will need:
1 – 3D Printed Enclosure Base (~14 g of filament, $0.40; 1hr 15m)
1 – 3D Printed Enclosure Top (~ 7 g of filament, $0.20; 0hr 25m)
10 – Breakaway Male Headers (~1.20 CAD, https://www.digikey.ca/en/products/detail/wurth-electronics-inc/61301611121/4846854)
1 – ATMakers KeySwitch Custom PCB
5 – 3.5 mm jacks (~$1 ea, https://www.digikey.ca/product-detail/en/cui-inc/SJ1-3535NG/CP1-3535NG-ND/738699)
1 – Trinket M0 (~$12 CAD, https://www.digikey.ca/en/products/detail/adafruit-industries-llc/3500/7623049; https://www.adafruit.com/product/3500 )
1 – USB Micro to USB A Cable
2 – M2.6x 8 mm or #4-40 screws
Tools
- Soldering iron
- Wire strippers / wire cutters
- Screwdriver
Custom PCB
The files for the custom PCB are stored on the ATMaker Hardware Github repository (https://github.com/ATMakersOrg/ATMakers-Hardware/tree/master/KeySwitchBoard). A board will need to be ordered from a suitable PCB manufacturer.
3D Printing
Both the enclosure and the base are designed to print without support. There are two version of the top – one designed for translucent filament and one for opaque filament. The print files are available on Thingiverse (https://www.thingiverse.com/thing:3159609).
Assembling the KeySwitch
See the attached PDF for detailed step-by-step assembly instructions. There is also a video of the assembly process available: https://www.youtube.com/watch?v=Tr9n-Ne0utA
Programming the Trinket
The instructions and code for programming the Trinket are available at the ATMaker KeySwitch repository (https://github.com/ATMakersOrg/KeySwitch).
Attribution
The ATMaker Keyswitch was designed by ATMakers. Written assembly instructions were created by Makers Making Change.
Enabled Controller Mini
Overview
The Enabled Controller Mini is an open-source switch interface that enables adaptive switches and analog joysticks to be used with a compatible USB device such as a computer, tablet, or phone. The switches and/or joysticks can be used to input keyboard, mouse, or joystick/gamepad commands, depending on how the device is configured. The device accepts up to 4 adaptive switches (3.5 mm) and one dual axis analog joysticks as inputs. The Enabled Controller Mini is smaller and more affordable version of the Enabled Controller.
The Enabled Controller Mini is available in 2 software versions. The USB version emulates a keyboard or a mouse. The Joystick version emulates a gamepad. Both versions use the same hardware. It is possible to change software versions using a computer and a moderately involved process.
Usage
- Connect one to four assistive switches to the appropriate input ports. The switch input ports are labeled A, B, C, D.
- Connect analog joystick to the desired joystick input port. The joystick input port is labelled Analog.
- Connect a micro USB cable to the USB C port on the Enabled Controller Mini.
- Connect the USB cable to the host device (e.g. computer, tablet).
- Activation of the switches or movement of the joystick will result in different actions depending on the software version and operating mode.
USB Version
The USB version emulates a keyboard or a mouse. Refer to the Enabled Controller Mini USB User Manual for more details.
The USB version offers the following four modes:
1) Keyboard switch
When a connected switch is activated, the device transmits a customizable keystroke.
2) Keyboard Morse Code
Two connected switches are used to input Morse code dots and dashes. Theses dots and dashes are converted to characters and transmitted as keystrokes.
3) Mouse Morse Code
Two connected switches are used to input Morse code dots and dashes. These dots and dashes are converted to and transmitted as mouse commands.
4) Settings
( Used to change reaction time )
The mode is changed by performing a long press on a switch connected to input D.
Joystick Version
The Joystick version of the software turns the Enabled Controller Mini to an adaptive gaming controller for your computer or other host device. Refer to the Enabled Controller Mini Joystick User Manual for more details.
Build Instructions
A complete set of documentation, including Bill of Materials, Assembly Guide, and User guide are available at the GitHub link.
The estimated cost of the Enabled Controller Mini is $35 CAD. The device consists of a number of off-the-shelf electronic components, a custom printed circuit board, a 3d printed enclosure, and some mechanical fasteners.
Enabled Controller
Overview
The Enabled Controller is an open-source switch interface that enables adaptive switches and analog joysticks to be used with a compatible USB device such as a computer, tablet, or phone. The switches and/or joysticks can be used to input keyboard, mouse, or joystick/gamepad commands, depending on how the device is configured. The device accepts up to 8 adaptive switches (3.5 mm) and up to two dual axis analog joysticks as inputs.
The Enabled Controller is available in 2 software versions. The USB version emulates a keyboard or a mouse. The Joystick version emulates a gamepad. Both versions use the same hardware. It is possible to change software versions using a computer and a moderately involved process.
Usage
- Connect assistive switch(es) to the appropriate input port(s). The switch input ports are labeled A, B, C, D, Left, Down, Right, Up.
- Connect analog joysticks to the desired joystick input ports. The joystick input ports are labelled A1 and A2.
- Connect a micro USB cable to the USB port on the Enabled Controller.
- Connect the USB cable to the host device (e.g. computer, tablet).
- Activation of the switches or movement of the joysticks will result in different actions depending on the software version and operating mode.
USB Version
The USB version emulates a keyboard or a mouse. Refer to the Enabled Controller USB User Manual for more details.
The USB version offers the following four modes:
1) Keyboard switch
When a connected switch is activated, the device transmits a customizable keystroke.
2) Keyboard Morse Code
Two connected switches are used to input Morse code dots and dashes. Theses dots and dashes are converted to characters and transmitted as keystrokes.
3) Mouse Morse Code
Two connected switches are used to input Morse code dots and dashes. These dots and dashes are converted to and transmitted as mouse commands.
4) Settings
( Used to change reaction time )
The mode is changed by performing a long press on a switch connected to input D.
Joystick Version
The Joystick version of the software turns the Enabled Controller to an adaptive gaming controller for your computer or other host device. Refer to the Enabled Controller Joystick User Manual for more details.
Build Instructions
A complete set of documentation, including Bill of Materials, Assembly Guide, and User guide are available at the GitHub link.
The estimated cost of the Enabled Controller is $55 CAD. The device consists of a number of off-the-shelf electronic components, a custom printed circuit board, a 3d printed enclosure, and some mechanical fasteners.
Sip And Puff Switch Analog
Overview
A sip-and-puff switch is an assistive technology that enables a user to control a device by using their mouth to “sip”(inhale) or “puff”(exhale) on a straw, tube or wand. It is primarily used by people with limited or no limb movement. The Sip and Puff Switch can be connected directly to an assistive device with a 3.5 mm jack or to a computer or smartphone using a suitable switch interface.
Features
- Battery powered (2x CR2032 Lithium Coin Cells)
- Independently adjustable puff sensitivity and sip sensitivity
- Visual feedback when switch is activated
- Two separate outputs mean that two devices can be controlled.
FAIO Multiplexer
The FAIO Multiplexer is an open-source Assistive technology wing for Adafruit Feather boards which enables those with limited or no hand movement to use Adaptive switches as input to operate in multiple input modes. FAIO Multiplexer uses an Adafruit Feather board, a custom PCB, electronic components such as 3.5 mm audio jacks and an RGB led, and a 3D printed enclosure.
FAIO Multiplexer allows you to convert 3.5 mm inputs to switch or joystick actions via USB interface.
FAIO Multiplexer supports following switch modes:
- Switch Access Mode ( HID Keyboard )
- Morse Keyboard Mode ( HID Keyboard )
- Morse Mouse Mode ( HID Mouse )
- Joystick Mode ( HID Joystick )
Additional firmware to operate Xbox Adaptive Controller using switch module is available as well.
The device costs US $40 to US $60 depending on the version of Adafruit Feather board.
Future changes will include:
- Improving Morse code modes of the software
- Wireless version of software
- Updated enclosure for joystick connection
Light Proximity Switch
Overview
This is a relatively low cost accessibility switch activated by waving over or very lightly pressing the activation area. The output from the switch is a standard 3.5 mm cable.
Usage
The switch is well-suited for use by small movements of a finger or larger gross movements of a hand or limb. This switch can be plugged into any standard 3.5 mm AT interface. It can also be used with the Xbox Adaptive Controller. Multiple switches can be used to get input from more than one finger. The switch can be mounted using adhesive on the rear surface of the contact pad. The switch has a removable base so it can more easily be positioned to access small movements.
Build Instructions
Refer to the GitHub link below for the following:
- Assembly Instructions
- Bill of Materials
- Tools
- PCB Files
- 3D Printing Files
Alternatively, all the files for v1.0.1 can be downloaded here.
Attaching the 3D Printed Base
The proximity switch has a 3D printed circular base for users with low strength to move their finger or hand near the sensor.
There are grooves on the base and switch that will clip together. To attach, place the base and switch on a flat surface and push both pieces together. It may take a bit of strength to clip so users may need someone with higher strength to help attach both pieces.