Skip to main content

CLI tools to manage BUSY Bar

Project description

BUSY Bar Tools

Command-line (CLI) tools to manage your BUSY Bar device.

  • Easy to install by single command.
  • Work on Linux and MacOS.
  • There are no heavy dependencies.

Available as a Python package on PyPI. Source code available on GitHub.

Installation and Upgrade

brew install pipx           # MacOS (Homebrew)
sudo apt install pipx       # Ubuntu/Debian
pipx ensurepath             # Optional step to ensure pipx binaries are in PATH
# If you haven't install `pipx` before, you will NEED to open a new terminal before continuing.

pipx install busybar-tools

pipx upgrade busybar-tools  # To upgrade to the latest available version if you have it installed already.

Install in editable mode (for development): pip install -e . from the project root directory.

Usage

To use the tools, simply run the busybar command followed by the desired subcommand:

busybar [options] <subcommand>

Available commands and options

  • busybar update [branch or tag or URL]: Update firmware via HTTP API. Default branch is dev.
  • busybar cli: Start interactive CLI terminal session to BUSY Bar.

Options:

  • -d, --device DEVICE BUSY Bar Device IP address (USB LAN or Wi-Fi)
  • -p, --port PORT Device Port
  • -t, --target {20,21,22} Target hardware version

Examples

Update firmware

Subcommands update and update-storage without additional options has the same effect.

  • busybar update - Update to the latest firmware from the dev branch.

  • busybar update 0.5.0 - Update to a specific TAG version (e.g., 0.5.0 release).

  • busybar update factory - Update to firmware from the desired (e.g., factory) branch.

  • busybar -d 10.0.5.20 update porta/remote-control - Update device with a custom address to the desired branch.

  • busybar update https://update.flipperzero.one/builds/busybar-firmware/0.5.0/ - Update using a direct URL to the folder with build artifacts.

  • busybar -d 10.0.5.20 update - Specify a custom device IP address.

  • busybar update-storage - Update via storage.py. This is a more low-level way to update, which allows to update the device even if it's in a broken state.

CLI terminal

  • busybar cli - Start a terminal session to the BUSY Bar device. Press Ctrl+] to exit the session.
  • busybar -d 10.0.5.20 -p 23 cli - Start a terminal session to the BUSY Bar device with a custom IP address and port.

Other operations

  • busybar wait - Wait for the device to be available. This can be useful for scripting.
  • busybar update-storage --save-as-recovery-only factory - Write factory bundle to the recovery partition. This is a DANGEROUS operation, as it can potentially brick the device. Usage is not recommended for regular users.
  • busybar update-recovery - Invoke update from the recovery bundle already located in /bkp/recovery on the device.

Changelog

Upcoming features plan

  • Easy recovery via DFU from any possible broken state
  • Factory reset
  • ...create an issue for any feature requests or bug reports!

0.3.0 - latest

  • Fixed CLI busybar cli: now it properly works with auto-complete and history navigation with arrow keys.
  • Update via storage.py busybar update-storage. There is an DANGEROUS option, allows to rewrite the device recovery bundle by using --save-as-recovery-only key.
  • Invocation of update from /bkp/recovery via busybar update-recovery command.
  • Wait for device available before any operations.

0.2.0 - latest

  • CLI terminal session to device available via busybar cli command
  • Improved file path handling to more reliablely locate update files

0.1.0

  • Initial release (basic functionality for firmware update)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

busybar_tools-0.3.0.tar.gz (57.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

busybar_tools-0.3.0-py3-none-any.whl (48.9 kB view details)

Uploaded Python 3

File details

Details for the file busybar_tools-0.3.0.tar.gz.

File metadata

  • Download URL: busybar_tools-0.3.0.tar.gz
  • Upload date:
  • Size: 57.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for busybar_tools-0.3.0.tar.gz
Algorithm Hash digest
SHA256 1ec69a9bad937b40a30bcd1c3b57a0fb80efdadd5c9519ff96ddfcb968a1e5f3
MD5 05b77b98c8f59541051b15af2ba0d8f6
BLAKE2b-256 c2a1635c97d3def5e324cbc6392313712b13992d18489341e8faf924b9adc780

See more details on using hashes here.

File details

Details for the file busybar_tools-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: busybar_tools-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 48.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for busybar_tools-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 930c4be46a5fc237009f879be3a97c5b3d00ace7317ba681a6093b9ba0668031
MD5 6c7739aef99855d7fbbd3a0d99937c10
BLAKE2b-256 cd9bd07265f057b7c9c22bab1dad385f96fc4dece42dd4f999e455977e1b283b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page