Skip to main content

Overview

NoLongerEvil implements the same Nest Cloud Protocol that Google’s servers use — the device firmware doesn’t know the difference. However, the server internals are substantially simplified for home use.

Authentication and Pairing

Why: NLE skips credential provisioning entirely to avoid the credential loop bug and because home deployments don’t need per-device auth secrets.

Pairing States

NLE uses a 3-tier pairing model: Google’s cloud uses a full OAuth + mobile app pairing flow that NLE replaces with the simpler entry code UI.

Timestamp Sync

NLE’s simplified timestamp-only sync is sufficient for single-server deployments. Google’s cloud handles eventual consistency across distributed infrastructure.

Features Not Implemented

These Google Nest cloud features are not available on the self-hosted server:

Persistence


MQTT Integration

NLE adds MQTT support that the original Nest cloud does not expose:
  • Device state changes are published to an MQTT broker
  • Home Assistant and other MQTT-based systems can receive real-time updates
  • MQTT is optional and configured separately from the core server

What Stays the Same

The device protocol itself is identical. The thermostat firmware:
  • Connects to the same endpoints with the same request format
  • Receives the same chunked subscribe responses
  • Uses the same bucket system and sync protocol
  • Applies the same field ordering requirement
  • Follows the same timing constraints
From the device’s perspective, NLE is indistinguishable from Google’s cloud.