Electronic – Waking a sleeping micro over bluetooth, is this possible

microcontroller

I'm currently working on a low power wireless application and am looking for a possible method to wake a sleeping microcontroller (not using a timer) using bluetooth. Has anyone seen anything similar being done before?

Best Answer

I have implemented bluetooth wake-on-connect with CSR's BC4-ROM chips. The BC4 itself can go into a very low power "sniff" mode where it wakes up only periodically to see if anyone is looking for it. If it does see a connection attempt, it can be configured to send a break character over its UART to the host microcontroller. The BC4 was configured to wait 250ms after sending the break before starting its BCSP session.

In the particular project I did this in, I connected the BC4's UART transmit line to both the microcontroller's UART receive line as well as a GPIO that I could configure to wake the micro, as this particular micro did not have the ability to wake on UART RX. This allowed me to put the micro into its lowest power mode (clock stopped, core powered off, etc.) and stay that way until it was really needed, where the BC4 remained in its lowest power sniff mode until an actual connection was requested.

If I were to redesign this I would first try to integrate the entire system into a BC4-VM rather than a separate micro. Failing that I would evaluate microprocessors which have lower power consumption than the little LPC that was chosen for this project.