Jump to content

Experimental Cura build for Raspberry Pi 4 now available


burtoogle

Recommended Posts

Posted (edited) · Experimental Cura build for Raspberry Pi 4 now available

Now available is a Linux AppImage that runs on an armhf system (e.g. a Pi 4). It has received minimal testing but it does appear to work (I sliced a benchy OK!).

 

Obviously, even the amazing Pi 4 is still quite limited compared to most laptops, etc. so don't expect stellar performance but it is surprisingly usable. I think it exceeded my expectation.

 

It is highly recommend that you have 4GB of memory and a CPU fan!

 

Known limitations are that currently the layer view only works in compatibility mode and that the UI QML is slow due to lack of JIT support.

 

If you try it out, please post feedback on this thread or open an issue at https://github.com/smartavionics/Cura/issues.

 

You can find the release at https://www.dropbox.com/sh/s43vqzmi4d2bqe2/AAADdYdSu9iwcKa0Knqgurm4a?dl=0.

 

Remember, all my builds are provided with no warranty whatsoever. That said, I try to fix issues where I can.

Edited by burtoogle
  • Like 3
  • Thanks 2
Link to post
Share on other sites

Posted · Experimental Cura build for Raspberry Pi 4 now available

Here's the system it was built on. Very nice case from thingiverse sliced without top/bottom skins, just gyroid infill. The SSD wasn't actually used during the build as all files were on the SD card.

 

IMG_20190708_155103565.thumb.jpg.e69176b699db4aac0820f04034c86897.jpg

  • Like 1
Link to post
Share on other sites

  • 3 weeks later...
Posted · Experimental Cura build for Raspberry Pi 4 now available

Hi @icare, you're welcome. As far as I am aware, the pi build is fully functional in the sense that it contains all the features (and bugs!) that the x86 version does. However, due to the level of OpenGL supported by the pi being less than 4.1, the layer display falls back to compatibility mode. I can't do anything about that and I don't know if the pi will ever support 4.1. Other than that, performance isn't too bad given the cost of the platform. Have fun!

  • Link to post
    Share on other sites

    Posted · Experimental Cura build for Raspberry Pi 4 now available

    Hi,

    thank you for the answer. In the Buster distribution, there is, in the packages, the version 3.3.1 of Cura.

    When start the application, Cura crashes with the following Crash Report:

    Quote

    A fatal errorhas occurred in Cura. Please send us this Crash Reportto fix the problem
    Please use the "Send report" button to post a bug report automatically our servers

    System information
      Cura version: 3.3.1
      Platform: Linux-4.19.58-v7l+armv7l-with-debian-10.0
      Qt version: 5.11.3
      PyQt version: 5.11.3
      OpenGL:Not yet initialized

    Error traceback
    Traceback (most recent call last):
      File "/usr/lib/python3/dist-packages/cura/Settings/MachineManager.py", line 970, in setSettingForAllExtruders
        for key, extruder in self._global_container_stack.extruders.items():
    AttributeError: 'NoneType' object has no attribute 'extruders'

    Logs
    Thread 0xa14f7460 (most recent call first):
      File "/usr/lib/python3/dist-packages/UM/Backend/Backend.py", line 155 in _storeStderrToLogThread
      File "/usr/lib/python3.7/threading.py", line 865 in run
      File "/usr/lib/python3.7/threading.py", line 917 in _bootstrap_inner
      File "/usr/lib/python3.7/threading.py", line 885 in _bootstrap

    Thread 0xa1cf8460 (most recent call first):
      File "/usr/lib/python3/dist-packages/UM/Backend/Backend.py", line 147 in _storeOutputToLogThread
      File "/usr/lib/python3.7/threading.py", line 865 in run
      File "/usr/lib/python3.7/threading.py", line 917 in _bootstrap_inner
      File "/usr/lib/python3.7/threading.py", line 885 in _bootstrap

    Thread 0xa2cfa460 (most recent call first):
      File "/usr/lib/cura/plugins/RemovableDriveOutputDevice/RemovableDrivePlugin.py", line 61 in _updateThread
      File "/usr/lib/python3.7/threading.py", line 865 in run
      File "/usr/lib/python3.7/threading.py", line 917 in _bootstrap_inner
      File "/usr/lib/python3.7/threading.py", line 885 in _bootstrap

    Thread 0xa34fb460 (most recent call first):
      File "/usr/lib/python3.7/threading.py", line 296 in wait
      File "/usr/lib/python3.7/threading.py", line 427 in acquire
      File "/usr/lib/python3/dist-packages/UM/JobQueue.py", line 86 in _nextJob
      File "/usr/lib/python3/dist-packages/UM/JobQueue.py", line 116 in run
      File "/usr/lib/python3.7/threading.py", line 917 in _bootstrap_inner
      File "/usr/lib/python3.7/threading.py", line 885 in _bootstrap

    Thread 0xa3cfc460 (most recent call first):
      File "/usr/lib/python3.7/threading.py", line 296 in wait
      File "/usr/lib/python3.7/threading.py", line 427 in acquire
      File "/usr/lib/python3/dist-packages/UM/JobQueue.py", line 86 in _nextJob
      File "/usr/lib/python3/dist-packages/UM/JobQueue.py", line 116 in run
      File "/usr/lib/python3.7/threading.py", line 917 in _bootstrap_inner
      File "/usr/lib/python3.7/threading.py", line 885 in _bootstrap

    Thread 0xa44fd460 (most recent call first):
      File "/usr/lib/python3.7/threading.py", line 296 in wait
      File "/usr/lib/python3.7/threading.py", line 427 in acquire
      File "/usr/lib/python3/dist-packages/UM/JobQueue.py", line 86 in _nextJob
      File "/usr/lib/python3/dist-packages/UM/JobQueue.py", line 116 in run
      File "/usr/lib/python3.7/threading.py", line 917 in _bootstrap_inner
      File "/usr/lib/python3.7/threading.py", line 885 in _bootstrap

    Thread 0xa4cfe460 (most recent call first):
      File "/usr/lib/python3.7/threading.py", line 296 in wait
      File "/usr/lib/python3.7/threading.py", line 427 in acquire
      File "/usr/lib/python3/dist-packages/UM/JobQueue.py", line 86 in _nextJob
      File "/usr/lib/python3/dist-packages/UM/JobQueue.py", line 116 in run
      File "/usr/lib/python3.7/threading.py", line 917 in _bootstrap_inner
      File "/usr/lib/python3.7/threading.py", line 885 in _bootstrap

    Thread 0xa54ff460 (most recent call first):
      File "/usr/lib/python3.7/threading.py", line 300 in wait
      File "/usr/lib/python3/dist-packages/zeroconf.py", line 1794 in wait
      File "/usr/lib/python3/dist-packages/zeroconf.py", line 1365 in run
      File "/usr/lib/python3.7/threading.py", line 917 in _bootstrap_inner
      File "/usr/lib/python3.7/threading.py", line 885 in _bootstrap

    Thread 0xa5eff460 (most recent call first):
      File "/usr/lib/python3.7/threading.py", line 300 in wait
      File "/usr/lib/python3/dist-packages/zeroconf.py", line 1794 in wait
      File "/usr/lib/python3/dist-packages/zeroconf.py", line 1219 in run
      File "/usr/lib/python3.7/threading.py", line 917 in _bootstrap_inner
      File "/usr/lib/python3.7/threading.py", line 885 in _bootstrap

    Thread 0xa68ff460 (most recent call first):
      File "/usr/lib/python3/dist-packages/zeroconf.py", line 1140 in run
      File "/usr/lib/python3.7/threading.py", line 917 in _bootstrap_inner
      File "/usr/lib/python3.7/threading.py", line 885 in _bootstrap

    Thread 0xa72ff460 (most recent call first):
      File "/usr/lib/python3.7/threading.py", line 300 in wait
      File "/usr/lib/python3.7/threading.py", line 552 in wait
      File "/usr/lib/cura/plugins/UM3NetworkPrinting/UM3OutputDevicePlugin.py", line 274 in _handleOnServiceChangedRequests
      File "/usr/lib/python3.7/threading.py", line 865 in run
      File "/usr/lib/python3.7/threading.py", line 917 in _bootstrap_inner
      File "/usr/lib/python3.7/threading.py", line 885 in _bootstrap

    Thread 0xa86f7460 (most recent call first):
      File "/usr/lib/cura/plugins/USBPrinting/USBPrinterOutputDeviceManager.py", line 66 in _updateThread
      File "/usr/lib/python3.7/threading.py", line 865 in run
      File "/usr/lib/python3.7/threading.py", line 917 in _bootstrap_inner
      File "/usr/lib/python3.7/threading.py", line 885 in _bootstrap

    Current thread 0xb6f96ad0 (most recent call first):
      File "/usr/lib/python3/dist-packages/cura/CrashHandler.py", line 364 in _logInfoWidget
      File "/usr/lib/python3/dist-packages/cura/CrashHandler.py", line 214 in _createDialog
      File "/usr/lib/python3/dist-packages/cura/CrashHandler.py", line 82 in __init__
      File "/usr/bin/cura", line 101 in exceptHook
      File "/usr/lib/python3/dist-packages/UM/Qt/Bindings/ControllerProxy.py", line 98 in _onActiveStageChanged
      File "/usr/lib/python3/dist-packages/UM/Signal.py", line 315 in __performEmit
      File "/usr/lib/python3/dist-packages/UM/Signal.py", line 212 in emit
      File "/usr/lib/python3/dist-packages/UM/Controller.py", line 162 in setActiveStage
      File "/usr/lib/python3/dist-packages/cura/CuraApplication.py", line 768 in runWithGUI
      File "/usr/lib/python3/dist-packages/cura/CuraApplication.py", line 687 in run
      File "/usr/bin/cura", line 141 in <module>

     

  • Link to post
    Share on other sites

    Posted · Experimental Cura build for Raspberry Pi 4 now available

    I didn't even know that package was available so I have never tried it.

  • Link to post
    Share on other sites

    Posted · Experimental Cura build for Raspberry Pi 4 now available

    Hi,

    12 minutes ago, burtoogle said:

    I didn't even know that package was available so I have never tried it. 

    Fortunately.

    Your version works at least. 😉

  • Link to post
    Share on other sites

    Posted · Experimental Cura build for Raspberry Pi 4 now available

    Hi,

    Do you have an email list to be notified that a new version is available?

  • Link to post
    Share on other sites

    Posted · Experimental Cura build for Raspberry Pi 4 now available
    6 minutes ago, icare said:

    Hi,

    Do you have an email list to be notified that a new version is available?

     

    Sorry, no. You just have to check the dropbox folder every now and again.

     

    I'm about to take a week off but, normally, I am releasing builds whenever there's some upstream activity worth trying or I have fixed a significant bug or created some noteworthy new feature (in other words, releases are totally random!)

  • Link to post
    Share on other sites

    Posted (edited) · Experimental Cura build for Raspberry Pi 4 now available

    Hi,

    For my 3D print station, I mainly use freeCad, Cura and Pronterface. FreeCad does not work under Buster (OpenGL problem).

    I am currently using a fork of Sketch on a RPI3 + B with the following software (micrometer.xyz) :

    • OpenSCAD / Slic3R / Pronterface / Marlin
    • Arduino 1.8.x with ESP8266/ESP32 compilers
    • KiCAD 5
    • FreeCAD 18 (with FEM)
    • LinuxCNC with RT kernel
    • VLC with GPU support
    • Inkscape Laser cutter g-code plug-in
    • inkCut
    • ROS Melodic, voxblox, movit
    • OpenCV 3.4.5 Complete
    • MATE gnome desktop
    • gcode tools for linuxCNC/EMC2 milling and lathe control
    • gqrx, wsjtx 2.0, qsstv, Xastir, OpenCPN, rtl-ais+kalibrate, wxtoimg 2.11.2, direwolf, dump1090, rtlsdr_scanner, CHIRP
    • Blade/Laser cutter/engraver driver compatibility lists

    Even if you do not have the same processors, why not try it.

    At the launch of Cura in a terminal, I have the following message:

    Quote

    pi@neptune:~/Desktop $ ./Cura-mb-master-armhf-20190802.AppImage
    cura: /lib/arm-linux-gnueabihf/libc.so.6: version `GLIBC_2.28' not found (required by cura)
    cura: /lib/arm-linux-gnueabihf/libc.so.6: version `GLIBC_2.25' not found (required by cura)
    pi@neptune:~/Desktop $

     

    Is there a solution or utopia?

    Thanks

    Edited by icare
  • Link to post
    Share on other sites

    Posted · Experimental Cura build for Raspberry Pi 4 now available

    Hi,

    6 minutes ago, burtoogle said:

     

    Sorry, no. You just have to check the dropbox folder every now and again.

     

    I'm about to take a week off but, normally, I am releasing builds whenever there's some upstream activity worth trying or I have fixed a significant bug or created some noteworthy new feature (in other words, releases are totally random!)

    Ok

  • Link to post
    Share on other sites

    Posted · Experimental Cura build for Raspberry Pi 4 now available

    The armhf release is compiled on Buster and that has /lib/arm-linux-gnueabihf/libc-2.28.so. So I can understand it requiring that but I don't know why it also wants libc-2.25.so.

  • Link to post
    Share on other sites

    Posted · Experimental Cura build for Raspberry Pi 4 now available

    Perhaps you could get the libc-2.28.so from Buster, save it in some dir and use LD_LIBRARY_PATH to make the AppImage use that in preference to the system library. No guarantee that it would work, though.

  • Link to post
    Share on other sites

    Posted · Experimental Cura build for Raspberry Pi 4 now available

    Here's that library in case you want to try it.

    libc-2.28.so.zip

  • Link to post
    Share on other sites

    Posted (edited) · Experimental Cura build for Raspberry Pi 4 now available

    Hi,

    Thank you for the library.

    Where can I find the libc-2.25.so library?

    [edit]

    There is not this library in Buster

    Edited by icare
    information
  • Link to post
    Share on other sites

    Posted · Experimental Cura build for Raspberry Pi 4 now available

    Hi,

    I sliced some STL files and the result is perfect. the slicing time is more than correct compared to the 3D printing time. 🙂

    Thank you for the Cura adapting on the RPI4 Buster.

    I am extremely happy for this application.

  • Link to post
    Share on other sites

    Posted · Experimental Cura build for Raspberry Pi 4 now available

    BTW, I just discovered that you can actually use Cura remotely on the Pi from another computer using VNC. The display performance doesn't appear to be noticeably worse than when using it locally. You can also run Cura on the Pi using a remote X display (i.e. ssh -X) but the display is very slow doing that.

    I haven't tried it but I would think that it would be possible to run Cura on a headless Pi using VNC server.

  • Link to post
    Share on other sites

    Posted · Experimental Cura build for Raspberry Pi 4 now available

    Good idea, with an additional VPN server you could build your own Cura Connect and have much more functionality from the start as the official one 🙂 

  • Link to post
    Share on other sites

    Posted · Experimental Cura build for Raspberry Pi 4 now available

    Just wanted to say a big thanks for providing these releases.  Currently running the 8/29 release on a pi4B.

     

  • Link to post
    Share on other sites

    Posted · Experimental Cura build for Raspberry Pi 4 now available

    Hello @ccpetersen, that's great to hear, thanks for letting me know. Once I had sorted out a couple of issues, building that release is no trouble at all as I am already building Linux releases for x86_64. So I will be continuing to create armhf releases.

     

    Functionally, the armhf releases are the same as the x86_64 releases apart from the fact that the layer view is restricted to compatibility mode because of the legacy OpenGL version provided on the Pi. I can't do anything about that. Perhaps in the future, the Pi's OpenGL support will progress and it will be able to show the more advanced layer view.

  • Link to post
    Share on other sites

    Posted · Experimental Cura build for Raspberry Pi 4 now available

    This is a good thing. i have some higher end ARM hardware i want to use, and this could be a great start for that. ( it has more than enough power to do the job )

     

    The Debian package for 3.( something, i forget the point release ) works, but it is old.

  • Link to post
    Share on other sites

    Posted · Experimental Cura build for Raspberry Pi 4 now available

    Hi, tank you I'm using the appimage for armf on y RaspberyPi4 Desktop Kit, already print by usb, clone and edit PLA and ABS materials for mi personal adjustments, also modify the gcode adding auto leveling.  No one problem, warning or error to report.

    Finally I have a Pursa i3 MK2 by HICTOP

    WhatsApp Image 2019-10-24 at 11.17.07 AM.jpeg

    WhatsApp Image 2019-10-24 at 11.17.40 AM.jpeg

  • Link to post
    Share on other sites

    Posted · Experimental Cura build for Raspberry Pi 4 now available

    Hi @pichel30, thanks for the report. That's great!

  • Link to post
    Share on other sites

    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now

    • Our picks

      • UltiMaker Cura 5.7 stable released
        Cura 5.7 is here and it brings a handy new workflow improvement when using Thingiverse and Cura together, as well as additional capabilities for Method series printers, and a powerful way of sharing print settings using new printer-agnostic project files! Read on to find out about all of these improvements and more. 
         
          • Like
        • 18 replies
      • S-Line Firmware 8.3.0 was released Nov. 20th on the "Latest" firmware branch.
        (Sorry, was out of office when this released)

        This update is for...
        All UltiMaker S series  
        New features
         
        Temperature status. During print preparation, the temperatures of the print cores and build plate will be shown on the display. This gives a better indication of the progress and remaining wait time. Save log files in paused state. It is now possible to save the printer's log files to USB if the currently active print job is paused. Previously, the Dump logs to USB option was only enabled if the printer was in idle state. Confirm print removal via Digital Factory. If the printer is connected to the Digital Factory, it is now possible to confirm the removal of a previous print job via the Digital Factory interface. This is useful in situations where the build plate is clear, but the operator forgot to select Confirm removal on the printer’s display. Visit this page for more information about this feature.
          • Like
        • 0 replies
    ×
    ×
    • Create New...