OpenVoiceOS / OpenVoiceOS/ovos-plugin-manager
refactor/deprecate - hardware module
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 14
- Forks
- 14
- Avg merge
- 2d 19h
- Merged PRs (30d)
- 9
Description
the hardware module was ported from the mycroft mark 2 in order to implement the mk2 enclosure, but it has some problems
- unlike everything else in this package, this does not provide a plugin class to be used in a downstream entry point, it's just fully optional helper classes, conceptually I'm not sure they belong here or elsewhere
- colors is a minimal implementation with hardcoded color values, it should use the color utils from lingua-franca, or at least we should not have 2 classes with same name in official ovos packages, makes code ambiguous and hard to import at same time
- switches is not a abstract switch at all, it represents only the mk2 switch combination, this should be fully deprecated IMHO
- fan is similar to switches, i could see an argument to keep it but dont feel the cpu_temperature doesnt really belong here, this should be fully deprecated IMHO
- they all refer to "capabilties" which was a mark2 rewrite branch concept, it doesnt apply to ovos and that is dead code
- they all ignore base event handlers from the PHAL base class, if we introduce methods for specific actions then those should be used in default event listeners from base class
i believe the LED class is useful since it is common across many plugins, so that one should be modernized and everything else dropped.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with ovos_plugin_manager/hardware and the LED implementation at hardware/led/init.py, then compare its behavior with the base event handlers in templates/phal.py. Review the linked lingua-franca color utilities and determine the boundary between the retained LED class and deprecated hardware helpers. Done means the LED functionality is modernized consistently and the switches, fan, and obsolete capabilities code are removed or deprecated as intended.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- embedded-iot
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100