Skip to content

Commit bfad8f9

Browse files
Fix CI failures: add hardware import guards and update placeholder URLs
- Add try/except blocks for hardware-specific imports in i2c_controller.py and oled_display.py - Allows Python syntax checking in CI environments without Raspberry Pi hardware - Fix placeholder GitHub username in OSC protocol documentation Co-Authored-By: Claude Sonnet 4.5 <[email protected]>
1 parent ef1411f commit bfad8f9

File tree

3 files changed

+25
-9
lines changed

3 files changed

+25
-9
lines changed

docs/api/osc-protocol.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -394,4 +394,4 @@ Planned for future versions:
394394

395395
## Support
396396

397-
Questions about the OSC protocol? Ask in [GitHub Discussions](https://github.com/yourusername/On-body-haptics/discussions).
397+
Questions about the OSC protocol? Ask in [GitHub Discussions](https://github.com/MissCrispenCakes/On-body-haptics/discussions).

implementations/raspberry-pi-i2c/firmware/src/lib/i2c_controller.py

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,22 @@
66
"""
77

88
import time
9-
import board
10-
import busio
119
import threading
1210
import queue
13-
import adafruit_drv2605
14-
import adafruit_tca9548a
1511
from typing import Dict, Optional
1612

13+
try:
14+
import board
15+
import busio
16+
import adafruit_drv2605
17+
import adafruit_tca9548a
18+
except ImportError:
19+
# Hardware modules not available (e.g., in CI environment)
20+
board = None
21+
busio = None
22+
adafruit_drv2605 = None
23+
adafruit_tca9548a = None
24+
1725

1826
class I2CHapticController(threading.Thread):
1927
"""

implementations/raspberry-pi-i2c/firmware/src/lib/oled_display.py

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,22 @@
55
Displays information when button is pressed.
66
"""
77

8-
import board
9-
import digitalio
10-
import busio
118
import threading
129
import netifaces
13-
import adafruit_ssd1306
1410
from typing import Optional
1511

12+
try:
13+
import board
14+
import digitalio
15+
import busio
16+
import adafruit_ssd1306
17+
except ImportError:
18+
# Hardware modules not available (e.g., in CI environment)
19+
board = None
20+
digitalio = None
21+
busio = None
22+
adafruit_ssd1306 = None
23+
1624

1725
class OLEDDisplay(threading.Thread):
1826
"""

0 commit comments

Comments
 (0)