Нет описания

alex-vg 7d823837cb bumped version to 1.2 1 год назад
lib c5eecfdce7 moved checked in drivers to submodules 1 год назад
schematic 98b5f70bbf Fix components in BOM 3 лет назад
tracking 7d823837cb bumped version to 1.2 1 год назад
views 5b2a7b3047 BLE updates/fixes 1 год назад
.gitmodules c5eecfdce7 moved checked in drivers to submodules 1 год назад
CHANGELOG.md 5b2a7b3047 BLE updates/fixes 1 год назад
DESCRIPTION.md a497f2fab4 Update DESCRIPTION.md 2 лет назад
LICENSE 3930cc1d2f Initial commit 3 лет назад
README.md c5eecfdce7 moved checked in drivers to submodules 1 год назад
air_mouse.c 5b2a7b3047 BLE updates/fixes 1 год назад
air_mouse.h 0553ae1a32 Initial commit 3 лет назад
application.fam 7d823837cb bumped version to 1.2 1 год назад
build.sh 946e42468a added lsm6dso version 1 год назад
icon.png de2050d189 Fix icon 2 лет назад
screenshot1.png e001a1f0f2 Add screenshots 2 лет назад
screenshot2.png e001a1f0f2 Add screenshots 2 лет назад
screenshot3.png e001a1f0f2 Add screenshots 2 лет назад

README.md

paypal

BMI Air Mouse

Brief

"You can turn anything into an air mouse if you're brave enough"

— Piper, a.k.a. Pez

Naturally, the quote above applies to Flipper as well.

What?

The app allows you to turn your Flipper into a USB or Bluetooth air mouse (you do need an extra module, see the Hardware section below)...

Using it is really simple:

  • Connect the Flipper via a USB cable and pick USB, or pick Bluetooth and pair it with your PC;
  • Hold the Flipper in your hand with the buttons pointing towards the screen;
  • Wave your Flipper like you don't care to move the cursor;
  • Up button for Left mouse click;
  • Down button for Right mouse click;
  • Center button for Middle mouse click;
  • Left and Right buttons for scrolling;
  • Use calibration menu option if you notice significant drift (place your Flipper onto a level surface, make sure it doesn't move, run this option, wait 2 seconds, done).

See early prototype in action.

How?

  • Clone this repository with git clone --recurse-submodules to include the driver implementations.
  • Build the project using ufbt

Hardware

The custom module is using Bosch BMI160 accelerometer/gyroscope chip connected via I2C.

Take a look into the schematic folder for Gerber, BOM and CPL files, so you can order directly from JLCPCB.

Original idea:

What I thought it would look like

Expectation:

What EDA though it would look like

Reality:

What it looks like

Software

The code is based on the original Bosch driver and an orientation tracking implementation from the Google Cardboard project

License

TL;DR: Use the code however you want, give credit where it's due, no warranty of any kind is provided.