You will develop and test an “Arduino” sketch which will compile on the Arduino IDE and run on an ESP32 WROOM development board utilizing the ULP core to count interrupts and poll a INA219 sensor, while the main board is in deep sleep.
This is part of a larger program, which collects different sensor information via I2C. This project is only to develop the deep sleep routines, to keep collecting critical sensor information during deep sleep periods. You do not need to worry about the rest of the program at this point. You will develop a small program which will later be integrated into the larger program.
Your program starts, sets the internal RTC via NTP and any other required environment and goes to sleep. It will wakeup on predefined interrupts and display the previous state (eg sleep or re-boot) and the source of the wakeup event (ie. the interrupt which caused the wakeup event) on the serial console. The latest interrupt counts and INA219 sensor information will be displayed. The sketch will continue counting interrupts both during sleep and awake periods.
I have reached the ends of my capabilities with a home electronics project I am working on and am looking for a freelance developer to help out with the part. If you are convertsant with this type of work, hopefully this will be an easy thing for you to implement which won't break the bank for me ;-) Please ensure that you properly read the project document attached.