Enabled-Controller-Mini

Background:

Operating computers and smartphones typically requires using a traditional input device like a mouse, keyboard, joystick, touch screen, or touch pad. However, this input methods can be difficult or even impossible to operate for some users, such as those with low hand dexterity or limited range of motion in their hands.  

There are a variety of adaptive switches that can be used as an alternative input method depending on the needs of the user, but they are often unable to connect directly to the host device and they require a device that can convert switch input signals to a compatible format acceptable by the host devices.  These devices commonly known as switch interfaces, convert adaptive switch enclosures to USB or Bluetooth human interface device or HID commands.

Project Information:

Enabled Controller Mini is a more affordable version of Enabled-Controller which is an open-source switch controller interface that enables those with limited or no hand movement to use Adaptive switches as input to operate and perform joystick actions.

Enabled Controller Mini acts as a switch interface which can act as an alternative input method to traditional input methods such as mice and keyboard.

Enabled Controller Mini aims to provide a more affordable and customizable switch interface alternative to available commercial switch interfaces. All the components can be purchased online, the custom PCB can be fabricated using online PCB fabrication services, and the enclosure files can be downloaded and 3D printed from project repository.

Usage:

Enabled Controller Mini allows the end user to connect up to four adaptive switches and one dual axis analog joystick to their host device through four 3.5mm stereo jacks and one 3.5mm headphone jack. The 3.5mm headphone jack can be used to connect a single X-Y dual axis analog joystick. Enabled Controller Mini can operate in multiple modes and the end user can switch between the modes by simply holding and pressing Switch D for two seconds.

The device is connected to the host device through USB connection. Each switch can then be mapped to a specific action using switch control accessibility feature available in the host device.

Versions:

Enabled Controller is offered in two different flavors:

  • USB Version
  • Joystick Version

Features:

Modes:

Enabled Controller Mini USB supports the following switch modes:

  • Switch Access Mode ( HID Keyboard ) : Teal Led
  • Morse Keyboard Mode ( HID Keyboard ) : Purple Led
  • Morse Mouse Mode ( HID Mouse ) : Pink Led
  • Settings Mode : Orange Led

Enabled Controller Joystick supports the following switch modes:

  • Joystick Mode ( HID Joystick ) : Teal Led
  • Settings Mode : Orange Led

Enabled Controller Mini Joystick supports following switch actions:

  • Switch A: Button press 1 : Blue Led
  • Switch B: Button press 2 : Red Led
  • Switch C: Button press 3 : Green Led
  • Switch D: Button press 4 : Yellow Led
  • Joystick X1: Move analog joystick in x-axis : Yellow Led
  • Joystick Y1: Move analog joystick in y-axis : Yellow Led

You can change the modes by holding switch number 4 or D for 2 seconds.

Other:

The joystick firmware allows the users to operate Xbox Adaptive Controller using Enabled Controller to perform custom switch combinations.

Instructions:

All the required assembly documentation, software, hardware are documented in the project github repository. All the necessary electronics for this project are listed and can be purchased online via provided hyperlinks in the bill of materials (BOM) file.

Compatibility:

Enabled Controller Mini can be used to interact with a host device and as a method of navigation through the user interface of following Operating systems:

  • Android : You need to enable the Switch Access feature. This feature is called Universal Switch in Samsung devices.
  • iOS:Not functional.
  • macOS: You need to enable the Switch Control feature.
  • Windows: Windows doesn’t support switch interfaces by default, but additional third-party software can be installed to allow interacting with host device via adaptive switches.
Category:
Assistive Technology
Tags:
3D Printing, Electronics, Printed Circuit Board, Arduino Programming
Enabled-Controller-Mini resources and documentation