Hardware sleep?
  • 1
  • Any news on the hardware sleep? This would be quite important for daily use...

    Hardware Sleep
    To allow the CANBus Triple to stay powered up and use small amounts of power we're implementing sleep mode on the Atmega MCU, BLE112, and MCP2515 CAN controllers. More on this coming soon.

  • 1
  • administrators

    Indeed, it works I keep my CBT plugged into my Mazda even tho I wont drive it for weeks at a time. You just need to enable the 'Naptime' middleware.

    In a lot of cars you will find a kind of heartbeat message. It's dispatched maybe once a second while the car is on. You can pass this message id into the middleware and it will automatically go to sleep when it does not see it for a while. It also sets a filter on the CAN controller that will trigger an interrupt to wake the system back up when it does receive the heartbeat message.

    Here you will see it's enabled by setting a C def:
    CANBusTriple.ino

    You can just uncomment the def on line 16 to enable the Naptime middleware. And be sure to set a heartbeat message id on line 56 or set it to 0x0000.

  • 0
  • I was able to modify the sleep functionality to fit my implementation with 100% success.

    As Derek mentioned above, using a heartbeat message to trigger the wakeup interrupt is needed so the device can wake up properly. I was able to find the ID that broadcasts the vehicle's VIN every one second when the key is in the ignition; it works! I believe in sleep mode the device only uses about one mA (or less). When the device wakes up, all RAM and variables are retained since the sleep assuming the power was not cut.

  • 3
    Posts
  • 816
    Views
  • Log in to reply