Skip to content

Commit a4875b4

Browse files
Update docs since 0.8.0
1 parent a8548d6 commit a4875b4

File tree

8 files changed

+365
-1670
lines changed

8 files changed

+365
-1670
lines changed

docs/architecture/frameworks.md

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -156,16 +156,18 @@ primary_color = AppearanceManager.get_primary_color()
156156
```
157157

158158
### AudioManager
159-
Manages audio playback and recording.
159+
Manages audio playback and recording with a device registry.
160160

161161
```python
162162
from mpos import AudioManager
163163

164-
# Initialize at startup
165-
AudioManager.init()
164+
# Register devices at startup
165+
AudioManager.add(AudioManager.Output(name="speaker", kind="i2s", i2s_pins={"ws": 47, "sd": 16}))
166+
AudioManager.add(AudioManager.Input(name="mic", kind="i2s", i2s_pins={"ws": 47, "sd_in": 15}))
166167

167168
# Use anywhere
168-
AudioManager.play_wav("path/to/audio.wav")
169+
player = AudioManager.player(file_path="path/to/audio.wav")
170+
player.start()
169171
AudioManager.stop()
170172
```
171173

@@ -210,7 +212,7 @@ image_data = CameraManager.capture_photo()
210212
```
211213

212214
### SensorManager
213-
Manages sensor access (accelerometer, gyroscope, etc.).
215+
Manages sensor access (accelerometer, gyroscope, magnetometer, temperature).
214216

215217
```python
216218
from mpos import SensorManager
@@ -219,7 +221,8 @@ from mpos import SensorManager
219221
SensorManager.init()
220222

221223
# Read sensor data
222-
accel_data = SensorManager.read_accelerometer()
224+
accel = SensorManager.get_default_sensor(SensorManager.TYPE_ACCELEROMETER)
225+
accel_data = SensorManager.read_sensor(accel)
223226
```
224227

225228
### TaskManager
@@ -259,7 +262,9 @@ def init_frameworks():
259262
"""Initialize all frameworks."""
260263
AppManager.refresh_apps() # Discover all installed apps
261264
AppearanceManager.init(prefs) # Requires SharedPreferences
262-
AudioManager.init()
265+
# Register AudioManager devices for this board
266+
AudioManager.add(AudioManager.Output(name="speaker", kind="i2s", i2s_pins={"ws": 47, "sd": 16}))
267+
AudioManager.add(AudioManager.Input(name="mic", kind="i2s", i2s_pins={"ws": 47, "sd_in": 15}))
263268
DownloadManager.init()
264269
ConnectivityManager.init()
265270
CameraManager.init()
@@ -377,7 +382,9 @@ from mpos import AppearanceManager, AudioManager, CameraManager, ConnectivityMan
377382

378383
# Then use class methods directly (no .get() needed)
379384
AppearanceManager.init(prefs)
380-
AudioManager.play_wav("music.wav")
385+
player = AudioManager.player(file_path="music.wav")
386+
player.start()
387+
accel = SensorManager.get_default_sensor(SensorManager.TYPE_ACCELEROMETER)
381388
SensorManager.read_sensor(accel)
382389
```
383390

0 commit comments

Comments
 (0)