Skip to content

Commit 8e69e51

Browse files
committed
Uncomment (non-functional) Qwiic Button code
1 parent 95b79a5 commit 8e69e51

File tree

6 files changed

+149
-149
lines changed

6 files changed

+149
-149
lines changed

Firmware/OpenLog_Artemis/OpenLog_Artemis.ino

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -270,7 +270,7 @@ icm_20948_DMP_data_t dmpData; // Global storage for the DMP data - extracted fro
270270
#include "SparkFun_SGP40_Arduino_Library.h" // Click here to get the library: http://librarymanager/All#SparkFun_SGP40
271271
#include "SparkFun_SDP3x_Arduino_Library.h" // Click here to get the library: http://librarymanager/All#SparkFun_SDP3x
272272
#include "MS5837.h" // Click here to download the library: https://github.com/sparkfunX/BlueRobotics_MS5837_Library
273-
//#include "SparkFun_Qwiic_Button.h" // Click here to get the library: http://librarymanager/All#SparkFun_Qwiic_Button_Switch
273+
#include "SparkFun_Qwiic_Button.h" // Click here to get the library: http://librarymanager/All#SparkFun_Qwiic_Button_Switch
274274
#include "SparkFun_Bio_Sensor_Hub_Library.h" // Click here to get the library: http://librarymanager/All#SparkFun_Bio_Sensor
275275

276276
//-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

Firmware/OpenLog_Artemis/Sensors.ino

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1490,20 +1490,20 @@ void printHelperText(bool terminalOnly)
14901490
}
14911491
}
14921492
break;
1493-
// case DEVICE_QWIIC_BUTTON:
1494-
// {
1495-
// struct_QWIIC_BUTTON *nodeSetting = (struct_QWIIC_BUTTON *)temp->configPtr;
1496-
// if (nodeSetting->log)
1497-
// {
1498-
// if (nodeSetting->logPressed)
1499-
// strcat(helperText, "pressS,");
1500-
// if (nodeSetting->logClicked)
1501-
// strcat(helperText, "clickS,");
1502-
// if (nodeSetting->toggleLEDOnClick)
1503-
// strcat(helperText, "LED,");
1504-
// }
1505-
// }
1506-
// break;
1493+
case DEVICE_QWIIC_BUTTON:
1494+
{
1495+
struct_QWIIC_BUTTON *nodeSetting = (struct_QWIIC_BUTTON *)temp->configPtr;
1496+
if (nodeSetting->log)
1497+
{
1498+
if (nodeSetting->logPressed)
1499+
strcat(helperText, "pressS,");
1500+
if (nodeSetting->logClicked)
1501+
strcat(helperText, "clickS,");
1502+
if (nodeSetting->toggleLEDOnClick)
1503+
strcat(helperText, "LED,");
1504+
}
1505+
}
1506+
break;
15071507
case DEVICE_BIO_SENSOR_HUB:
15081508
{
15091509
struct_BIO_SENSOR_HUB *nodeSetting = (struct_BIO_SENSOR_HUB *)temp->configPtr;

Firmware/OpenLog_Artemis/autoDetect.ino

Lines changed: 36 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -255,12 +255,12 @@ bool addDevice(deviceType_e deviceType, uint8_t address, uint8_t muxAddress, uin
255255
temp->configPtr = new struct_MS5837;
256256
}
257257
break;
258-
// case DEVICE_QWIIC_BUTTON:
259-
// {
260-
// temp->classPtr = new QwiicButton;
261-
// temp->configPtr = new struct_QWIIC_BUTTON;
262-
// }
263-
// break;
258+
case DEVICE_QWIIC_BUTTON:
259+
{
260+
temp->classPtr = new QwiicButton;
261+
temp->configPtr = new struct_QWIIC_BUTTON;
262+
}
263+
break;
264264
case DEVICE_BIO_SENSOR_HUB:
265265
{
266266
temp->classPtr = new SparkFun_Bio_Sensor_Hub(32, 11, address); // Reset pin is 32, MFIO pin is 11
@@ -528,15 +528,15 @@ bool beginQwiicDevices()
528528
temp->online = true;
529529
}
530530
break;
531-
// case DEVICE_QWIIC_BUTTON:
532-
// {
533-
// QwiicButton *tempDevice = (QwiicButton *)temp->classPtr;
534-
// struct_QWIIC_BUTTON *nodeSetting = (struct_QWIIC_BUTTON *)temp->configPtr; //Create a local pointer that points to same spot as node does
535-
// if (nodeSetting->powerOnDelayMillis > qwiicPowerOnDelayMillis) qwiicPowerOnDelayMillis = nodeSetting->powerOnDelayMillis; // Increase qwiicPowerOnDelayMillis if required
536-
// if (tempDevice->begin(temp->address, qwiic) == true) //Address, Wire port. Returns true on success.
537-
// temp->online = true;
538-
// }
539-
// break;
531+
case DEVICE_QWIIC_BUTTON:
532+
{
533+
QwiicButton *tempDevice = (QwiicButton *)temp->classPtr;
534+
struct_QWIIC_BUTTON *nodeSetting = (struct_QWIIC_BUTTON *)temp->configPtr; //Create a local pointer that points to same spot as node does
535+
if (nodeSetting->powerOnDelayMillis > qwiicPowerOnDelayMillis) qwiicPowerOnDelayMillis = nodeSetting->powerOnDelayMillis; // Increase qwiicPowerOnDelayMillis if required
536+
if (tempDevice->begin(temp->address, qwiic) == true) //Address, Wire port. Returns true on success.
537+
temp->online = true;
538+
}
539+
break;
540540
case DEVICE_BIO_SENSOR_HUB:
541541
{
542542
SparkFun_Bio_Sensor_Hub *tempDevice = (SparkFun_Bio_Sensor_Hub *)temp->classPtr;
@@ -941,9 +941,9 @@ FunctionPointer getConfigFunctionPtr(uint8_t nodeNumber)
941941
case DEVICE_PRESSURE_MS5837:
942942
ptr = (FunctionPointer)menuConfigure_MS5837;
943943
break;
944-
// case DEVICE_QWIIC_BUTTON:
945-
// ptr = (FunctionPointer)menuConfigure_QWIIC_BUTTON;
946-
// break;
944+
case DEVICE_QWIIC_BUTTON:
945+
ptr = (FunctionPointer)menuConfigure_QWIIC_BUTTON;
946+
break;
947947
case DEVICE_BIO_SENSOR_HUB:
948948
ptr = (FunctionPointer)menuConfigure_BIO_SENSOR_HUB;
949949
break;
@@ -1093,7 +1093,7 @@ void swap(struct node * a, struct node * b)
10931093
#define ADR_VCNL4040 0x60
10941094
#define ADR_SCD30 0x61
10951095
#define ADR_MCP9600 0x60 //0x60 to 0x67
1096-
//#define ADR_QWIIC_BUTTON 0x6F //But can be any address... Limit the range to 0x68-0x6F
1096+
#define ADR_QWIIC_BUTTON 0x6F //But can be any address... Limit the range to 0x68-0x6F
10971097
#define ADR_MULTIPLEXER 0x70 //0x70 to 0x77
10981098
#define ADR_SHTC3 0x70
10991099
#define ADR_MS5637 0x76
@@ -1385,20 +1385,20 @@ deviceType_e testDevice(uint8_t i2cAddress, uint8_t muxAddress, uint8_t portNumb
13851385
return (DEVICE_TEMPERATURE_MCP9600);
13861386
}
13871387
break;
1388-
// case 0x68:
1389-
// case 0x69:
1390-
// case 0x6A:
1391-
// case 0x6B:
1392-
// case 0x6C:
1393-
// case 0x6D:
1394-
// case 0x6E:
1395-
// case 0x6F:
1396-
// {
1397-
// QwiicButton sensor;
1398-
// if (sensor.begin(i2cAddress, qwiic) == true) //Address, Wire port
1399-
// return (DEVICE_QWIIC_BUTTON);
1400-
// }
1401-
// break;
1388+
case 0x68:
1389+
case 0x69:
1390+
case 0x6A:
1391+
case 0x6B:
1392+
case 0x6C:
1393+
case 0x6D:
1394+
case 0x6E:
1395+
case 0x6F:
1396+
{
1397+
QwiicButton sensor;
1398+
if (sensor.begin(i2cAddress, qwiic) == true) //Address, Wire port
1399+
return (DEVICE_QWIIC_BUTTON);
1400+
}
1401+
break;
14021402
case 0x70:
14031403
{
14041404
//Ignore devices we've already recorded. This was causing the mux to get tested, a begin() would happen, and the mux would be reset.
@@ -1711,9 +1711,9 @@ const char* getDeviceName(deviceType_e deviceNumber)
17111711
case DEVICE_PRESSURE_MS5837:
17121712
return "Pressure-MS5837";
17131713
break;
1714-
// case DEVICE_QWIIC_BUTTON:
1715-
// return "Qwiic_Button";
1716-
// break;
1714+
case DEVICE_QWIIC_BUTTON:
1715+
return "Qwiic_Button";
1716+
break;
17171717
case DEVICE_BIO_SENSOR_HUB:
17181718
return "Bio-Sensor-Oximeter";
17191719
break;

Firmware/OpenLog_Artemis/menuAttachedDevices.ino

Lines changed: 70 additions & 70 deletions
Original file line numberDiff line numberDiff line change
@@ -337,9 +337,9 @@ void menuAttachedDevices()
337337
case DEVICE_PRESSURE_MS5837:
338338
SerialPrintf3("%s MS5837 (BAR30 / BAR02) Pressure Sensor %s\r\n", strDeviceMenu, strAddress);
339339
break;
340-
// case DEVICE_QWIIC_BUTTON:
341-
// SerialPrintf3("%s Qwiic Button %s\r\n", strDeviceMenu, strAddress);
342-
// break;
340+
case DEVICE_QWIIC_BUTTON:
341+
SerialPrintf3("%s Qwiic Button %s\r\n", strDeviceMenu, strAddress);
342+
break;
343343
case DEVICE_BIO_SENSOR_HUB:
344344
SerialPrintf3("%s Bio Sensor Pulse Oximeter %s\r\n", strDeviceMenu, strAddress);
345345
break;
@@ -2513,73 +2513,73 @@ void menuConfigure_MS5837(void *configPtr)
25132513
}
25142514
}
25152515

2516-
//void menuConfigure_QWIIC_BUTTON(void *configPtr)
2517-
//{
2518-
// struct_QWIIC_BUTTON *sensorSetting = (struct_QWIIC_BUTTON*)configPtr;
2519-
//
2520-
// while (1)
2521-
// {
2522-
// SerialPrintln(F(""));
2523-
// SerialPrintln(F("Menu: Configure Qwiic Button"));
2524-
//
2525-
// SerialPrint(F("1) Sensor Logging: "));
2526-
// if (sensorSetting->log == true) SerialPrintln(F("Enabled"));
2527-
// else SerialPrintln(F("Disabled"));
2528-
//
2529-
// if (sensorSetting->log == true)
2530-
// {
2531-
// SerialPrint(F("2) Log Button Presses: "));
2532-
// if (sensorSetting->logPressed == true) SerialPrintln(F("Enabled"));
2533-
// else SerialPrintln(F("Disabled"));
2534-
//
2535-
// SerialPrint(F("3) Log Button Clicks: "));
2536-
// if (sensorSetting->logClicked == true) SerialPrintln(F("Enabled"));
2537-
// else SerialPrintln(F("Disabled"));
2538-
//
2539-
// SerialPrint(F("4) Toggle LED on each click (and log the LED state): "));
2540-
// if (sensorSetting->toggleLEDOnClick == true) SerialPrintln(F("Enabled"));
2541-
// else SerialPrintln(F("Disabled"));
2542-
//
2543-
// SerialPrintf2("5) LED Brightness: %d\r\n", sensorSetting->ledBrightness);
2544-
// }
2545-
// SerialPrintln(F("x) Exit"));
2546-
//
2547-
// int incoming = getNumber(menuTimeout); //Timeout after x seconds
2548-
//
2549-
// if (incoming == 1)
2550-
// sensorSetting->log ^= 1;
2551-
// else if (sensorSetting->log == true)
2552-
// {
2553-
// if (incoming == 2)
2554-
// sensorSetting->logPressed ^= 1;
2555-
// else if (incoming == 3)
2556-
// sensorSetting->logClicked ^= 1;
2557-
// else if (incoming == 4)
2558-
// sensorSetting->toggleLEDOnClick ^= 1;
2559-
// else if (incoming == 5)
2560-
// {
2561-
// SerialPrint(F("Enter the LED brightness (0 to 255): "));
2562-
// int bright = getNumber(menuTimeout); //x second timeout
2563-
// if (bright < 0 || bright > 255)
2564-
// SerialPrintln(F("Error: Out of range"));
2565-
// else
2566-
// sensorSetting->ledBrightness = bright;
2567-
// }
2568-
// else if (incoming == STATUS_PRESSED_X)
2569-
// break;
2570-
// else if (incoming == STATUS_GETNUMBER_TIMEOUT)
2571-
// break;
2572-
// else
2573-
// printUnknown(incoming);
2574-
// }
2575-
// else if (incoming == STATUS_PRESSED_X)
2576-
// break;
2577-
// else if (incoming == STATUS_GETNUMBER_TIMEOUT)
2578-
// break;
2579-
// else
2580-
// printUnknown(incoming);
2581-
// }
2582-
//}
2516+
void menuConfigure_QWIIC_BUTTON(void *configPtr)
2517+
{
2518+
struct_QWIIC_BUTTON *sensorSetting = (struct_QWIIC_BUTTON*)configPtr;
2519+
2520+
while (1)
2521+
{
2522+
SerialPrintln(F(""));
2523+
SerialPrintln(F("Menu: Configure Qwiic Button"));
2524+
2525+
SerialPrint(F("1) Sensor Logging: "));
2526+
if (sensorSetting->log == true) SerialPrintln(F("Enabled"));
2527+
else SerialPrintln(F("Disabled"));
2528+
2529+
if (sensorSetting->log == true)
2530+
{
2531+
SerialPrint(F("2) Log Button Presses: "));
2532+
if (sensorSetting->logPressed == true) SerialPrintln(F("Enabled"));
2533+
else SerialPrintln(F("Disabled"));
2534+
2535+
SerialPrint(F("3) Log Button Clicks: "));
2536+
if (sensorSetting->logClicked == true) SerialPrintln(F("Enabled"));
2537+
else SerialPrintln(F("Disabled"));
2538+
2539+
SerialPrint(F("4) Toggle LED on each click (and log the LED state): "));
2540+
if (sensorSetting->toggleLEDOnClick == true) SerialPrintln(F("Enabled"));
2541+
else SerialPrintln(F("Disabled"));
2542+
2543+
SerialPrintf2("5) LED Brightness: %d\r\n", sensorSetting->ledBrightness);
2544+
}
2545+
SerialPrintln(F("x) Exit"));
2546+
2547+
int incoming = getNumber(menuTimeout); //Timeout after x seconds
2548+
2549+
if (incoming == 1)
2550+
sensorSetting->log ^= 1;
2551+
else if (sensorSetting->log == true)
2552+
{
2553+
if (incoming == 2)
2554+
sensorSetting->logPressed ^= 1;
2555+
else if (incoming == 3)
2556+
sensorSetting->logClicked ^= 1;
2557+
else if (incoming == 4)
2558+
sensorSetting->toggleLEDOnClick ^= 1;
2559+
else if (incoming == 5)
2560+
{
2561+
SerialPrint(F("Enter the LED brightness (0 to 255): "));
2562+
int bright = getNumber(menuTimeout); //x second timeout
2563+
if (bright < 0 || bright > 255)
2564+
SerialPrintln(F("Error: Out of range"));
2565+
else
2566+
sensorSetting->ledBrightness = bright;
2567+
}
2568+
else if (incoming == STATUS_PRESSED_X)
2569+
break;
2570+
else if (incoming == STATUS_GETNUMBER_TIMEOUT)
2571+
break;
2572+
else
2573+
printUnknown(incoming);
2574+
}
2575+
else if (incoming == STATUS_PRESSED_X)
2576+
break;
2577+
else if (incoming == STATUS_GETNUMBER_TIMEOUT)
2578+
break;
2579+
else
2580+
printUnknown(incoming);
2581+
}
2582+
}
25832583

25842584
void menuConfigure_BIO_SENSOR_HUB(void *configPtr)
25852585
{

Firmware/OpenLog_Artemis/nvm.ino

Lines changed: 27 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -758,16 +758,16 @@ void recordDeviceSettingsToFile()
758758
settingsFile.print((String)base + "conversion="); settingsFile.println(nodeSetting->conversion);
759759
}
760760
break;
761-
// case DEVICE_QWIIC_BUTTON:
762-
// {
763-
// struct_QWIIC_BUTTON *nodeSetting = (struct_QWIIC_BUTTON *)temp->configPtr;
764-
// settingsFile.println((String)base + "log=" + nodeSetting->log);
765-
// settingsFile.println((String)base + "logPressed=" + nodeSetting->logPressed);
766-
// settingsFile.println((String)base + "logClicked=" + nodeSetting->logClicked);
767-
// settingsFile.println((String)base + "toggleLEDOnClick=" + nodeSetting->toggleLEDOnClick);
768-
// settingsFile.println((String)base + "ledBrightness=" + nodeSetting->ledBrightness);
769-
// }
770-
// break;
761+
case DEVICE_QWIIC_BUTTON:
762+
{
763+
struct_QWIIC_BUTTON *nodeSetting = (struct_QWIIC_BUTTON *)temp->configPtr;
764+
settingsFile.println((String)base + "log=" + nodeSetting->log);
765+
settingsFile.println((String)base + "logPressed=" + nodeSetting->logPressed);
766+
settingsFile.println((String)base + "logClicked=" + nodeSetting->logClicked);
767+
settingsFile.println((String)base + "toggleLEDOnClick=" + nodeSetting->toggleLEDOnClick);
768+
settingsFile.println((String)base + "ledBrightness=" + nodeSetting->ledBrightness);
769+
}
770+
break;
771771
case DEVICE_BIO_SENSOR_HUB:
772772
{
773773
struct_BIO_SENSOR_HUB *nodeSetting = (struct_BIO_SENSOR_HUB *)temp->configPtr;
@@ -1367,23 +1367,23 @@ bool parseDeviceLine(char* str) {
13671367
SerialPrintf2("Unknown device setting: %s\r\n", deviceSettingName);
13681368
}
13691369
break;
1370-
// case DEVICE_QWIIC_BUTTON:
1371-
// {
1372-
// struct_QWIIC_BUTTON *nodeSetting = (struct_QWIIC_BUTTON *)deviceConfigPtr; //Create a local pointer that points to same spot as node does
1373-
// if (strcmp(deviceSettingName, "log") == 0)
1374-
// nodeSetting->log = d;
1375-
// else if (strcmp(deviceSettingName, "logPressed") == 0)
1376-
// nodeSetting->logPressed = d;
1377-
// else if (strcmp(deviceSettingName, "logClicked") == 0)
1378-
// nodeSetting->logClicked = d;
1379-
// else if (strcmp(deviceSettingName, "toggleLEDOnClick") == 0)
1380-
// nodeSetting->toggleLEDOnClick = d;
1381-
// else if (strcmp(deviceSettingName, "ledBrightness") == 0)
1382-
// nodeSetting->ledBrightness = d;
1383-
// else
1384-
// SerialPrintf2("Unknown device setting: %s\r\n", deviceSettingName);
1385-
// }
1386-
// break;
1370+
case DEVICE_QWIIC_BUTTON:
1371+
{
1372+
struct_QWIIC_BUTTON *nodeSetting = (struct_QWIIC_BUTTON *)deviceConfigPtr; //Create a local pointer that points to same spot as node does
1373+
if (strcmp(deviceSettingName, "log") == 0)
1374+
nodeSetting->log = d;
1375+
else if (strcmp(deviceSettingName, "logPressed") == 0)
1376+
nodeSetting->logPressed = d;
1377+
else if (strcmp(deviceSettingName, "logClicked") == 0)
1378+
nodeSetting->logClicked = d;
1379+
else if (strcmp(deviceSettingName, "toggleLEDOnClick") == 0)
1380+
nodeSetting->toggleLEDOnClick = d;
1381+
else if (strcmp(deviceSettingName, "ledBrightness") == 0)
1382+
nodeSetting->ledBrightness = d;
1383+
else
1384+
SerialPrintf2("Unknown device setting: %s\r\n", deviceSettingName);
1385+
}
1386+
break;
13871387
case DEVICE_BIO_SENSOR_HUB:
13881388
{
13891389
struct_BIO_SENSOR_HUB *nodeSetting = (struct_BIO_SENSOR_HUB *)deviceConfigPtr; //Create a local pointer that points to same spot as node does

Firmware/OpenLog_Artemis/settings.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ typedef enum
2626
DEVICE_VOC_SGP40,
2727
DEVICE_PRESSURE_SDP3X,
2828
DEVICE_PRESSURE_MS5837,
29-
// DEVICE_QWIIC_BUTTON,
29+
DEVICE_QWIIC_BUTTON,
3030
DEVICE_BIO_SENSOR_HUB,
3131

3232
DEVICE_TOTAL_DEVICES, //Marks the end, used to iterate loops

0 commit comments

Comments
 (0)