@@ -101,9 +101,9 @@ class Module : public Printable {
101
101
char * name;
102
102
};
103
103
104
- class Buttons : public Module {
104
+ class ModulinoButtons : public Module {
105
105
public:
106
- Buttons (uint8_t address = 0xFF )
106
+ ModulinoButtons (uint8_t address = 0xFF )
107
107
: Module(address, " BUTTONS" ) {}
108
108
bool get (bool & a, bool & b, bool & c) {
109
109
uint8_t buf[3 ];
@@ -138,9 +138,9 @@ class Buttons : public Module {
138
138
std::vector<uint8_t > match = { 0x7C }; // same as fw main.c
139
139
};
140
140
141
- class Tone : public Module {
141
+ class ModulinoBuzzer : public Module {
142
142
public:
143
- Tone (uint8_t address = 0xFF )
143
+ ModulinoBuzzer (uint8_t address = 0xFF )
144
144
: Module(address, " BUZZER" ) {}
145
145
void tone (size_t freq, size_t len_ms) {
146
146
uint8_t buf[8 ];
@@ -175,9 +175,9 @@ class ModulinoColor {
175
175
uint8_t r, g, b;
176
176
};
177
177
178
- class LEDS : public Module {
178
+ class ModulinoPixels : public Module {
179
179
public:
180
- LEDS (uint8_t address = 0xFF )
180
+ ModulinoPixels (uint8_t address = 0xFF )
181
181
: Module(address, " LEDS" ) {
182
182
memset ((uint8_t *)data, 0xE0 , NUMLEDS * 4 );
183
183
}
@@ -214,9 +214,9 @@ class LEDS : public Module {
214
214
};
215
215
216
216
217
- class Encoder : public Module {
217
+ class ModulinoKnob : public Module {
218
218
public:
219
- Encoder (uint8_t address = 0xFF )
219
+ ModulinoKnob (uint8_t address = 0xFF )
220
220
: Module(address, " ENCODER" ) {}
221
221
int16_t get () {
222
222
uint8_t buf[3 ];
@@ -321,22 +321,46 @@ extern ModulinoColor BLUE;
321
321
extern ModulinoColor GREEN;
322
322
extern ModulinoColor VIOLET;
323
323
extern ModulinoColor WHITE;
324
-
325
324
extern ModulinoClass Modulino;
326
325
327
326
/*
328
- extern Buttons buttons;
329
- extern Tone buzzer;
330
- extern LEDS leds;
331
- extern Encoder encoder;
327
+ TODO: These classes need to be ported to Modulino ecosystem, as per the tof_sensor example
332
328
*/
333
- extern BoschSensorClass imu;
334
- extern VL53L1X tof_sensor;
335
329
extern APDS9999 color; // TODO: need to change to APDS9999 https://docs.broadcom.com/doc/APDS-9999-DS
336
330
extern LPS22HBClass barometer;
337
- extern HS300xClass humidity;
338
331
339
- class Distance : public Module {
332
+ class ModulinoMovement : public Module {
333
+ public:
334
+ bool begin () {
335
+ imu.begin ();
336
+ imu.setContinuousMode ();
337
+ }
338
+ int update () {
339
+ return imu.readAcceleration (x, y, z);
340
+ }
341
+ float getX () {
342
+ return x;
343
+ }
344
+ float getY () {
345
+ return y;
346
+ }
347
+ float getZ () {
348
+ return z;
349
+ }
350
+ private:
351
+ BoschSensorClass imu = BoschSensorClass(*((TwoWire*)getWire()));
352
+ float x,y,z;
353
+ };
354
+
355
+ class ModulinoAir : public Module {
356
+
357
+ };
358
+
359
+ class ModulinoLight : public Module {
360
+
361
+ };
362
+
363
+ class ModulinoDistance : public Module {
340
364
public:
341
365
bool begin () {
342
366
tof_sensor.setBus ((TwoWire*)getWire ());
@@ -348,4 +372,6 @@ class Distance : public Module {
348
372
float get () {
349
373
return tof_sensor.read ();
350
374
}
375
+ private:
376
+ VL53L1X tof_sensor;
351
377
};
0 commit comments