Category Archives: Hardware

Libraries, 3D Printer management, and Octoprint

Way back in 2014 I wrote a Library Technology Report  called 3D Printers for Libraries, one of the first long form works that set out to explain 3D printing to librarians. It is licensed under a CC BY-NC license, and 2 years seems like plenty of time for me to avoid linking to a copy here on the blog, so if you’re interested, here’s a PDF copy of it for you.

Since then, the market for 3D printers has exploded, but there have emerged a few new leaders that weren’t as well established when I wrote the LTR. Since that report was released, my favorite printers and the ones that I recommend for libraries are the Lulzbot Mini and Lulzbot Taz 6…they are spectacular FDM printers, capable and easy to use. Even better, they are certified Open Hardware and use Open Source software top to bottom, which means that they are easily repaired and have a myriad of options for printer management, slicing, and control.

One of those options is something that I’ve not seen recommended for libraries, but that I feel like they and others could get a huge amount of mileage from. Octoprint is an open source control program for 3D printers that runs on a variety of hardware (there are install instructions for Windows, OS X, and Linux) but by far the most interesting and useful method for using it is via the OctoPi project that uses a Raspberry Pi as a host for the Octoprint system and all its requirements. You can download pre-built images for a Raspberry Pi, flash an SD card, boot up the Pi, and have a robust and flexible management system for your 3D printer ready to go.
Screen Shot 2016-09-04 at 11.23.48 PMWhat does Octoprint do? For compatible printers (which includes nearly any that use the industry standard gcode instructions to print), Octoprint can control every aspect of the printer, including:

Screen Shot 2016-09-04 at 11.23.36 PM

  • Print queuing
  • Slicing
  • Physical control (movement of printhead, temperature, etc)
  • Gcode previewing, including printhead movement
  • Start, stop, and pause prints
  • Full plugin architecture that allows for everything from cost estimation and filament usage, printer usage statistics, and integration with a variety of messaging apps (get Slack notifications when a print is completed, for example)
  • Native support for video streaming via an attached webcam, including the ability to use the same camera for time lapses of your prints

3D printing MtF Case Wood

The best part? All of the above take place in a web browser. No client software needed, no keeping up with installs of Cura or other printer-specific software. Suddenly you can start a print or monitor your printer from anywhere on your network, or from anywhere in the world if you forward the appropriate port externally. I recently uploaded and started a new print on the printer in my basement while in a different hemisphere…

You can preset the available plastic types and quality settings through printing profiles for slicing of uploaded STL files. For my part, since my primary printer is a Lulzbot Mini, I just downloaded the profiles directly from the manufacturer and uploaded them to Octoprint, and can now upload any STL that I find directly to my printer, from anywhere I am in the world.

Screen Shot 2016-09-04 at 10.49.43 PM

For most libraries, just the ease of statistics and usage tracking would be enough to make Octoprint useful enough to try out.

Screen Shot 2016-09-04 at 10.46.06 PM Screen Shot 2016-09-04 at 10.46.22 PM

But add in the ability to control your printer(s) from any computer, to video stream the printing and watch for errors remotely, to be alerted when a print completes…it’s just a much more robust way of managing your 3D printing. And for the cost of a Raspberry Pi and maybe an hour of setup, you can be up and running.

This isn’t to say that Octoprint solves all 3D printing problems. It’s largest shortcoming in my opinion is its lack of plating tools…if you have an STL, you are stuck with just printing that single STL with Octoprint. If you need to plate several STL files together on a single print plate, you would have to do that in Cura or other program (you could even do it in Tinkercad if you wanted to stay in-browser I suppose) and then either save the collection as an STL or go ahead and slice it to gcode and upload the gcode directly to Octoprint. It is technically possible for a single install and Raspberry Pi to control more than one 3D printer, but it isn’t built in to the system and is something I’d only recommend to technical users. RPi’s aren’t expensive, and having one per printer isn’t the end of the world, but hopefully over time the OctoPi setup will evolve to handle multiple printers natively.

I’ve been using the latest version of Octoprint for months now, and it’s simplified so much of my work with my 3D printer. If you are responsible for running the makerspace or 3d printer service in your library, check out Octoprint. I’m guessing it will make your life easier.

I’m considering putting together a workshop on how to install and use Octoprint with your 3D printer…would anyone be interested in such a training? If so, leave me a comment and let me know, I’ll see if I can find a venue and do it sometime this winter.

Knight Foundation News Challenge Semi-Finalist

I found out this morning that my Knight Foundation News Challenge entry (Make the Things that Measure the Future: Libraries & Open Hardware) was chosen as a semi-finalist! Out of 680 initial proposals there are now 41 proposals left in the “Refinement” stage. We have a week to answer a new series of questions, along with responding to any comments or questions that were generated by our initial proposal.

The Knight questions are:

  • Who are the users of your project, and what have you learned from them so far?
  • What are the obstacles to implementing your idea, and how will you address them?
  • How much do you think your project will cost, and what are the major expenses?
  • How will you spread the word about your project?

I have good answers to all of these, I think, and will spend the next week making absolutely sure that the answers are as clear and precise as I can make them. What I don’t have just yet is a lot of comments to respond to from the public. This is where you, Internet people, come in. What feedback do you have about my proposal that needs comment, or questions that need answered? Please comment on the Knight proposal page, and I will take those comments and questions and use them to hopefully move my proposal forward into the next round!

Code4LibDC Unconference Workshop

Monday and Tuesday of this week I had the opportunity to attend the 2014 Code4LibDC Unconference, where I had been invited to lead an introduction to hardware hacking workshop. Thanks in large part to the generosity of SparkFun Electronics, whose Education arm let me borrow the hardware necessary to run the workshop (15 sets of the Sparkfun Redboard Arduino clone, breadboards, wiring, LEDs, and sensors).

I decided that I wanted to try and reverse the normal order of pretty much every “Learn Arduino” workshop that I’d seen, so rather than start with a blank slate and have the students build a circuit to blink an LED, I decided that I wanted them to start with a working circuit that was a bit more complicated and then deconstruct it. As a result, I spent most of a day late the week before building out a dozen or so circuits that would light a series of 4 LEDs dependent on the value of a potentiometer, and then packing them up and hoping the TSA didn’t find them “interesting”. The idea was that the participants would immediately have a working thing, and then could break it, alter it, change it, and they would have something that was immediately useful rather than struggle to make it work from the outset. Judging from the reactions I got, I think that was a good call…the participants seemed to have a grand time deconstructing why the circuit did what it did. It also provided an example of how something very simple could be useful in a library…you could, with very little change, basically replace the potentiometer with a thermistor and have a temperature gauge, or with a microphone and have a noise indicator for “too loud” rooms.

We weren’t without problems (no hardware session ever is) but overall I felt like it went well, and I can’t wait to work on making this particular workshop even better. I really want to teach more and more librarians how to hack on hardware to benefit their libraries. A few of the participants really had a field day, with one group altering the simple 4 LED series to instead be a 4-bit binary counter, and another working out an algorithm that allowed for soft fades instead of simple on/off of the lights.

If anyone is interested, below you will find my slides from the workshop. They need work before I try to give this again, but I think they are a good start.

SparkFun @ ALA Annual 2014 – Hardware and Coding!

ALA Annual 2014 in Las Vegas is going to be a fantastic conference for a ton of reasons, but at least one of those reasons is that there is a new exhibitor that anyone interested in technology, coding, and general hardware hackery should get to know: SparkFun Electronics.

SparkFun is a company that not only makes awesome hardware and hardware kits, they have an amazing educational wing that works with schools and libraries to teach Maker skills to people across the country. I had the opportunity back in February to visit and learn from Sparkfun along with a handful of other Chattanooga librarians you may have heard of. Their educational materials are top-notch, and they are happy to work with libraries who want to teach Arduino, coding, soft circuits, and a few dozen other projects.

At ALA Annual they will be in the exhibit hall, Booth 1870, and will have a ton of interesting stuff to look at and play with. Sparkfun’s Jeff Branson along with Nate Hill from the Chattanooga Public Library will also be taking part in the LITA Library Code Year Interest Group Technology Speed Dating event on Saturday, June 28, in the Las Vegas Convention Center Room N119. That looks like an incredible lineup of presenters, and will be a great program.

In addition to all of that, they will be hosting a number of short classes in the Networking Uncommons if you want to get a quick 1/2 hour introduction to Arduino, AruBlock, Scratch, or Processing…or if you want to stick around for the whole shebang and have a 2 hour block of technology awesomeness. They will be doing two classes of each:

Saturday, June 28 – Networking Uncommons
3-3:30 Ardublock
3:30-4:00 Arduino
4:00-4:30 Scratch
4:30-5:00 Processing

Monday, June 30 – Networking Uncommons
10-10:30 Ardublock
10:30-11:00 Arduino
11:00-11:30-Scratch
11:30-12:00- Processing

If you have any interest at all in Maker technologies, I recommend showing up for one of these…Jeff from Sparkfun is a great instructor, and I guarantee it’ll be a good time. I hope to see you all there!

IMLS, Maker Faire, and Montana Academic Library Symposium

IMLS_Logo_2cStarting Wednesday, I’m heading out for a couple of really exciting events. The first is an IMLS Stakeholder meeting in San Francisco, CA on May 15th that is dedicated to a discussion of how library spaces are changing. From the press release:

The San Francisco meeting will focus on current trends, challenges and opportunities to consider for framing future investments in this area. The discussion will cover the following:

  • The Shift to Participatory Learning
  • Approaches to Technology and Space
  • Staffing and Mentorship Models
  • Connected Learning
  • Community Engagement: Partnerships and Programming
  • Measuring Success: Evaluation

I’m really excited to be a part of this discussion, and can’t wait to meet everyone involved. The event is going to be livestreamed, and they are looking for lots of community involvement, so please join in. The twitter hashtag is #imlsfocus and if you’d like to tweet me directly at @griffey, I’d be happy to ask questions on your behalf.

makerfaireThe incredibly awesome side-effect of being in San Francisco on Thursday and Friday of this week is that Saturday is Maker Faire Bay Area 2014, the largest Maker Faire in the world. This will be my first time being able to attend the grand-high-holy of maker faires, and I’m completely excited. I will of course have a few LibraryBoxen with me, and will be hanging out with Sparkfun showing it off when I can. Sparkfun is going to be located in the Intel booth, so come by and say hello, or just download some free books from the LibraryBox that will be stationed there.

And to round out the awesome week, I’m going to be heading over to Bozeman, MT for the Montana Academic Library Symposium 2014: Makerspaces, DIY Culture, and the Emergence of the Smart Library Building, where I’ll be delivering a keynote about…Library Spaces! I’ll be talking about how the digital devices that are coming over the next 5-10 years will impact the use of our physical spaces, how we can react to that, and how we can bolster our efforts in appropriately marketing ourselves to stakeholders regarding these issues. I’m really excited to meet the fantastic librarians in Montana, and talk about the future of our spaces.

As always, if you’re going to be at any of these events and want to meet up, drop me an email at griffey at gmail.com, or send me a message on twitter. I’d love to continue any of these conversations, or if you just want a LibraryBox demo, I’ll be happy to do that as well. Let me know!

Make the Tools that Measure the Future

Here are the slides from my presentation from Computers in Libraries 2013 about Open Hardware & Libraries. The overall concept is that in the same way that libraries have benefited from open source software, we should now be examining how open hardware could benefit us. The open platforms of the Arduino and the Raspberry Pi are empowering us to collect data in new and interesting ways, and this could be very, very valuable for libraries. We should start now.