The camera is the Mintion Beagle camera. It is compatible with Marlin 3D printers, that work on baud rate 115200. There is an official compatibility list, which includes future supported models. My Snapmaker 2.0 A250 printer is supported, but its Luban slicer is not (yet).
Setup
I did not get off to a good start, as I had ordered off an EU supplier, to avoid surprise tax, but forgot that meant I was going to need to supply my own plug adapter. Cue frantic searching.
Then I had a hard time getting the camera set up following the setup instructions. Part of this is my reluctance to keep buying new Android devices. I couldn't get the app to work fully on my not-Android. I went through the updating firmware procedure, which is downloading a copy to root of the SD card, not too hard. But what I really needed was the instructions to connect the camera to wifi without the app! I love products that provide options.
Once I could access the dashboard I found out that while my printer is supported there wasn't a profile for the machine (at the time I was doing this). But creating a custom one is easy, you just need the dimensions of your build-plate;
Through the web interface > Setting > Printer > custom > 230x250x235mm
Screenshot of setting up custom printer profile in Beagle camera web portal
Screenshot by
chebe
Physical connections
If you are looking for prints to physically make using the camera easier they have a bunch of print files available. But I had set my sights on Zack's Gridfinity Beagle camera mount plate. Which led me to the Gridfinity rabbit hole.
The camera mount plate is in three pieces; the 2x2 base, and two pegs to hook into the camera. They are printed separately so they can be easily replaced in case of breakage. I just hot-glued mine into postition.
Top-side of Gridfinity Beagle camera mount plate
Photo by
chebe
Under-side of Gridfinity Beagle camera mount plate
Photo by
chebe
Zack also made a bunch of Gridfinity printer baseplates for a bunch of printers, including mine. The idea is to attach the camera mount plate (or anything Gridfinity) to the printer baseplates and be done. It's a good idea to print with supports, otherwise you get spaghetti.
Three of Zack's baseplates; one with spaghetti, one with supports still attached, and one with supports removed
Photo by
chebe
The Snapmaker baseplate is for the enclosure, rather than the printer itself. Turns out the attachment point is at a 45° angle, which means it's for the outside of the enclosure. I do not need my camera on the outside of the enclosure looking out. Zack provides the source file, but I don't Fusion 360, so I hacked together a flat version with Windows 3D Builder.
Print of a roughly 'designed' flat/0° angle baseplate
Photo by
chebe
But (as you can see) I'd already printed the original baseplates, so I figured I should find a way to put them to use. One thing that I often wanted, when changing between the Snapmaker functions (e.g. swapping out 3D print bed for a laser cut bed) is somewhere to mind all the screws. Hunting for tiny screws every couple of minutes is not my idea of fun. I found the Gridfinity divider bins and printed a 3x1, with one division. To stop dust accumulating between uses I also printed a 3x1 Gridfinity Parametric Lid. These lids don't make allowances for the divider wall in my bin, so I badly hacked out gaps (with a knife) to make it all fit together.
Okay, now I have baseplates for the outside of the enclosure (for the screws bin), and for the inside of the enclosure (for the camera). But how do they all go together?
Zack suggests "M5 hammer nuts for 6mm slots and M5x12mm countersunk screws". But I have original parts left over (I guess from the Emergency Stop Button), and they are M4. The closest hammer nuts I could find in my local suppliers were these T-nuts. They look small, but do the job. 12mm screws are too long, dig into the aluminium, the original parts are M4 x 10mm (at least for the inside frame), so I grabbed these 10mm screws. (Though, because the base plates are designed for countersunk screws I reckon 8mm would work too.)
On the left; the original T-nut for a Snapmaker enclosure. On the right; the T-nuts I ordered. Behind; M4 screw that fits the nuts (I believe its the too-long 12mm)
Photo by
chebe
The small nuts worked straight-forwardly on the inside of the enclosure frame, but there seems to be some kind of knack for getting them to work on the outside/45° frame. I don't know what it is, I just got lucky once, and got help for the second one. It's probably worth looking for the chunkier nuts if this is something you'll want to do a lot.
For the camera mount plate Zack suggests "M3 screws". I don't have a great selection at hand. 12mm are too long, 6mm are too short, and are these supposed to be heat inset? So I went with the magnet suggestion, "6x2mm magnets", the closest I could find being 5x2mm magnets, but they work great!
Attaching the magnets to the bins and printer baseplates (before attaching to the enclosure), with superglue, is just as messy as you'd imagine. I printed out some jigs to help;
- Gridfinity Baseplate Magnet Jig,
- Gridfinity Magnet Glue Up Jig,
and they did help, but I still glued my fingers together more than once. I ended up using masking tape on top of the freshly glued magnets to stop them from flipping all by themselves.
An outside, and inside, printer baseplates with magnets in place, top view
Photo by
chebe
3x1 bin (with lid) with magnets in place, underside view
Photo by
chebe
2x1 bin with magnets in place, underside view
Photo by
chebe
Electrical connections
Know your printer. Snapmaker 2.0 has three USB slots in the controller. The Touchscreen is plugged in to the USB-C slot. The regular USB (USB-A) is purely for usb key drives to transfer g-code files (instead of over the network). That leaves a Mini-USB connector, for serial communication, which can be used for direct connection to a computer. Like our camera.
The camera came with Micro-USB, and USB-B cables, neither of which help here. I had to dig up a Mini-USB cable, long enough to reach from the Controller to where I placed the camera. Cue more frantic searching. (A little forward planning can save a lot of headache here.)
Leave the Touchscreen plugged in, and connect the camera to the Mini-USB slot.
Software connections
The camera is not compatible with the Luban slicer, so I downloaded Cura. Set up a non-networked printer profile, and used all the default settings. Saved file to disk.
Through the camera web interface, > Dashboard > Printable Files List tab, upload the .gcode file, load and print. (Make sure Time-lapse Video is On.)
Trial and Error
Finally time to test it out! Here I'm printing a filament guide to sit on top of one of the gantry towers. (Please ignore the sawdust static clinging to the acrylic of the enclosure. It's really hard to get rid of. But, you can see the camera's reflection!)
Timelapse video of a filament guide print
Video by
I tried out a bunch of different possibilities for camera placement, and realised my restrictions; 1) the camera had to be inside the enclosure (the orange acrylic wouldn't make for nice videos), and 2) as there is not a lot of room inside the A250 enclosure, I would be forced to choose between optimum angles for video or timelapses, and commit to just one.
I continued trying out placements while printing all the Gridfinity pieces above. Including printing some 2x1 Gridfinity Height Adaptive Spacers to be able to elevate the camera.
Three Gridfinity Height Adaptive Spacers stacked under the camera mount plate, with camera attached
Photo by
chebe
By this point I had switched to Grey PolyTerra PLA. This filament comes on cardboard reels, meaning you end up with fewer empty plastic reels. But it's a bit temperamental? I'm not sure, as it turned out I was having other issues at the same time. One upside is that, perhaps because the PLA is so matte, the layer lines are much less visible than usual. It has potential.
So, those issues I just mentioned? The camera would seem to freeze while I was monitoring a print. You know, networks are tricky, the important thing was to make sure it wasn't actually freezing while printing. Bad news, it was. There are blobs of filament wherever the printer stopped moving briefly while under the control of the Beagle. I tried a few combinations out to try and isolate the problem, including various filaments, exporting g-code from various slicers before importing to the Beagle. But no matter what, if the Beagle was controlling the printer the prints had unwanted blobs (and sometimes voids) from stalling. It feels like the Beagle is under-powered for its task. Which means no timelapses. On the plus side, they are actively updating the firmware, so I will check back in from time to time and hopefully will have better results.
Timelapse video of the 2x1 bin print, in which you can spot some of the issues at the end
Video by
In the meantime I am happy to use the Beagle as a camera to monitor in-progress prints. This actually made my decision on where and how to place the camera easier, as I no longer had to choose between videos or timelapses. I printed up enough Spacers to get my Beagle to a place where I was happy with my view of the build-plate. Glued the segments together with PLA Glue Goop, to the 2x1 bin, and added a strip of duck tape to the 'spine' just for extra stability. It's working pretty well so far.
Phew, that was a journey! But I have a few printer upgrades out of all of this.
Filament guide in-situ on one of the gantry towers
Photo by
chebe
3x1 screws bin on the outside of the enclosure (next to the Emergency Stop button)
Photo by
chebe
Beagle camera stacked and mounted inside the enclosure, just behind the Touchscreen
Photo by
chebe
This is the view through the camera as I monitor in-progress prints
Video by