summaryrefslogtreecommitdiff
path: root/users/drashna/pimoroni_trackball.h
diff options
context:
space:
mode:
Diffstat (limited to 'users/drashna/pimoroni_trackball.h')
-rw-r--r--users/drashna/pimoroni_trackball.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/users/drashna/pimoroni_trackball.h b/users/drashna/pimoroni_trackball.h
new file mode 100644
index 0000000000..7e8a7cc816
--- /dev/null
+++ b/users/drashna/pimoroni_trackball.h
@@ -0,0 +1,18 @@
+#pragma once
+
+#include "quantum.h"
+#include "pointing_device.h"
+
+#ifndef TRACKBALL_ADDRESS
+# define TRACKBALL_ADDRESS 0x0A
+#endif
+#define TRACKBALL_WRITE ((TRACKBALL_ADDRESS << 1) | I2C_WRITE)
+#define TRACKBALL_READ ((TRACKBALL_ADDRESS << 1) | I2C_READ)
+
+void trackball_set_rgbw(uint8_t red, uint8_t green, uint8_t blue, uint8_t white);
+void trackball_check_click(bool pressed, report_mouse_t *mouse);
+
+float trackball_get_precision(void);
+void trackball_set_precision(float precision);
+bool trackball_is_scrolling(void);
+void trackball_set_scrolling(bool scroll);