Napoleon eFIRE-enabled Fireplaces (Work in Progress)

Generally, yes.

Here’s a complete shot in the dark attempt: GitHub - kaechele/napoleon-efire at led-feature

Haven’t checked if it even runs :wink: I might look into it further soon.

Wow, thank you for attempting to add it!

I manually installed the led lights version, and my fireplace is visible and working,
but led lights do not come up as an entity to control.

I will keep an eye on here for if you decide to look into it in the future. I really appreciate it.

Hey there. Had some more time today to take another look. Looks like I forgot to remove the LED lights from the unsupported features list.

Just pushed an update to the led-feature branch that fixes that.

By the way, you need to remove the Fireplace and re-add it so you can select the LED Lights as a feature that is enabled on your fireplace. Not sure you did that last time.

Let me know how it goes.

Hello, thanks for continuing to work on this!

I just downloaded the new files on the led-features branch, then deleted and re-added my fireplace. When adding it, its does not list led lights as a feature to select, but it does have a blank selector I would assume is for them.

I added it with that selector turned on, but there are not any controls/entities available related to the led lights on the fireplace.

Combined image of items I mentioned (I am new to the community so can only post one image per post)

Alright, I gave it one more do-over with some testing against an actual device. Please try once more with the latest changes on the branch.

As my fireplace doesn’t have the LED controller I can’t really see if it is working correctly. But at least the Bluetooth controller isn’t throwing any errors and some state related to the LEDs is changing. So theoretically something should happen if you have LEDs installed.

The missing strings in your frontend when selecting the fireplace feature is likely a caching issue. HA caches quite aggressively. I usually have to Ctrl + R a few times before new translation strings show up correctly. I can see them on my test instance.

Hello, I just tried with the new files. You were correct, doing a full hard page load now displays the let lights option when adding the fireplace. Sadly I still do not get any led related entities/controls after adding the fireplace with the led lights option enabled.

I can get all the other options listed as entities if I select them during setup, but the led lights are not showing up.

I really appreciate your work on this, but have no full expectation since you don’t even that the feature on your fireplace. If you are willing to try more, let me know what I can do to assist (screen shots, logs, etc). Thank you!

I, too, am VERY thankful for this Integration!!! I just got a Napoleon Fireplace installed last month, and the Integration is working wonderfully – however, I am just able to see the Flame Switch (I also have Night Light and Continuous Pilot activated and they, too, are showing up as switches). My understanding is that I need the Flame Light Control to adjust flame height, not just turn it on or off with the switch. LED functionality, like already mentioned, would be nice but is not as critical as flame height. Sorry if this is a dumb question, but I am new to Home Assistant and have done very little with entity card customization. I am eager to learn and just need to be pointed in the right direction. Thank you, one and all, on this thread. It is a wonderful resource to get this all up and running.

I have since discovered that I can adjust my Flame and Night Light intensity very easily by tapping on the control name to the left of each switch, and then simply dragging up or down… so this functionality is working properly. I would still welcome LED color adjustment at some point…

Thank you so much for this integration! My fireplace has LED lights, so it’s a must that I get them working with this to utilize them in any way.

I used the LED branch and I’m able to get the LED light to show as an entity with all the controls visible. However when I try to turn the LED on I get the following message.

“Failed to call service light/turn_on. Bytes must in range (0,256)”

Turning off the LED returns this message.

“Failed to call service light/turn_off. can’t concat str to bytearray”

Not sure how to resolve this as it beyond my copy/paste coding skills. Hoping this is a relatively easy fix and I greatly appreciate any assistance to get the LEDs working with this integration.

Thanks for testing. The error messages are helpful.
I will try to get back to working on this now that the fireplace season is coming to an end :blush:

1 Like
Logger: homeassistant.components.websocket_api.http.connection
Source: components/websocket_api/commands.py:239
integration: Home Assistant WebSocket API (documentation, issues)
First occurred: 12:09:08 PM (28 occurrences)
Last logged: 12:19:50 PM

[139729202855488] bytes must be in range(0, 256)
[139729140022208] bytes must be in range(0, 256)
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 239, in handle_call_service
    response = await hass.services.async_call(
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/core.py", line 2543, in async_call
    response_data = await coro
                    ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/core.py", line 2580, in _execute_service
    return await target(service_call)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 971, in entity_service_call
    single_response = await _handle_entity_call(
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 1043, in _handle_entity_call
    result = await task
             ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/light/__init__.py", line 631, in async_handle_light_on_service
    await light.async_turn_on(**filter_turn_on_params(light, params))
  File "/config/custom_components/napoleon_efire/light.py", line 214, in async_turn_on
    await self.fireplace.set_led_state(on=True)
  File "/usr/local/lib/python3.12/site-packages/bonaparte/fireplace.py", line 68, in _authenticated_operation
    return await func(self, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/bonaparte/fireplace.py", line 465, in set_led_state
    return await self._simple_command(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/bonaparte/fireplace.py", line 203, in _simple_command
    result = await self.execute_command(command, parameter)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/bonaparte/device.py", line 402, in execute_command
    payload = payload + bytes([parameter])
                        ^^^^^^^^^^^^^^^^^^
ValueError: bytes must be in range(0, 256)

I also found this in the logs, not sure if it helps. Happy to send whatever is required.

UPDATE: Didn’t see the update to v3.0, this resolve the errors…

It appears the latest version of HA has broke this integration…

I now have this error, which prevents it from starting.
* Setup failed for custom integration 'napoleon_efire': Requirements for napoleon_efire not found: ['pybonaparte==0.2.0'].


1 Like

Hi there this integration has been trucking along but I accidentally upgrade may home assistant core to 2025.1.0 and not I am getting the following when trying to turn on the blower fan: fan.nap_fpc_0998_blower does not support action fan.turn_on. It is the same for off.

However if I move the slider the fan does turn on to the slider set point. can you point me in a direction of where to update this?

Thank you

I should have an updated version with the fix out tomorrow.

Thank you.

Version 0.3.1 with the fix is out now. Sorry for the delay.

Hey thanks Felix just updated and it works great.

Thank you for this integration.

1 Like