Carbide Motion on a Raspberry Pi

Yeah… if you do put a soft keyboard into CC, make it totally optional since Windows has this covered already.

That’s excellent news!

My continued experiment yesterday with running this on a Pi 4 (headless) using a very light desktop and then using an iPAD as a pendant via a vncServer was going ok, but not stellar. the SD card crashed at the end of the day, so I’ll need to start over.

I managed to ge the vncClient on the iPad to run with little to no latency but it required a clean rasipos lite install, and the open box desktop. I have little to no experience in building up a custom desktop environment and all of the associated tasks that come along with that like menus and task bars, etc. it took quite a while to figure out and I never did get anything other than the most basic setup. I still need to do some more research in this area.

I also managed to get the application to load at startup and get the vncserver to generate a virtual desktop that I could connect to via the vnc client.

In total, the memory used on the Pi for, samba, open box, vncserver and the OS is about 98 mb leaving the majority of memory for CM and other processes.

@fenrus, I tried your image again yesterday and on my Pi4 it gets to the point in the setup wizard where it checks for updates and then it freezes/locks up the Pi4. This happened on both my dev card that finally died and the new 16GB replacement card. Not really sure why it is doing that.

out of curiosity, I was looking back through your script and think I may clone your GitHub and then try to use it as a base and then try to go the other way. Start with the OS lite (no desktop) and only add the items for my test build. Are you running this on your desktop (windows/Mac) or are you running them on a PI?

1 Like

@fenrus, I just saw in the script header the environment for the scripts, so disregard my question. I must learn to read …

I’m curious to see where you end up “the other way”… if you have a package list at the end (my script dumps one) I’d love to compare it to see what more I could remove and what I should add back

(and if “ground up” proves better I’ll be happy to switch to that as well)

Here’s an update:

https://motion-pi.us-east-1.linodeobjects.com/carbidemotion-523.deb

  • (FIX) Change font size under Raspberry Pi build.
  • (NEW) --fullscreen command line flag to start application fullscreen.
  • (NEW) Added “Exit Full Screen” button.
5 Likes

Does the “Exit Full Screen” button turn into a “Go Full Screen” button to get back to full screen mode?

1 Like

Not right now, that might be an option for the future.

1 Like

the dev pkg dependency due to qt5-default is still in 523 (qt5-default just sets what QT version you develop against so I suspect it’s the wrong thing to depend on for a runtime dependency)

anyway available as image now as well:
http://git.fenrus.org/tmp/rpi-carbidemotion.zip

2 Likes

What package do you recommend?

so as far as I can tell you use => need (pkg name)
libQt5SerialPort.so.5 => libqt5serialport5
libQt5Network.so.5 => libqt5network5
libQt5Widgets.so.5 => libqt5widgets5
libQt5Gamepad.so.5 =>libqt5gamepad5
libQt5Gui.so.5 => libqt5gui5
libQt5Core.so.5 => libqt5core5a

I’ll add a nice dependency report to the image tool so you can use that to automate this

2 Likes

your total dep list seems to be this:

libatomic1
libc6
libdouble-conversion1
libfreetype6
libgcc1
libgles2
libglib2.0-0
libglvnd0
libgraphite2-3
libharfbuzz0b
libicu63
libpcre2-16-0
libpcre3
libpng16-16
libqt5core5a
libqt5gamepad5
libqt5gui5
libqt5network5
libqt5serialport5
libqt5widgets5
libstdc++6
libudev1
raspi-copies-and-fills
zlib1g

but most if not all of these will be pulled in by the Qt dependencies from my shorter list

2 Likes

https://motion-pi.us-east-1.linodeobjects.com/carbidemotion-524.deb

  • (FIX) probe position label for BitZero V1.
  • (NEW) --touch command line flag to add numeric popup for zero and settings fields.
  • (NEW) Different dependencies for Raspberry Pi distribution.
2 Likes

thanks for the deps fix! gets rid of a pile of headers/etc in the image that have no purpose

(image uploading with this in it)

1 Like

I assume it is uploaded now?

yeah that takes usually 10 minutes :wink:

1 Like

btw would you consider making this a full repository so that “apt-get update” updates it etc etc?
if so I can do a script to build that as an example :slight_smile:

1 Like

I’m not sure. At this point we’re trying to keep the build system as minimal as possible but if the Pi platform does become popular for us then we might give a proper repository a shot if it made sense.

Bigger picture, and this will surely be controversial with the more geeky inhabitants of this thread, it’s not clear that anything but very explicit updates, where the user goes looking for them, are a good idea for us. Pushing out updates creates a lot of support calls/emails if anything changes, even just a small UI change.

3 Likes

I do see the support issue when it comes to updating any software. However, wouldn’t going to the command line and typing “apt-get update” be the same as going out and finding the package to download? Do you support the older versions of CM or do you only patch the latest version? If the latest version is the only one that gets patched and supported, shouldn’t people be updating anyway?

makes sense (I have lived the customer support issue more than enough over time)…
there are shades of gray; one can imagine a beta channel repo that;s not on by default, so a user would need to opt-in (e.g. the geeky inhabitants get the option)…

2 Likes

I guess it doesn’t really matter. Though I imagine that the people who decide to use a RPi would already be among the more technically savvy group.