Skip to main content

How long does GEOTAB's cloud infrastructure logic behind the HEARTBEAT data element waits before sending a DISCONNECTED status message via API for GO09 devices without backup battery?

pparm-8148
Original Poster

Hi

 

We currently consume via API only your HEARTBEAT data element for all our GO09 devices without backup battery to monitor possible PID disconnections or loss of communications.

 

Looking at the data, we basically receive 2 states CONNECTED/DISCONNECTED.

 

Can you please confirm how long does GEOTAB's cloud infrastructure logic behind the HEARTBEAT data element waits before sending a DISCONNECTED state status message?

 

I am aware of the information you have in your documentation about "Heartbeat Frequency". That one I understand it. But what I would like to know is ALL the conditions, times and logic your system follows before sending a DISCONNECTED message via API for a specific PID.

 

Thanks.

Join the conversation

You need to be logged in to reply to this post and participate in the Geotab Community discussions.

Top Answers

EishiFUN
Community Administrator

Hello @pparm-8148​ 

 

Thank you for your question this is a great deep-dive topic and I appreciate the specificity of what you're looking for. This may be a little long winded but I hope it helps shed some light on this process. Let me break down everything that goes into the CONNECTED/DISCONNECTED status  for GO9 devices without a backup battery.                   

                                         

 How the Server Determines DISCONNECTED Status

 

The CONNECTED/DISCONNECTED state is not triggered by the device sending a "disconnect" signal it is computed server-side based on elapsed time since the last data was received from the device. The key field is DeviceStatusInfo.DateTime, which reflects the timestamp of the most recent piece of status, GPS, or fault data received.

 

The server runs an hourly health check cycle that evaluates whether the time since DeviceStatusInfo.DateTime exceeds a device-type-specific threshold. For standard GO devices, the documented threshold is 24 hours meaning if the server has not received any data from the device within 24 hours, it will flag the device as not communicating (DISCONNECTED).

 

 GO9 Heartbeat Frequency (Ignition Off / Sleep Mode)

 

 When the ignition is off, the GO9 enters sleep mode and sends periodic heartbeat pings:

 

 - First 72 hours after ignition off: Every 30 minutes

 - After 72 hours of ignition off: Every 23 hours

 - Low Voltage detected (< 11.6V for 5 min): Forced heartbeat, then every 23 hours

 - Device Disabled state: After 12 hours, then every 23 hours

 

 The Critical Factor: No Backup Battery

 

This is where it gets important for your use case. The standard GO9 has no internal backup battery. When the device loses power (unplugged from the OBD-II port or vehicle power is cut):

 

 1. The device immediately loses all ability to communicate it cannot send a "I've been disconnected" message to the server

 2. The server has no way to know the device lost power in real time it simply stops receiving data

 3. The server will only flag the device as DISCONNECTED after the 24-hour threshold passes without receiving any data, evaluated during the hourly health check cycle

 4. The DiagnosticDeviceHasBeenUnpluggedId fault is only logged and transmitted after the device is reconnected and powers back on it cannot be sent at the moment of disconnection

 

 Summary of Conditions and Timing

 

 - Device unplugged / power cut (no backup battery): Immediate power loss, no signal sent. Time to DISCONNECTED up to 24 hours (server-side timeout,

 checked hourly).

 - Device in sleep mode, cellular signal lost: Heartbeat pings fail to reach server. Time to DISCONNECTED up to 24 hours after last successful data transmission.

 - Device in active driving, power cut: Stops transmitting mid-trip. Time to DISCONNECTED up to 24 hours after last received GPS/status data.

 

 Key Takeaway

 

There is no real-time DISCONNECTED notification for GO9 devices without a backup battery. The DISCONNECTED state is always a retroactive determination by the server after the ~24 hour window has elapsed without receiving data. The hourly health service check means the actual detection could range from ~24 to ~25 hours after the last communication.

 

 Recommendation

 

 If faster disconnect detection is critical for your use case, consider pairing the GO9 with the IOX-BATTERY accessory. With the IOX-BATTERY:

 

 - The device continues transmitting for up to 4 hours while driving or 4 days while parked after power loss

 - It can immediately send the unplug event fault to the server in real time

 - This enables near-real-time disconnect detection rather than the ~24 hour server-side timeout

 

 References

 

 - Geotab Firmware Product Guide — Heartbeat Frequency: https://support.geotab.com/go-devices/installation/doc/firmware

 - Device Status User Guide: https://support.geotab.com/go-devices/doc/device-status

 - IOX-BATTERY Documentation: https://support.geotab.com/ioxs/doc/iox-battery

 - DeviceStatusInfo SDK Reference: https://developers.geotab.com/myGeotab/apiReference/objects/DeviceStatusInfo

 

 Please let us know if you have any other questions. We are here to help.

 

 Have a great day!

 Eishi FUN

1 Reply

EishiFUN
Community Administrator

Hello @pparm-8148​ 

 

Thank you for your question this is a great deep-dive topic and I appreciate the specificity of what you're looking for. This may be a little long winded but I hope it helps shed some light on this process. Let me break down everything that goes into the CONNECTED/DISCONNECTED status  for GO9 devices without a backup battery.                   

                                         

 How the Server Determines DISCONNECTED Status

 

The CONNECTED/DISCONNECTED state is not triggered by the device sending a "disconnect" signal it is computed server-side based on elapsed time since the last data was received from the device. The key field is DeviceStatusInfo.DateTime, which reflects the timestamp of the most recent piece of status, GPS, or fault data received.

 

The server runs an hourly health check cycle that evaluates whether the time since DeviceStatusInfo.DateTime exceeds a device-type-specific threshold. For standard GO devices, the documented threshold is 24 hours meaning if the server has not received any data from the device within 24 hours, it will flag the device as not communicating (DISCONNECTED).

 

 GO9 Heartbeat Frequency (Ignition Off / Sleep Mode)

 

 When the ignition is off, the GO9 enters sleep mode and sends periodic heartbeat pings:

 

 - First 72 hours after ignition off: Every 30 minutes

 - After 72 hours of ignition off: Every 23 hours

 - Low Voltage detected (< 11.6V for 5 min): Forced heartbeat, then every 23 hours

 - Device Disabled state: After 12 hours, then every 23 hours

 

 The Critical Factor: No Backup Battery

 

This is where it gets important for your use case. The standard GO9 has no internal backup battery. When the device loses power (unplugged from the OBD-II port or vehicle power is cut):

 

 1. The device immediately loses all ability to communicate it cannot send a "I've been disconnected" message to the server

 2. The server has no way to know the device lost power in real time it simply stops receiving data

 3. The server will only flag the device as DISCONNECTED after the 24-hour threshold passes without receiving any data, evaluated during the hourly health check cycle

 4. The DiagnosticDeviceHasBeenUnpluggedId fault is only logged and transmitted after the device is reconnected and powers back on it cannot be sent at the moment of disconnection

 

 Summary of Conditions and Timing

 

 - Device unplugged / power cut (no backup battery): Immediate power loss, no signal sent. Time to DISCONNECTED up to 24 hours (server-side timeout,

 checked hourly).

 - Device in sleep mode, cellular signal lost: Heartbeat pings fail to reach server. Time to DISCONNECTED up to 24 hours after last successful data transmission.

 - Device in active driving, power cut: Stops transmitting mid-trip. Time to DISCONNECTED up to 24 hours after last received GPS/status data.

 

 Key Takeaway

 

There is no real-time DISCONNECTED notification for GO9 devices without a backup battery. The DISCONNECTED state is always a retroactive determination by the server after the ~24 hour window has elapsed without receiving data. The hourly health service check means the actual detection could range from ~24 to ~25 hours after the last communication.

 

 Recommendation

 

 If faster disconnect detection is critical for your use case, consider pairing the GO9 with the IOX-BATTERY accessory. With the IOX-BATTERY:

 

 - The device continues transmitting for up to 4 hours while driving or 4 days while parked after power loss

 - It can immediately send the unplug event fault to the server in real time

 - This enables near-real-time disconnect detection rather than the ~24 hour server-side timeout

 

 References

 

 - Geotab Firmware Product Guide — Heartbeat Frequency: https://support.geotab.com/go-devices/installation/doc/firmware

 - Device Status User Guide: https://support.geotab.com/go-devices/doc/device-status

 - IOX-BATTERY Documentation: https://support.geotab.com/ioxs/doc/iox-battery

 - DeviceStatusInfo SDK Reference: https://developers.geotab.com/myGeotab/apiReference/objects/DeviceStatusInfo

 

 Please let us know if you have any other questions. We are here to help.

 

 Have a great day!

 Eishi FUN

Still have questions?