Converting an old Rolodex to an experimental literature reading device with Arduino and a continuous rotating servo.
Things used in this project
Hardware components
Software apps and online services
Arduino IDE
Autodesk Fusion 360
Story
La Machine a lire Roussel was a mechanical device designed in 1954 to read a book named New Impressions of Africa by Raymond Roussel
Why is a machine required to read a book?
Raymond Roussel was a French writer who exerted a profound influence in Surrealists and Oulipo and New Impressions of Africa was a strange 1, 274-line poem with parenthetical asides that run up to five levels deep.
I think any programmer or mathematics enthusiast could relate to this structure.
Following a tradition – compulsion? – of colliding literature and technology (see also Rayuelomatic, Klausner Machine, Nyctograph Machine, etc) I’ve decided to make a New Roussel Reading machine but using a previous book named… Impressions of Africa (“a carnivalesque travelogue that features the passengers of the Lynceus, a vessel shipwrecked by a hurricane in the fictional land of Ponukele on a journey from Marseilles to Buenos Aires”)
I’ve also decided to replace old machine’s mechanical crank by a continuous servo motor driven by Arduino and fired up by a push button connected to a delay routine using intervals related to Raymond Roussel biography.
For example: Roussel died in 1933, so 1933 is used as one of the delays while passing the cards.
Parts used
An old Rolodex – not so easy to find a Rolodex in Argentina, BTW
Arduino Nano
Push Button
DC female connector
3 Amp Power Supply
2 x 3d printed side supports
In Design Template to create fragment cards
AdobeIn Design
Cards layout was designed using Adobe In Design
What's the point of this machine?
Why making anything no one asked, required or paid? How is it better or at least different to read Impressions of Africa by Raymond Roussel using this machine? Is it an excuse? a tribute? an amusement?
For sure it is different as it is different to read on a screen than reading on paper. In this case there is also a random factor, an arbitrary fragmentation, sounds and kinetics involved.
SecondRaymond Roussel Reading Machine
Custom parts and enclosures
Code
Second Roussel Reading Machine
// Roussel Second Reading Machine
// Roni Bandini, Buenos Aires, Aug 2021
// Connections: Servo 1 GND, Servo 2 Vcc, Servo 3, D12
// Button: GND and D11
#include <Servo.h>
Servo myservoBase;
int pinBase=12;
int pinButton=11;
int randNumber=0;
int stopValue=78;
void setup() {
Serial.begin(9600);
Serial.print("Starting");
randomSeed(analogRead(0));
pinMode(pinButton, INPUT_PULLUP);
myservoBase.attach(pinBase);
myservoBase.write(stopValue);
delay(1000);
}
void loop() {
int buttonState = digitalRead(pinButton);
if (buttonState==0){
Serial.print("Button pressed");
randNumber = random(1,6);
Serial.print("Forward");
myservoBase.write(120);
if (randNumber==1){
Serial.print("Died in 1933");
delay(1933);
}
if (randNumber==2){
Serial.print("Published Impressions of Africa in 1910");
delay(1910);
}
if (randNumber==3){
Serial.print("Published Locus Solus in 1914");
delay(1914);
}
if (randNumber==4){
Serial.print("1274 line poem in New Impressions of Africa");
delay(1274);
}
if (randNumber==5){
Serial.print("Born 01 1877");
delay(11877);
}
Serial.print("Turn the other side");
myservoBase.write(40);
delay(660);
Serial.print("Stop");
myservoBase.write(stopValue);
}
delay(250);
}
Arduino code
The article was first published in hackster, August 25, 2021
cr: https://www.hackster.io/roni-bandini/raymond-roussel-reading-machine-6a42d7
author: Roni Bandini