Welcome to FABI
The FABI (Flexible Assistive Button Interface) allows control of a computer’s mouse cursor or
keyboard by just using momentary switches. This can be helpful for people who want to create
user interactions with the press of a button - and it allows people who can't use standard computer input devices
to play games, surf the internet, communicate and much more.
The FABI Interface can be actuated via dedicated buttons, momentary switches or self-made
electrical contacts. Additionally, a sip-puff sensor can be used to create user input.
FABI consists of a hardware module (a low-cost microcontroller which behaves
as a computer mouse and/or keyboard) and a graphical software application for configuration of
the desired functions. The FABI system can be attached to computers, tablets or smart phones via USB.
Additionally, a bluetooth-module is available for devices that do not have a USB port (some Android or iOS phones).
Building the hardware
There are various options for build FABI-compatible switch interfaces: you can order parts and build our construction kit, or make a completely self-driven version.
Following documentation is available for these different approaches:
- Construction manual: manual for building FABI from the construction kit.
See Construction kit building guide
- DIY Building Guide: guide for creating FABI boxes or buttons apart from the standard 3D printed parts.
See DIY Building Guide
See English version of construction manual
or German version of construction manual
Installing the Software
The FABI system consists of a firmware part which runs on the Arduino Pro Micro microcontroller, and a GUI with runs on a PC.
The fimware and can be built and uploaded (installed) to the controller using a recent version of the Arduino IDE.
Besides the Arduino framework, the following libraries are used und must be installed before the firmware can be compiled:
Please follow the installation instructions in their github repositories.
The graphical configuration software (GUI) will come in two flavours: Currently, a Windows-based GUI is available (written in C#) which is also desribed in the User manual (see below).
We are currently working on a cross-platform GUI which runs in the browser and adds improved User Experience - so stay tuned !!
Configuration and User manual
The FABI system does not ony offer a single mapping of button to function - it allow to store multiple configuration settings and change between them "on-the-fly".
You can find information how to configure the individual button functions and system options in the user manual:
The folder case designs contains different acrylic glass designs for example applications. In the folder Settings you can find different demo configurations which can be loaded via the GUI.
Some of the examples are also located in the wiki.
About / Credits
FABI is an open source Assistive Technology module developed by the AsTeRICS Foundation in cooperation with the UAS Technikum Wien.
All software and hardware documents are open source and we took care to use the most
affordable components available on the market to establish these functionalities – making FABI the
most reasonably priced flexible assistive button interface we know !!