central unified microassistan banner

central unified microassistan

15 devlogs
20h 2m 9s

CUM (Central Unified Microassistant) is a lightweight MQTT-based orchestrator for managing and debugging IoT/edge devices. It includes a Python core that routes commands/events and maintains a device registry with short human-friendly IDs, and a F…

CUM (Central Unified Microassistant) is a lightweight MQTT-based orchestrator for managing and debugging IoT/edge devices. It includes a Python core that routes commands/events and maintains a device registry with short human-friendly IDs, and a Flutter client with a console, device list and event feed. Messages are JSON with correlated IDs so clients can send targeted commands (ping, msg, brightness, etc.) and await replies on cum/command/core and cum/event/core. Quick start: run an MQTT broker, start the core (python3 cum/core/core.py) and run the Flutter client (cd cum/android_app && flutter run -d web-server).

This project uses AI

Ai used only for braistorming, debugging and simple readmes
AI SOON to be used As input And output interpreter

Demo Repository

Loading README...

sebastian

Sooo before i ship i made an realease with zip for everyone to test out LINUX ONLY

Attachment
0
sebastian

Okay so i further worked on the terminall, but the whole thing is slowly falling appart

Attachment
0
sebastian

SO done: UI device listing. you have a button to send ping but ont for reciving pong still work in progress.

Attachment
0
sebastian

GOOD STUFF: i finished heartbeat integration so the flutter app stays online for the core view. i will be now integration command reading like ping maybe.

Attachment
0
sebastian

Right now im working on an app! it has 4- tabs channel- dysplays all messages comming trought the channel. Console - Pretty self explanatory Fancy A- This is a build preview nfor android devices currently none. Fancy B - build preview for iphones

Attachment
0
sebastian

Well that was painfull, im sorry for not devlogging sooner. DONE: i completely reformed a sending process with HIVEMQ cluster to procerss messages. i adderd an env setup for user to have easier setup of the app. I am right nnow working on a working register and heartbeat for flutter app, After that im planning to make user interface with console, incomming messages and so on

Attachment
0
sebastian

Shipped this project!

Hours: 10.54
Cookies: 🍪 127
Multiplier: 12.07 cookies/hr

i build a comm protocol between core.py and device.py wioth mqtt client

sebastian

Im sorry, i had an idea and it broke the whole project, i had to revert to last working point

Attachment
0
sebastian

So i didnt really add anything right now from the app side, but i differentiated all the logic from main.dart, to separate files, like in core. right now device can register and soon send heartbeats- work in progress

Attachment
0
sebastian

I finished sending register on core listening chanell, so that we gfet our flutter client registered, next steps are integrtiong heartbeats

Attachment
0
sebastian

Wow this was painfull. I installed flutter, and learned how connections and things work there, we can now have stable conection between web, and computer, cross comunication is a work in progress

Attachment
0
sebastian

DONE: i started merging all send functions into one script, to have less debugging and better high api calls from CLI, and future GUI. right now, we have moved-> ping, msg, register, and brightness function. Once i add GUI everything will be more usrer friendly and accesibvle

Attachment
0
sebastian

Sorry for dewlogging after a long time
DONE: For each device i generate unique name, and SHORT 4 character id to addres it
For better future scaling, all commands go trough higl level api to generate in controllewr.py, and get published to channel trough another command. its easier that way. I also created targeted ping, whith piungs device with its 4 digit id, and devices command that list id, last seen, and status

Attachment
0
sebastian

Projhexct update, i put in a lot of work into this, right now we separated device, and core system. added heartbeat system to check if device is still online. Also from in core shell, you can send a ping!! device will respong with pong, and same , message id

Attachment
0
sebastian

Right now im working on registry and heartbeat system for our core. it works, but the heartbeats are needed to be sent by device, witch i wil solve by pinging it and seeing the response

Attachment
0
sebastian

I started off this project with using mosquito to comunicate between core of the project, and the stuff we can do now: comunicate on two basic levels, where core itself prints out the message if HE is not the sender. it can respond to basic input (ping-pong system) its not much, but lot is comming

Attachment
0