/Xtreme-Flipper-Hack

Primary LanguageCGNU General Public License v3.0GPL-3.0

XFW - Xtreme Firmware for the Flipper Zero

This firmware is an extensive overhaul of the Official Firmware, and also features most of the awesome code-bits from Unleashed.



What makes it special?

We have spent many hours perfecting this code even further, and getting the most out of it.

The goal of this Firmware is to regularly bring out amazing updates based on what the community wants, with an actual understanding of whats going on. Fixing bugs that are regularly talked about, broadening the capabilities of the Flipper with new exciting functionality, and most importantly, ensuring the easiest user experience possible.

  • Feature-rich: We include all commonly found apps in the firmware, as long as they work.

  • Stable: Many hours have been spent rewriting core parts of the Flipper's firmware as well as some of its apps to ensure stability. A task that was long needed on all Firmware, so we tackled it right away.

  • Customizable: Dont like the Animations, want to turn on/off the Home screen icons (battery, SD card etc), change the flippers name or anything like that? You absolutely can. No need to mess with code or deal with weird manifest files. Its all done with an App.



Note, the below mentioned changes are only a few things we did. For a full list check down here



Xtreme Settings:

We wrote a powerful yet easy-to-use application specifically for our Firmware, that gives you easy-access to most of the fancy things we implemented:

  • Interface: Customize every bit of your Flipper, from the desktop animations, to the main menu apps, lockscreen style etc.

  • Protocols: Here you can configure BadKB, manage custom Subghz frequencies, and setup the GPIO pins mappings.

  • Misc: All the other options that don't fit elsewhere. Change your Flipper's name, xp level, and configure the RGB backlight.




Animations / Asset Packs:

Want to try some asset packs? Check here

We created our own improved Animation / Asset system that lets you create and cycle through your own Asset Packs with only a few button presses, allowing you to easily load custom Animations, Icons and Fonts like never before.

You can easily create your own pack, or find some user made ones on our website or on discord. Check here for a tutorial on creating your own. Essentially, each Asset Pack can configure its own Anims, Icons & Fonts.

Once you have some packs, upload them to your Flipper in SD/asset_packs (if you did this right you should see SD/asset_packs/PackName/Anims and/or SD/asset_packs/PackName/Icons).

After installing the packs to Flipper, hit the Arrow UP button on the main menu and go to Xtreme Settings. Here choose which pack you want and tweak the other settings how you prefer, then press back to reboot and enjoy your newly fully customized Flipper!


Bad Keyboard:

BadUSB is a wonderful app, but it lacks bluetooth capabilities. Now some might argue that its useless as you will always need authentication from both sides, but what if I told you that we found a solution to this problem?

Bad-KB allows you to toggle between USB and Bluetooth mode for your attacks. In Bluetooth mode it allows you to spoof the name & MAC of the device to whatever you want. Being a JBL speaker or a wireless razer keyboard is easily doable, allowing you to trick people so you can run your payloads without needing a cable at hand.

Levels:

This Firmware has 30 levels, not just the basic 3 the official one has.

With this new system in place, it allows for some cool stuff like locking animations behind a certain level. This can be done fairly easy: The idle_animations are tied to the level system. Specifically, the Min level variable of your manifest file is used here. Each level you reach, unlocks a new animation. The higher your level, the more animations people can see.



List of changes:

There are too many to name them all, this is a non-comprehensive list of the most notable from a end-user perspective. For a more detailed list, read through the changelogs and commits/code. Also, you can find a feature comparison with other firmwares on our website.

Note that this repo is always updated with the great work from our friends at Unleashed and the latest changes from OFW. Below are mentioned only our changes that we can actually be credited for, so make sure to check their fantastic additions aswell. And a huge thank you to both teams!

[Added]

- Xtreme App (Easy configuration of most features exclusive to Xtreme)
- Asset Packs (Unparalleled theming and customization)
- More UI customization, redesigns and optimizations
- Bad-Keyboard App
- BLE Spam App
- Wardriver App
- File Search across SD Card
- Easy spoofing (Name, Mac, Serial)
- Additional NFC parsers and protocols
- Subdriving (saving GPS coordinates for Sub-GHz)
- Enhanced RGB Backlight modes (Full customization & Rainbow mode)
- File management on device (Cut, Copy, Paste, Show, New Dir, etc.)
- Advanced Security measures (Lock on Boot, reset on false pins, etc.)
- Remember Infrared GPIO and IR Blaster auto-detection + support in apps
[Updated]

- Enhanced WiFi support for easiest setup ever
- Extended keyboard with cursor movevent and symbols
- File Browser with Sorting, More supported File Types
- Advanced and optimized Level System (Read more above)
- Storage backend with instant rename and more optimizations
- Desktop Keybind system for full key and press/hold remapping
- Weather Station, POCSAG, TPMS protocols and more integrated into Sub-GHz
- Expanded Sub-GHz App (Duplicate detection & Ignore, Autosave, History improvements)
- Improved Error Messages (Showing actual root)
[Removed]

- Unused Dummy Mode
- Broken or Superfluous apps


Install:


There are 3 methods to install Xtreme, we recommend you use the Web Updater, but choose whichever one you prefer:


Web Updater (Chrome)
  • Open the latest release page and click on the Web Updater link
  • Make sure qFlipper is closed
  • Click Connect and select your Flipper from the list
  • Click Flash and wait for the update to complete
qFlipper Package (.tgz)
  • Download the qFlipper package (.tgz) from the latest release page
  • Open qFlipper and connect your Flipper
  • Click Install from file
  • Select the .tgz you downloaded and wait for the update to complete
Zipped Archive (.zip)
  • Download the zipped archive (.zip) from the latest release page
  • Extract the archive. This is now your new Firmware folder
  • Open qFlipper, head to SD/update and simply move the firmware folder there
  • On the Flipper, hit the Arrow Down button, this will get you to the file menu. In there simply search for your updates folder
  • Inside that folder, select the Firmware you just moved onto it, and run the file thats simply called Update



Build it yourself:

Warning We will not give basic support for compiling in our server. This is intended for people that already know what they are doing!

To download the needed tools:
$ git clone --recursive --jobs 8 https://github.com/Flipper-XFW/Xtreme-Firmware.git
$ cd Xtreme-Firmware/

To flash directly to the Flipper (Needs to be connected via USB, qFlipper closed)
$ ./fbt flash_usb_full

To compile a TGZ package
$ ./fbt updater_package

To build and launch a single app:
$ ./fbt launch APPSRC=your_appid

Stargazers over time

Stargazers over time


Contributors

Contributors

❤️ Support

If you like what you're seeing, please consider donating to us. We won't ever put this behind a paywall, but we'd still appreciate a few bucks!

  • Patreon: ❤️ Account needed, subscription with perks across my entire org.
  • Wire-transfer: No account needed, one-time
  • Paypal: Account needed, one-time
  • ko-fi: No account needed, one-time
  • Monero: 41kyWeeoVdK4quzQ4M9ikVGs6tCQCLfdx8jLExTNsAu2SF1QAyDqRdjfGM6EL8L9NpXwt89HJeAoGf1aoArk7nDr4AMMV4T

Thanks for all your support <3


"What we do for ourselves dies with us. What we do for others and the world remains and is immortal.” ― Albert Pine