C++ C# C
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
Addons
ConstructionKit
FLipMouseGUI
FLipWare
Hardware
img
.gitignore
Cleaning_instructions.docx
Cleaning_instructions.pdf
LICENSE
README.md
UserManualFlipMouse.doc
UserManualFlipMouse.pdf

README.md

FLipMouse

The FLipMouse (a.k.a. Finger- and Lipmouse) is a replacement for a normal PC mouse / keyboard / joystick. Instead of moving the mouse device with your hand and clicking with your fingers, the FlipMouse can be controlled by applying very low forces to the mouthpiece (joystick) with your lips, fingers or other body parts. The clicking functionality can be accomplished by sip- and puff-activities into the mouthpiece or via external switches. All settings and functions of the FlipMouse can be tailored to specific user capabilites or needs. Multiple settings can be stored into the device and changed via desired user actions. Additional features like built-in environmental control via infrared, optional bluetooth-add-on module or complete software-based control of all functions via serial command interface make the FlipMouse a very flexible make the FlipMouse one of the most flexible alternative input devices available today.

Full euqipped FLipmouse with 2 external buttons attached. Mounted on Manfrotto mount

The FlipMouse might be used as a full replacement of standard computer input devices and can also be used for accessing smartphones or tablets (via the standard HID support or accessibility features). It can be useful for people with motor disablities, computer gamers, musicians or people who want a hands-free computer access for other purposes.

Our goal is to provide an affordable DIY-solution for everybody who wants to use a PC or smartphone in the usual way.

The DIY construction kit

The official FlipMouse DIY kit is available for purchase via https://hackerspaceshop.com/products/flipmouse-diy-kit. We provide instructions how to assemble this kit in the folder ConstructionKit. In case you want to buy the components from other sources, a full part list is available in folder Hardware. There are different options for the enclosure: a laser-cut acrylic case (which is delivered in the DIY kit) and various 3d-printed variants. The desing files for enclosures can be found in folder Hardware/case-design. The PCB design (schematic and layout) have been made with EagleCAD and are available in folder Hardware/PCB-design

Hardware and Features

The FLipMouse uses a TeensyLC microcontroller (ARM CortexM0+ architecture) as main module. Movements of the mouthpiece are measured via FSRs (Force Sensing Resistors), which detect small force applied to the mouthpiece / joystick. The sip/puff actions are detected by a pressure sensor. Via two 3.5mm jack plugs, external momentary switches can be connected and desired actions can be assigned. An IR-receiver module and a IR-LED allow recording and replay of arbitrary infrared remote control commands. Via an add-on module, bluetooth functionalty can be realized (for more information about the bluetooth add-on module please refer to the FlipMouse Wiki

Software (firmware and settings manager)

FLipMouse's firmware is based on the Arduino/Teensyduino framework. The firmware implements a composite USB HID device (mouse, keyboard, joystick and a serial port in one device).

The mouse and keyboard device classes are used to transmit different keys or mouse actions to the host device. The serial port is used configure the FLipMouse (or even use it as a mouse simulator via AT commands).

Multiple configuration settings can be saved (stored in an EEPROM module) and changed via desired user actions.

For more information about (modifying) the FLipMouse firmware see https://github.com/asterics/FLipMouse/wiki/dev-firmware

The configuration settings of the FLipMouse can be changed via the FlipmouseGUI settings manager. Currently, the settings manager runs on Windows platfroms only (although Wine can be used to run it under Linux). Using the settings manager, you can assign different actions to all hardware inputs of the FLipMouse (mouthpiece, sip and puff, external buttons,...). More Information can be found in the user manual: user manual

Links to related projects

Most of the work for the FLipMouse has been accomplished at the UAS Technikum Wien in course of multiple research projects, see: (AsTeRICS Academy homepage).

If the FLipMouse solution is not suitable for you, maybe you want to have a look at our other projects:

  • AsTeRICS: AsTeRICS framework homepage, AsTeRICS framework GitHub: The AsTeRICS framework provides a much higher flexibility for building assistive solutions. The FLipMouse is also AsTeRICS compatible, so it is possible to use the raw input data for a different assistive solution.

  • FABI: FABI: Flexible Assistive Button Interface GitHub: The Flexible Assistive Button Interface (FABI) provides basically the same control methods (mouse, clicking, keyboard,...), but the input is limited to simple buttons. Therefore, this interface is at a very low price (if you buy the Arduino Pro Micro from China, it can be under 5$).

Troubleshooting / FAQ

I cannot calibrate the FLipmouse, that all 4 sensor values are in the same range

Usually this is caused by unequal forces on one (or more) of the 4 sensors. The reason is either:

  • Displaced FSR sensor: please reposition the FSR to the center of the engraved circle
  • Displaced rubber pad: please reposition the rubber pad to the center of the engraved circle
  • Broken sensor: If it is possible, take a multimeter to measure the FSR value (should be down to 1-2kOhm with applied force)

A thread of the enclosure screws (M3) is broken

There is no functional problem if one of the 4 screws are missing. If it is necessary to use this screw, the best solution is an extra attached screw nut. Use a M3 screw nut (either plastic or metal) and glue it to the case. You need an extra screw, because the standard screws are to short for extra screw nuts.

A thread of the sensor carrier (M4) is broken

The solution for this problem is the same as for the M3 screws. If you don't have longer M4 plastic screws, it is possible to remove a short piece of the spring. With a shorter spring, it is possible to drive the screw for a few extra mm.

I dropped the FLipmouse and the case is broken

No problem, the acrylic glass can be glued again. Usually it is not as beautiful as before, but it works. If you don't have the acrylic glass glue, you can use all types of glue which are able to glue acrylic glass.

The mouse cursor moves without any force on the mouthpiece

This problem may have different causes. Please visit the wiki for further information: Calibration

Cleaning

IMPORTANT: Due to the principle of using the FLipmouse either as finger or lip mouse, the mouthpiece is exposed saliva or other things from your body. Please clean/replace the mouthpiece (or its filter) on a regular basis! further information is available in the wiki: Cleaning

Other problems?

Please visit the wiki.

Front view of 3 FLipmice in different colors (black, pink and transparent orange)