ndbroadbent Github contribution chart
ndbroadbent Github Stats
ndbroadbent Most Used Languages

Activity

05 Oct 2022

Ndbroadbent

started

Started On 05 Oct 2022 at 08:33:25

Ndbroadbent

started

Started On 05 Oct 2022 at 07:59:49

Ndbroadbent

started

Started On 05 Oct 2022 at 07:56:54
Issue Comment

Ndbroadbent

Spelling mistake in the project name - Should be "ESPresence"

Apologies if this has been brought up before, but I searched through the GitHub issues and didn't find anything for "typo" or "spelling".

It's been bugging me for a little while that there's a spelling mistake in the project name. As far as I'm aware, I don't think "presense" is a valid spelling of the word "presence".

https://wikidiff.com/presence/presense


Here's another way to look at it: You get lots of results if you search for "presence" in the Home Assistant Core codebase:

And zero results if you search for "presense":

So I found it a little confusing and annoying when I had to switch between spellings while setting up my Home Assistant and MQTT configuration for my ESPresense base stations and devices.


espresence.com is unavailable, but I'd be happy to pay for espresence.io or espresence.org, or some other TLD.

Perhaps this could be done for a version 3 major release.

Please feel free to close this issue if you feel that it's too late to change the name or if it will be too much work. I just thought it needed to be opened, in case anyone else looks this up in the future.

Forked On 05 Oct 2022 at 12:56:45

Ndbroadbent

I forked the project and quickly renamed everything: https://github.com/ndbroadbent/ESPresence

Commented On 05 Oct 2022 at 12:56:45

Ndbroadbent

Renamed ESPresense to ESPresence

Pushed On 05 Oct 2022 at 12:56:21

Ndbroadbent

Proposal: Change espresence.com domain to espresence.io

Pushed On 05 Oct 2022 at 12:56:21

Ndbroadbent

An ESP32 based presence detection node for use with the Home Assistant mqtt_room component for localized device presence detection.

Forked On 05 Oct 2022 at 12:50:10
Issue Comment

Ndbroadbent

[work in progress] Tween animations for sliding doors

I wanted some nice animations for my doors, so I found the Tween.js library. I've added it for my sliding doors so far, and I want to also add it for swing doors. Probably my lights too, and anything else that would look nice with smooth transitions.

https://user-images.githubusercontent.com/139536/189536235-7ecf5780-4e54-49fb-bd37-75e621c7dbfd.mov

Forked On 05 Oct 2022 at 12:04:09

Ndbroadbent

@adizanni Sorry to hear about the regressions, please let me know if there are any bugs that I can help to fix!

I have moved onto some other projects for now so am not spending so much time on floor3d-card anymore, but I would like to make sure that everything is running smoothly and I haven't broken anything. Please let me know if there's anything I can help to fix or if anything needs to be reverted!

Commented On 05 Oct 2022 at 12:04:09

Ndbroadbent

Fitbit: Create a device for the Fitbit user, to group Fitbit sensors and generate nicer names and entity IDs

Created On 04 Oct 2022 at 12:45:21
Issue Comment

Ndbroadbent

Fitbit: Create a device for the Fitbit user, to group Fitbit sensors and generate nicer names and entity IDs

Proposed change

This change improves the entity IDs and names for Fitbit sensors. I didn't like how the sensors had no prefix or context. For example, it just adds a "Weight" sensor with the ID "sensor.weight". I also thought it was a bit annoying that I couldn't type "fitbit" in the search bar to show a list of entities from the Fitbit integration.

I added a "Fitbit" prefix to the names, and a sensor.fitbit_ prefix to the IDs. I am also now setting the unique_id for entities, which was previously omitted. This means that their settings can be managed from the UI.

This change is backwards compatible and does not affect any existing integrations that already have a fitbit.conf file. I achieved this by adding a new entity_id_version property to fitbit.conf. If this is undefined or set to 1, then the original names are used. If this is set to 2 (the new default value), then the new unique IDs and names are used. Users can opt-in to the new IDs and names by updating their fitbit.conf. Any newly configured integrations will use the new names and IDs by default.

Before:

| Entity Name | Entity ID | |-------|---------| | Weight | sensor.weight | | BMI | sensor.bmi | | Aria 2 Battery | sensor.aria_2_battery | | Sleep Minutes Asleep | sensor.sleep_minutes_asleep |

After:

| Entity Name | Entity ID | |-------|---------| | Fitbit Weight | sensor.fitbit_weight | | Fitbit BMI | sensor.fitbit_bmi | Fitbit Aria 2 Battery | sensor.fitbit_aria_2_battery | | Fitbit Sleep Minutes Asleep | sensor.fitbit_sleep_minutes_asleep |

Screenshots

I was able to get the dev container running, and I set up an Ngrok secure tunnel to fully test the OAuth flow and make sure everything is working. Here are the new entities:

Their settings can now be managed from the UI:

I'm already using these changes in my real Home Assistant instance, by copying the fitbit folder into /custom_components and adding "version": "2.0.0" to manifest.json.

I can confirm that entity_id_version was set to 1 in my fitbit.conf when I initially installed the custom component, and no changes were made to my existing Fitbit entities. After I manually updated entity_id_version to 2 and restarted HA, the integration started using the new entity IDs and names:

Type of change

  • [ ] Dependency upgrade
  • [ ] Bugfix (non-breaking change which fixes an issue)
  • [ ] New integration (thank you!)
  • [ ] New feature (which adds functionality to an existing integration)
  • [ ] Deprecation (breaking change to happen in the future)
  • [ ] Breaking change (fix/feature causing existing functionality to break)
  • [X] Code quality improvements to existing code or addition of tests

Additional information

  • This PR fixes or closes issue: n/a
  • This PR is related to issue: n/a
  • Link to documentation pull request: n/a (no change needed)

Checklist

  • [X] The code change is tested and works locally.
  • [X] Local tests pass. Your PR cannot be merged unless tests pass
  • [X] There is no commented out code in this PR.
  • [X] I have followed the development checklist
  • [X] The code has been formatted using Black (black --fast homeassistant tests)
  • [ ] Tests have been added to verify that the new code works.
    • The fitbit integration did not have any existing tests

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • [ ] The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • [ ] New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • [ ] For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.
  • [ ] Untested files have been added to .coveragerc.

The integration reached or maintains the following Integration Quality Scale:

  • [ ] No score or internal
  • [ ] 🥈 Silver
  • [ ] 🥇 Gold
  • [ ] 🏆 Platinum

To help with the load of incoming pull requests:

Forked On 04 Oct 2022 at 12:45:06

Ndbroadbent

I think I'll close this PR for now since it was heading in the wrong direction, and will open a new one if I can get the config flow + devices working

Commented On 04 Oct 2022 at 12:45:06

Ndbroadbent

Fitbit: Create a device for the Fitbit user, to group Fitbit sensors and generate nicer names and entity IDs

Proposed change

This change improves the entity IDs and names for Fitbit sensors. I didn't like how the sensors had no prefix or context. For example, it just adds a "Weight" sensor with the ID "sensor.weight". I also thought it was a bit annoying that I couldn't type "fitbit" in the search bar to show a list of entities from the Fitbit integration.

I added a "Fitbit" prefix to the names, and a sensor.fitbit_ prefix to the IDs. I am also now setting the unique_id for entities, which was previously omitted. This means that their settings can be managed from the UI.

This change is backwards compatible and does not affect any existing integrations that already have a fitbit.conf file. I achieved this by adding a new entity_id_version property to fitbit.conf. If this is undefined or set to 1, then the original names are used. If this is set to 2 (the new default value), then the new unique IDs and names are used. Users can opt-in to the new IDs and names by updating their fitbit.conf. Any newly configured integrations will use the new names and IDs by default.

Before:

| Entity Name | Entity ID | |-------|---------| | Weight | sensor.weight | | BMI | sensor.bmi | | Aria 2 Battery | sensor.aria_2_battery | | Sleep Minutes Asleep | sensor.sleep_minutes_asleep |

After:

| Entity Name | Entity ID | |-------|---------| | Fitbit Weight | sensor.fitbit_weight | | Fitbit BMI | sensor.fitbit_bmi | Fitbit Aria 2 Battery | sensor.fitbit_aria_2_battery | | Fitbit Sleep Minutes Asleep | sensor.fitbit_sleep_minutes_asleep |

Screenshots

I was able to get the dev container running, and I set up an Ngrok secure tunnel to fully test the OAuth flow and make sure everything is working. Here are the new entities:

Their settings can now be managed from the UI:

I'm already using these changes in my real Home Assistant instance, by copying the fitbit folder into /custom_components and adding "version": "2.0.0" to manifest.json.

I can confirm that entity_id_version was set to 1 in my fitbit.conf when I initially installed the custom component, and no changes were made to my existing Fitbit entities. After I manually updated entity_id_version to 2 and restarted HA, the integration started using the new entity IDs and names:

Type of change

  • [ ] Dependency upgrade
  • [ ] Bugfix (non-breaking change which fixes an issue)
  • [ ] New integration (thank you!)
  • [ ] New feature (which adds functionality to an existing integration)
  • [ ] Deprecation (breaking change to happen in the future)
  • [ ] Breaking change (fix/feature causing existing functionality to break)
  • [X] Code quality improvements to existing code or addition of tests

Additional information

  • This PR fixes or closes issue: n/a
  • This PR is related to issue: n/a
  • Link to documentation pull request: n/a (no change needed)

Checklist

  • [X] The code change is tested and works locally.
  • [X] Local tests pass. Your PR cannot be merged unless tests pass
  • [X] There is no commented out code in this PR.
  • [X] I have followed the development checklist
  • [X] The code has been formatted using Black (black --fast homeassistant tests)
  • [ ] Tests have been added to verify that the new code works.
    • The fitbit integration did not have any existing tests

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • [ ] The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • [ ] New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • [ ] For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.
  • [ ] Untested files have been added to .coveragerc.

The integration reached or maintains the following Integration Quality Scale:

  • [ ] No score or internal
  • [ ] 🥈 Silver
  • [ ] 🥇 Gold
  • [ ] 🏆 Platinum

To help with the load of incoming pull requests:

Forked On 04 Oct 2022 at 12:43:08

Ndbroadbent

Ahhh I see, that makes sense! Would you be able to point me to any existing config flows that already implement an Oauth authentication? I'd be happy to implement that if I can find some conventions or existing code to copy
On 04 Oct 2022 at 12:43:08

Ndbroadbent

Fitbit: Create a device for the Fitbit user, to group Fitbit sensors and generate nicer names and entity IDs

Proposed change

This change improves the entity IDs and names for Fitbit sensors. I didn't like how the sensors had no prefix or context. For example, it just adds a "Weight" sensor with the ID "sensor.weight". I also thought it was a bit annoying that I couldn't type "fitbit" in the search bar to show a list of entities from the Fitbit integration.

I added a "Fitbit" prefix to the names, and a sensor.fitbit_ prefix to the IDs. I am also now setting the unique_id for entities, which was previously omitted. This means that their settings can be managed from the UI.

This change is backwards compatible and does not affect any existing integrations that already have a fitbit.conf file. I achieved this by adding a new entity_id_version property to fitbit.conf. If this is undefined or set to 1, then the original names are used. If this is set to 2 (the new default value), then the new unique IDs and names are used. Users can opt-in to the new IDs and names by updating their fitbit.conf. Any newly configured integrations will use the new names and IDs by default.

Before:

| Entity Name | Entity ID | |-------|---------| | Weight | sensor.weight | | BMI | sensor.bmi | | Aria 2 Battery | sensor.aria_2_battery | | Sleep Minutes Asleep | sensor.sleep_minutes_asleep |

After:

| Entity Name | Entity ID | |-------|---------| | Fitbit Weight | sensor.fitbit_weight | | Fitbit BMI | sensor.fitbit_bmi | Fitbit Aria 2 Battery | sensor.fitbit_aria_2_battery | | Fitbit Sleep Minutes Asleep | sensor.fitbit_sleep_minutes_asleep |

Screenshots

I was able to get the dev container running, and I set up an Ngrok secure tunnel to fully test the OAuth flow and make sure everything is working. Here are the new entities:

Their settings can now be managed from the UI:

I'm already using these changes in my real Home Assistant instance, by copying the fitbit folder into /custom_components and adding "version": "2.0.0" to manifest.json.

I can confirm that entity_id_version was set to 1 in my fitbit.conf when I initially installed the custom component, and no changes were made to my existing Fitbit entities. After I manually updated entity_id_version to 2 and restarted HA, the integration started using the new entity IDs and names:

Type of change

  • [ ] Dependency upgrade
  • [ ] Bugfix (non-breaking change which fixes an issue)
  • [ ] New integration (thank you!)
  • [ ] New feature (which adds functionality to an existing integration)
  • [ ] Deprecation (breaking change to happen in the future)
  • [ ] Breaking change (fix/feature causing existing functionality to break)
  • [X] Code quality improvements to existing code or addition of tests

Additional information

  • This PR fixes or closes issue: n/a
  • This PR is related to issue: n/a
  • Link to documentation pull request: n/a (no change needed)

Checklist

  • [X] The code change is tested and works locally.
  • [X] Local tests pass. Your PR cannot be merged unless tests pass
  • [X] There is no commented out code in this PR.
  • [X] I have followed the development checklist
  • [X] The code has been formatted using Black (black --fast homeassistant tests)
  • [ ] Tests have been added to verify that the new code works.
    • The fitbit integration did not have any existing tests

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • [ ] The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • [ ] New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • [ ] For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.
  • [ ] Untested files have been added to .coveragerc.

The integration reached or maintains the following Integration Quality Scale:

  • [ ] No score or internal
  • [ ] 🥈 Silver
  • [ ] 🥇 Gold
  • [ ] 🏆 Platinum

To help with the load of incoming pull requests:

Merged On 04 Oct 2022 at 12:43:08

Ndbroadbent

Commented On 04 Oct 2022 at 12:43:08
Issue Comment

Ndbroadbent

Fitbit: Create a device for the Fitbit user, to group Fitbit sensors and generate nicer names and entity IDs

Proposed change

This change improves the entity IDs and names for Fitbit sensors. I didn't like how the sensors had no prefix or context. For example, it just adds a "Weight" sensor with the ID "sensor.weight". I also thought it was a bit annoying that I couldn't type "fitbit" in the search bar to show a list of entities from the Fitbit integration.

I added a "Fitbit" prefix to the names, and a sensor.fitbit_ prefix to the IDs. I am also now setting the unique_id for entities, which was previously omitted. This means that their settings can be managed from the UI.

This change is backwards compatible and does not affect any existing integrations that already have a fitbit.conf file. I achieved this by adding a new entity_id_version property to fitbit.conf. If this is undefined or set to 1, then the original names are used. If this is set to 2 (the new default value), then the new unique IDs and names are used. Users can opt-in to the new IDs and names by updating their fitbit.conf. Any newly configured integrations will use the new names and IDs by default.

Before:

| Entity Name | Entity ID | |-------|---------| | Weight | sensor.weight | | BMI | sensor.bmi | | Aria 2 Battery | sensor.aria_2_battery | | Sleep Minutes Asleep | sensor.sleep_minutes_asleep |

After:

| Entity Name | Entity ID | |-------|---------| | Fitbit Weight | sensor.fitbit_weight | | Fitbit BMI | sensor.fitbit_bmi | Fitbit Aria 2 Battery | sensor.fitbit_aria_2_battery | | Fitbit Sleep Minutes Asleep | sensor.fitbit_sleep_minutes_asleep |

Screenshots

I was able to get the dev container running, and I set up an Ngrok secure tunnel to fully test the OAuth flow and make sure everything is working. Here are the new entities:

Their settings can now be managed from the UI:

I'm already using these changes in my real Home Assistant instance, by copying the fitbit folder into /custom_components and adding "version": "2.0.0" to manifest.json.

I can confirm that entity_id_version was set to 1 in my fitbit.conf when I initially installed the custom component, and no changes were made to my existing Fitbit entities. After I manually updated entity_id_version to 2 and restarted HA, the integration started using the new entity IDs and names:

Type of change

  • [ ] Dependency upgrade
  • [ ] Bugfix (non-breaking change which fixes an issue)
  • [ ] New integration (thank you!)
  • [ ] New feature (which adds functionality to an existing integration)
  • [ ] Deprecation (breaking change to happen in the future)
  • [ ] Breaking change (fix/feature causing existing functionality to break)
  • [X] Code quality improvements to existing code or addition of tests

Additional information

  • This PR fixes or closes issue: n/a
  • This PR is related to issue: n/a
  • Link to documentation pull request: n/a (no change needed)

Checklist

  • [X] The code change is tested and works locally.
  • [X] Local tests pass. Your PR cannot be merged unless tests pass
  • [X] There is no commented out code in this PR.
  • [X] I have followed the development checklist
  • [X] The code has been formatted using Black (black --fast homeassistant tests)
  • [ ] Tests have been added to verify that the new code works.
    • The fitbit integration did not have any existing tests

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • [ ] The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • [ ] New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • [ ] For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.
  • [ ] Untested files have been added to .coveragerc.

The integration reached or maintains the following Integration Quality Scale:

  • [ ] No score or internal
  • [ ] 🥈 Silver
  • [ ] 🥇 Gold
  • [ ] 🏆 Platinum

To help with the load of incoming pull requests:

Forked On 04 Oct 2022 at 12:33:10

Ndbroadbent

@epenet I'm trying to create a device for all the sensors, but I can't seem to get it to work. No device is being created in my frontend:

 self._attr_device_info = DeviceInfo(
                entry_type=DeviceEntryType.SERVICE,
                identifiers={("fitbit", user_profile["encodedId"])},
                manufacturer="Fitbit",
                model="Fitbit User",
                name=user_profile["fullName"],
            ) 

I've looked at some other components, and I can't see anything that I'm missing. Is there anything else I need to do to set up a device? (PR is updated with latest code)

Commented On 04 Oct 2022 at 12:33:10

Ndbroadbent

Bumped version to 2022.9.0b0

Pushed On 04 Oct 2022 at 12:12:58

Ndbroadbent

Catch unknown user exception in Overkiz integration (#76693)

Pushed On 04 Oct 2022 at 12:12:58

Ndbroadbent

Suppress 404 in Bravia TV (#77288)

Pushed On 04 Oct 2022 at 12:12:58

Ndbroadbent

Bump version of pyunifiprotect to 4.2.0 (#77618)

Pushed On 04 Oct 2022 at 12:12:58

Ndbroadbent

Update xknx to 1.0.2 (#77627)

Pushed On 04 Oct 2022 at 12:12:58

Ndbroadbent

Bump bleak to 0.16.0 (#77629)

Co-authored-by: Justin Vanderhooft justinvdhooft@gmail.com

Pushed On 04 Oct 2022 at 12:12:58

Ndbroadbent

Bump melnor-bluetooth to 0.0.15 (#77631)

Pushed On 04 Oct 2022 at 12:12:58

Ndbroadbent

Bumped version to 2022.9.0b1

Pushed On 04 Oct 2022 at 12:12:58

Ndbroadbent

Required config_flow values for here_travel_time (#75026)

Pushed On 04 Oct 2022 at 12:12:58

Ndbroadbent

Fix basic browse_media support in forked-daapd (#77595)

Pushed On 04 Oct 2022 at 12:12:58

Ndbroadbent

Code quality improvements for litterrobot integration (#77605)

Pushed On 04 Oct 2022 at 12:12:58

Ndbroadbent

Increase sleep in Risco setup (#77619)

Pushed On 04 Oct 2022 at 12:12:58

Ndbroadbent

Add and remove Snapcast client/group callbacks properly (#77624)

Co-authored-by: epenet 6771947+epenet@users.noreply.github.com

Pushed On 04 Oct 2022 at 12:12:58

Ndbroadbent

Required option_flow values for here_travel_time (#77651)

Pushed On 04 Oct 2022 at 12:12:58

Ndbroadbent

Clean up user overridden device class in entity registry (#77662)

Pushed On 04 Oct 2022 at 12:12:58

Ndbroadbent

Include entity registry id in entity registry WS API (#77668)

Pushed On 04 Oct 2022 at 12:12:58

Ndbroadbent

Fix async_all_discovered_devices(False) to return connectable and unconnectable devices (#77670)

Pushed On 04 Oct 2022 at 12:12:58

Ndbroadbent

bump pynetgear to 0.10.8 (#77672)

Pushed On 04 Oct 2022 at 12:12:58

Ndbroadbent

Bump pySwitchbot to 0.18.22 (#77673)

Pushed On 04 Oct 2022 at 12:12:58

Ndbroadbent

Ensure unique id is set for esphome when setup via user flow (#77677)

Pushed On 04 Oct 2022 at 12:12:58

Ndbroadbent

Add unique ID to fitbit

Proposed change

This is a preliminary PR for improving the fitbit sensor names and IDs: https://github.com/home-assistant/core/pull/79572

Adds a unique ID for all fitbit sensors. Here is the full list of unique_ids that are generated:

7NHXM8_activities/activityCalories
7NHXM8_activities/calories
7NHXM8_activities/caloriesBMR
7NHXM8_activities/distance
7NHXM8_activities/elevation
7NHXM8_activities/floors
7NHXM8_activities/heart
7NHXM8_activities/minutesFairlyActive
7NHXM8_activities/minutesLightlyActive
7NHXM8_activities/minutesSedentary
7NHXM8_activities/minutesVeryActive
7NHXM8_activities/steps
7NHXM8_activities/tracker/activityCalories
7NHXM8_activities/tracker/calories
7NHXM8_activities/tracker/distance
7NHXM8_activities/tracker/elevation
7NHXM8_activities/tracker/floors
7NHXM8_activities/tracker/minutesFairlyActive
7NHXM8_activities/tracker/minutesLightlyActive
7NHXM8_activities/tracker/minutesSedentary
7NHXM8_activities/tracker/minutesVeryActive
7NHXM8_activities/tracker/steps
7NHXM8_body/bmi
7NHXM8_body/fat
7NHXM8_body/weight
7NHXM8_sleep/awakeningsCount
7NHXM8_sleep/efficiency
7NHXM8_sleep/minutesAfterWakeup
7NHXM8_sleep/minutesAsleep
7NHXM8_sleep/minutesAwake
7NHXM8_sleep/minutesToFallAsleep
7NHXM8_sleep/startTime
7NHXM8_sleep/timeInBed
7NHXM8_devices/battery_1472464222_battery
7NHXM8_devices/battery_FX0081613702081719090664204C925A17_battery 

I got confused with some of the duplicate entities that were being created (ending in _2), but the new entities with a unique_id actually take over the original entity_id, so all automations, scripts, dashboards, etc. that refer to the original entities will continue working, and the old entities can be deleted.

Type of change

  • [ ] Dependency upgrade
  • [ ] Bugfix (non-breaking change which fixes an issue)
  • [ ] New integration (thank you!)
  • [ ] New feature (which adds functionality to an existing integration)
  • [ ] Deprecation (breaking change to happen in the future)
  • [ ] Breaking change (fix/feature causing existing functionality to break)
  • [X] Code quality improvements to existing code or addition of tests

Additional information

  • This PR fixes or closes issue: fixes #
  • This PR is related to issue:
  • Link to documentation pull request:

Checklist

  • [ ] The code change is tested and works locally.
  • [ ] Local tests pass. Your PR cannot be merged unless tests pass
  • [ ] There is no commented out code in this PR.
  • [ ] I have followed the development checklist
  • [ ] The code has been formatted using Black (black --fast homeassistant tests)
  • [ ] Tests have been added to verify that the new code works.

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • [ ] The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • [ ] New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • [ ] For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.
  • [ ] Untested files have been added to .coveragerc.

The integration reached or maintains the following Integration Quality Scale:

  • [ ] No score or internal
  • [ ] 🥈 Silver
  • [ ] 🥇 Gold
  • [ ] 🏆 Platinum

To help with the load of incoming pull requests:

Forked On 04 Oct 2022 at 11:54:03

Ndbroadbent

Done!
On 04 Oct 2022 at 11:54:03

Ndbroadbent

Add unique ID to fitbit

Proposed change

This is a preliminary PR for improving the fitbit sensor names and IDs: https://github.com/home-assistant/core/pull/79572

Adds a unique ID for all fitbit sensors. Here is the full list of unique_ids that are generated:

7NHXM8_activities/activityCalories
7NHXM8_activities/calories
7NHXM8_activities/caloriesBMR
7NHXM8_activities/distance
7NHXM8_activities/elevation
7NHXM8_activities/floors
7NHXM8_activities/heart
7NHXM8_activities/minutesFairlyActive
7NHXM8_activities/minutesLightlyActive
7NHXM8_activities/minutesSedentary
7NHXM8_activities/minutesVeryActive
7NHXM8_activities/steps
7NHXM8_activities/tracker/activityCalories
7NHXM8_activities/tracker/calories
7NHXM8_activities/tracker/distance
7NHXM8_activities/tracker/elevation
7NHXM8_activities/tracker/floors
7NHXM8_activities/tracker/minutesFairlyActive
7NHXM8_activities/tracker/minutesLightlyActive
7NHXM8_activities/tracker/minutesSedentary
7NHXM8_activities/tracker/minutesVeryActive
7NHXM8_activities/tracker/steps
7NHXM8_body/bmi
7NHXM8_body/fat
7NHXM8_body/weight
7NHXM8_sleep/awakeningsCount
7NHXM8_sleep/efficiency
7NHXM8_sleep/minutesAfterWakeup
7NHXM8_sleep/minutesAsleep
7NHXM8_sleep/minutesAwake
7NHXM8_sleep/minutesToFallAsleep
7NHXM8_sleep/startTime
7NHXM8_sleep/timeInBed
7NHXM8_devices/battery_1472464222_battery
7NHXM8_devices/battery_FX0081613702081719090664204C925A17_battery 

I got confused with some of the duplicate entities that were being created (ending in _2), but the new entities with a unique_id actually take over the original entity_id, so all automations, scripts, dashboards, etc. that refer to the original entities will continue working, and the old entities can be deleted.

Type of change

  • [ ] Dependency upgrade
  • [ ] Bugfix (non-breaking change which fixes an issue)
  • [ ] New integration (thank you!)
  • [ ] New feature (which adds functionality to an existing integration)
  • [ ] Deprecation (breaking change to happen in the future)
  • [ ] Breaking change (fix/feature causing existing functionality to break)
  • [X] Code quality improvements to existing code or addition of tests

Additional information

  • This PR fixes or closes issue: fixes #
  • This PR is related to issue:
  • Link to documentation pull request:

Checklist

  • [ ] The code change is tested and works locally.
  • [ ] Local tests pass. Your PR cannot be merged unless tests pass
  • [ ] There is no commented out code in this PR.
  • [ ] I have followed the development checklist
  • [ ] The code has been formatted using Black (black --fast homeassistant tests)
  • [ ] Tests have been added to verify that the new code works.

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • [ ] The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • [ ] New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • [ ] For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.
  • [ ] Untested files have been added to .coveragerc.

The integration reached or maintains the following Integration Quality Scale:

  • [ ] No score or internal
  • [ ] 🥈 Silver
  • [ ] 🥇 Gold
  • [ ] 🏆 Platinum

To help with the load of incoming pull requests:

Merged On 04 Oct 2022 at 11:54:04

Ndbroadbent

Commented On 04 Oct 2022 at 11:54:04

Ndbroadbent

No need for trailing battery in unique ID, since it already contains "devices/battery"

Pushed On 04 Oct 2022 at 11:53:52

Ndbroadbent

Add unique ID to fitbit

Proposed change

This is a preliminary PR for improving the fitbit sensor names and IDs: https://github.com/home-assistant/core/pull/79572

Adds a unique ID for all fitbit sensors. Here is the full list of unique_ids that are generated:

7NHXM8_activities/activityCalories
7NHXM8_activities/calories
7NHXM8_activities/caloriesBMR
7NHXM8_activities/distance
7NHXM8_activities/elevation
7NHXM8_activities/floors
7NHXM8_activities/heart
7NHXM8_activities/minutesFairlyActive
7NHXM8_activities/minutesLightlyActive
7NHXM8_activities/minutesSedentary
7NHXM8_activities/minutesVeryActive
7NHXM8_activities/steps
7NHXM8_activities/tracker/activityCalories
7NHXM8_activities/tracker/calories
7NHXM8_activities/tracker/distance
7NHXM8_activities/tracker/elevation
7NHXM8_activities/tracker/floors
7NHXM8_activities/tracker/minutesFairlyActive
7NHXM8_activities/tracker/minutesLightlyActive
7NHXM8_activities/tracker/minutesSedentary
7NHXM8_activities/tracker/minutesVeryActive
7NHXM8_activities/tracker/steps
7NHXM8_body/bmi
7NHXM8_body/fat
7NHXM8_body/weight
7NHXM8_sleep/awakeningsCount
7NHXM8_sleep/efficiency
7NHXM8_sleep/minutesAfterWakeup
7NHXM8_sleep/minutesAsleep
7NHXM8_sleep/minutesAwake
7NHXM8_sleep/minutesToFallAsleep
7NHXM8_sleep/startTime
7NHXM8_sleep/timeInBed
7NHXM8_devices/battery_1472464222_battery
7NHXM8_devices/battery_FX0081613702081719090664204C925A17_battery 

I got confused with some of the duplicate entities that were being created (ending in _2), but the new entities with a unique_id actually take over the original entity_id, so all automations, scripts, dashboards, etc. that refer to the original entities will continue working, and the old entities can be deleted.

Type of change

  • [ ] Dependency upgrade
  • [ ] Bugfix (non-breaking change which fixes an issue)
  • [ ] New integration (thank you!)
  • [ ] New feature (which adds functionality to an existing integration)
  • [ ] Deprecation (breaking change to happen in the future)
  • [ ] Breaking change (fix/feature causing existing functionality to break)
  • [X] Code quality improvements to existing code or addition of tests

Additional information

  • This PR fixes or closes issue: fixes #
  • This PR is related to issue:
  • Link to documentation pull request:

Checklist

  • [ ] The code change is tested and works locally.
  • [ ] Local tests pass. Your PR cannot be merged unless tests pass
  • [ ] There is no commented out code in this PR.
  • [ ] I have followed the development checklist
  • [ ] The code has been formatted using Black (black --fast homeassistant tests)
  • [ ] Tests have been added to verify that the new code works.

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • [ ] The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • [ ] New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • [ ] For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.
  • [ ] Untested files have been added to .coveragerc.

The integration reached or maintains the following Integration Quality Scale:

  • [ ] No score or internal
  • [ ] 🥈 Silver
  • [ ] 🥇 Gold
  • [ ] 🏆 Platinum

To help with the load of incoming pull requests:

Forked On 04 Oct 2022 at 11:52:31

Ndbroadbent

Probably no need for the trailing `_battery` in that case
On 04 Oct 2022 at 11:52:31

Ndbroadbent

Add unique ID to fitbit

Proposed change

This is a preliminary PR for improving the fitbit sensor names and IDs: https://github.com/home-assistant/core/pull/79572

Adds a unique ID for all fitbit sensors. Here is the full list of unique_ids that are generated:

7NHXM8_activities/activityCalories
7NHXM8_activities/calories
7NHXM8_activities/caloriesBMR
7NHXM8_activities/distance
7NHXM8_activities/elevation
7NHXM8_activities/floors
7NHXM8_activities/heart
7NHXM8_activities/minutesFairlyActive
7NHXM8_activities/minutesLightlyActive
7NHXM8_activities/minutesSedentary
7NHXM8_activities/minutesVeryActive
7NHXM8_activities/steps
7NHXM8_activities/tracker/activityCalories
7NHXM8_activities/tracker/calories
7NHXM8_activities/tracker/distance
7NHXM8_activities/tracker/elevation
7NHXM8_activities/tracker/floors
7NHXM8_activities/tracker/minutesFairlyActive
7NHXM8_activities/tracker/minutesLightlyActive
7NHXM8_activities/tracker/minutesSedentary
7NHXM8_activities/tracker/minutesVeryActive
7NHXM8_activities/tracker/steps
7NHXM8_body/bmi
7NHXM8_body/fat
7NHXM8_body/weight
7NHXM8_sleep/awakeningsCount
7NHXM8_sleep/efficiency
7NHXM8_sleep/minutesAfterWakeup
7NHXM8_sleep/minutesAsleep
7NHXM8_sleep/minutesAwake
7NHXM8_sleep/minutesToFallAsleep
7NHXM8_sleep/startTime
7NHXM8_sleep/timeInBed
7NHXM8_devices/battery_1472464222_battery
7NHXM8_devices/battery_FX0081613702081719090664204C925A17_battery 

I got confused with some of the duplicate entities that were being created (ending in _2), but the new entities with a unique_id actually take over the original entity_id, so all automations, scripts, dashboards, etc. that refer to the original entities will continue working, and the old entities can be deleted.

Type of change

  • [ ] Dependency upgrade
  • [ ] Bugfix (non-breaking change which fixes an issue)
  • [ ] New integration (thank you!)
  • [ ] New feature (which adds functionality to an existing integration)
  • [ ] Deprecation (breaking change to happen in the future)
  • [ ] Breaking change (fix/feature causing existing functionality to break)
  • [X] Code quality improvements to existing code or addition of tests

Additional information

  • This PR fixes or closes issue: fixes #
  • This PR is related to issue:
  • Link to documentation pull request:

Checklist

  • [ ] The code change is tested and works locally.
  • [ ] Local tests pass. Your PR cannot be merged unless tests pass
  • [ ] There is no commented out code in this PR.
  • [ ] I have followed the development checklist
  • [ ] The code has been formatted using Black (black --fast homeassistant tests)
  • [ ] Tests have been added to verify that the new code works.

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • [ ] The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • [ ] New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • [ ] For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.
  • [ ] Untested files have been added to .coveragerc.

The integration reached or maintains the following Integration Quality Scale:

  • [ ] No score or internal
  • [ ] 🥈 Silver
  • [ ] 🥇 Gold
  • [ ] 🏆 Platinum

To help with the load of incoming pull requests:

Merged On 04 Oct 2022 at 11:52:32

Ndbroadbent

Commented On 04 Oct 2022 at 11:52:32

Ndbroadbent

Add unique ID to fitbit

Proposed change

This is a preliminary PR for improving the fitbit sensor names and IDs: https://github.com/home-assistant/core/pull/79572

Adds a unique ID for all fitbit sensors. Here is the full list of unique_ids that are generated:

7NHXM8_activities/activityCalories
7NHXM8_activities/calories
7NHXM8_activities/caloriesBMR
7NHXM8_activities/distance
7NHXM8_activities/elevation
7NHXM8_activities/floors
7NHXM8_activities/heart
7NHXM8_activities/minutesFairlyActive
7NHXM8_activities/minutesLightlyActive
7NHXM8_activities/minutesSedentary
7NHXM8_activities/minutesVeryActive
7NHXM8_activities/steps
7NHXM8_activities/tracker/activityCalories
7NHXM8_activities/tracker/calories
7NHXM8_activities/tracker/distance
7NHXM8_activities/tracker/elevation
7NHXM8_activities/tracker/floors
7NHXM8_activities/tracker/minutesFairlyActive
7NHXM8_activities/tracker/minutesLightlyActive
7NHXM8_activities/tracker/minutesSedentary
7NHXM8_activities/tracker/minutesVeryActive
7NHXM8_activities/tracker/steps
7NHXM8_body/bmi
7NHXM8_body/fat
7NHXM8_body/weight
7NHXM8_sleep/awakeningsCount
7NHXM8_sleep/efficiency
7NHXM8_sleep/minutesAfterWakeup
7NHXM8_sleep/minutesAsleep
7NHXM8_sleep/minutesAwake
7NHXM8_sleep/minutesToFallAsleep
7NHXM8_sleep/startTime
7NHXM8_sleep/timeInBed
7NHXM8_devices/battery_1472464222_battery
7NHXM8_devices/battery_FX0081613702081719090664204C925A17_battery 

I got confused with some of the duplicate entities that were being created (ending in _2), but the new entities with a unique_id actually take over the original entity_id, so all automations, scripts, dashboards, etc. that refer to the original entities will continue working, and the old entities can be deleted.

Type of change

  • [ ] Dependency upgrade
  • [ ] Bugfix (non-breaking change which fixes an issue)
  • [ ] New integration (thank you!)
  • [ ] New feature (which adds functionality to an existing integration)
  • [ ] Deprecation (breaking change to happen in the future)
  • [ ] Breaking change (fix/feature causing existing functionality to break)
  • [X] Code quality improvements to existing code or addition of tests

Additional information

  • This PR fixes or closes issue: fixes #
  • This PR is related to issue:
  • Link to documentation pull request:

Checklist

  • [ ] The code change is tested and works locally.
  • [ ] Local tests pass. Your PR cannot be merged unless tests pass
  • [ ] There is no commented out code in this PR.
  • [ ] I have followed the development checklist
  • [ ] The code has been formatted using Black (black --fast homeassistant tests)
  • [ ] Tests have been added to verify that the new code works.

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • [ ] The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • [ ] New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • [ ] For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.
  • [ ] Untested files have been added to .coveragerc.

The integration reached or maintains the following Integration Quality Scale:

  • [ ] No score or internal
  • [ ] 🥈 Silver
  • [ ] 🥇 Gold
  • [ ] 🏆 Platinum

To help with the load of incoming pull requests:

Forked On 04 Oct 2022 at 11:52:10

Ndbroadbent

Sure I've updated the description. Here's the new battery IDs: ``` 7NHXM8_devices/battery_1472464222_battery 7NHXM8_devices/battery_FX0081613702081719090664204C925A17_battery ```
On 04 Oct 2022 at 11:52:10

Ndbroadbent

Add unique ID to fitbit

Proposed change

This is a preliminary PR for improving the fitbit sensor names and IDs: https://github.com/home-assistant/core/pull/79572

Adds a unique ID for all fitbit sensors. Here is the full list of unique_ids that are generated:

7NHXM8_activities/activityCalories
7NHXM8_activities/calories
7NHXM8_activities/caloriesBMR
7NHXM8_activities/distance
7NHXM8_activities/elevation
7NHXM8_activities/floors
7NHXM8_activities/heart
7NHXM8_activities/minutesFairlyActive
7NHXM8_activities/minutesLightlyActive
7NHXM8_activities/minutesSedentary
7NHXM8_activities/minutesVeryActive
7NHXM8_activities/steps
7NHXM8_activities/tracker/activityCalories
7NHXM8_activities/tracker/calories
7NHXM8_activities/tracker/distance
7NHXM8_activities/tracker/elevation
7NHXM8_activities/tracker/floors
7NHXM8_activities/tracker/minutesFairlyActive
7NHXM8_activities/tracker/minutesLightlyActive
7NHXM8_activities/tracker/minutesSedentary
7NHXM8_activities/tracker/minutesVeryActive
7NHXM8_activities/tracker/steps
7NHXM8_body/bmi
7NHXM8_body/fat
7NHXM8_body/weight
7NHXM8_sleep/awakeningsCount
7NHXM8_sleep/efficiency
7NHXM8_sleep/minutesAfterWakeup
7NHXM8_sleep/minutesAsleep
7NHXM8_sleep/minutesAwake
7NHXM8_sleep/minutesToFallAsleep
7NHXM8_sleep/startTime
7NHXM8_sleep/timeInBed
7NHXM8_devices/battery_1472464222_battery
7NHXM8_devices/battery_FX0081613702081719090664204C925A17_battery 

I got confused with some of the duplicate entities that were being created (ending in _2), but the new entities with a unique_id actually take over the original entity_id, so all automations, scripts, dashboards, etc. that refer to the original entities will continue working, and the old entities can be deleted.

Type of change

  • [ ] Dependency upgrade
  • [ ] Bugfix (non-breaking change which fixes an issue)
  • [ ] New integration (thank you!)
  • [ ] New feature (which adds functionality to an existing integration)
  • [ ] Deprecation (breaking change to happen in the future)
  • [ ] Breaking change (fix/feature causing existing functionality to break)
  • [X] Code quality improvements to existing code or addition of tests

Additional information

  • This PR fixes or closes issue: fixes #
  • This PR is related to issue:
  • Link to documentation pull request:

Checklist

  • [ ] The code change is tested and works locally.
  • [ ] Local tests pass. Your PR cannot be merged unless tests pass
  • [ ] There is no commented out code in this PR.
  • [ ] I have followed the development checklist
  • [ ] The code has been formatted using Black (black --fast homeassistant tests)
  • [ ] Tests have been added to verify that the new code works.

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • [ ] The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • [ ] New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • [ ] For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.
  • [ ] Untested files have been added to .coveragerc.

The integration reached or maintains the following Integration Quality Scale:

  • [ ] No score or internal
  • [ ] 🥈 Silver
  • [ ] 🥇 Gold
  • [ ] 🏆 Platinum

To help with the load of incoming pull requests:

Merged On 04 Oct 2022 at 11:52:11

Ndbroadbent

Commented On 04 Oct 2022 at 11:52:11

Ndbroadbent

Add unique ID to fitbit

Proposed change

This is a preliminary PR for improving the fitbit sensor names and IDs: https://github.com/home-assistant/core/pull/79572

Adds a unique ID for all fitbit sensors. Here is the full list of unique_ids that are generated:

7NHXM8_activities/activityCalories
7NHXM8_activities/calories
7NHXM8_activities/caloriesBMR
7NHXM8_activities/distance
7NHXM8_activities/elevation
7NHXM8_activities/floors
7NHXM8_activities/heart
7NHXM8_activities/minutesFairlyActive
7NHXM8_activities/minutesLightlyActive
7NHXM8_activities/minutesSedentary
7NHXM8_activities/minutesVeryActive
7NHXM8_activities/steps
7NHXM8_activities/tracker/activityCalories
7NHXM8_activities/tracker/calories
7NHXM8_activities/tracker/distance
7NHXM8_activities/tracker/elevation
7NHXM8_activities/tracker/floors
7NHXM8_activities/tracker/minutesFairlyActive
7NHXM8_activities/tracker/minutesLightlyActive
7NHXM8_activities/tracker/minutesSedentary
7NHXM8_activities/tracker/minutesVeryActive
7NHXM8_activities/tracker/steps
7NHXM8_body/bmi
7NHXM8_body/fat
7NHXM8_body/weight
7NHXM8_sleep/awakeningsCount
7NHXM8_sleep/efficiency
7NHXM8_sleep/minutesAfterWakeup
7NHXM8_sleep/minutesAsleep
7NHXM8_sleep/minutesAwake
7NHXM8_sleep/minutesToFallAsleep
7NHXM8_sleep/startTime
7NHXM8_sleep/timeInBed
7NHXM8_Charge 3_battery
7NHXM8_Aria 2_battery 

I got confused with some of the duplicate entities that were being created (ending in _2), but the new entities with a unique_id actually take over the original entity_id, so all automations, scripts, dashboards, etc. that refer to the original entities will continue working, and the old entities can be deleted.

Type of change

  • [ ] Dependency upgrade
  • [ ] Bugfix (non-breaking change which fixes an issue)
  • [ ] New integration (thank you!)
  • [ ] New feature (which adds functionality to an existing integration)
  • [ ] Deprecation (breaking change to happen in the future)
  • [ ] Breaking change (fix/feature causing existing functionality to break)
  • [X] Code quality improvements to existing code or addition of tests

Additional information

  • This PR fixes or closes issue: fixes #
  • This PR is related to issue:
  • Link to documentation pull request:

Checklist

  • [ ] The code change is tested and works locally.
  • [ ] Local tests pass. Your PR cannot be merged unless tests pass
  • [ ] There is no commented out code in this PR.
  • [ ] I have followed the development checklist
  • [ ] The code has been formatted using Black (black --fast homeassistant tests)
  • [ ] Tests have been added to verify that the new code works.

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • [ ] The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • [ ] New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • [ ] For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.
  • [ ] Untested files have been added to .coveragerc.

The integration reached or maintains the following Integration Quality Scale:

  • [ ] No score or internal
  • [ ] 🥈 Silver
  • [ ] 🥇 Gold
  • [ ] 🏆 Platinum

To help with the load of incoming pull requests:

Forked On 04 Oct 2022 at 11:37:04

Ndbroadbent

Good idea, updated
On 04 Oct 2022 at 11:37:04

Ndbroadbent

Add unique ID to fitbit

Proposed change

This is a preliminary PR for improving the fitbit sensor names and IDs: https://github.com/home-assistant/core/pull/79572

Adds a unique ID for all fitbit sensors. Here is the full list of unique_ids that are generated:

7NHXM8_activities/activityCalories
7NHXM8_activities/calories
7NHXM8_activities/caloriesBMR
7NHXM8_activities/distance
7NHXM8_activities/elevation
7NHXM8_activities/floors
7NHXM8_activities/heart
7NHXM8_activities/minutesFairlyActive
7NHXM8_activities/minutesLightlyActive
7NHXM8_activities/minutesSedentary
7NHXM8_activities/minutesVeryActive
7NHXM8_activities/steps
7NHXM8_activities/tracker/activityCalories
7NHXM8_activities/tracker/calories
7NHXM8_activities/tracker/distance
7NHXM8_activities/tracker/elevation
7NHXM8_activities/tracker/floors
7NHXM8_activities/tracker/minutesFairlyActive
7NHXM8_activities/tracker/minutesLightlyActive
7NHXM8_activities/tracker/minutesSedentary
7NHXM8_activities/tracker/minutesVeryActive
7NHXM8_activities/tracker/steps
7NHXM8_body/bmi
7NHXM8_body/fat
7NHXM8_body/weight
7NHXM8_sleep/awakeningsCount
7NHXM8_sleep/efficiency
7NHXM8_sleep/minutesAfterWakeup
7NHXM8_sleep/minutesAsleep
7NHXM8_sleep/minutesAwake
7NHXM8_sleep/minutesToFallAsleep
7NHXM8_sleep/startTime
7NHXM8_sleep/timeInBed
7NHXM8_Charge 3_battery
7NHXM8_Aria 2_battery 

I got confused with some of the duplicate entities that were being created (ending in _2), but the new entities with a unique_id actually take over the original entity_id, so all automations, scripts, dashboards, etc. that refer to the original entities will continue working, and the old entities can be deleted.

Type of change

  • [ ] Dependency upgrade
  • [ ] Bugfix (non-breaking change which fixes an issue)
  • [ ] New integration (thank you!)
  • [ ] New feature (which adds functionality to an existing integration)
  • [ ] Deprecation (breaking change to happen in the future)
  • [ ] Breaking change (fix/feature causing existing functionality to break)
  • [X] Code quality improvements to existing code or addition of tests

Additional information

  • This PR fixes or closes issue: fixes #
  • This PR is related to issue:
  • Link to documentation pull request:

Checklist

  • [ ] The code change is tested and works locally.
  • [ ] Local tests pass. Your PR cannot be merged unless tests pass
  • [ ] There is no commented out code in this PR.
  • [ ] I have followed the development checklist
  • [ ] The code has been formatted using Black (black --fast homeassistant tests)
  • [ ] Tests have been added to verify that the new code works.

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • [ ] The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • [ ] New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • [ ] For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.
  • [ ] Untested files have been added to .coveragerc.

The integration reached or maintains the following Integration Quality Scale:

  • [ ] No score or internal
  • [ ] 🥈 Silver
  • [ ] 🥇 Gold
  • [ ] 🏆 Platinum

To help with the load of incoming pull requests:

Merged On 04 Oct 2022 at 11:37:04

Ndbroadbent

Commented On 04 Oct 2022 at 11:37:04

Ndbroadbent

Fitbit: define a default unique ID, and add battery info if present

Pushed On 04 Oct 2022 at 11:36:55
Issue Comment

Ndbroadbent

Add unique ID to fitbit

Proposed change

This is a preliminary PR for improving the fitbit sensor names and IDs: https://github.com/home-assistant/core/pull/79572

Adds a unique ID for all fitbit sensors. Here is the full list of unique_ids that are generated:

7NHXM8_activities/activityCalories
7NHXM8_activities/calories
7NHXM8_activities/caloriesBMR
7NHXM8_activities/distance
7NHXM8_activities/elevation
7NHXM8_activities/floors
7NHXM8_activities/heart
7NHXM8_activities/minutesFairlyActive
7NHXM8_activities/minutesLightlyActive
7NHXM8_activities/minutesSedentary
7NHXM8_activities/minutesVeryActive
7NHXM8_activities/steps
7NHXM8_activities/tracker/activityCalories
7NHXM8_activities/tracker/calories
7NHXM8_activities/tracker/distance
7NHXM8_activities/tracker/elevation
7NHXM8_activities/tracker/floors
7NHXM8_activities/tracker/minutesFairlyActive
7NHXM8_activities/tracker/minutesLightlyActive
7NHXM8_activities/tracker/minutesSedentary
7NHXM8_activities/tracker/minutesVeryActive
7NHXM8_activities/tracker/steps
7NHXM8_body/bmi
7NHXM8_body/fat
7NHXM8_body/weight
7NHXM8_sleep/awakeningsCount
7NHXM8_sleep/efficiency
7NHXM8_sleep/minutesAfterWakeup
7NHXM8_sleep/minutesAsleep
7NHXM8_sleep/minutesAwake
7NHXM8_sleep/minutesToFallAsleep
7NHXM8_sleep/startTime
7NHXM8_sleep/timeInBed
7NHXM8_Charge 3_battery
7NHXM8_Aria 2_battery 

I got confused with some of the duplicate entities that were being created (ending in _2), but the new entities with a unique_id actually take over the original entity_id, so all automations, scripts, dashboards, etc. that refer to the original entities will continue working, and the old entities can be deleted.

Type of change

  • [ ] Dependency upgrade
  • [ ] Bugfix (non-breaking change which fixes an issue)
  • [ ] New integration (thank you!)
  • [ ] New feature (which adds functionality to an existing integration)
  • [ ] Deprecation (breaking change to happen in the future)
  • [ ] Breaking change (fix/feature causing existing functionality to break)
  • [X] Code quality improvements to existing code or addition of tests

Additional information

  • This PR fixes or closes issue: fixes #
  • This PR is related to issue:
  • Link to documentation pull request:

Checklist

  • [ ] The code change is tested and works locally.
  • [ ] Local tests pass. Your PR cannot be merged unless tests pass
  • [ ] There is no commented out code in this PR.
  • [ ] I have followed the development checklist
  • [ ] The code has been formatted using Black (black --fast homeassistant tests)
  • [ ] Tests have been added to verify that the new code works.

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • [ ] The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • [ ] New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • [ ] For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.
  • [ ] Untested files have been added to .coveragerc.

The integration reached or maintains the following Integration Quality Scale:

  • [ ] No score or internal
  • [ ] 🥈 Silver
  • [ ] 🥇 Gold
  • [ ] 🏆 Platinum

To help with the load of incoming pull requests:

Forked On 04 Oct 2022 at 11:14:58

Ndbroadbent

I think your unique id "breaking change " issue might simply be due to your testing. Start with None, try format 1, then try format 2. I don't think this would happen in a real system.

Yes I just realized that I was getting confused with where some duplicate entities were coming from after HA was restarted.

Some duplicate entities are briefly created for the old ones that don't have a unique ID, but I figured out that these are the ones that get their entity_id renamed to end in _2, and then they can be safely deleted, or they will disappear after the next restart. So I think it's not an issue

Commented On 04 Oct 2022 at 11:14:58
Issue Comment

Ndbroadbent

Add unique ID to fitbit

Breaking change

Unfortunately this will be a breaking change for existing Fitbit integrations, since it will create duplicate entities using the new unique_id.

Proposed change

This is a preliminary PR for improving the fitbit sensor names and IDs: https://github.com/home-assistant/core/pull/79572

Adds a unique ID for all fitbit sensors. Here is the full list of unique_ids that are generated:

7NHXM8_activities/activityCalories
7NHXM8_activities/calories
7NHXM8_activities/caloriesBMR
7NHXM8_activities/distance
7NHXM8_activities/elevation
7NHXM8_activities/floors
7NHXM8_activities/heart
7NHXM8_activities/minutesFairlyActive
7NHXM8_activities/minutesLightlyActive
7NHXM8_activities/minutesSedentary
7NHXM8_activities/minutesVeryActive
7NHXM8_activities/steps
7NHXM8_activities/tracker/activityCalories
7NHXM8_activities/tracker/calories
7NHXM8_activities/tracker/distance
7NHXM8_activities/tracker/elevation
7NHXM8_activities/tracker/floors
7NHXM8_activities/tracker/minutesFairlyActive
7NHXM8_activities/tracker/minutesLightlyActive
7NHXM8_activities/tracker/minutesSedentary
7NHXM8_activities/tracker/minutesVeryActive
7NHXM8_activities/tracker/steps
7NHXM8_body/bmi
7NHXM8_body/fat
7NHXM8_body/weight
7NHXM8_sleep/awakeningsCount
7NHXM8_sleep/efficiency
7NHXM8_sleep/minutesAfterWakeup
7NHXM8_sleep/minutesAsleep
7NHXM8_sleep/minutesAwake
7NHXM8_sleep/minutesToFallAsleep
7NHXM8_sleep/startTime
7NHXM8_sleep/timeInBed
7NHXM8_Charge 3_battery
7NHXM8_Aria 2_battery 

Type of change

  • [ ] Dependency upgrade
  • [ ] Bugfix (non-breaking change which fixes an issue)
  • [ ] New integration (thank you!)
  • [ ] New feature (which adds functionality to an existing integration)
  • [ ] Deprecation (breaking change to happen in the future)
  • [ ] Breaking change (fix/feature causing existing functionality to break)
  • [X] Code quality improvements to existing code or addition of tests

Additional information

  • This PR fixes or closes issue: fixes #
  • This PR is related to issue:
  • Link to documentation pull request:

Checklist

  • [ ] The code change is tested and works locally.
  • [ ] Local tests pass. Your PR cannot be merged unless tests pass
  • [ ] There is no commented out code in this PR.
  • [ ] I have followed the development checklist
  • [ ] The code has been formatted using Black (black --fast homeassistant tests)
  • [ ] Tests have been added to verify that the new code works.

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • [ ] The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • [ ] New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • [ ] For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.
  • [ ] Untested files have been added to .coveragerc.

The integration reached or maintains the following Integration Quality Scale:

  • [ ] No score or internal
  • [ ] 🥈 Silver
  • [ ] 🥇 Gold
  • [ ] 🏆 Platinum

To help with the load of incoming pull requests:

Forked On 04 Oct 2022 at 11:02:51

Ndbroadbent

@epenet Thanks for the feedback, I've updated the PR with all of the suggested changes, and have included the full list of unique_ids that are being generated

Commented On 04 Oct 2022 at 11:02:51

Ndbroadbent

Add unique ID to fitbit

Breaking change

Unfortunately this will be a breaking change for existing Fitbit integrations, since it will create duplicate entities using the new unique_id.

Proposed change

This is a preliminary PR for improving the fitbit sensor names and IDs: https://github.com/home-assistant/core/pull/79572

Adds a unique ID for all fitbit sensors. Here is the full list of unique_ids that are generated:

7NHXM8_activities/activityCalories
7NHXM8_activities/calories
7NHXM8_activities/caloriesBMR
7NHXM8_activities/distance
7NHXM8_activities/elevation
7NHXM8_activities/floors
7NHXM8_activities/heart
7NHXM8_activities/minutesFairlyActive
7NHXM8_activities/minutesLightlyActive
7NHXM8_activities/minutesSedentary
7NHXM8_activities/minutesVeryActive
7NHXM8_activities/steps
7NHXM8_activities/tracker/activityCalories
7NHXM8_activities/tracker/calories
7NHXM8_activities/tracker/distance
7NHXM8_activities/tracker/elevation
7NHXM8_activities/tracker/floors
7NHXM8_activities/tracker/minutesFairlyActive
7NHXM8_activities/tracker/minutesLightlyActive
7NHXM8_activities/tracker/minutesSedentary
7NHXM8_activities/tracker/minutesVeryActive
7NHXM8_activities/tracker/steps
7NHXM8_body/bmi
7NHXM8_body/fat
7NHXM8_body/weight
7NHXM8_sleep/awakeningsCount
7NHXM8_sleep/efficiency
7NHXM8_sleep/minutesAfterWakeup
7NHXM8_sleep/minutesAsleep
7NHXM8_sleep/minutesAwake
7NHXM8_sleep/minutesToFallAsleep
7NHXM8_sleep/startTime
7NHXM8_sleep/timeInBed
7NHXM8_Charge 3_battery
7NHXM8_Aria 2_battery 

Type of change

  • [ ] Dependency upgrade
  • [ ] Bugfix (non-breaking change which fixes an issue)
  • [ ] New integration (thank you!)
  • [ ] New feature (which adds functionality to an existing integration)
  • [ ] Deprecation (breaking change to happen in the future)
  • [ ] Breaking change (fix/feature causing existing functionality to break)
  • [X] Code quality improvements to existing code or addition of tests

Additional information

  • This PR fixes or closes issue: fixes #
  • This PR is related to issue:
  • Link to documentation pull request:

Checklist

  • [ ] The code change is tested and works locally.
  • [ ] Local tests pass. Your PR cannot be merged unless tests pass
  • [ ] There is no commented out code in this PR.
  • [ ] I have followed the development checklist
  • [ ] The code has been formatted using Black (black --fast homeassistant tests)
  • [ ] Tests have been added to verify that the new code works.

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • [ ] The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • [ ] New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • [ ] For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.
  • [ ] Untested files have been added to .coveragerc.

The integration reached or maintains the following Integration Quality Scale:

  • [ ] No score or internal
  • [ ] 🥈 Silver
  • [ ] 🥇 Gold
  • [ ] 🏆 Platinum

To help with the load of incoming pull requests:

Forked On 04 Oct 2022 at 11:01:35

Ndbroadbent

Updated, thanks!
On 04 Oct 2022 at 11:01:35

Ndbroadbent

Add unique ID to fitbit

Breaking change

Unfortunately this will be a breaking change for existing Fitbit integrations, since it will create duplicate entities using the new unique_id.

Proposed change

This is a preliminary PR for improving the fitbit sensor names and IDs: https://github.com/home-assistant/core/pull/79572

Adds a unique ID for all fitbit sensors. Here is the full list of unique_ids that are generated:

7NHXM8_activities/activityCalories
7NHXM8_activities/calories
7NHXM8_activities/caloriesBMR
7NHXM8_activities/distance
7NHXM8_activities/elevation
7NHXM8_activities/floors
7NHXM8_activities/heart
7NHXM8_activities/minutesFairlyActive
7NHXM8_activities/minutesLightlyActive
7NHXM8_activities/minutesSedentary
7NHXM8_activities/minutesVeryActive
7NHXM8_activities/steps
7NHXM8_activities/tracker/activityCalories
7NHXM8_activities/tracker/calories
7NHXM8_activities/tracker/distance
7NHXM8_activities/tracker/elevation
7NHXM8_activities/tracker/floors
7NHXM8_activities/tracker/minutesFairlyActive
7NHXM8_activities/tracker/minutesLightlyActive
7NHXM8_activities/tracker/minutesSedentary
7NHXM8_activities/tracker/minutesVeryActive
7NHXM8_activities/tracker/steps
7NHXM8_body/bmi
7NHXM8_body/fat
7NHXM8_body/weight
7NHXM8_sleep/awakeningsCount
7NHXM8_sleep/efficiency
7NHXM8_sleep/minutesAfterWakeup
7NHXM8_sleep/minutesAsleep
7NHXM8_sleep/minutesAwake
7NHXM8_sleep/minutesToFallAsleep
7NHXM8_sleep/startTime
7NHXM8_sleep/timeInBed
7NHXM8_Charge 3_battery
7NHXM8_Aria 2_battery 

Type of change

  • [ ] Dependency upgrade
  • [ ] Bugfix (non-breaking change which fixes an issue)
  • [ ] New integration (thank you!)
  • [ ] New feature (which adds functionality to an existing integration)
  • [ ] Deprecation (breaking change to happen in the future)
  • [ ] Breaking change (fix/feature causing existing functionality to break)
  • [X] Code quality improvements to existing code or addition of tests

Additional information

  • This PR fixes or closes issue: fixes #
  • This PR is related to issue:
  • Link to documentation pull request:

Checklist

  • [ ] The code change is tested and works locally.
  • [ ] Local tests pass. Your PR cannot be merged unless tests pass
  • [ ] There is no commented out code in this PR.
  • [ ] I have followed the development checklist
  • [ ] The code has been formatted using Black (black --fast homeassistant tests)
  • [ ] Tests have been added to verify that the new code works.

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • [ ] The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • [ ] New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • [ ] For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.
  • [ ] Untested files have been added to .coveragerc.

The integration reached or maintains the following Integration Quality Scale:

  • [ ] No score or internal
  • [ ] 🥈 Silver
  • [ ] 🥇 Gold
  • [ ] 🏆 Platinum

To help with the load of incoming pull requests:

Merged On 04 Oct 2022 at 11:01:36

Ndbroadbent

Commented On 04 Oct 2022 at 11:01:36

Ndbroadbent

change fitbit user_profile type to dict[str, Any]

Pushed On 04 Oct 2022 at 11:01:27

Ndbroadbent

Remove fitbit_ from unique ids (see: https://developers.home-assistant.io/docs/entity_registry_index/#unique-id)

Pushed On 04 Oct 2022 at 10:59:49