Seeking input for porting my robot stack to Mycroft

I have been developing a Python-based robot stack for a while, called Roberto. It is not complete yet :slight_smile:

With the advent of GPT and the many new features this opens up to, I am wondering if my little project might benefit from porting it to Mycroft, and whether it is feasible with my skillset.

I currently have these features working independently in Python:

  • Object detection via TFLite
  • Face detection via OpenCV’s cv2.dnn module
  • Face recognition via face_recognition lib
  • Enrollment for new faces via UI + Camera
  • Activation via motion detection
  • Motor control via Serial/BT
  • UI management via Pygame 2 SDK on a 7" Display
  • TTS in Danish via Azure Cognitive Services
  • Simple State Machine to “breathe life” into the robot and its UI

Looking at what Mycroft core provides out of the box, I think I could fairly easily add Speech-To-Text and Wake word detection to that list, if I am able to port it to Mycroft.

Obvious complications here are the fact that:
A) I am looking to do this in Danish (which it appears Lingua Franca does support)
B) I am running this all on a Raspberry Pi 4 (but I can run much of the stack locally for development)

So being very new to Mycroft, I am wondering about a few things:

  1. I have basic Python skills (but am proficient in few other languages) - is there hope for me in the Mycroft community?
  2. Where should I start? Should I create my own Skills that isolate each feature? And if so, how can skills use features from each other? Ie. if the object detection skill triggers an event, how can it manipulate the UI which is managed in another Skill?
  3. I like the thinking behind Dinkum, should I look there for beginnings? Or just inspiration?
  4. I don’t have experience with Qt and hardly any with C++, so the GUI stack in Mycroft seems a bad fit. I also want to avoid installing a window manager on the RPi, which is why I opted for Pygame to begin with. Will this be a problem?

Any other advice you can think of in my endeavour will be much appreciated, thanks.

P.S.: Sorry I do not have code to show as of now, it’s a big hot mess still and not ready for public consumption.


This is certainly within your skillset! Several of your questions (and a summary of the current situation) can be found here:

When you’re finished, I encourage you to join us in the OVOS general chat, where it will be a lot easier to point you in all the right directions.

There are a number of points to address here which I fear result from misconceptions or past failures to communicate, which is quite understandable. We’re slowly hoping to improve this as the change of the guard takes place, but the change of the guard is taking place fairly slowly.

1 Like