AtCore update 2/18

Changed Merged:

  • Rename Test Gui to atcore-gui
  • More build switches for gui/documents and test
  • Cleaner disconnects from printers
  • Cleaner deployment of devel files
  • Added an extruder control to the axis control
  • Better checks for CONNECTING state.
  • More Readable and easier to expand GCodeCommands.

Things being worked on.

A few users have asked for Sd card support and hopefully the basic version of that will be merged soon. This feature appears to be a more firmware dependent so it may take some time before each of our target firmwares has full support for SD Cards. The other feature that is being worked on is command injection. I have been thinking about adding this for a long time and I finally have a decent set of changes to support this feature in atcore. I can hear some of you out there asking about what exactly I mean by command injection is so I’ll explain. This feature will allow you to place specific commands for atcore into the gcode file. There is no need to worry about the commands breaking your gcode file since they are added in a way that makes them invisible to other hosts. You can trigger temperature changes, speed changes, pauses and more in this way. Using a few injected codes I was able to modify my test code that I print into a print that was made of abs with a tpu core. I didn’t have to touch atcore’s gui other then to resume after the auto initiated pause(s) and I can make prints with multiple colors and materials.

Advertisements

AtCore takes to the pi

The Machine

The Raspberry Pi3 is a small single board computer that costs around $35 (USD). It comes with a network port, wifi , bt , 4 usb ports , gpio pins , camera port , a display out, hdmi, a TRRS for analog A/V out. 1GB of ran and 4 ~1GHz armv8 cores Inside small SOC. Its storage is a microSd card they are a low cost and low power device. The Touchscreen kit is an 800×480 display that hooks to the Gpio for touch and dsi port for video. To hold our hardware is the standard touch screen enclosure that often comes with the screen if you buy it in a kit.

Raspian?

Most of the time it is sufficient to run Raspian the official distro that is made for the raspberry pi. raspian is a fork of debian as much like debian it has some old packages. In order to build AtCore (with the gui) you need at least qt5.8 raspian comes with 5.7. This is not a show stopper but compiling qt does take quite some time and can easily take a week if we were to build it on the rpi itself. Setting up a cross complier will save you a lot of time but even on my fastest machine it will still take some hours to build qt for the pi. I decided it would instead be faster to install a completely unsupported OS on the device. I was going to install install arch linux on the rpi. Arch is a rolling distro that ships with qt 5.10.

Doubly Unsupported

Arch linux on the raspberry pi is what you might call “doubly unsupported” That is that the raspberry pi foundation does not support running arch on the pi. You only get support from the arch community. Arch Linux is not officially supported on platforms other then x86_64 the rpi running on arm.  Worry not for the Arch community has some forks such as archlinux-arm this is what we will be installing. Like most things arch you get some instructions. After getting the os installed its still arch so you only get a cli interface on your first boot and are left to set up the rest of the system.

Post Install

For my system I installed plasma-meta , xf86-video-fbturbo-git and sddm. With those I was able to have a working plasma shell. I also installed dolphin, kate and konsole as well as the few atcore dependencies. I then added my user to the uucp group so I was able to r/w to serial devices and restarted. When all the dependencies are installed you can proceed to build atcore. Since this is arch we can simplify the building part just by using atcore-git from the aur. Im Happy to say it took only minutes and 48 seconds to build atcore-git on the rpi. I then used pacman to install the atcore-git package and it was time to see how our gui was looking on such a small screen.

The Result

At first the contents of the atcore-gui spill off the screen due to the way our docks are tabbed, however since they are docks you can just adjust them to make a quick usable interface. After adjusting the gui AtCore worked exactly the same as it does on other systems. Below you can see a picture and video.

IMG_20180217_110445

Can do better

There is lots of room for improvement. Atcore-gui does not save any settings. You’ll need to move the docks around each time you launch the program. Atcore-gui can not automatically connect to a device on launch. Again for reasons of not saving settings This gui is of course not really made for use on a touch screen and it does seam to work good enough to use. Some non atcore changes on the system itself would be nice. A few services running on the pi would improve this over all. Mjpeg streamer or another method of streaming video from the attached camera on my printers extruder. Uploads are done via stfp that’s not always easy for everyone. The pi does not launch atcore-gui on start up . Small stuff like this could easily be adjusted. I was really just playing around to see how atcore ran on the rpi. I was very happy when this worked well.

AtCore 1.0.0 Release.

Today I would like to announce the release of AtCore 1.0.0. This is the first stable release for AtCore. Since its the first release and we have not written a “real” client for it yet we include our test GUI. If you own a 3D Printer you are encouraged to try AtCore for at least one print job.

GET IT!!

Source Code

Linux

Windows

OsX

Using AtCore Test GUI

Using the AtCore test gui is really easy for Linux you only need to make the AppImage executable then run it, On OsX you run the .app file and for Windows run AtCoreTest.exe. To do anything in the application you must first connect to a printer. Use the connection tab in the top area left area of the window. Select your Device and Baud then click connect. If for some reason your firmware is not able to be autodetected or you wish to speed the connection up you can select your firmware from the drop down list. If you don’t know what firmware you have try using repetier. You can find more information on the Test Gui if you view its User Guide. If you are intrested in hacking on/with AtCore you may want to check the Api Docsumentation.

Known Issues

  • The test gui’s log will show an extra set of I/O for each connect/ disconnect you have done while its running (fixed)
  • If your printer does not restart upon connection with AtCore then AtCore will not send the firmware request correctly. If this affects you just select your firmware plugin from the list, or send the command M115 from the command tab.

Be sure to Report Bugs that you might find.