A Flipper Zero external application that combines a coin flip game with thermal printer functionality using the T7-US thermal printer module.
The T7-US thermal printer in action with the Flipper Zero coin flip game and custom text printing.
- Coin Flip Game: Interactive coin flipping with statistics tracking
- Custom Text Printing: Print any text via on-screen keyboard input
- Thermal Printer Integration: Full ESC/POS command support
- Statistics Tracking: Track your coin flip history and streaks
- Haptic & Sound Feedback: Customizable user experience
- Flipper Zero device
- T7-US Thermal Printer Module (or compatible ESC/POS printer)
- Jumper wires for connection
Connect the T7-US thermal printer module to your Flipper Zero using one of the following methods:
T7-US Pin | Flipper Zero Pin | Description |
---|---|---|
VCC | 3V3 | Power (3.3V) |
GND | GND | Ground |
RX | RX (Pin 13) | Data (Flipper TX → Printer RX) |
TX | TX (Pin 14) | Data (Printer TX → Flipper RX) |
T7-US Pin | Flipper Zero Pin | Description |
---|---|---|
VCC | 3V3 | Power (3.3V) |
GND | GND | Ground |
RX | C0 (Pin 15) | Data (Flipper TX → Printer RX) |
TX | C1 (Pin 16) | Data (Printer TX → Flipper RX) |
Note: The app currently uses Method 1 (RX/TX pins). To use Method 2, you need to modify the code in
printer.c
by commenting/uncommenting the appropriate sections.
- Power off your Flipper Zero before making connections
- Connect the wires according to the pinout table above
- Ensure all connections are secure
- Power on your Flipper Zero
- The printer should initialize when you launch the app
- The T7-US module operates at 9600 baud (configured automatically)
- Uses GPIO C0/C1 (pins 15/16) for UART communication
- Maximum current draw: ~1.5A during printing (Flipper can provide sufficient power)
- Thermal paper width: 58mm standard
# Clone the repository
git clone https://github.com/yourusername/flipper-printer.git
cd flipper-printer
# Build the application
make build
# Build and upload to Flipper
make upload
- Build the
.fap
file using the Makefile - Copy
flipper_printer.fap
to your Flipper's SD card:/ext/apps/Tools/
- Launch from Flipper Zero:
Applications → Tools → Flipper Printer
-
Coin Flip Game
- Press OK to flip the coin
- View statistics (total flips, heads/tails count, streaks)
- Press OK again to print results
- Press BACK to return to menu
-
Print Custom Text
- Use on-screen keyboard to enter text (up to 256 characters)
- Press SAVE to print
- Text is printed with timestamp header
-
Printer Setup Info
- View connection instructions
- Troubleshooting tips
- Hardware requirements
- UP/DOWN: Navigate menu
- OK: Select menu item / Flip coin / Print
- BACK: Return to previous screen / Exit
- Check all wire connections
- Ensure printer has paper loaded
- Verify printer power (LED indicator)
- Try power cycling both devices
- Check baud rate (should be 9600)
- Ensure TX/RX are not swapped
- Verify ground connection
- Check paper alignment
- Ensure paper roll is not too tight
- Clean printer mechanism if needed
- Flipper Zero SDK (via uFBT or FBT)
- Make (for using Makefile)
- Git
make build # Build the application
make upload # Build and upload to Flipper
make clean # Clean build artifacts
make debug # Build debug version
make format # Format source code
make lint # Run linter
- UART Configuration: 9600 baud, 8N1
- Protocol: ESC/POS command set
- Print Features: Bold, text size, alignment, paper cut
- Memory: 2KB stack allocation
- App Category: Tools
This project is licensed under the MIT License - see the LICENSE file for details.
- Flipper Zero community for development resources
- ESC/POS documentation and examples
- Contributors and testers