Hi, thank you for your patience — I followed up with our team and wanted to share what they confirmed. I've consolidated their detailed answer here so it's easier to work through, but let me know if you'd like more depth on any part.
### Heartbeat behavior
For a GO9 operating in normal Sleep Mode, the firmware documentation describes the following behavior:
- When the vehicle ignition is turned off, the device enters Sleep Mode.
- The device sends a heartbeat approximately every 30 minutes for the first 72 hours.
- After 72 hours, the heartbeat interval changes to approximately every 23 hours. (support.geotab.com (https://support.geotab.com/en-GB/go-devices/installation/doc/firmware))
This behavior should be understood as the normal GO9 Sleep Mode behavior. Other conditions can affect the heartbeat cycle, including Low Power Mode, device-disabled mode, low-voltage conditions, device family, and firmware version. For example, Low
Power Mode is separately documented as reducing heartbeats to every 23 hours. (support.geotab.com (https://support.geotab.com/help/mygeotab/device-management/device-statuses-and-settings/device-modes))
### 1. When does isDeviceCommunicating become false?
isDeviceCommunicating is not determined by checking whether a heartbeat arrived at one exact scheduled time.
For a standard GO device, the current MyGeotab server logic evaluates the timestamp of the latest available status, GPS, or fault data:
- If the last stored state is driving, the server uses an approximately 10-minute communication threshold.
- If the last stored state is stopped, the server uses an approximately 24-hour communication threshold.
Accordingly, if a device has entered the 23-hour heartbeat cycle and then loses power, the server does not simply wait for one specific expected heartbeat and immediately mark the device offline. It evaluates whether the latest received data has
exceeded the applicable server-side communication threshold.
The value can therefore be understood as an elapsed-time assessment from the latest qualifying data. The result may become visible when the next API request, UI refresh, or server health evaluation occurs. The public device-status guidance describes an
hourly health-check evaluation, so the observed transition can occur somewhat after the nominal threshold—for a standard GO device, approximately 24 hours after the last qualifying data, plus the evaluation delay. (support.geotab.com
(https://support.geotab.com/community/sdk-api/sdk-api-other-general/2540/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))
The server-side property also uses the latest status/GPS/fault timestamp; it is not limited to a dedicated heartbeat record.
Other device families and configurations may use different thresholds, so the exact result depends on the device model, firmware, and enabled modes.
### 2. How is “stationary” defined?
There are two related concepts to distinguish.
For platform trip and stop recognition, MyGeotab documents a stop as occurring when:
- the ignition is turned off; or
- the vehicle remains below approximately 1 km/h for more than 200 seconds.
Stops shorter than 200 seconds while the ignition remains on—for example, waiting at a traffic light—are not recorded as stops in trip history. (support.geotab.com (https://support.geotab.com/help/mygeotab/reports/safety-reports/idling-time))
This explains the 200-second behavior mentioned in the discussion. However, it should not automatically be interpreted as the complete firmware rule for every heartbeat mode.
For the GO9 heartbeat schedule specifically, the firmware documentation describes the transition into Sleep Mode in terms of the ignition being turned off. The device may determine ignition using engine data, a three-wire ignition connection, or
trip-tracking/two-wire logic. Depending on the vehicle and installation, this can involve RPM, road speed, voltage changes, or accelerometer-based movement detection. (support.geotab.com
(https://support.geotab.com/en-GB/go-devices/installation/doc/firmware))
Therefore, “stationary” should not be interpreted as GPS position simply remaining unchanged.
### 3. What resets the 72-hour stationary period?
The firmware release notes document a fix to restore the normal 30-minute heartbeat period after the device enters the 23-hour heartbeat cycle and a subsequent ignition-off event occurs. (support.geotab.com
(https://support.geotab.com/es-ES/go-devices/installation/doc/firmware-notes))
Based on that documentation, if the vehicle is stationary for more than 72 hours, the ignition is turned on, and the vehicle is then turned off again, the device is expected to restart the normal heartbeat sequence after the new ignition-off event—
approximately 30-minute heartbeats for the first 72 hours, assuming normal Sleep Mode and firmware that includes this behavior.
A READY-state transition by itself is less certain. Whether READY is treated as an ignition event depends on the vehicle's signals and the device's ignition-detection method. A READY transition that is not recognized as an ignition-state change should
not be assumed to reset the heartbeat cycle.
Similarly, Low Power Mode or other special device modes may override the normal Sleep Mode behavior.
### Summary
For a standard GO9 in normal Sleep Mode:
- The 30-minute heartbeat period applies for the first 72 hours after entering Sleep Mode.
- The heartbeat then changes to approximately every 23 hours.
- isDeviceCommunicating is a separate server-side assessment based on the age of the latest qualifying device data and the device's stored driving/stopped state.
- A missed heartbeat does not necessarily cause an immediate disconnect indication at the exact expected heartbeat time.
- A subsequent recognized ignition cycle is expected to restart the normal heartbeat sequence, while a READY-only transition requires device- and vehicle-specific confirmation.
To confirm the behavior for a particular vehicle, we would need the device model, serial-number prefix, firmware version, ignition-detection method, and whether Low Power Mode, High Frequency Update, or another special mode is enabled.
Feel free to reach out if you have any other questions. We are here to help.
Have a great day!
Eishi FUN