dumbtv
dumbtv takes the ads, screen tracking and update nags out of your Fire TV over ADB. No root, none of your apps touched, every step can be undone. Free and open source.
Custom Flipper Zero firmware: Flipper-ARF protocols + custom UI. (The web flasher is not working and it has many bugs, will try to fix it in future but for now main focus is firmware itself.)
SecurityC · PythonGitHub @shuka0158OnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Loading the full README. The saved excerpt is shown below.
Custom Flipper Zero firmware by shuka0158, built on top of D4C1-Labs/Flipper-ARF.
Starring this repo will be hige support for me.
[This project is made only for educational purposes!]Read the full README ↗Custom Flipper Zero firmware by shuka0158, built on top of D4C1-Labs/Flipper-ARF.
Starring this repo will be hige support for me.
[This project is made only for educational purposes!]
(I really do not own a car so i cannot test everything on my own, so if you have a vehicle wich is using one of my custom added protocols, i will be thankfull if someone can test them in real life and contact me if testing was succesefull, or debug problem, or if you can send me even small RAW file/capture from keyfob so i can analyze it. That will support this project very much. Thanks). {and/or if you have any ideas how to change/improve this firmware, then DM me.} My Discord: @shuka0158
(I live in UTC+4 Timezone, so please ensure that you are not messeging me at 10PM-9AM. :D )
| Boot splash | Idle animation | Icon grid menu |
|---|---|---|
| 88 protocols (4 added) | VAG decoded signal | New build features |
|---|---|---|
| Signal Idle animation |
|---|
ARF-Shuka-Edition is identical to upstream ARF plus 6 automotive protocols and the X10 home automation protocol that ARF does not have:
| Protocol | Brand coverage | Modulation | Encoding | Frame |
|---|---|---|---|---|
| GM Rolling | Chevrolet, GMC, Buick, Cadillac (2000–2015) | OOK 315 MHz | Manchester | 64-bit, XOR checksum |
| Honda/Acura | Honda Civic, CR-V, Accord (2007+) / Acura TL, MDX, RDX | OOK 433.05 MHz | PWM | 64-bit, CRC-8 0x2F |
| Hyundai New | Hyundai all models (2017+), Genesis all models | OOK 433.05 MHz | PWM | 64-bit, CRC-8 0x31 |
| Nissan | Nissan, Infiniti (2003–2018) | OOK 433.05 MHz | PWM | 64-bit, CRC-8 0x97 |
| Renault | Renault, Dacia — Clio/Megane/Duster (2005–2020) | OOK 433.05 MHz | PCM biphase | 64-bit, XOR checksum |
| Toyota/Lexus | Corolla, Camry, RAV4, Hilux, Land Cruiser, Lexus IS/RX/GS (2003–2020) | OOK 433.05 MHz | PWM | 72-bit, CRC-8 0xEA |
ARF already has a
toyota.ccovering older Corolla Verso (2004–2010) and Tundra (2011) variants. Ourtoyota_lexus.ccovers a different, newer frame format — both coexist in this firmware.Older Hyundai models (pre-2017) are already covered by the KIA V0–V7 variants already in ARF.
X10 (310 MHz AM, decode-only) is also added — the home automation protocol used by X10 switches and dimmers, not present in upstream ARF.
Everything else — all 64 ARF protocols, the automotive scanner, car-key emulator, custom button support, Keeloq extensions, AES/AUT64/TEA crypto — is unchanged from ARF upstream.
Custom branded boot splash is shown on first boot and after firmware updates.
Embedded directly into the firmware update bundle — no SD card copy-paste needed. After flashing, the Flipper shows these on the idle desktop:
Go to Settings → Desktop to configure:
A GitHub Actions bot checks for new ARF releases every 6 hours. When a new build is detected, it automatically rebuilds ARF-Shuka-Edition on top of it and publishes a new release — tagged with the upstream ARF build it is based on.
| Brand | Protocol(s) |
|---|---|
| BMW | CAS4 |
| Chrysler / Dodge / Jeep | Chrysler |
| Fiat / Alfa / Lancia | Fiat Marelli, Fiat SPA |
| Ford / Lincoln | Ford V0, V1, V2, V3 |
| ★ GM / Chevrolet / Buick / Cadillac | GM Rolling |
| ★ Honda / Acura | Honda/Acura (2007+) |
| Hyundai / Kia | KIA V0, V1, V2, V3/V4, V5, V6, V7, ★ Hyundai New (2017+) |
| Land Rover | Land Rover V0 |
| Mazda | Mazda V0, Mazda Siemens |
| Mitsubishi | Mitsubishi V0 |
| ★ Nissan / Infiniti | Nissan |
| Porsche | Porsche Cayenne |
| PSA / Peugeot / Citroën | PSA V1, PSA V2 |
| ★ Renault / Dacia | Renault |
| Subaru | Subaru |
| Suzuki | Suzuki |
| Toyota / Lexus | Toyota (Verso/Tundra), ★ Toyota/Lexus 2003–2020 |
| VAG / VW / Audi / Seat / Skoda | VAG Group |
Alutech AT-4N · Beninca Arc · CAME · CAME Atomo · CAME Twee · Chamberlain · Dickert MAHS · Doitrand · FAAC SLH · Gangqi · Gate TX · Hay21 · Holtek · Holtek HT12X · Hormann · Keyfinder · KingGates Stylo 4K · Linear · Linear Delta 3 · Marantec · Marantec24 · Mastercode · Megacode · Nice Flo · Nice Flor-S · Phoenix V2 · Princeton · Revers RB2 · Roger · Security+ V1 · Security+ V2 · SMC5326 · Somfy Keytis · Somfy Telis · Keeloq (generic)
★ X10 — 310 MHz AM, 32-bit decode (channel + button + on/off/dim/bright)
RAW · BIN RAW
The web flasher downloads the latest build automatically and installs it via USB RPC. No qFlipper, no file downloads, no SD card required. Firefox is not supported (no WebSerial).
DFU Recovery mode is also available in the flasher for bricked Flippers — boot into DFU (hold Left + Back while powering on), download the .dfu from Releases, then use "Install from File".
flipper-z-f7-update-arf-shuka-edition.tgz.tgzDownload flipper-z-f7-full-arf-shuka-edition.dfu instead and install the same way.
Use this if you just want to update the firmware binary without touching your SD card.
| File | What it does |
|---|---|
flipper-z-f7-update-arf-shuka-edition.tgz | Full install — firmware + Infrared, NFC, RFID, GPIO, Bad USB, U2F apps |
flipper-z-f7-full-arf-shuka-edition.dfu | Firmware binary only |
NSFW-Shuka-animations.zip | NSFW idle animations — already included in the full install above; download separately only if you want to copy them to the SD card manually without flashing |
Symptom: Sub-GHz and Settings work, but every other app (NFC, Infrared, RFID, GPIO, Bluetooth, and the rest) shows "App Too Old" or "Missing Imports" and the Flipper freezes on launch (soft-reset with LEFT + BACK to recover).
Cause: this almost always means the firmware didn't fully flash, so the firmware on the device and the apps on the SD card are from different API generations. Sub-GHz and Settings keep working because they're built into the firmware, while every other menu entry is an external .fap plugin loaded from the SD card — and the plugin loader rejects any app whose API major version doesn't match the running firmware. Interrupted flashes, or flashing with a third-party qFlipper fork that crashes mid-write, are the usual culprits.
How to confirm: connect the Flipper over USB, open the CLI, and run device_info (a built-in command, so it works even when external commands report "failed to load external command"). Check firmware_api_major — for a correctly installed build it must match the API this release ships (currently 89). If it's higher, the firmware running on the device is not this build.
Fix: reflash the full firmware with the official qFlipper (not a fork), or the web flasher, and watch the Flipper's own screen show the update progress bar reach 100% before unplugging. If the progress bar never completes, the firmware didn't change.
Every published release is checked in CI (
scripts/check_api_consistency.py) to guarantee the firmware and the bundled apps share the same API major version, so a correct install never hits this.
If your Flipper won't boot, isn't detected by qFlipper or dfu-util, and normal button combos don't work, use this sequence to force the STM32 hardware boot ROM into recovery mode — no tools or case opening required.
Exact sequence:
This forces the STM32 into bootloader recovery via the hardware boot ROM, bypassing any broken firmware or bootloader code entirely.
git clone --depth 1 https://github.com/D4C1-Labs/Flipper-ARF.git
cd Flipper-ARF
git submodule update --init --recursive --depth 1
# Add our 6 protocols
cp /path/to/ARF-Shuka-Edition/new_files/gm_rolling.{c,h} lib/subghz/protocols/
cp /path/to/ARF-Shuka-Edition/new_files/honda_acura.{c,h} lib/subghz/protocols/
cp /path/to/ARF-Shuka-Edition/new_files/hyundai_new.{c,h} lib/subghz/protocols/
cp /path/to/ARF-Shuka-Edition/new_files/nissan.{c,h} lib/subghz/protocols/
cp /path/to/ARF-Shuka-Edition/new_files/renault.{c,h} lib/subghz/protocols/
cp /path/to/ARF-Shuka-Edition/new_files/toyota_lexus.{c,h} lib/subghz/protocols/
# Register them in the protocol list
sed -i 's|#include "toyota.h"|#include "toyota.h"\n#include "gm_rolling.h"\n#include "honda_acura.h"\n#include "hyundai_new.h"\n#include "nissan.h"\n#include "renault.h"\n#include "toyota_lexus.h"|' lib/subghz/protocols/protocol_items.h
sed -i '/subghz_protocol_toyota,$/a\ \&subghz_protocol_toyota_lexus,\n \&subghz_protocol_gm_rolling,\n \&subghz_protocol_honda_acura,\n \&subghz_protocol_hyundai_new,\n \&subghz_protocol_nissan,\n \&subghz_protocol_renault,' lib/subghz/protocols/protocol_items.c
./fbt COMPACT=1 DEBUG=0 DIST_SUFFIX="arf-shuka-edition" updater_package
CI does this automatically on every push — see .github/workflows/build.yml.
The STM32WB55 C2 (Bluetooth coprocessor) flash boundary is not a round number — it's the load address baked into whatever radio stack binary is currently bundled (visible in a build log as Using guessed radio address 0x...). For the radio stack this project currently pins, that's 0x080CE000, i.e. 824 KB from flash base, with zero margin required (fbt's own check accepts a gap of exactly 0 pages, but leaving a few KB of headroom is safer in case the pinned radio stack ever changes).
This project is provided solely for educational, research, and interoperability purposes.
ARF-Shuka-Edition is an independently maintained firmware build for studying and experimenting with automotive and embedded systems. It supports academic research, security experimentation, and exploration of vehicle technologies in a responsible and ethical manner.
This project builds upon D4C1-Labs/Flipper-ARF and flipperdevices/flipperzero-firmware, following their respective licenses. All included code remains under its original license terms.
The maintainers and contributors of this project do not support, promote, or enable any illegal activity, including unauthorized access to devices, vehicles, systems, infrastructure, or other property.
By accessing, using, modifying, compiling, or distributing this software, you agree that:
The authors, maintainers, and contributors bear no responsibility or liability for any misuse, damages, legal consequences, or violations resulting from the use, modification, or distribution of this code.
THIS SOFTWARE IS PROVIDED "AS IS," WITHOUT ANY WARRANTIES OF ANY KIND. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE FOR ANY CLAIM, DAMAGES, OR OTHER LIABILITY ARISING FROM THE USE OF THIS SOFTWARE. ALL RISKS REMAIN WITH THE USER.
GPL-3.0 — inherited from D4C1-Labs/Flipper-ARF and flipperdevices/flipperzero-firmware.
Huge thanks to D4C1-Labs for creating such interesting project ("Flipper-ARF")