When I started I just enabled everything. And then realised thats an awful lot to be writing to your database and stuff you probably wont look at. So I went on a purge thanks to some posts I found from @geoffreycoan and others.
For octopus leave the defaults as they are. Dont enable the disabled ones except perhaps the events which relate to saving sessions. The rest I left.
I recommend disabling any GivTCP items you also dont need. For me thats the entire battery temps and voltage. I have no need of them but the overall BMS stack temp, sure, ill keep that.
As well as disabling entities you dont want you can exclude others from being recorded. It will still report the current state but wont write to the database every little change. Im thinking things like the "last update" which happens every 30 seconds. Do you need that spamming the DB? Probably not. Also when switches are turned on or off. You can do this in the configuration YAML and exclude things
Attached is my excludes in my config. This stops them being written to the recorder log saving disk space and writes. Notice the domains. These are entire entities such as all switches, records about updates, weather and button presses. Wiser is my thermostat. Which I went with as it offers complete local control
exclude:
domains:
- switch
- update
- automation
- button
- weather
- media_player
- scene
entities:
# Template sensors - excluded as they're derived from other sensors
- sensor.pv_power_formatted
- sensor.load_power_formatted
- sensor.battery_state_display
# Solcast
- sensor.solcast_pv_forecast_api_used
- sensor.solcast_pv_forecast_api_last_polled
# Wiser thermostat - static/infrequently changing sensors
- sensor.wiser_heathub_signal
- switch.wiser_daylight_saving
- switch.wiser_roomstat_hallway_device_lock
- sensor.wiser_roomstat_hallway_battery
- sensor.wiser_cloud
- button.wiser_boost_all_heating
- switch.wiser_away_mode_affects_hot_water
- number.wiser_away_mode_target_temperature
- button.wiser_cancel_all_heating_overrides
- switch.wiser_comfort_mode
- switch.wiser_eco_mode
- button.wiser_cancel_hot_water_overrides
- button.wiser_boost_hot_water
- select.wiser_hot_water_mode
- button.wiser_toggle_hot_water
- switch.wiser_roomstat_hallway_identify
- sensor.wiser_roomstat_hallway_signal
# Sun sensor - calculated value, no need to store
- sun.sun
# PS5 sensors - gaming activity tracking, not needed for history
- sensor.ps5_activity
- switch.ps5_power
# Octopus Energy - loyalty points, not critical for energy monitoring
- sensor.octopus_energy_a_xxxxxx_octoplus_points
# Miscellaneous - static device information
- sensor.waste
- calendar.<my local authority>_council
- sensor.givtcp_battery_stack_1_stack_firmware
- sensor.givtcp_xxxxxx_invertor_serial_number
- sensor.givtcp_xxxxxx_invertor_firmware
- sensor.givtcp_xxxxxx_invertor_type
# Predbat - HTML plan and large attribute sensors
- predbat.soc_kw_base10
- predbat.soc_kw_best10
- predbat.plan_html
# GivTCP - Noisy sensors that update frequently with calculated values
- sensor.givtcp_xxxxxx_charge_completion_time
- sensor.givtcp_xxxxxx_discharge_completion_time
- sensor.givtcp_xxxxxx_charge_time_remaining
- sensor.givtcp_xxxxxx_discharge_time_remaining
- sensor.givtcp_xxxxxx_last_updated_time
- sensor.givtcp_xxxxxx_invertor_time
- sensor.givtcp_xxxxxx_battery_voltage
# Predbat - Baseline forecast sensors (main forecast data)
- predbat.battery_cycle
- predbat.battery_hours_left
- predbat.battery_power
- predbat.car_soc
- predbat.charge_end
- predbat.charge_limit
- predbat.charge_limit_kw
- predbat.charge_start
- predbat.duration
- predbat.export_energy
- predbat.grid_power
- predbat.import_energy
- predbat.import_energy_battery
- predbat.import_energy_house
- predbat.load_energy
- predbat.load_power
- predbat.metric
- predbat.pv_energy
- predbat.record
- predbat.soc_kw
- predbat.soc_min_kwh
# Predbat - In-day load adjustment sensors
- predbat.load_energy_actual
- predbat.load_energy_adjusted
- predbat.load_energy_predicted
- predbat.load_inday_adjustment
# Predbat - Rate and cost sensors (tariff information)
- predbat.cost_today_export
- predbat.cost_today_import
- predbat.low_rate_cost
- predbat.low_rate_duration
- predbat.low_rate_end
- predbat.low_rate_start
- predbat.low_rate_cost_2
- predbat.low_rate_end_2
- predbat.low_rate_start_2
- predbat.high_rate_export_cost
- predbat.high_rate_export_duration
- predbat.high_rate_export_end
- predbat.high_rate_export_start
- predbat.high_rate_export_cost_2
- predbat.high_rate_export_end_2
- predbat.high_rate_export_start_2
# Noisy sensors
- sensor.bedroom_fan_power
- sensor.conservatory_icicles_plug_power
- sensor.family_room_printy_power
- sensor.gym_plug_power
- sensor.living_room_lamp_power
- sensor.living_room_plant_tree_plug_power
# Pattern-based exclusions using wildcards
entity_globs:
# Axle sensors
- sensor.axle_*
# Printer
- sensor.samsung_m262x_282x*
# GivTCP battery serial numbers - static device info
- sensor.givtcp_*_battery_serial_number
# Power on behaviour settings - rarely changed configuration
- select.*_power_on_behaviour_on_startup
# Sun position sensors - calculated values
- sensor.sun*
#GivTCP Gateway sensors
- sensor.givtcp2_*
# Predbat - Base10, best, and best10 forecast variations
# These contain large attributes that cause database bloat
- sensor.predbat_pv_*
- predbat.best*
- predbat.*best
- predbat.base10*