I actually started this project about six moths ago, but my first prototype was a brutal failure. I finally recreated my design last week and ordered parts, and I got everything working yesterday.
The old design was not nearly as good anyway, so I am sorta glad that it didn't work. :D
Here is my current design (no case yet), on my laptop:
I think it looks bigger than it is. I am really surprised about how small I made this thing.
Alright, now down to electronics; What's in this thing?
There are basically three parts: an ESP32, a battery, and a touchscreen. I can also add an SD card when I want to. As you can see, I *cleverly* held it together with tape. NOT recommended, because the Adafruit Feather board there pushes and dents the flex cable beneath it. This is my biggest reason for wanting to make a 3D printed case: I don't want to break the touchscreen.
There are two main issues with the current design: Communication with the display is really slow, and the touchscreen coordinates are off in a nonlinear way. In a new design I want to add a microcontroller just to control the LCD, using the 8-bit bus instead of SPI. This would also save pins on the Feather board, which has less pins than many ESP32 boards. I chose the Feather because the size is perfect, which for this project is very important.
Alright, enough technical stuff, I actually have a story. I took it to school all this week, but today was the first day it was fully working. I would pull it out and play with it for a moment from time to time, which makes people ask questions. This girl in my class asked about it, so I gave a brief explanation and gave it to her. It had Adafruit's paint program running. She played with it for almost half the two hour class, which surprised me because this is not a student who gets distracted often, and is highly intelligent. It made me thrilled that someone took such an interest in my work, so I took a picture of her holding it with her drawing:
I guess it says something when a person other than nerdy me takes an interest :)