Skip to content

feat: GUI enable display debug - #127

Merged
jjjonesjr33 merged 3 commits into
jjjonesjr33:devfrom
cdnninja:patch-2
Aug 29, 2025
Merged

feat: GUI enable display debug#127
jjjonesjr33 merged 3 commits into
jjjonesjr33:devfrom
cdnninja:patch-2

Conversation

@cdnninja

@cdnninja cdnninja commented Aug 28, 2025

Copy link
Copy Markdown
Contributor

Proposed change:

This enables the debug button in interface so YAML doesn't need to be used to turn on debug.

Closes # (issue)

Type of change:

  • New device.
  • Bug fix (non-breaking change which fixes an issue).
  • New feature or enhancement (non-breaking change which adds functionality).
  • Documentation only.
  • Other (please explain).

Checklist:

  • If applicable, I have added corresponding documentation changes.
  • If applicable, I have reviewed the feature / enhancement guidlines before submitting my request.
  • If applicable, I have tested my code for new features & regressions on the latest version of Home Assistant.

Additional notes:

@jjjonesjr33 jjjonesjr33 added the Enhancement New feature or request label Aug 28, 2025
@github-project-automation github-project-automation Bot moved this to To triage in Petlibro Aug 28, 2025
@jjjonesjr33 jjjonesjr33 added this to the [Bugs]: General Issues milestone Aug 28, 2025
@jjjonesjr33
jjjonesjr33 self-requested a review August 28, 2025 02:54

@jjjonesjr33 jjjonesjr33 left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good @cdnninja, thanks for the add!

@github-project-automation github-project-automation Bot moved this from To triage to In review in Petlibro Aug 29, 2025
@jjjonesjr33
jjjonesjr33 merged commit db37dc4 into jjjonesjr33:dev Aug 29, 2025
@github-project-automation github-project-automation Bot moved this from In review to Done in Petlibro Aug 29, 2025
jjjonesjr33 added a commit that referenced this pull request Sep 15, 2025
* Add PLAF107 (Space Smart Feeder) integration for automated feeding and control

* Add Support for Lid Mode, Lid Speed, and Lid Close Time for OneRFIDSmartFeeder PLAF301 (#55)

* Test Manual Lid Opening

* With correct description for def, and with missing comma.

* Try without in line comment - and Bool True

* Test Display Matrix Buttons

* Better Endpoint to get data, data is already in seconds, no need to convert.

* Test Sound + Shorter Names For Display

* With Corrected soundEndTime

* Now sending to the correct endpoint...

* Test 1st real commit on this.

* Remove device class from select entity as its superfluous.

* switch order to ensure defaults are after none defaults.

* switch order again...

* Change order of a few things and dont assign a default to current_option.

* try and make the other dataclasses non-default.

* try with list rather than List

* test again

* try and rename options to see if it interferes.

* test

* lets try with naming them a custom name.

* test with select in init

* Test

* Test Again

* Test new order again...

* try making all non-required.

* test again

* Now with options included.

* Test setting from initilization

* add logic for method to correctly address mapping to api values.

* add missing comma...

* test on 1 line.

* Test with lid close time

* Add correct reference to get initial value for close door time. and change MDI for select entities.

* Updated select.py

Changed wording to match app, but also leave descriptive

* Updated one_rfid_smart_feeder.py

matched app and added descriptive text

* Update en.json

updated translations

* Update de.json

updated translations

* Update en.json

fixed spacing

* Update de.json

reverting, error with validation

* Update en.json

reverting, error with validation

---------

Co-authored-by: Jamie Jones <29973406+jjjonesjr33@users.noreply.github.com>

* Update manifest.json

* Updated FUNDING.yml

Added Buy Me a Cofffee

* Updated PULL_REQUEST_TEMPLATE.md

Updated pull request template

* Updated PULL_REQUEST_TEMPLATE.md

Changed formatting

* Updated PULL_REQUEST_TEMPLATE.md

fixed spacing for webhook

* Updated PULL_REQUEST_TEMPLATE.md

Corrected layout for webhook change

* Updated README.md

testing webhook integration

* Updated README.md

removed webhook test

* Add Support for Setting the Manual Feed Amount for Air Smart Feeders (#63)

* Adding a Number-based "Manual Feed" Entity so a defined number of feed can be dispensed

* Created static manual feed quantity, a setter, and a number gauge for the user to set the value

* Was able to dispense more than 1/24th cup of food

Edited air_smart_feeder.py and api.py

* Implemented the option to set  the manual feed dispense value via a number scale.

-Added a in-class variable that represents the manual feed quantity in air_smart_feeder.py

- Changed the set_manual_feed method in air_smart_feeder.py to accomadate passing in the new variable

-Changed the set_manual_feed function in api.py to allow to pass the new variable into the api-driven web-request

-Added a number entity to represent the manual feed quantity in number.py

* Updated api.py

* Updated button.py

* Updated api.py

* Updated air_smart_feeder.py

* Updated granary_smart_camera_feeder.py

* Updated granary_smart_feeder.py

* Updated space_smart_feeder.py

* Updated one_rfid_smart_feeder.py

* Updated number.py

* Updated button.py

* Updated button.py

* Updated button.py

---------

Co-authored-by: Jamie Jones <29973406+jjjonesjr33@users.noreply.github.com>

* Add Support for Changing Display Icon and Display Text for OneRFIDSmartFeeder PLAF301  (#64)

* Test Manual Lid Opening

* With correct description for def, and with missing comma.

* Try without in line comment - and Bool True

* Test Display Matrix Buttons

* Better Endpoint to get data, data is already in seconds, no need to convert.

* Test Sound + Shorter Names For Display

* With Corrected soundEndTime

* Now sending to the correct endpoint...

* Test 1st real commit on this.

* Remove device class from select entity as its superfluous.

* switch order to ensure defaults are after none defaults.

* switch order again...

* Change order of a few things and dont assign a default to current_option.

* try and make the other dataclasses non-default.

* try with list rather than List

* test again

* try and rename options to see if it interferes.

* test

* lets try with naming them a custom name.

* test with select in init

* Test

* Test Again

* Test new order again...

* try making all non-required.

* test again

* Now with options included.

* Test setting from initilization

* add logic for method to correctly address mapping to api values.

* add missing comma...

* test on 1 line.

* Test with lid close time

* Add correct reference to get initial value for close door time. and change MDI for select entities.

* Updated select.py

Changed wording to match app, but also leave descriptive

* Updated one_rfid_smart_feeder.py

matched app and added descriptive text

* Update en.json

updated translations

* Update de.json

updated translations

* Update en.json

fixed spacing

* Update de.json

reverting, error with validation

* Update en.json

reverting, error with validation

* Test initial text implementation - definitely wont work lol

* test again

* test with value defined.

* test

* test

* Test

* Test

* Test again

* test with updating the state.

* change how native_value is filled.

* Test with new calling of update.

* try with a method for setting the display_text. without actually updating API.

* force state update after update.

* force update after action.

* Update text.py

* Test with a setter property to set the state.

* Change a lot of structure to state locally only.

* Test first implementation of icon selector.

* test with floats instead of str

* Test

* test

* Test Text Entity and Select Menu Interaction

* Update en.json

* Test

* Remove hello and text options from icon selector, as they dont work.

* Final

* Test Display Value Sensor

* Add Back Display Selection Property

* Handle as Integer rather than float.

---------

Co-authored-by: Jamie Jones <29973406+jjjonesjr33@users.noreply.github.com>

* Updated manifest.json

Bumping two version as we have a double push going out for:

Add Support for Changing Display Icon and Display Text for OneRFIDSmartFeeder PLAF301

Add Support for Setting the Manual Feed Amount for Feeders

* Hot Fix: Reduce Warnings in HA (#71)

* Hot Fix: Reduce Warnings in HA

These warnings don't seem to be an issue just rather logic working as intended.   This clutters HA logs.

* Update switch.py

* Updated README.md

Added star history

* Updated README.md

Moved preview to wiki, and updated the main readme.

* Updated README.md

Corrected spacing

* Updated README.md

Issued a notice at the top for Important information as well as changed important to note.

* Add translations for multiple languages

- Added support for Simplified Chinese
- Added Spanish translations
- Added Hindi translations
- Added Arabic translations
- Added Bengali translations
- Added Portuguese translations
- Added Russian translations
- Added Japanese translations
- Added French translations

* PLAF109 | Add button to reposition the schedule (#88)

* fix(session): 🐛 Use time zone from home assistant to ensure commands work as expected

The action `/device/wetFeedingPlan/repositon` requires the correct time zone in the headers.\nIf this is not the case an error is returned that a modification of the feeding times are not allowed

* feat(api): ✨ Added new method `set_reposition_schedule`

This action is used by the Polar Wet Food Feeder for `Reposition This Schedule` when managing the schedules.\nThis action should be executed after inserting the food bowl with new food.

* feat(device/PLAF109): ✨ Added method to reposition the schedule

* feat(button): ✨ Added button to reposition the schedule for the Polar Wet Food Feeder

* fix(api): 🚑 Added missing parameter `time_zone`

* refactor(device/PLAF109): 🥅 Catch missing templateName or invalid wet feeding plan data

---------

Co-authored-by: Jamie Jones <29973406+jjjonesjr33@users.noreply.github.com>

* Fix [Bug]: [Minor] [One RIFD] Text on display needs to be all caps (#89)

* Test Manual Lid Opening

* With correct description for def, and with missing comma.

* Try without in line comment - and Bool True

* Test Display Matrix Buttons

* Better Endpoint to get data, data is already in seconds, no need to convert.

* Test Sound + Shorter Names For Display

* With Corrected soundEndTime

* Now sending to the correct endpoint...

* Test 1st real commit on this.

* Remove device class from select entity as its superfluous.

* switch order to ensure defaults are after none defaults.

* switch order again...

* Change order of a few things and dont assign a default to current_option.

* try and make the other dataclasses non-default.

* try with list rather than List

* test again

* try and rename options to see if it interferes.

* test

* lets try with naming them a custom name.

* test with select in init

* Test

* Test Again

* Test new order again...

* try making all non-required.

* test again

* Now with options included.

* Test setting from initilization

* add logic for method to correctly address mapping to api values.

* add missing comma...

* test on 1 line.

* Test with lid close time

* Add correct reference to get initial value for close door time. and change MDI for select entities.

* Updated select.py

Changed wording to match app, but also leave descriptive

* Updated one_rfid_smart_feeder.py

matched app and added descriptive text

* Update en.json

updated translations

* Update de.json

updated translations

* Update en.json

fixed spacing

* Update de.json

reverting, error with validation

* Update en.json

reverting, error with validation

* Test initial text implementation - definitely wont work lol

* test again

* test with value defined.

* test

* test

* Test

* Test

* Test again

* test with updating the state.

* change how native_value is filled.

* Test with new calling of update.

* try with a method for setting the display_text. without actually updating API.

* force state update after update.

* force update after action.

* Update text.py

* Test with a setter property to set the state.

* Change a lot of structure to state locally only.

* Test first implementation of icon selector.

* test with floats instead of str

* Test

* test

* Test Text Entity and Select Menu Interaction

* Update en.json

* Test

* Remove hello and text options from icon selector, as they dont work.

* Final

* Test Display Value Sensor

* Add Back Display Selection Property

* Handle as Integer rather than float.

* Test Add Uppercase Conversion

* Fix Logging

---------

Co-authored-by: Jamie Jones <29973406+jjjonesjr33@users.noreply.github.com>

* Updated manifest.json

* Add Todays Feeding Plan Information to Feeding Plan Status Sensor + add Danish & Dutch/Flemish translations (#90)

* Test Manual Lid Opening

* With correct description for def, and with missing comma.

* Try without in line comment - and Bool True

* Test Display Matrix Buttons

* Better Endpoint to get data, data is already in seconds, no need to convert.

* Test Sound + Shorter Names For Display

* With Corrected soundEndTime

* Now sending to the correct endpoint...

* Test 1st real commit on this.

* Remove device class from select entity as its superfluous.

* switch order to ensure defaults are after none defaults.

* switch order again...

* Change order of a few things and dont assign a default to current_option.

* try and make the other dataclasses non-default.

* try with list rather than List

* test again

* try and rename options to see if it interferes.

* test

* lets try with naming them a custom name.

* test with select in init

* Test

* Test Again

* Test new order again...

* try making all non-required.

* test again

* Now with options included.

* Test setting from initilization

* add logic for method to correctly address mapping to api values.

* add missing comma...

* test on 1 line.

* Test with lid close time

* Add correct reference to get initial value for close door time. and change MDI for select entities.

* Updated select.py

Changed wording to match app, but also leave descriptive

* Updated one_rfid_smart_feeder.py

matched app and added descriptive text

* Update en.json

updated translations

* Update de.json

updated translations

* Update en.json

fixed spacing

* Update de.json

reverting, error with validation

* Update en.json

reverting, error with validation

* Test initial text implementation - definitely wont work lol

* test again

* test with value defined.

* test

* test

* Test

* Test

* Test again

* test with updating the state.

* change how native_value is filled.

* Test with new calling of update.

* try with a method for setting the display_text. without actually updating API.

* force state update after update.

* force update after action.

* Update text.py

* Test with a setter property to set the state.

* Change a lot of structure to state locally only.

* Test first implementation of icon selector.

* test with floats instead of str

* Test

* test

* Test Text Entity and Select Menu Interaction

* Update en.json

* Test

* Remove hello and text options from icon selector, as they dont work.

* Final

* Test Display Value Sensor

* Add Back Display Selection Property

* Handle as Integer rather than float.

* Test Add Uppercase Conversion

* Fix Logging

* test extra attributes for feeding plan today

* fix _device to be device

* Add PlanID into attributes

* Try and add amount of grains with correct unit of measurement. + expand attributes to all feeder type devices.

* Add correct resolved unit of measurement

* fix cups check

* Add Danish + Dutch/Flemish translations

---------

Co-authored-by: Jamie Jones <29973406+jjjonesjr33@users.noreply.github.com>

* feature/fountains-water-mode-control (#97)

* Support for changing water dispensing mode, the interval, and duration of water being dispensed for the intermitten water mode.

* Feature/Dry-Feeders-Last-Feed-Time-Sensor (#99)

* Feature/Dry-Feeders-Last-Feed-Time-Sensor

* Feature/Fountains-Filter-Cleaning-Control (#98)

* Feature/Fountains-Filter-Cleaning-Control

* Complete all requested renamings. + fix key = str, to key: str

* Complete all requested name changes + fix key = str, to key: str

* Fix a couple accidental removals

* Remove last refernence to Frequency vs Cycle

* fix accidental FR translation changes

---------

Co-authored-by: Jamie Jones <29973406+jjjonesjr33@users.noreply.github.com>

* Feature/Granary-Smart-Feeder-Reset-Desiccant (#109)

* Feature/Granary-Smart-Feeder-Reset-Desiccant

* Feature/Granary-Smart-Feeder-Reset-Desiccant

---------

Co-authored-by: Jamie Jones <29973406+jjjonesjr33@users.noreply.github.com>

* Update manifest.json

* Feature/Account-Settings (#115)

* Basic Account functionality update

Adds a Member class object representing the user's Petlibro account, and makes modifications to accommodate it.
Allows the user to update some of their account settings, as well as show or use those account settings on the front-end with a sensor entity (lovelace, automations, scripts etc)
Can be easily built upon to include more settings and ways to manage things on your account in the future.

* Account icon for member entity

* test

* test

* Changed translation JSON keys to lowercase

* Account icon for member entity

* Changed symbols to unicode strings

---------

Co-authored-by: Jamie Jones <29973406+jjjonesjr33@users.noreply.github.com>

* Bug/Report-Day-Sensors-Float-Not-Str (#110)

* Convert str to float and apply corret device_class, state_class + unit_of_measurement to sensors.

* remove native_value

* Fix other device_class & state_class issues

* Test Pump Selector

* Undo Accidental Commit to wrong branch

* Undo accidental commit on wrong branch

* type error handling

* Test

* Undo commit on wrong branch

* Feature/Firmware-Update-Tracking (#112)

* feature/firmware-update-tracking

* Feature/fountains filter cleaning control (#25)

* Resolve accidental commit on branch

* Last fixes to bring back in line with dev branch

* last tiny change

---------

Co-authored-by: Jamie Jones <29973406+jjjonesjr33@users.noreply.github.com>

* Feature/polar-wet-food-feeder-enhanced-plate-control (#117)

Co-authored-by: Jamie Jones <29973406+jjjonesjr33@users.noreply.github.com>

* Feature/Indicator-Control-Multiple-Devices (#116)

* Feature/indicator-control-multiple-devices

* Fix couple of errors in button device map

* Fix a number of issues preventing the binary sensor from reporting the correct state.

* Feature/Space-Smart-Feeder-PLAF107-Controls (#111)

* Test Last Feed Time Sensor

* logger for workrecord

* test with datetime imported

* test

* convert workRecord to JSON

* Test with converting list to dict

* add logging to workrecord

* test new sensor structure.

* test with list check

* add some loggers

* fix sensor mapping

* Roll out to other feeder types

* import datetime for each device type

* Add to device map

* Feature/space-smart-feeder-controls



Add Support Space Smart Feeder Controls:

Vacuum/Pump Mode Control
Sound On/Off Control
Sound Level Control
Light On/Off Control
Sleep Mode On/Off Control

Also fixed an issue where all feeders sleep mode was always off, as realInfo API endpoint whetherInSleepMode is always false for some reason. resolved by switching to getAttributeSetting, enableSleepMode as this updates correctly depending on the sleep mode.

* Feature/Space-Smart-Feeder-Additional-Error-Sensors

Add Additional Error Binary Sensors

* fix error in select device map

* fix ) instead of } (#41)

* missing comma (#42)

* Remove duplicates (#43)

* Updated manifest.json

Bumping version as we have had 1 major update, 4 minor updates and 2 hot fixes as of now completed and merged.

* Updated README.md

Added Account Integration information

* Bug/Last-Feed-Time-Sensor-Datetime-Object (#114)

* Bug/last-feed-sensor-datetime-object

Convert string to be datetime object instead.

* UTIL for UTC + Remove noisy logging

* Bug/last feed sensor datetime object

* Final Dockstream 2 Removal

---------

Co-authored-by: Jamie Jones <29973406+jjjonesjr33@users.noreply.github.com>

* Update __init__.py

hot fix to temp remove - from .fountains.dockstream_2_smart_cordless_fountain import Dockstream2SmartCordlessFountain

* Fix (#128)

* feat: GUI enable display debug (#127)

* feat: GUI enable display debug

* Update manifest.json

---------

Co-authored-by: Jamie Jones <29973406+jjjonesjr33@users.noreply.github.com>

* Updated README.md

Corrected Pending Device(s)

Dockstream 2 Smart Fountain (Plug-In Model) (PLWF106)
Dockstream 2 Smart Fountain (PLWF116)

* Updated README.md

Corrected wording for both Dockstream 2

* Created hacs.yml

* Updated hacs.yml

* Delete .github/workflows/hassfest.yaml

* Delete .github/workflows/hacs.yml

* Created validate.yml

mergerd hassfest with hacs

* Delete .github /workflows/validate.yml

* Created validate.yml

Fixed validate.yml location

* Updated hacs.json

* Updated README.md

Fixed star history link

---------

Co-authored-by: C4-Dimitri <88452320+C4-Dimitri@users.noreply.github.com>
Co-authored-by: Nistp <31832285+Nistp@users.noreply.github.com>
Co-authored-by: cdnninja <jaydenaphillips@gmail.com>
Co-authored-by: Janek <6506725+jkrgr0@users.noreply.github.com>
Co-authored-by: Mateusz Greń <mateusz.gren1992@gmail.com>
Co-authored-by: Felicity <40734666+FeliGoblin@users.noreply.github.com>
@jjjonesjr33 jjjonesjr33 added the Completed Completed tasks label Sep 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Completed Completed tasks Enhancement New feature or request

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants