Unable to add ratgdo v2.5i board with esphome to HomeAssistant

Hi folks, I just got my ratgdo v2.5i board and loaded up the esphome firmware.
However when I try adding to HomeAssistant, the update process fails.

ERROR Unable to load component ratgdo.number:

AttributeError: module 'esphome.components.number' has no attribute 'number_schema'

Full error log is

INFO Reading configuration /config/esphome/ratgdov25i-4a1cd8.yaml...
INFO Updating https://github.com/ratgdo/esphome-ratgdo@None
INFO Updating https://github.com/ratgdo/esphome-ratgdo@None
ERROR Unable to load component ratgdo.number:
Traceback (most recent call last):
  File "/esphome/esphome/loader.py", line 162, in _lookup_module
    module = importlib.import_module(f"esphome.components.{domain}")
  File "/usr/lib/python3.9/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 790, in exec_module
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "/config/esphome/.esphome/external_components/74f605c3/components/ratgdo/number/__init__.py", line 23, in <module>
    number.number_schema(RATGDONumber)
AttributeError: module 'esphome.components.number' has no attribute 'number_schema'
ERROR Unable to load component ratgdo.number:
Traceback (most recent call last):
  File "/esphome/esphome/loader.py", line 162, in _lookup_module
    module = importlib.import_module(f"esphome.components.{domain}")
  File "/usr/lib/python3.9/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 790, in exec_module
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "/config/esphome/.esphome/external_components/74f605c3/components/ratgdo/number/__init__.py", line 23, in <module>
    number.number_schema(RATGDONumber)
AttributeError: module 'esphome.components.number' has no attribute 'number_schema'
ERROR Unable to load component ratgdo.number:
Traceback (most recent call last):
  File "/esphome/esphome/loader.py", line 162, in _lookup_module
    module = importlib.import_module(f"esphome.components.{domain}")
  File "/usr/lib/python3.9/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 790, in exec_module
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "/config/esphome/.esphome/external_components/74f605c3/components/ratgdo/number/__init__.py", line 23, in <module>
    number.number_schema(RATGDONumber)
AttributeError: module 'esphome.components.number' has no attribute 'number_schema'
ERROR Unable to load component ratgdo.number:
Traceback (most recent call last):
  File "/esphome/esphome/loader.py", line 162, in _lookup_module
    module = importlib.import_module(f"esphome.components.{domain}")
  File "/usr/lib/python3.9/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 790, in exec_module
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "/config/esphome/.esphome/external_components/74f605c3/components/ratgdo/number/__init__.py", line 23, in <module>
    number.number_schema(RATGDONumber)
AttributeError: module 'esphome.components.number' has no attribute 'number_schema'
INFO Detected timezone 'America/Toronto'
Failed config

number.ratgdo: [source /config/esphome/.esphome/packages/74f605c3/base.yaml:144]
  
  Platform not found: 'number.ratgdo'.
  platform: ratgdo
  id: ratgdov25i_rolling_code_counter
  type: rolling_code_counter
  entity_category: config
  ratgdo_id: ratgdov25i
  name: Rolling code counter
  mode: box
  unit_of_measurement: codes
number.ratgdo: [source /config/esphome/.esphome/packages/74f605c3/base.yaml:153]
  
  Platform not found: 'number.ratgdo'.
  platform: ratgdo
  id: ratgdov25i_opening_duration
  type: opening_duration
  entity_category: config
  ratgdo_id: ratgdov25i
  name: Opening duration
  unit_of_measurement: s
number.ratgdo: [source /config/esphome/.esphome/packages/74f605c3/base.yaml:161]
  
  Platform not found: 'number.ratgdo'.
  platform: ratgdo
  id: ratgdov25i_closing_duration
  type: closing_duration
  entity_category: config
  ratgdo_id: ratgdov25i
  name: Closing duration
  unit_of_measurement: s
number.ratgdo: [source /config/esphome/.esphome/packages/74f605c3/base.yaml:169]
  
  Platform not found: 'number.ratgdo'.
  platform: ratgdo
  id: ratgdov25i_client_id
  type: client_id
  entity_category: config
  ratgdo_id: ratgdov25i
  name: Client ID
  mode: box
esphome: None
  name: ratgdov25i
  
  [friendly_name] is an invalid option for [esphome]. Please check the indentation.
  friendly_name: ratgdov2.5i None
  name_add_mac_suffix: False
  project: 
    name: ratgdo.esphome
    version: 2.5i
  build_path: .esphome/build/ratgdov25i
wifi: [source /config/esphome/.esphome/packages/bf922882/v25iboard.yaml:49]
  
  expected a dictionary.
  ap:  [source /config/esphome/.esphome/packages/bf922882/v25iboard.yaml:50]
  ssid: <wifi_ssid>
  password: <wifi_password>

Screenshot 2024-01-06 at 12.29.32

Anyone else seeing similar issues?

1 Like

I could not use ESPHome to setup ratgdo. I do not have https set up for HA. I did find this article that finally let me flash the 2.5i.

Basically, the port does not have the correct permissions.

I had the same problem and was able to get it working with ESPHome Beta instead of the standard ESPHome.

1 Like

My problem was permission on the port. Once I fixed that all was good. Thank you for the feedback.