Main changes
- Current API: 78.1
 - SubGHz:
- Frequency analyzer fixes and improvements:
- Enforce int module (like in OFW) usage due to lack of required hardware on external boards (PathIsolate (+rf switch for multiple paths)) and incorrect usage and/or understanding the purpose of frequency analyzer app by users, it should be used only to get frequency of the remote placed around 1-10cm around flipper's left corner
 - Fix possible GSM mobile towers signal interference by limiting upper frequency to 920mhz max
 - Fix buttons logic, fix crash
 
 - Protocol improvements:
- Keeloq: Monarch full support, with add manually option (thanks @ashphx !)
 - Princeton support for second button encoding type (8bit)
 - GangQi fix serial check and remove broken check from UI
 - Hollarm add more button codes (thanks to @mishamyte for captures)
 
 - Misc:
- Add extra settings to disable GPIO pins control used for external modules amplifiers and/or LEDs (in radio settings menu with debug ON)
 
 
 - Frequency analyzer fixes and improvements:
 - NFC:
- Read Ultralight block by block (fix password protected MFUL reading issue) (by @mishamyte | PR #825 #826)
 - Update NDEF parser (SLIX and MFC support) (by @luu176 and @jaylikesbunda and @Willy-JL)
 - OFW PR 3822: MIFARE Classic Key Recovery Improvements (by @noproto) - Detailed Guide how to use new NFC key recovery methods
 - OFW PR 3930: NFC Emulation freeze fix (by @RebornedBrain)
 - OFW: H World Hotel Chain Room Key Parser
 - OFW: Parser for Tianjin Railway Transit
 - New keys in system dict
 
 - Infrared:
 - JS:
- OFW: JS modules & SDK -> Breaking API change
 - Backporting custom features (read about most of the changes after other changes section) (by @xMasterX and @Willy-JL)
 - Add i2c & SPI module (by @jamisonderek)
 
 
- OFW: FuriHal, drivers: rework gauge initialization routine -> Downgrade to older releases may break battery UI percent indicator, upgrade to this or newer version to restore
 - OFW: heap: increased size -> More free RAM!!
 - OFW: New layout for BadUSB (es-LA)
 - OFW: Require PIN on boot
 - Apps: Check out more Apps updates and fixes by following this link
 
Other changes
- SubGHz: Freq analyzer - Fix duplicated frequency lists and use user config for nearest frequency selector too
 - SubGHz: Code cleanup and fix for rare dupicated (Data) field cases
 - OFW: NFC TRT Parser: Additional checks to prevent false positives
 - OFW PR 3992: Loader: Fix BusFault in handling of OOM (by @Willy-JL)
 - OFW PR 3885: NFC: Add API to enforce ISO15693 mode (by @aaronjamt)
 - OFW: NFC: iso14443_4a improvements (by @RebornedBrain)
 - OFW: NFC: Plantain parser improvements (by @assasinfil) & fixes (by @mxcdoam)
 - OFW: NFC: Moscow social card parser (by @assasinfil)
 - OFW: fix: npm deps
 - OFW: 目覚め時計 (Added alarm option and clock settings)
 - OFW: JS: Backport and more additions & fixes
 - OFW: nfc: add Caltrain zones for Clipper
 - OFW: Update unit tests docs
 - OFW: Fix JS memory corruption (in gpio module)
 - OFW: Full-fledged JS SDK + npm packages
 - OFW: FurEventLoop: add support for FuriEventFlag, simplify API
 - OFW: lib: digital_signal: digital_sequence: add furi_hal.h wrapped in ifdefs
 - OFW: Add warning about stealth mode in vibro CLI
 - OFW: Small fixes in the wifi devboard docs
 - OFW: BadUSB - Improve ChromeOS and GNOME demo scripts
 - OFW: Small JS fixes
 - OFW: Canvas: extended icon draw.
 - OFW: Fixes Mouse Clicker Should have a "0" value setting for "as fast as possible"
 - OFW: Wi-Fi Devboard documentation rework
 - OFW: Furi: A Lot of Fixes
 - OFW PR 3933: furi_hal_random: Wait for ready state and no errors before sampling (by @n1kolasM)
 - OFW: nfc/clipper: Update BART station codes
 - OFW: FuriThread: Improve state callbacks
 - OFW: Documentation: update and cleanup
 - OFW: Improve bit_buffer.h docs
 - OFW: Prevent idle priority threads from potentially starving the FreeRTOS idle task
 - OFW: IR universal remote additions
 - OFW: Fix EM4100 T5577 writing block order (was already done in UL)
 - OFW: kerel typo
 - OFW: Folder rename fails
 - OFW: Put errno into TCB
 - OFW: Fix USB-UART bridge exit screen stopping the bridge prematurely
More details on JS changes (js changelog written by @Willy-JL , thanks!): 
- Our custom JS SDK can be found on npm now: https://www.npmjs.com/org/darkflippers
 - Non-exhaustive list of changes to help you fix your scripts:
badusb:setup():mfr_name,prod_name,layout_pathparameters renamed tomfrName,prodName,layoutPath- effort required to update old scripts using badusb: very minimal
 
dialog:- removed, now replaced by 
gui/dialogandgui/file_picker(see below) 
- removed, now replaced by 
 event_loop:- new module, allows timer functionality, callbacks and event-driven programming, used heavily alongside gpio and gui modules
 
gpio:- fully overhauled, now you 
get()pin instances and perform actions on them like.init() - now supports interrupts, callbacks and more cool things
 - effort required to update old scripts using gpio: moderate
 
- fully overhauled, now you 
 gui:- new module, fully overhauled, replaces dialog, keyboard, submenu, textbox modules
 - higher barrier to entry than older modules (requires usage of 
event_loopandgui.viewDispatcher), but much more flexible, powerful and easier to extend - includes all previously available js gui functionality (except 
widget), and also addsgui/loadingandgui/empty_screenviews - currently 
gui/file_pickerworks different than other new view objects, it is a simple.pickFile()synchronous function, but this may change later - effort required to update old scripts using gui: extensive
 
keyboard:- removed, now replaced by 
gui/text_inputandgui/byte_input(see above) 
- removed, now replaced by 
 math:is_equal()renamed toisEqual()
storage:- fully overhauled, now you 
openFile()s and perform actions on them like.read() - now supports many more operations including different open modes, directories and much more
 - effort required to update old scripts using storage: moderate
 
- fully overhauled, now you 
 submenu:- removed, now replaced by 
gui/submenu(see above) 
- removed, now replaced by 
 textbox:- removed, now replace by 
gui/text_box(see above) 
- removed, now replace by 
 widget:- only gui functionality not ported to new gui module, remains unchanged for now but likely to be ported later on
 
- globals:
__filepathand__dirpathrenamed to__filenameand__dirnamelike in nodejsto_string()renamed and moved to number class asn.toString(), now supports optional base parameterto_hex_string()removed, now usen.toString(16)parse_int()renamed toparseInt(), now supports optional base parameterto_upper_case()andto_lower_case()renamed and moved to string class ass.toUpperCase()ands.toLowerCase()- effort required to update old scripts using these: minimal
 
 - Added type definitions (typescript files for type checking in IDE, Flipper does not run typescript)
 - Documentation is incomplete and deprecated, from now on you should refer to type definitions (
applications/system/js_app/types), those will always be correct - Type definitions for extra modules we have that OFW doesn't will come later
 
 
Known NFC post-refactor regressions list:
- Mifare Mini clones reading is broken (original mini working fine) (OFW)
 - NFC CLI was removed with refactoring (OFW) (will be back soon)
 
-> Download qFlipper (official link)
Please support development of the project
| Service | Remark | QR Code | Link/Wallet | 
|---|---|---|---|
| Patreon | https://patreon.com/mmxdev | ||
| Boosty | patreon alternative | https://boosty.to/mmxdev | |
| cloudtips | only RU payments accepted | https://pay.cloudtips.ru/p/7b3e9d65 | |
| YooMoney | only RU payments accepted | https://yoomoney.ru/fundraise/XA49mgQLPA0.221209 | |
| USDT | (TRC20) | TSXcitMSnWXUFqiUfEXrTVpVewXy2cYhrs
 | |
| ETH | (BSC/ERC20-Tokens) | 0xFebF1bBc8229418FF2408C07AF6Afa49152fEc6a
 | |
| BTC | bc1q0np836jk9jwr4dd7p6qv66d04vamtqkxrecck9
 | ||
| SOL | (Solana/Tokens) | DSgwouAEgu8iP5yr7EHHDqMNYWZxAqXWsTEeqCAXGLj8
 | |
| DOGE | D6R6gYgBn5LwTNmPyvAQR6bZ9EtGgFCpvv
 | ||
| LTC | ltc1q3ex4ejkl0xpx3znwrmth4lyuadr5qgv8tmq8z9
 | ||
| BCH | qquxfyzntuqufy2dx0hrfr4sndp0tucvky4sw8qyu3
 | ||
| XMR | (Monero) | 41xUz92suUu1u5Mu4qkrcs52gtfpu9rnZRdBpCJ244KRHf6xXSvVFevdf2cnjS7RAeYr5hn9MsEfxKoFDRSctFjG5fv1Mhn
 | |
| TON | UQCOqcnYkvzOZUV_9bPE_8oTbOrOF03MnF-VcJyjisTZmsxa
 | 
Thanks to our sponsors who supported project in the past and special thanks to sponsors who supports us on regular basis:
@mishamyte, ClaraCrazy, Pathfinder [Count Zero cDc], callmezimbra, Quen0n, MERRON, grvpvl (lvpvrg), art_col, ThurstonWaffles, Moneron, UterGrooll, LUCFER, Northpirate, zloepuzo, T.Rat, Alexey B., ionelife, ...
and all other great people who supported our project and me (xMasterX), thanks to you all!
Recommended update option - Web Updater
What r, e,  , c means? What I need to download if I don't want to use Web updater?
What build I should download and what this name means - flipper-z-f7-update-unlshd-079(r / e / c).tgz ? 
flipper-z = for Flipper Zero device
f7 = Hardware version - same for all flipper zero devices
update = Update package, contains updater, all assets (plugins, IR libs, etc.), and firmware itself
unlshd-079 = Firmware version
| Designation | Base Apps | Extra Apps | ⚠️RGB mode* | 
|---|---|---|---|
 
 | ✅ | ||
c
 | |||
e
 | ✅ | ✅ | |
r
 | ✅ | ✅ | ⚠️ | 
⚠️This is hardware mod, works only on modded flippers! do not install on non modded device!
Firmware Self-update package (update from microSD) - flipper-z-f7-update-unlshd-079.tgz for mobile app / qFlipper / web
Archive of scripts folder (contains scripts for FW/plugins development) - flipper-z-any-scripts-unlshd-079.tgz
SDK files for plugins development and uFBT - flipper-z-f7-sdk-unlshd-079.zip
