Updating an everything-presence-one

I set up an EP1 a few weeks ago, and it works fine. But HA now shows that there is an Update Available when I click on ESPHome in the HA sidebar, and I just can’t get it to update.

Whether I try to update it Wirelessly or via USB or via ESPHome Dashboard or Manually it never completes. And the problem is that I don’t really understand the errors!

If I try to update the EP1 via Wireless, this is what appears …

INFO Reading configuration /config/esphome/everything-presence-one-7f72e4.yaml...
WARNING GPIO15 is a Strapping PIN and should be avoided.
Attaching external pullup/down resistors to strapping pins can cause unexpected failures.
See https://esphome.io/guides/faq.html#why-am-i-getting-a-warning-about-strapping-pins
Failed config

esphome: None
  name: everything-presence-one
  
  [friendly_name] is an invalid option for [esphome]. Please check the indentation.
  friendly_name: Everything Presence One None
  name_add_mac_suffix: False
  project: 
    name: Everything Smart Technology.Everything Presence One
    version: 1.1.7
  build_path: .esphome/build/everything-presence-one
dashboard_import: [source /config/esphome/.esphome/packages/405587a8/everything-presence-one.yaml:44]
  package_import_url: |-
    github://everythingsmarthome/everything-presence-one/everything-presence-one.yaml@main
  
  [import_full_config] is an invalid option for [dashboard_import]. Please check the indentation.
  import_full_config: False [source /config/esphome/.esphome/packages/405587a8/everything-presence-one.yaml:45]
binary_sensor.gpio: [source /config/esphome/.esphome/packages/405587a8/everything-presence-one.yaml:117]
  platform: gpio
  pin: 
    number: 33
    mode: INPUT_PULLDOWN
  name: PIR
  id: pir_motion_sensor
  device_class: motion
  filters:  [source /config/esphome/.esphome/packages/405587a8/everything-presence-one.yaml:125]
    - [source /config/esphome/.esphome/packages/405587a8/everything-presence-one.yaml:125]
      
      This option is not templatable!.
      delayed_off: !lambda |-
        return id(pir_off_latency).state * 1000.0; [source /config/esphome/.esphome/packages/405587a8/everything-presence-one.yaml:125]
binary_sensor.template: [source /config/esphome/.esphome/packages/405587a8/everything-presence-one.yaml:126]
  platform: template
  name: Occupancy
  id: occupancy
  device_class: occupancy
  filters:  [source /config/esphome/.esphome/packages/405587a8/everything-presence-one.yaml:131]
    - [source /config/esphome/.esphome/packages/405587a8/everything-presence-one.yaml:131]
      
      This option is not templatable!.
      delayed_off: !lambda |-
        return id(occupancy_off_latency).state * 1000.0; [source /config/esphome/.esphome/packages/405587a8/everything-presence-one.yaml:131]
  lambda: |-
    if ( id(mmwave).state or id(pir_motion_sensor).state) {
      return true;
    } 
    else if (id(mmwave).state == 0 and id(pir_motion_sensor).state == 0) {
      return false;
    } 
    else {
      return id(occupancy).state;
    }
switch.template: [source /config/esphome/.esphome/packages/405587a8/everything-presence-one.yaml:156]
  platform: template
  name: mmWave sensor
  id: mmwave_sensor
  disabled_by_default: True
  entity_category: config
  optimistic: True
  
  [restore_mode] is an invalid option for [switch.template]. Did you mean [restore_state]?
  restore_mode: RESTORE_DEFAULT_ON [source /config/esphome/.esphome/packages/405587a8/everything-presence-one.yaml:162]
  turn_on_action: 
    - uart.write: sensorStart
    - delay: 1s
  turn_off_action: 
    - uart.write: sensorStop
    - delay: 1s

If I try updating through USB it comes back with “Error fetching configuration information - Close / Retry”.

I am using a Chrome browser in macOS.

Any ideas what I am doing wrong?

Many thanks!

Please post your yaml.

Thanks - is this what is in my /config/esphome/everything-presence-one-7f72e4.yaml

substitutions:
#  name: ep_one
packages:
  Everything_Smart_Technology.Everything_Presence_One: github://everythingsmarthome/everything-presence-one/everything-presence-one.yaml@main
esphome:
  name_add_mac_suffix: false


wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  # ...
  manual_ip:
    # Set this to the IP of the ESP
    static_ip: 192.168.2.235
    gateway: 192.168.2.1
    subnet: 255.255.255.0

api:

None of those errors make sense, it’s almost like you are running an older version of ESPHome. Weird.

that was exact reason in my case - old version docker container. Pulled latest - all is fine!

I think I have encountered the same issue… Everything Presence One - SEN0609 - HA - BLE - Stable.

I click on update and it runs to 100% then just goes back to update available. Updating from 1.2.7 → 1.2.8. I have another device that updated without issue.

Not sure how I view the logs, nor how to pull the latest docker version.

I’m in the same boat. No errors in any logs. Sensor otherwise working great. Did anyone figure this out?

Okay so I figured this out. I was able to update it from ESPHome. I’ve attached my yaml file that worked for me but you need to ensure you select the right feature set based on these examples.

substitutions:
  name: "everything-presence-one"
  friendly_name: "Everything Presence One"
  project_name: "Everything Smart Technology.Everything Presence One"
  project_version: "1.2.10"
  temperature_offset: "-3"
  humidity_offset: "5"
  temperature_update_interval: "60s"
  illuminance_update_interval: "2s"
  hidden_ssid: "false"
  factory_reset_disabled: "true"
  uart_target_output_disabled: "true"
  uart_presence_output_disabled: "true"
  log_level: "DEBUG"

update:
  - platform: http_request
    id: update_http_request
    name: Everything Presence One Firmware
    source: https://everythingsmarthome.github.io/everything-presence-one/everything-presence-one-ha-sen0395-nomodule-noble-rev1-5-stable-manifest.json
    disabled_by_default: true

dashboard_import:
  package_import_url: github://everythingsmarthome/everything-presence-one/everything-presence-one.yaml@main
  import_full_config: false

packages:
  device_base: !include common/everything-presence-one-base.yaml
  device_version: !include common/everything-presence-one-sen0395-stable.yaml
  sen0395_base: !include common/sen0395-common.yaml

#################

api:
  encryption:
    key: "$API_ENCRYPTION_KEY"

ota:
  - platform: esphome
    password: "$OTA_PASSWORD"

wifi:
  ssid: $WIFI_SSID
  password: $WIFI_PASSWORD

  manual_ip:
   static_ip: $STATIC_IP   
   gateway: $GATEWAY_IP
   subnet: $SUBNET_MASK
   dns1: $DNS1_IP

  ap:
    ssid: "Everything-Presence-One1"
    password: "$AP_PASSWORD"