diff --git a/Electronics/PCB (KiCAD)/Motherboard/RevD/CARs/CAR072 - Trace Oxidation on Non-Conformally Coated Areas.txt b/Electronics/PCB (KiCAD)/Motherboard/RevD/CARs/CAR072 - Trace Oxidation on Non-Conformally Coated Areas.txt new file mode 100644 index 0000000..df7c7f0 --- /dev/null +++ b/Electronics/PCB (KiCAD)/Motherboard/RevD/CARs/CAR072 - Trace Oxidation on Non-Conformally Coated Areas.txt @@ -0,0 +1 @@ +Two RMAd PCBs have oxidation-related trace failures, particularly on the back side traces corresponding to IC2 & IC3. Need to add kapton and/or conformal coating to prevent water ingress below the solder mask. \ No newline at end of file diff --git a/Electronics/PCB (KiCAD)/Motherboard/RevD/Manufacturing/LiBCM BOM - RevD.ods b/Electronics/PCB (KiCAD)/Motherboard/RevD/Manufacturing/LiBCM BOM - RevD.ods index 8864624..72f9505 100644 Binary files a/Electronics/PCB (KiCAD)/Motherboard/RevD/Manufacturing/LiBCM BOM - RevD.ods and b/Electronics/PCB (KiCAD)/Motherboard/RevD/Manufacturing/LiBCM BOM - RevD.ods differ diff --git a/Firmware/firmwareLiBCM/src/BringupTester.cpp b/Firmware/firmwareLiBCM/src/BringupTester.cpp index 5199c78..aa1aa59 100644 --- a/Firmware/firmwareLiBCM/src/BringupTester.cpp +++ b/Firmware/firmwareLiBCM/src/BringupTester.cpp @@ -41,6 +41,16 @@ void serialUSB_waitForAnyUserInput(void) void bringupTester_gridcharger(void) { #ifdef RUN_BRINGUP_TESTER_GRIDCHARGER + if (gpio_isUserSwitchOn() == NO) + { + //user just installed LiBCM, but hasn't installed firmware yet + Serial.print(F("\nPlease install LiBCM firmware\nSee linsight.org/install/firmware")); + + lcdTransmit_begin(); + lcdTransmit_displayOn(); + for (uint8_t ii = 0; ii < 4; ii++) { lcdTransmit_Warning(LCD_WARN_FW_EXPIRED); } + } + while (1) //this function never returns { Serial.print(F("\nRunning Grid Charger Test: ")); diff --git a/Firmware/firmwareLiBCM/src/gridCharger.cpp b/Firmware/firmwareLiBCM/src/gridCharger.cpp index ea2b5c1..a7bf081 100644 --- a/Firmware/firmwareLiBCM/src/gridCharger.cpp +++ b/Firmware/firmwareLiBCM/src/gridCharger.cpp @@ -117,6 +117,7 @@ void processChargerDisableReason(uint8_t canWeCharge) ///////////////////////////////////////////////////////////////////////////////////////// +//JTS2doLater: add timer/current logic to detect if grid charger isn't working void chargerControlSignals_handler(void) { static uint8_t isChargingAllowed_previous = NO__UNINITIALIZED; diff --git a/Firmware/firmwareLiBCM/src/lcdTransmit.cpp b/Firmware/firmwareLiBCM/src/lcdTransmit.cpp index 5920cc2..0fc6f10 100755 --- a/Firmware/firmwareLiBCM/src/lcdTransmit.cpp +++ b/Firmware/firmwareLiBCM/src/lcdTransmit.cpp @@ -622,7 +622,14 @@ void lcdTransmit_displayOff(void) ///////////////////////////////////////////////////////////////////////////////////////// +/*JTS2doLater: Add a keyOff powerup splash screen +******************** +Welcome to LiBCM +V0.9.4d +*/ + /*JTS2doLater: Add the following alert if LiBCM loses control +******************** LiBCM DETECTED A DANGEROUS CONDITION. TURN OFF IMA SWITCH @@ -636,7 +643,7 @@ void lcdTransmit_Warning(uint8_t warningToDisplay) if (warningToDisplay == LCD_WARN_KEYON_GRID) { - // ******************** + // ******************** if (whichRowToPrint == 0) { lcd2.print(F("ALERT: Grid Charger "));} else if (whichRowToPrint == 1) { lcd2.print(F(" Plugged In!! "));} else if (whichRowToPrint == 2) { lcd2.print(F("LiBCM sent P1648 to "));}