We're developing a PCB with UJA113x SBC as CAN driver and voltage regulator. When we switch the SBC to Sleep mode, we need it to wake-up when CAN activity or undervoltage is detected.
Switching SBC to Sleep mode and SBC wake-up upon CAN activity detection works as expected (0x23:CVIE = 1).
For undervoltage wake-up, we have the following setup:
- 0x1C:BMUIE = 1 - battery monitor undervoltage interrupt enabled.
- 0x11:BMSC = 0 - voltage on BAT pin triggers an event. This should be correct, as we can read the plausible voltage value from registers 0x15:BMBCD and 0x16:BMBCD.
- 0x12:BMUTC = 115 - undervoltage threshold = (115 / 255) * 20V = 9V
When we switch the SBC to sleep mode and lower the voltage on BAT pin below 9V however, SBC does not wake up. When we lower the voltage in normal mode, we can see the undervoltage interrupt triggering in both 0x62:BMUI and 0x1B:BMUVS, so it seems, the interrupt trigger event is correctly detected, but does not lead to a wake-up.
While experimenting, we also noticed a strange behaviour. When the BMUI interrupt flag was set to 1 and we sent the SPI command to switch the SBC to sleep mode, it does, even though the documentation says it can't, while any interrupt flags are set and not cleared (7.12.2 Sleep mode protection).
Thanks for advice!