Home

Awesome

🐬🧋 Fztea

lint goreleaser Go Report Card Powered by Dolphines

A bubbletea-bubble and TUI to interact with your flipper zero.
The flipper will be automatically detected, if multiple flippers are connected, the first one will be used.

🚀 Installation

# using go directly
$ go install github.com/jon4hz/fztea@latest

# from aur (btw)
$ yay -S fztea-bin

# local pkg manager
## debian / ubuntu
$ dpkg -i fztea-v0.6.2-linux-amd64.deb

## rhel / fedora / suse
$ rpm -i fztea-v0.6.2-linux-amd64.rpm

## alpine
$ apk add --allow-untrusted fztea-v0.6.2-linux-amd64.apk

# homebrew (macOS & linux)
$ brew install jon4hz/homebrew-tap/fztea

# windows
# -> I'm sure you'll figure something out :)

✨ Usage

# trying to autodetect that dolphin
$ fztea

# no flipper found automatically :(
$ fztea -p /dev/ttyACM0

⚡️ SSH

fztea also allows you to start an ssh server, serving the flipper zero ui over a remote connection.
Why? - Why not!

# start the ssh server listening on localhost:2222 (default)
$ fztea server -l 127.0.0.1:2222

# connect to the server (from the same machine)
$ ssh localhost -p 2222

By default, fztea doesn't require any authentication but you can specify an authorized_keys file if you want to.

# use authorized_keys for authentication
$ fztea server -l 127.0.0.1:2222 -k ~/.ssh/authorized_keys

📸 Screenshots

You can take a screenshot of the flipper using ctrl+s at any time. Fztea will store the screenshot in the working directoy, by default in a 1024x512px resolution.
The size of the screenshot can be customized using the --screenshot-resolution flag.

$ fztea --screenshot-resolution=1920x1080

⌨️ Button Mapping

KeyFlipper EventKeypress Type
w, ↑upshort
d, →rightshort
s, ↓downshort
a, ←leftshort
o, enter, spaceokshort
b, back, escbackshort
W, shift + ↑uplong
D, shift + →rightlong
S, shift + ↓downlong
A, shift + ←leftlong
Ooklong
Bbacklong

🌈 Custom colors

You can set custom fore- and background colors using the --bg-color and --fg-color flags.

$ fztea --bg-color="#8A0000" --fg-color="#000000"

Results in:

ColorScreenshot

🎬 Demo

Local

LocalDemo

SSH

https://user-images.githubusercontent.com/26183582/181772189-13d7aeaa-ac26-4701-8104-a71ed218539c.mp4