Contains basic application construction elements that are being used in my various Kobots-related projects. This became desirable after it became apparent that these elements were being repeated across the projects via copy/pasta with tweaks.
- Generic application "junk"
- Abstractions to orchestrate physical device interactions
- Includes movements and the human stuff
- Wrappers around MQTT/HomeAssistant for external communications
There are three main sections.
SequenceManager
in the movements or via HomeAssistant.
Javadocs are published at the GitHub Pages for this project.
- The
MatrixRain
class was inspired heavily by pymatrix-rain, under the MIT License.
NeoKeyHandler
is a "wrapper" around handling a rotating "menu" of actions- use with the
NeoKeyMenu
class to get complete key-press handling and automatic invocation of actions
- use with the
StatusColumnDisplay
displays numbers in named columns (e.g. for OLED and TFT displays)- produces a small image of the columns
SmallMenuDisplay
that works with theNeoKeyMenu
stuffAppCommon
after I did the same 💩 3 times- see Appendix A for configuration reference
KobotsMQTT
for a common Qos 0 messaging- don't want stuff happening 3 hours later on a late message delivery
{
ha: {
token: "HomeAssitant Credentials Token"
server: "127.0.0.1"
port: 8123
}
mqtt.broker = "tcp://127.0.0.1:1883"
}