The ball is the trackball

Overview

The ball is the trackball

This is Arduino code and 3D-printable models for a Bluetooth trackball in which all the electronics are inside the ball.

Demo video.

Blog post.

It runs on Adafruit's Feather nRF52840 Sense and uses the accelerometer, gyroscope and magnetometer data with a sensor fusion algorithm to get the ball's orientation. When you rotate the ball, it moves the mouse cursor accordingly.

TODO:

  • whitelist advertising to only allow connections from bonded devices unless the user requests pairing mode
  • go to sleep after a period of inactivity and wake when moved
  • OTA firmware updates
You might also like...
DIY trackball with scroll ring
DIY trackball with scroll ring

DIY trackball with scroll ring This repository contains design files and code that can be used to make a fully programmable four-button USB trackball

C library for arbitrary-precision ball arithmetic
C library for arbitrary-precision ball arithmetic

Arb Arb is a C library for arbitrary-precision interval arithmetic. It has full support for both real and complex numbers. The library is thread-safe,

keyball is split keyboard has 100% track ball

keyball Keyball is split keyboard has 100% track ball Firmware build guide Keyball46 have separate firmwares for each of PCBs w/ trackball and w/o tra

Simple Ball-Based Game, made using SFML.
Simple Ball-Based Game, made using SFML.

Ball Ball is a basic windows-only, ball-based game, made using C++ SFML. The goal of the game is to claim 5 balls every 10 seconds. Ball can never be

A fun game where you don't press the red ball!

DarkBall DarkBall is a fun to play game where you can press little balls/button, but never press the red ball(or any of its friends) You can find/play

A remake of the classic DX-Ball built with iGraphics
A remake of the classic DX-Ball built with iGraphics

DX-Ball Reincarnation This is a remake of the classic DX-Ball games made with C using the iGraphics library and SDL2. To compile from source, run the

✖🌱 A DirectX 12 starter repo that you could use to get the ball rolling.
✖🌱 A DirectX 12 starter repo that you could use to get the ball rolling.

DirectX 12 Seed A DirectX 12 repo you can use to get started with your own renderer. Setup First install: Git CMake Visual Studio Then type the follow

Owner
Jacek Fedoryński
Jacek Fedoryński
DIY trackball with twist-to-scroll

DIY trackball with twist-to-scroll This repository contains design files and code that can be used to make a fully programmable four-button USB trackb

Jacek Fedoryński 57 Nov 27, 2022
Devterm keyboard & trackball firmware

DevTerm Keyboard Firmware How to install Install Arduino STM32 hardware package on your Arduino IDE https://github.com/rogerclarkmelbourne/Arduino_STM

SeongChan Lee 23 Dec 24, 2022
imGuIZMO.quat is a ImGui widget: like a trackball it provides a way to rotate models, lights, or objects with mouse, and graphically visualize their position in space, also around any single axis (Shift/Ctrl/Alt/Super)

imGuIZMO.quat v3.0 imGuIZMO.quat is a ImGui widget: like a trackball it provides a way to rotate models, lights, or objects with mouse, and graphicall

Michele Morrone 276 Dec 28, 2022
DIY trackball with scroll ring

DIY trackball with scroll ring This repository contains design files and code that can be used to make a fully programmable four-button USB trackball

Jacek Fedoryński 98 Jan 7, 2023
keyball is split keyboard has 100% track ball

keyball Keyball is split keyboard has 100% track ball Firmware build guide Keyball46 have separate firmwares for each of PCBs w/ trackball and w/o tra

null 145 Dec 26, 2022
✔️The smallest header-only GUI library(4 KLOC) for all platforms

Welcome to GUI-lite The smallest header-only GUI library (4 KLOC) for all platforms. 中文 Lightweight ✂️ Small: 4,000+ lines of C++ code, zero dependenc

null 6.6k Jan 8, 2023
DIY trackball with two balls

DIY two-ball trackball This repository contains design files and code that can be used to make a fully programmable two-ball, three-button USB trackba

Jacek Fedoryński 176 Dec 24, 2022
DIY trackball with twist-to-scroll

DIY trackball with twist-to-scroll This repository contains design files and code that can be used to make a fully programmable four-button USB trackb

Jacek Fedoryński 57 Nov 27, 2022
Devterm keyboard & trackball firmware

DevTerm Keyboard Firmware How to install Install Arduino STM32 hardware package on your Arduino IDE https://github.com/rogerclarkmelbourne/Arduino_STM

SeongChan Lee 23 Dec 24, 2022
imGuIZMO.quat is a ImGui widget: like a trackball it provides a way to rotate models, lights, or objects with mouse, and graphically visualize their position in space, also around any single axis (Shift/Ctrl/Alt/Super)

imGuIZMO.quat v3.0 imGuIZMO.quat is a ImGui widget: like a trackball it provides a way to rotate models, lights, or objects with mouse, and graphicall

Michele Morrone 276 Dec 28, 2022