Octoprint is wonderful

octoprint.PNG

I mentioned on Sunday that I was a bit worried about the SD card reader on my lovely 3D printer being potentially unreliable. For years (seven actually) I’ve been writing my gcode files onto an SD card and then plugging into the printer for each print. This is probably not a good idea (and hasn’t been one for a while).

Anyhoo, a couple of failed prints on Sunday left me wondering about a better, and less physical, way of connecting the computer and the printer. I could just plug the printer straight into my computer, but I’ve never been keen on doing this. Knowing my luck the Windows 10 update process would steam in and break a print 8 hours in.

So today I took a proper look at Octoprint. Its a server that you attach to your printer. It gives you a lovely web interface that you can use to manage your prints and it also has a plugin for Cura, my favourite slicing tool so I can just open the files in Cura and then send them straight to the printer.

It’s wonderful. The installation is a breeze. There’s a boot image for Raspberry Pi that you just have to copy onto an SD card and you are in business. You don’t even have to attach a keyboard and screen to the Pi you are using a s server because you can do it all over SSL and via the browser.

I’ve done a couple of prints and they’ve worked very well. The next thing I’m going to do is attach a webcam to the server so that I can view print progress remotely.

If you have a 3D printer and a spare Raspberry Pi lying around you should definitely take a look at this.

What is unreliable?

40757963833_0aa552cd5d_z.jpg

Una, my Ultimaker printer has been very busy over the last week. We’re doing a “Build a robot in a day” course and we need 15 sets of printed parts for the robots. Up until today she was printing beautifully, and I made the mistake of thinking “My goodness, the printer is working well”. Bad move. She promptly stopped dead in the middle of a print. Oh well.

It made me thing a bit about what we regard as reliable. The way I see it, as soon as a thing fails once you have to regard it as unreliable. There are not that many “acts of god” that can come out of the blue and stop something from working just one time. What usually happens is that you either face up to the fact that something is broken at the first point of failure, or you spend the next few weeks discovering just how broken it is.

I think I’ve traced the problem to the SD card that I was using, which might be going a bit “soft”. That or the memory card connector in Una. I’m thinking about installing Octoprint and removing the need for SD cards.

And I’m trying really hard not to think how well things are working…..

Slow and Steady Prints the Best

What failure looks like…

What failure looks like…

I’m doing some 3D printing to make cases for air quality sensors. I know that 3D printing is one of the slowest way to make a case and I’m going into Hull Makerspace to play with their laser cutter this week to see if I can make stuff much more quickly, but I happen to have a 3D printer and it seems sensible to use it. However, it has not been plain sailing….

I’m using some new filament, and when you do that you have to learn the right temperatures to work with it and how friendly it is. The new stuff has not been very friendly. Mainly because it didn’t want to stick to the print bed. The print bed is the surface upon which the printed object is laid down by the print head.

When 3D printing the most important stage of the print is putting the very first layer on the print bed. If this doesn’t stick, everything else is going to end up a like a ball of wool (see above). And I couldn’t get the new filament to stick properly. Even after spending ages adjusting the bed level and height, changing temperatures and adding adhesive I’d still get terrible results.

curaprintspeed.PNG

I’ve found that the key to success is to print the first layer very slowly, giving it time to take hold. The snag is that slow printing takes ages. Fortunately the latest versions of printing tools have come to my rescue. The latest version of Cura (the magical tool that I use to convert 3D models into printer commands) lets you set the speed of the first layer print.

There are so many print settings now that the settings process also contains a search function. If you search for “speed” you can find the initial layer print speed settings as shown on the left.

If I use the settings shown I get quite astonishing levels of print adhesion. In fact I can do away with glue completely and print onto smooth glass, which gives a fantastic finish.

I’ve now gone from having a problem getting the print to stick to having a problem getting the printed piece off the printer. But I’m very happy with that.

Creating 3D Printed Text Masks

31445929828_becca11f17_z.jpg

I’ve been refining my light printing technology, based on the “Do it for Josh” light (which is still available by the way). The first version used a printed mask and transparent letter inserts that were stuck inside it. It worked OK but it was a pain to assemble and the letter inserts kept falling out.

So I’ve designed a new version in which the letters and the masks are all printed in one. The clever (I think) bit is that I print the first few layers using transparent filament and then switch to solid during the print. I quite like the effect, and it means that I don’t have to assemble anything.

If you’ve got a 3D printer you might like to experiment with changing filament during the printing process, most printer firmwares have an option to do this and you can get some quite nice effects.

Hot Fingers

44371688024_866b973cd9_z.jpg

I’ve been doing a lot of 3D printing lately. What with josh lights and everything. Today I thought I’d replace the print nozzle on Una, my 3D printer. Turned out that hardest part of the process was finding the replacements that I’d rather sensibly bought a while back. I looked where they should have been and didn’t find them. This triggered a huge hunt all over the house, loft and garage. All to no avail. So in the end I resorted to going tack to where they should have been and used the ancient old trick of looking properly. And of course they were there, tucked in the bottom of the drawer. Idiot me. But, on the bright side I now know where lots of things are that aren’t 3D printer nozzles.

Replacing the nozzle on a 3D printer is made much more exciting that it might be by the way that you have to do it when the print head has been heated to 200 degrees centigrade. Fortunately I’ve done this before, and consequently no longer have any nerves in my fingers so, in no time at all, the old head was off and the new head on. I think the prints look better, which is a good thing.

Making a lightbox

43502448734_f7e1380228_z.jpg

Yesterday I had a bit of a cold. Today I seem to have got all of it. So I feel rubbish; what better time to do something silly. I've decided to make a letter light for number one grandchild. See if you can use your skill and judgement to work out her name from the above picture. 

I found a really nice design on Thingiverse for letter boxes, but I would have had to stick them all together and make a box to put them in and so on and so on. No fun. So I've written a little Python program that runs inside FreeCad to grab the STL designs, convert them into FreeCad shapes, stick them all together, create a backplane for the light box and then a plinth to put them in. I've even added a hole for the power socket and wall mounting holes. 

immylight.PNG

I've discovered that I can just handle a six letter word if I print diagonally on Una my Ultimaker original - still doing a sterling job after six years. The light boxes are 30mm in size and a perfect fit for some waterproof neopixels that I had lying around. 

I'm printing out the bits and fitting them together at the moment. I'm going to make a modification that lets you make a box with multiple lines and then when it's all working well I'll put the code up on GitHub.  

3D Printing "Snap Off" Components

washers.PNG

I'm putting together some Hull Pixelbot kits and one of the components that I need is a set of spacers to separate the circuit boards from the perspex base and top. You can of course buy these, but I'm too mean to do this, and I happen to have a 3D printer that I can play with. 

I wanted to print all the spacers as a single item, so that I don't have to count them into each kit. One way to group a bunch of components together is to print using a "brim". A brim extends around the base of a piece and helps it stick to the printer base. If components are placed close together the brim merges to form a single sheet which holds all the components together. This works well but it can be quite a pain to then peel the brim off the items once they are printed, particularly if the items are small, like the washers above. 

The solution I've come up with is to print a single layer which sticks all the elements together,  followed by another layer on top of that which stiffens the support layer. If you look at the picture above you'll see that the top layer doesn't go all the way up to side of each spacer, there's a tiny gap around each one. This lets you "snap" the spacer out of the base.

One other trick that I'm using with my spacers is to print the first layer of the spacer with a hole which is slightly smaller than the others. This means that the spacer will grip onto a bolt, so that they are a bit easier to fit onto the robot when you are building it. 

Network your 3D Printer with Windows 10 IoT Core. If only.

12904837613_19fef16c9f_z.jpg

I've installed Windows 10 Creator's Edition Fall Update. It's very nice. It has a lot of extra support for 3D printers. And I got all excited when I found out that there's an application for the Windows 10 IoT Core running on Raspberry Pi that lets you install your printer on the network and then print to it straight from Windows 10.

It doesn't work. At least, not for me. I've spent all afternoon creating SD card images, configuring them and then finding out that I always get assigned the same (wrong) printer device and then the driver fails to load. 

Oh well. 

Design Iteration

35027177272_fdb7019f56_z.jpg

One of the nice things about having a 3D printer is that it makes it really easy to iterate designs. I'm working on a new design for the configurable game controller. This version will have a socket for an input device and a bar-graph above each socket. I think I've found a design that sort of works, now to make up a panel. 

Oh, and one 3D printing top tip from Rob. Don't use oil on the sliding components. I thought this was a good plan, adding some "3 in 1" until the print head was moving really freely. What I'd forgotten though is that oil is sticky, and attracts dust. So when I fired up Una to print these prototypes she became very upset and pretty much locked up as all the sticky dust gummed everything up. Fortunately, after a good clean-up she's now working just fine. 

HullPixelbot Fridge Magnets

I've spent a chunk of the weekend printing Hull Pixelbot fridge magnets. I just took the logo and fed it into Cura (the slicing program that I use for Una, my 3D printer) and after a bit of fiddling I managed to get a 3D object that works quite well.

Once printed I just have to rub a black marker pen over the 3D text to make the letters stand out. Although I wasn't as careful as I should have been, which has made them a bit smudged. Perhaps I can print a little mask to put over the text when I ink it.

Anyhoo, the magnets will be going on sale soon in aid of Comic Relief. I'm doing a lecture in rhyme again this year all about robots, accompanied by a bunch of dancing Hull Pixelbots.

Oh, and if you are in the university on Wednesday I'm also doing a Hull Pixelbot seminar thee too.

Hull Pixelbot Version 2.0

I've just released a new set of design files for the HullPixelBot. I've made some improvements and also added holders for the pixel lights (always useful in a pixelbot) and the distance sensor. I was quite proud of the design for the distance sensor holder, until I tried to use it. 

I thought I'd been clever by providing mounting slots for the distance sensors so that the wires could come through the slots for the connections on the back. Turns out this was actually stupid. It turned out to be really hard to make the connections with the hole. 

The new design (which you can see above) has separate holes for the two sensor wires, and they are arranged vertically so you can just connect all the bottom wires together to a common ground (or reference voltage) and then take each of the top wires and connect them to their potential divider resistor and reference voltage (or ground). I'll be doing a detailed post about wiring things up a little later. 

HullPixelBot is going places

I spent a happy chunk of today designing and printing a front sensor assembly for the Hull PixelBot. The new part provides an ultrasonic distance measure and three light sensors. 

This will mean that the robot will be able to find and move towards light sources and also detect obstacles in its path. 

You can find out more about HullPixelBot at the next C4DI hardware meetup on Thursday 18th August. Sign up here (it's free). Anyone can come along and get into building tiny cheap robots. I'll have some more chassis kits to give away. All you need to do is add around 10 pounds worth of parts and you have a wandering pixel bot. 

And if you want to see a bunch of HullPixelBots in action I'm taking a mini-swarm to the Amy Johnson Festival Makerfest in Hull on 27th of August. 

Who knows what they'll be doing by then....

Get Cura 2.1.2

Una, my four year old, hand built, 3D printer, just got a lot better. I've just downloaded the latest Cura slicing program and used it with the default print settings. And Una has produced some of the best looking prints I've seen for ages. Well up to the standard of the Ultimaker 2;s at work. The new Cura defaults are a lower temperature than I normally use, with a cooler heated bed too. But they work really well. There looks to be quite a few changes in the way that the slicer works and the user interface is now very slick.

The only thing I'm missing is a way to tell Cura that the print head on Una is a rather strange shape, and not the default. If I can't do this it means that its hard to print multiple objects on the platform because the fans will crash into parts already printed if I'm not careful. However, it's a small price to pay for such lovely print quality.

The great thing about Cura is that it is free and it works with a huge range of 3D printers. If you haven't got it, you should get it. If you have got it, you should go for the latest version. 

3D Printing at Cottingham WI

I've done talks at Cottingham WI before. Great fun. I was invited back again this year and, rather than talk computes I thought I'd take along the 3D printer and print some cheese.

The printer behaved herself impeccably. I love the way that I can throw my Ultimaker into a blue IKEA bag, take her somewhere and have her just work. Anyhoo, everyone was fascinated. Best question of the evening: "Why is it called a 3D printer?"I really don't know. You can't really call it a printer as it does't print as such. It makes things. I quite like the name "fabricator", but the world seems to have decided its a printer. So that's that. 

Thanks for inviting me and being a great audience folks. And I got to judge the chocolate brownie competition, which entailed sampling every one. Which was lovely.

Printing Green Cheese for 100% Students

I've been giving awards for the best performance in First Year labs and exams. Last week I gave awards to the top five or so exam scores. When it came to the practical work I had a bit of a problem, what with ten students getting 100% in the work - which is awesome by the way folks. 

Anyhoo, it means that Una the 3D printer has been busy for a large chunk of today dropping out perfectly formed pieces of green cheese for next Monday's lecture....

Print with a Brim

Three pigs and a crocodile. (sounds like the name of a musical). 

I'm keeping the 3D printer busy printing tiny 3D animals They are all going to fit into a puzzle design that I found on Thingiverse.  I'm going to use different colours, including a rather nice pink that I've got for the pig. 

One thing I'm doing to massively improve my prints is to print with a brim. This is printed as part of the base of the item you're printing. After the print you trim it off. This is known as a brim trim.

Anyhoo, brims make a big difference to quality. They are printed from the outside in, and give your printer plenty of time to sort itself out before the actual model is printed. They also provide a bigger sticking area, greatly reducing the amount of "curl" that you get on the corners of prints when they lift up from the print bed as they cool. 

I use Cura to do my printing and the Brim is one of the platform adhesion options. The other one is Raft, which I don't use much. You can set the size of the Brim too. 

This is what the Brim looks like in print preview. I suppose I'm using a tiny amount more filament than before, but I'm much, much happier with the prints I'm getting.

Adventures in 3D Printing #4: Pen Holder

I'm quite impressed by my Robot Drawing arm, but the pen mounting could be better. The problem is that the pen is held in place by a single bolt which doesn't stop it from wobbling when the arm changes direction. One of the great things about having a 3D printer is that I can solve these problems by designing and making a better one. You can see the design for mark 1 above. It has a thicker ring which will grip the pen over more of its length. I've got a plan to fit "rings" on the pens so that I can easily swap them in and out without having to worry about alignment.  I'm also going to experiment with tiny magnets to see if I can use them to hold things in place. Such fun.

Adventures in 3D Printing #3: Panic Button

For reasons I can't quite explain, I fancied making a large, red, network-enabled "Panic Button". The idea is that if anything bad happens on the internets the button will flash red and I can then press the button to restore peace and harmony to cyberspace.  Or something. 

I'm going to pop a Photon device in there and then hook it up to If This Then That so that I can get it to signal simple messages. I've designed the box (curved corners and bevelled edges) and printed one out in yellow. I'm going to add some black tape to make it look properly panicky. 

Adventures in 3D Printing #2: Jack

Number one son reckoned I should have a go at printing the screw jack above, so I did. The intriguing thing about this design is that the entire object is printed as one, standing on its edge. There are some fairly prodigious unsupported elements in the design (you can see how the bar at the bottom left of the picture has some bowing at the bottom as it sagged during print) but to my amazement it printed mostly OK.

The only major problem was that I broke the knob off the screw thread in the middle when I was trying to "un-stick" it from the elements around it.  However, the designers have thought of this and provided the design file for just this component so you can re-print it.

The jack does work; you can raise and lower it using the screw. I've not got a use for the jack as such (although it makes a fine support for the robot printing arm when I'm not using that). If you've got a few hours to spare and fancy a challenge I'd advise you to have a go. Great fun and amazing to think that such a complicated device was made as one thing.

Adventures in 3D Printing #1: Tape Dispenser

I don't know what you think Christmas is the season for, but I reckon it is 3D printing. Plenty of time at home to keep an eye on the printer, and maybe even useful things to print. This is a tape dispenser that I thought might be useful for wrapping presents.

It works quite well, as long as you remember that the nut that holds on the roll of tape is screwed on with a left hand thread. If you forget this, as I did, you'll actually destroy your first print by trying really, really hard to "loosen" the nut. I got it to work but then I discovered this little gadget from Sellotape. 

You attach it to the knuckles of your left hand and you can just get tape as you wrap. It worked really well for me (I have slender and artistic hands - of course) although some of the reviews are less complimentary. Worth a look though I reckon.