Robot-Platform project for lab

Hey everyone! :wave:

I’m considering using the balena platform for a project I’m working on and would love some advice from the experienced balena and container specialists here. Here’s a quick overview of what I’m aiming to do:

  • The project involves using a Raspberry Pi to control a 3D printing platform via USB connection.
  • The Raspberry Pi will be connected to a 7-inch touchscreen display. I want to display a control panel with buttons for actions like start, stop, and more.
  • The Raspberry Pi will also be connected to a camera to monitor the printing progress. The app should alert the control app if something goes wrong so the platform can stop.
  • In the future, I plan to build a web server (likely on Azure) that allows users to upload new 3D printing job files, which will then be sent to the Raspberry Pi to execute.

My questions are:

  1. Is it possible to build such a setup with balena?
  2. How would you structure the components of this architecture? Would you use separate containers for each feature like the “recorder app” and “platform control app”?
  3. Could you share a possible starter setup to test this?
  4. how would you build the GUI app? as a web app? or with qtpy?

Thanks in advance for your help! :pray:

Hello @ruti first of all, welcome to the balena community!

Your project looks exciting!

BTW did you try octoprint? Here you have an old example GitHub - balena-io-experimental/balena-octoprint: Remotely control your 3d-printer with Octoprint and balena!