The DoxBox prints captured pictures upon bitcoin lightning payments to its LNbits wallet. You can set it up on any wedding, a conferece, a meetup or a festival. We built it in a modular way so that you can easily travel with it.
Raspberry Pi 4 running the Debian-based operating system available from Raspberry Pi's official software page.
DSLR Camera: Canon EOS 450D with at least 1GB SD-Card. If you use another one ensure compatibility with gphoto2 on the official website
Display: Waveshare 10.4" QLED Quantum Dot Capacitive Display (1600 x 720)
Printer: Xiaomi-Instant-Photo-Printer-1S, supports CUPS printing system, 6" fotopaper
LED: 4-channel RGB LED strip, along with a breadboard, connecting cables, and 4 Mosfets for control.
Construction Material: Three sheets of 80x80cm plywood; access to a laser cutter may be beneficial.
Assembly Hardware: 20 sets of corner magnets (2 pieces per set), 40 screws of 4mm diameter, and 120 nuts of 4mm diameter to secure the components.
spray colour: 1 can of primer, 4 cans of actual colour
Clone the Repository: Start by cloning this repository.
git clone https://github.com/j0sh21/DoxBox.git
Install Dependencies: Ensure Python is installed on your system, install the required Python packages.
pip install -r requirements.txt
Note: Some components may require additional system-level dependencies (e.g., gphoto2, CUPS).
cd DoxBox/install
chmod u+x install.sh
./install.sh
Configure: Review and update config/cfg.ini with your specific settings, such as device names, API keys and file paths.
nano cfg.ini
To run the application, navigate to the project directory and execute main.py:
python3 main.py
For specific functionalities, such as capturing an image or printing, you can run the respective scripts (e.g., python img_capture.py for image capture). Example Usage
Capture an Image Ensure your camera is connected and recognized by your system, then run:
python3 img_capture.py
Print an Image: Update print.py with your printer's name and the image file path, then execute:
python print.py
Contributions to the project are welcome! Please refer to the contribution guidelines for information on how to submit pull requests, report issues, or suggest improvements.
app.py
to use new frame and new GIFs.self.isreplay
to reset GIF loop count only once.switch.py
to the documentation in English, German, and Portuguese.img_capture.py
after the first smile GIF finishes.img_capture.py
.def kill_process()
to ensure proper process termination.os.mkdir
instead of including an empty folder in the repository.check_print_job_status
functionality.This project is licensed under the MIT License - see the LICENSE file for details. Contributions to the project are welcome!
Special thanks to Ben Arc for LNbits and all maintainers of the external libraries and tools also used in this project.
Tip this project if you like the DoxBox