aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorLoek Le Blansch <loek@pipeframe.xyz>2024-06-21 13:22:18 +0200
committerLoek Le Blansch <loek@pipeframe.xyz>2024-06-21 13:22:18 +0200
commit67f076b151d35a36800734cb31a403fac92ffb6d (patch)
tree6ca9a05caa9e98ad5b9ba17a5d9e5ea22bcfa301 /lib
parent6da66e5356eb367e4b766484eab3a94cb009fb9c (diff)
WIP more design document + add TODOs
Diffstat (limited to 'lib')
-rw-r--r--lib/pbdrv/pb.h19
1 files changed, 15 insertions, 4 deletions
diff --git a/lib/pbdrv/pb.h b/lib/pbdrv/pb.h
index 0f2e9d1..e8037ae 100644
--- a/lib/pbdrv/pb.h
+++ b/lib/pbdrv/pb.h
@@ -1,23 +1,34 @@
#pragma once
+//! I2C bus speed in hertz (100 KHz)
#define PB_CLOCK_SPEED_HZ 100000
+//! I2C bus timeout delay in milliseconds
#define PB_TIMEOUT_MS 10
+//! I2C bus timeout delay in microseconds
#define PB_TIMEOUT_US (1e3 * PB_TIMEOUT_MS)
-// Adafruit NeoTrellis modules
+//! Adafruit NeoTrellis module 1 I2C address
#define PB_ADDR_ADA_NEO_1 0x2E
+//! Adafruit NeoTrellis module 2 I2C address
#define PB_ADDR_ADA_NEO_2 0x2F
+//! Adafruit NeoTrellis module 3 I2C address
#define PB_ADDR_ADA_NEO_3 0x30
+//! Adafruit NeoTrellis module 4 I2C address
#define PB_ADDR_ADA_NEO_4 0x32
-// Main controller
+//! Main controller I2C address
#define PB_ADDR_MOD_MAIN 0x08
-// Puzzle modules
+//! NeoTrellis puzzle module I2C address
#define PB_ADDR_MOD_NEOTRELLIS 0x21
+//! Software puzzle module I2C address
#define PB_ADDR_MOD_SOFTWARE 0x22
+//! Hardware puzzle module I2C address
#define PB_ADDR_MOD_HARDWARE 0x23
+//! Vault puzzle module I2C address
#define PB_ADDR_MOD_VAULT 0x24
-// #define BUSADDR_MOD_AUTOMATION 0x25
+//! Automation puzzle module I2C address
+#define BUSADDR_MOD_AUTOMATION 0x25
+//! Dummy puzzle module I2C address
#define PB_ADDR_MOD_DUMMY 0x69