>> IMPORTANT: New version of the Haiku Reader available here Now with microSD support, bamboo backgrounds, Arduino MKR and better enclosure.
In 2014, a government institute named INTI announced the LEA “Lector Electrónico Argentino”, an Argentine eBook Reader that it was supposed to be made with local electronic components. I’ve kindly let them know that all eInk screens at the time were made in China by eInk Corporation so the announcement didn’t make any sense considering feasibility, costs and existing devices. I’ve also told them that the image they were using for the prototype was a Kindle Paperwhite with a photoshoped Argentine cockade. So they did what was honest and fair: recognize the mistake and delete the announcement. I’m just kidding, they blocked me in Twitter and made a zoom in the same image to avoid recognition.
After 7 biblical years - no signs of the Argentine eBook Reader - I’ve got a cheap 2.9 inches eInk screen made by Waveshare Electronics China and I thought, let’s see... what can I do with it?
2.9 inches/3x7cm could be a small screen for short stories and novels but not so small for… Haikus (short and fascinating Japanese poetry form)
After some research I’ve decided to use GxEPD eInk library
I‘ ve made the connections with a small Arduino Pro Micro that I’ve found in a drawer but BMP images didn’t work due to memory restrictions. Then I’ve found one ESP32 Dev Kit and everything worked perfectly.
ESP32 to 2.9 Waveshare eInk connections are: Busy D4, RST D21, DC D22, CS D5, CLK D18, DIN D23.
Then 2 push buttons connected to ESP32 GND and ESP32 D12 and D13.
Finally, a 3.7v battery connected to ESP32 VIN/GND and eInk display VIN/GND
If you want to replace the start image you can just create a new 128x296 pixels image with Photoshop, export as PNG, then use http://javl.github.io/image2cpp/ utility to convert to Arduino Code. Finally just replace myBitmap [] with your own.
The software has the Haikus hardcoded but you can easily add an SD Card Reader and use this code:
#include <SD.h>
File myFile;
void setup()
{
if (!SD.begin(4)) {
Serial.println("SD init error");
return;
}
myFile = SD.open("haikus.txt");
if (myFile) {
while (myFile.available()) {
Serial.write(myFile.read());
}
myFile.close();
} else {
Serial.println("File reading error");
}
}
}
Demo of the Haiku eInk ReaderInterested in other electronic art projects?Arduino art projects ted talk with closed captions available
Web site with Arduino projects -> https://bandini.medium.com/
Instagram -> https://www.instagram.com/ronibandini/
Comments