The Embarrassed Book is a shy book that is reluctant to divulge its contents. It will sense when a user opens it via a flex sensor in the spine, and, as the user reads, it will give mild audio cues cluing the user into its discomfort. Eventually, it will get too embarrassed, shriek “Don’t look at me!”, and snap its own cover shut via a motor embedded in the back half of the book. It is important that the book resembles a normal book so that the user will not suspect something upon their first encounter. Ideally, the book will be a self-help book about asserting yourself, getting over shyness, or something of that nature.
I started prototyping by hollowing out the pages of the back half of a book to form an electronics compartment. Cutting by hand with a boxcutter was time-consuming and difficult. Pictures are below:
Normal appearance from the outside…
…secret compartment inside.
The yellow wire (a prototyping substitute for clear fishing line) was attached to the inside cover, and was threaded through the spine of the book into the secret compartment at the book’s end. Unfortunately, when I pulled the wire, the book cover would not close. This is because I needed some upward force to the pull, but because the compartment was by necessity lower than the inside cover, this seemed difficult to achieve. After spending quite awhile trying to think of a different way to close the book, I was unable to come up with one that wouldn’t unduly compromise the book’s normal appearance.
Iterating and Building
After considering my options, I decided to construct a lectern for the book that will house all the electronic components. This is different from my original vision of a self-contained book, but at least this way the book can remain unaltered and have a completely normal appearance. There will be a slot in the lectern through which a tiny arm can come up and push the book cover closed at the appropriate moment. The arm will be powered by a high-torque servomotor. Instead of using a flex sensor in the cover, I will now use a photocell embedded in the lectern to detect if the cover has been opened.
Side view. The base has room for components and speakers.
Top view, before adding the plate with the motor and photocell.
After constructing the base, I had to make the top plate of the lectern. I cut a slit in the top cover of plywood using the chopsaw, and made it fairly wide so that the servo’s plastic mount and arm would fit through it. I also drilled a small hole in which to embed a photocell, but made it smaller than the cell so that it would not sink through. I then lasercut a small pushing arm (about 5″ long) out of acrylic to attach to the servo, and mounted the servo to the underside of the plywood so that the arm could push upwards through the slot.
After everything was in place on the lectern top, it was functional but very ugly – the slit cut roughly, there were a few errant screwholes, and the plywood itself wasn’t in the best shape. To attempt to make it look a little nicer, I bought a large piece of self-adhesive foamboard, lasercut the slit and photocell holes in it, and attached it to the top of the plywood. Unfortunately, to fit in the laser cutter, I had to saw the foamboard in two which created fringing along the edges. In the end, though, it still looked marginally better than the plywood. I finished construction by affixing some leftover plywood strips to the lectern to serve as a book stand. Here’s a picture of it as it was presented in class:
Wiring and Code
The wiring for the book’s circuits was relatively simple, as there weren’t that many different elements in play. Since the servo required its own power supply with higher amperage than the Arduino could handle, I split the breadboard halves into a servo half and a photocell/mp3 trigger half. Here’s the diagram in Fritzing:
The program to control the book used a boolean logic system and timers to keep track of when the book’s cover was opened, when audio cues should play, and when the servo should close the book. The code is on Github and can be seen here.
The biggest issues I had in this project were mainly related to the mp3 trigger. When I had first soldered header pins to it and hooked it up, I noticed that it would not maintain a constant power connection – jostling it even slightly would cause it to turn off. I figured that the header pins I had used must have been loose, so I attempted to desolder them. In the process, I managed to scorch the VCC pin and the trace leading to it.
After that, I had to hook up the trigger to external power, but I could not get it to work properly no matter what I did. I thought it might be a software serial issue, so I checked and rechecked my programming, but it wouldn’t initiate communication even with the simple example provided with the Arduino IDE. I thought that the trigger might be shorting out somewhere due to the damage I gave it, but I tested all the relevant pins with a multimeter and they all appeared to function normally. In the end, after a lot of stress and wasted time, it turned out that the firmware was simply not up to date. Lesson learned – try the simple solutions first!
Other than mp3 trigger troubles, I didn’t really bump into any major problems during construction and testing. I did manage to ruin an Arduino screwshield by following the wrong instructions online, but I’m not going to elaborate on that because it’s embarrassing.
Once I shifted focus from the electronics being entirely self-contained in the book to using a lectern, the project became much more basic – it’s just a photocell, a mounted motor, and an mp3 player, and computer speakers. Nevertheless, I did learn some important skills along the way. Laser cutting in particular was a pleasant surprise – it’s relatively simple to setup and immensely satisfying to execute. Software serial emulation seemed like a confusing concept at the time but ended up also being pretty simple, and it seems like a powerful tool for future projects. And after leaving a wake of destruction, my soldering skills have reached an acceptable level, and I got to use a few new shop tools to boot.
If I expand upon this idea later, it’d be neat to have different books have different personalities and reactions. Although I used a Processing instructional book for prototyping, my intent was to have the embarrassed book be a self-help book about learning to assert yourself. It’d be fun to have some other books around as well – maybe a prudish art book that censors itself once you reach a nude portrait, or an old antique book that suffers from senility. This could be done using RFID tags and a reader.