Post Syndicated from Alex Bate original https://www.raspberrypi.org/blog/smart-shelf-home-library/
Are you tired of friends borrowing your books and never returning them? Maybe you’re sure you own 1984 but can’t seem to locate it? Do you find a strange satisfaction in using the supermarket self-checkout simply because of the barcode beep? With the ShelfChecker smart shelf from maker Annelynn described on Instructables, you can be your own librarian and never misplace your books again! Beep!
Harry Potter and the Aesthetically Pleasing Smart Shelf
The ShelfChecker smart shelf
Annelynn built her smart shelf utilising a barcode scanner, LDR light sensors, a Raspberry Pi, plus a few other peripherals and some Python scripts. She has created a fully integrated library checkout system with accompanying NeoPixel location notification for your favourite books.
This build allows you to issue your book-borrowing friends their own IDs and catalogue their usage of your treasured library. On top of that, you’ll be able to use LED NeoPixels to highlight your favourite books, registering their removal and return via light sensor tracking.
Using light sensors for book cataloguing
Once Annelynn had built the shelf, she drilled holes to fit the eight LDRs that would guard her favourite books, and separated them with corner brackets to prevent confusion.
Corner brackets keep the books in place without confusion between their respective light sensors
Due to the limitations of the MCP3008 Adafruit microchip, the smart shelf can only keep track of eight of your favourite books. But this limitation won’t stop you from cataloguing your entire home library; it simply means you get to pick your ultimate favourites that will occupy the prime real estate on your wall.
Obviously, the light sensors sense light. So when you remove or insert a book, light floods or is blocked from that book’s sensor. The sensor sends this information to the Raspberry Pi. In response, an Arduino controls the NeoPixel strip along the ‘favourites’ shelf to indicate the book’s status.
The book you are looking for is temporarily unavailable
Code your own library
While keeping a close eye on your favourite books, the system also allows creation of a complete library catalogue system with the help of a MySQL database. Users of the library can log into the system with a barcode scanner, and take out or return books recorded in the database guided by an LCD screen attached to the Pi.
I won’t go into an extensive how-to on creating MySQL databases here on the blog, because my glamourous assistant Janina has pulled up these MySQL tutorials to help you get started. Annelynn’s Github scripts are also packed with useful comments to keep you on track.
Raspberry Pi and books
We love books and libraries. And considering the growing number of Code Clubs and makespaces into libraries across the world, and the host of book-based Pi builds we’ve come across, the love seems to be mutual.
We’ve seen the Raspberry Pi introduced into the Wordery bookseller warehouse, a Pi-powered page-by-page book scanner by Jonathon Duerig, and these brilliant text-to-speech and page turner projects that use our Pis!
Did I say we love books? In fact we love them so much that members of our team have even written a few.*
If you’ve set up any sort of digital making event in a library, have in some way incorporated Raspberry Pi into your own personal book collection, or even managed to recreate the events of your favourite story using digital making, make sure to let us know in the comments below.
* Shameless plug**
Fancy adding some Pi to your home library? Check out these publications from the Raspberry Pi staff:
A Beginner’s Guide to Coding by Marc Scott
Adventures in Raspberry Pi by Carrie Anne Philbin
Getting Started with Raspberry Pi by Matt Richardson
Raspberry Pi User Guide by Eben Upton
The MagPi Magazine, Essentials Guides and Project Books
Make Your Own Game and Build Your Own Website by CoderDojo
** Shameless Pug
The post Shelfchecker Smart Shelf: build a home library system appeared first on Raspberry Pi.