Base Scribe: a simple, reliable, open-source system that helps you capture the meaningful moments of your life. It leverages thermal printing to write a tangible log of your life's story, daily achievements, thoughts, or memories on a continuous roll of paper. It's designed to be a quiet companion that nudges you to live more intentionally.
This project is born from the idea of "bringing receipts" for the life you lead/ towards the life you want to lead. It's about creating a physical artefact of your journey. It is highly hackable, adaptable and scalable to fit your needs and wants.
Affiliate links to grab the components (if you want to use them):
| Component | Amazon US | Amazon UK | AliExpress |
| Microcontroller (USB-C D1 Mini) | https://amzn.to/4h2zQYO | https://amzn.to/4gRFgFe | - |
| Thermal Printer (CSN-A4L) | https://amzn.to/4kr5ksq | - | https://s.click.aliexpress.com/e/_opjoNrw |
| Paper Rolls, BPA free (57.5x30mm) | https://amzn.to/4kpOREP | https://amzn.to/44nqGCg |
Important Note (Thanks to the community for pointed this out!): Do your own due diligence regarding thermal paper types - the thermal paper we handle everyday (e.g. through receipts from the grocery store, restaurants, takeaway, taxis, etc.) will contain BPA. When choosing your rolls for this, you should definitely go for BPA-free paper just to be on the safer side - the links provided are for BPA-free paper. If you can, go a step further and look for “phenol-free” paper. Three types that do not contain BPA or BPS and are competitively priced contain either ascorbic acid (vitamin C), urea-based Pergafast 201, or a technology without developers, Blue4est.
Note2: The components might be slightly different as listings always change silently - always check. If you notice any issues, please ping me to update the readme.
Note3: If you don't have a 3D printer but would like to build this, consider using the PCBWay affiliate link: https://pcbway.com/g/86cN6v (discount to you + some small help for the project).
Note4: Some thermal paper is treated against fading - can last e.g. 35+ years. If you're planning on using Scribe for archival purposes, consider ink fading when picking up the right rolls.
The project uses SoftwareSerial to communicate with the printer, leaving the hardware serial pins free.
| Th Printer Pin | D1 Mini Pin | Power Source | Description |
| TTL RX | D3 | - | D1 Mini Transmit |
| TTL TX | D4 | - | D1 Mini Receive |
| TTL GND | GND | GND | Common Ground |
| Power VH | - | 5V | Pinter VIN |
| Power GND | GND | GND | Printer Ground |
Note: Never power the printer directly from/ through the D1 Mini! You'll burn your microcontroller.
Note2: Only power the D1 Mini via one source (either via USB during firmware flashing, or via the 5V pin during normal operation from the shared power supply)
Note3: You can remove the other wires (e.g. TTL NC/ DTR) - you'll deal with less clutter since these will not be used.
One sketch file, using the IDE of your choice (e.g. the main Arduino IDE works well with the added modules for D1 mini + libraries - that's what I use).
You can grab the latest version from the GitHub repository: https://github.com/UrbanCircles/scribe/tree/main
Please check everything is working before soldering and squeezing everything into the 3D printed shell.
Note: As mentioned above - do not power the printer through the D1 Mini and do not power the D1 mini via both the USB and its pins at the same time.
In each set, there are 2x 3D Printed components:
Printing considerations
Assembly considerations
Message format
The as-is firmware prints messages in the right orientation for the roll of paper to naturally wind downwards, with word wrap. The first line is the header, reminiscent of a calendar - date on black background. The following lines are the message itself.
Scribing through a web browser
Scribing through the API
(If you found this useful and would like to support my work: https://buymeacoffee.com/urbancircles)
In my testing and usage, I found this setup to be extremely reliable (after all, these printers are used in commercial settings). If the device is not printing as expected, this may be because of several reasons, e.g.:
- incorrect wiring/ a short
- paper not inserted correctly
- current on offer is not high enough
Thermal Printer Manual, in case you need to look into things further: https://www.manualslib.com/manual/3035820/Cashino-Csn-A4l.html
I've done my best to document everything accurately - however, there might be mistakes. If you see them, or opportunities to improve, please open an issue.
This is an open-source project given for free, with no warranties or guarantees. It assumes a level of proficiency with electronics, assemblies, engineering, etc. Stay safe. Stay productive. Work with what you have. Make the world a better place.
The author marked this model as their own original creation.