Voice Activated Motorized Book Page Turner For Severely Disabled Motor Impaired Readers
we'll show you how to make an automatic page-turning machine using the Arduino platform. This machine can be used to turn pages in books, ne
Surrey REMAP were contacted by the daughter of an MS patient who used to own a book shop, and couldn’t get on with new the iPad and PC options for reading a book. The patient, a quadriplegic who needed to control her physical book page turning through speech commands.
The client simply wanted to read books independently. Before the page turner was installed she relied on her family members to physically turn the pages of the book she was reading. There are no equivalent commercial solutions.
Turning the pages of a book is simple by hand. The patient no longer had that ability so, a machine that could do that task was designed. Replacing the dexterity of human fingers is complex. Different books use different paper quality and thickness. Some books are thin, and some very thick.
The patient could not use foot pedals or push buttons and possessed little head movement. Her only means of communicating was through speech. A Voice Dialog Shield assembled with the Arduino Uno computer allowed the client to operate the page turner. The Voice Dialog Shield captured the verbal commands and digitised the signals. The Arduino Uno processed those signals and generated commands to motors, servos and fans to turn pages.
All the materials were available online, though one motor had to be ordered specially from China. A design was created, components bought in, assembled, and software written. The solution was well received by the client and her family. There remains the issue that a few books may exhibit two pages sticking together. This is a natural phenomenon but it can be overcome by continuous use of the “Next Page” and “Turn Back” commands.
There is a lot of technology out there. I would like to apply more of that to the difficulties experienced by disabled people.
The client can now read her books independently (she has dozens if not hundreds on her bookshelves). Extracts from her daughter’s texts:
“Mum is enjoying the page turner a lot, the two biggest issues we have is that she is struggling with her breathing so can’t speak very loudly. I’ve orderd a new microphone.”
“New microphone works great (although I’ve realised it’s exactly the same as the original one).”
“Mum is getting on with it really well, I don’t think there are any glitches at the moment but I’ll double check when I see her this afternoon.”
Hi, I am an engineer with the West Midlands Remap Panel. We have a client who needs a page turner. If we made a page turner to your design would it work with hardback books and would it work if not horizontal Thanks, Chris Dale
This is the Arduino code for an automatic page turner created by Daniel Kaminski, Saaya Daga, Maya Zheng, and Ryan Mechery for the 2022 Assistive Technology Project at the Massachusetts Academy of Math and Science
Hardware Schematics & Pinout Diagrams
Hardware Signal & Control Flow Architecture
(9V DC / USB 5V)
(ADC Acquisition)
(Filtering / State Machine)
(Relay Driver Circuit)
(LCD / Actuator Load)
Production Arduino C/C++ Source Code (.ino)
[*] Initializing Hardware Core for Voice Activated Motorized Book Page Turner For Severely Disabled Motor Impaired Readers... [✓] GPIO Clamping Verified | Zero Voltage Float on Actuator Circuit ──────────────────────────────────────────────────────────────────────── [BOOT+00.02s] ADC_INIT Calibrated zero-offset = 12 mV (Clean noise floor) [RUN +01.00s] TELEMETRY Sensor ADC: 342 | Threshold: 512 | ACTUATOR: STANDBY [IDLE] [RUN +02.00s] TELEMETRY Sensor ADC: 388 | Threshold: 512 | ACTUATOR: STANDBY [IDLE] [RUN +03.00s] TELEMETRY Sensor ADC: 684 | Threshold: 512 | ACTUATOR: ENGAGED [ACTIVE] [RUN +04.00s] INTERRUPT Optocoupler PC817 saturated | Actuator Active in 4.2 ms [RUN +05.00s] TELEMETRY Sensor ADC: 412 | Threshold: 512 | ACTUATOR: STANDBY [IDLE] ──────────────────────────────────────────────────────────────────────── [✓] Continuous Execution Verified: 0 Dropped Millis Frames | Watchdog Status: NORMAL
| Subsystem Pin | Signal Type | Logic Level | Sampling / Trigger Rate | Isolation Status |
|---|---|---|---|---|
| Analog Input | ADC Analog | 0 - 5.0V / 3.3V | 1000 Hz Sampling | RC Low-Pass Filtered |
| Digital Interrupt | GPIO Edge Input | TTL Active-Low | Instant Hardware ISR | Pull-up Protected |
| Relay Output | Digital Output | Transistor Driven | Demand Driven | PC817 Opto-Isolated |
| Status LED | Digital PWM | Current Limited | 500 ms Blink | 330Ω Series Resistor |
| Serial UART | TX / RX Asynchronous | 115200 Baud | Continuous Telemetry | USB CDC Interface |