A Home Assistant integration for No Longer Evil - providing local and cloud control of your smart thermostat.
- Climate Control: Full thermostat control including temperature, HVAC modes, and fan modes
- Temperature Monitoring: Real-time temperature sensors
- HVAC Status: Binary sensors for heating, cooling, and fan activity
- Away Mode: Switch to enable/disable away mode for energy savings
- Temperature Range: Support for heat-cool mode with temperature ranges
- Multiple Devices: Support for multiple thermostats per account
- Open HACS in your Home Assistant instance
- Click on "Integrations"
- Click the three dots in the top right corner
- Select "Custom repositories"
- Add this repository URL:
https://github.com/patricktr/NoLongerEvil-HomeAssistant - Select "Integration" as the category
- Click "Add"
- Search for "No Longer Evil" and install it
- Restart Home Assistant
- Download the latest release from the releases page
- Extract the
custom_components/nolongerevilfolder to your Home Assistantcustom_componentsdirectory - Restart Home Assistant
- Go to No Longer Evil Settings
- Navigate to the API Keys section
- Create a new API key with the following scopes:
read- Required for reading device statuswrite- Required for controlling devices
- Copy the generated API key (it starts with
nle_)
- Go to Settings > Devices & Services
- Click + Add Integration
- Search for "No Longer Evil"
- Enter your API key
- (Optional) If you're using a self-hosted instance, enter your custom API URL
The main climate entity provides full thermostat control:
- Current Temperature: The current room temperature
- Target Temperature: Set your desired temperature
- HVAC Mode: Off, Heat, Cool, or Heat-Cool (Auto)
- Fan Mode: Auto, On, or Off
- Preset Mode: Home, Away, or Eco
| Entity | Description |
|---|---|
| Current Temperature | Current room temperature reading |
| Target Temperature | Currently set target temperature |
| HVAC Action | Current action (heating, cooling, idle, fan) |
| Entity | Description |
|---|---|
| Heating | On when the heater is actively running |
| Cooling | On when the AC is actively running |
| Fan Running | On when the fan is running |
| Home | On when home (not in away mode) |
| Entity | Description |
|---|---|
| Away Mode | Toggle away mode on/off |
You can configure the following options after installation:
| Option | Description | Default |
|---|---|---|
| Scan Interval | How often to poll for updates (seconds) | 30 |
If you're running a self-hosted No Longer Evil instance:
- During setup, enter your custom API base URL
- Example:
http://your-server:3000/api/v1
- Ensure your API key is correct and has both
readandwritescopes - Check that the API key hasn't been revoked in your account settings
- Make sure you have at least one thermostat registered to your account
- Verify the API key has access to your devices
- Check your network connection
- For self-hosted users, ensure your server is reachable
- The API rate limit is 20 requests per minute for API keys
The No Longer Evil API has rate limits:
- API keys: 20 requests per minute
- User accounts: 100 requests per minute
If you see rate limit errors, increase the scan interval in the integration options.
Contributions are welcome! Please read our contributing guidelines before submitting pull requests.
This project is licensed under the MIT License - see the LICENSE file for details.