def waitRelease(i, state): easydraw.messageCentered("ACTION\nRelease " + pinToName[i] + "\n(" + state + ")") print("(" + state + ") ACTION: Release " + pinToName[i]) while mpr121.get(i): time.sleep(0.01) print("OK")
def waitTouch(i, state): easydraw.messageCentered("ACTION\nPress " + pinToName[i] + "\n(" + state + ")") print("(" + state + ") ACTION: Press " + pinToName[i]) while not mpr121.get(i): time.sleep(0.01) print("OK")
def value(button): # Reads the state of a button global _buttons, __mprMap, __num if button < 0 or button >= __num: raise ValueError("Invalid button!") if button == BTN_FLASH: return not _buttons.pin(0).value() # This input has is active LOW else: return mpr121.get(__mprMap[button])
time.sleep(0.01) print("OK") if use_verification: easydraw.messageCentered("CALIBRATION\nVerification...") for i in range(12): if not isTouch[i]: continue elif isTooLow[i]: #easydraw.msg("(low)") waitTouch(i, "too low") waitRelease(i, "too low") elif isTooHigh[i]: #easydraw.msg("(high)") waitTouch(i, "too high") waitRelease(i, "too high") easydraw.messageCentered("CALIBRATION\nWaiting for release...") for i in range(12): if mpr121.isTouch(i) and mpr121.get(i): waitRelease(i, "check") easydraw.messageCentered("CALIBRATION\nSaving to NVS...") for i in range(12): machine.nvs_set_u16("system", "mpr121.base." + str(i), baseLine[i]) easydraw.messageCentered("CALIBRATION\nOK")
def waitRelease(i): easydraw.msg("ACTION: Release button " + str(i)) while mpr121.get(i): pass
def waitTouch(i): easydraw.msg("ACTION: Press button " + str(i)) while not mpr121.get(i): pass
pass for i in range(12): if not isTouch[i]: continue elif isTooLow[i]: easydraw.msg(str(i) + ". Too low!") waitTouch(i) waitRelease(i) elif isTooHigh[i]: easydraw.msg(str(i) + ". Too high!") waitTouch(i) waitRelease(i) for i in range(12): if mpr121.getDefaultBaseline(i) > 0: print(i, mpr121.getDefaultBaseline(i), baseLine[i], "=", baseLine[i] - mpr121.getDefaultBaseline(i)) for i in range(12): if mpr121.getDefaultBaseline(i) > 0 and mpr121.get(i): waitRelease(i) easydraw.msg("Check passed.") for i in range(12): machine.nvs_set_u16("system", "mpr121.base." + str(i), baseLine[i]) easydraw.msg("Calibration stored to NVS!")