Checking if all the components fit the 3d model in Autodesk Fusion 360

Hyllerydder — Shelf Cleaner

All our books already have RFID tags (like the ones in the mall, you know?), and we already have a “shelf cleaner” (which can scan those tags and help finding items), but it’s a quite clumsy, heavy and limited in functionalities.

We want something better:

  • small and lightweight, like a handheld device
  • which connects to our WiFi network and decide with real-time data what to do with the books,
  • with special tags attached to shelves, so we can track where the books were last seen.

Let’s have a closer look at what this means.

For the staff

Since the new scanner connects directly to our WiFi network, we can tell right away which books need to be picked up, and why (so yes, we can find the books in the reservation list, or “plukkliste” as we call it here). And since it’s always up-to-date, there will be no more time wasted finding books no longer needed!

We added tags to each bookcase so we know on what shelf books are. And the next time we need to find a book we can go back to where it was seen last, no more treasure-hunting.

We even have plans for how to fix misplaced books, or move them around, or how to find out where they belong… but it’s probably best to keep those details for a follow-up post and keep things short for now.

Maybe you can even come up with some clever ideas or suggestions in the meanwhile, can you?

The breadboard version is used to test the new software and try different modules

For the patrons

Of course, the less time we spend around the dusty shelves in the archives the more time we have to help you, but there are some other effects.

Since the scanners are always up-to-date, we can be a bit more effective at finding the books you asked us for, and update the list as soon as they are found. This means we will be more precise telling you which books are available, and you can pick them up earlier.

And we might be able to use all that information to make maps you can use to find your way around the library. Cool isn’t it?

For other libraries

We are sharing all the details, schematics, source code and experience on github. You can download everything and start building your own scanner and use it in your library. Go ahead and check the following section.

Probably there will be some parts that are not clear or finished… just ask if you need help, OK?

Our assembly line! :-)


Yo dawg! So I heard you’d like to Do-It-Yourself?


The scanner is built using an Arduino compatible microcontroller, and other electronic modules. Then assembled by soldering them together inside a 3D printed case.

  • The main unit is a ESP8266 Feather HUZZAH
  • The RFID module and antenna is Jinmuyu JMY622 (There are not many solution that support ISO 15693 tags, and none can be easily used with arduino devices, this one works great but I had to write a library for it)
  • then it’s just an OLED display, a buzzer or a vibration motor, a LiPo cell and some other components.

On github you can find the 3D files, the arduino sources and everything you need to start building one yourself. Well… it’s a bit of a work in progress, but nevertheless there should be a lot to read for now, and you can still ask us if you need help.

The prototype in action


The server hasn’t been released yet, but it will be soon. It’s a Plack application written in Perl, it exposes a full set of APIs and we are working on a JS front-end for it.

But there is an adapter for the scanner, and also the communication protocol is documented in the same github project, so you can even make your own.

We also have an ad-hoc connector to Koha (our ILS system) and it won’t be hard to plug it in on your system.