From 634c37fb2309ef95ad02f3564725f96128c6d3fb Mon Sep 17 00:00:00 2001 From: MX <10697207+xMasterX@users.noreply.github.com> Date: Fri, 21 Apr 2023 13:59:49 +0300 Subject: [PATCH 1/3] Update readme and changelog --- CHANGELOG.md | 22 +++++++++++++++++----- ReadMe.md | 3 +++ 2 files changed, 20 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b592469b8..81dd2a402 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,19 +1,31 @@ ### New changes -* OFW: Various stop mode fixes -> **Fixes all known issues with BLE (Random freezes, menu freeze, BT Remote plugin freeze) and other similar issues** -* OFW: Picopass: Correctly aborts when correct key is found -> Fixes Bug (Picopass app not reading elite keyed cards anymore. #413) +* Note: Due to latest official changes this release was delayed - release was tested by group of users, and some of them reported getting one crash on "furi_check failed", but this can not be reproduced in any way we tried, so, please if you found any issues with BLE (+ Mobile app) that results in crash, create issue with all details how you got it and how many times, and detailed steps on repeating such issue, if you got one crash and can't get it again, collect information how it happened and create issue with as much details as possible -> Thanks! +* SubGHz: New option to use timestamps + protocol name when you saving file, instead of random name - Enable in `Radio Settings -> Time in names = ON` +* SubGHz: Read mode UI improvements (scrolling text, + shows time when signal was received) (by @wosk | PR #429) +* SubGHz: New options to ignore Magellan, Cars(ScherKhan, Kia)(no you can't send that signals) +* SubGHz: Fix keeloq custom buttons bugs * SubGhz: Nero Radio 57bit **experimental** support + encoder improvements and decoder changes -* SubGhz: Fix RAW recording and reading, (bug where raw file plays endlessly) +* SubGhz: Fix RAW recording and reading, (bug where raw file plays endlessly) (Fixes issue #431) +* SubGHz Remote: Add Alutech AT4N Support, fix some issues +* Plugins: BLE Remote -> Keynote with vertical layout (by @Kami-no | PR #428) * Plugins: Improve wifi marauder keyboard (added extra symbols!) (Port uart terminal keyboard into wifi marauder) * Infrared: Update universal remote assets (by @amec0e | PR #421) * Docs: Update build docs (by @PhoenixSheppy | PR #425) -### Previous changes +* OFW: cubewb: updated to v1.16.0 -> **Part 2 of "Various stop mode fixes"** +* OFW: github: testing SDK with ufbt action +* OFW: Raw RFID documentation +* OFW: Introduce stealth mode and auto-selective lock +* OFW: Active RPC session icon -> **Breaking API change, api was changed from 22.x to 23.x** +* OFW: Various stop mode fixes -> **Should fix known issues with BLE (Random freezes, menu freeze, BT Remote plugin freeze) and other similar issues** +* OFW: Picopass: Correctly aborts when correct key is found -> Fixes Bug (Picopass app not reading elite keyed cards anymore. #413) +### Pre-release changes * If you have copied apps into `apps` folder - remove `apps` folder on your microSD before installing this release to avoid issues! * SubGHz: (Bug that I decided to keep as a feature) You can change default button (Ok) for remote by holding custom button and pressing back at same time (same can be used to restore your button if you changed it accidentally) - Be careful, it might be unstable, I will make proper option to change button in next releases * SubGHz: Fixes for custom button bugs in SubGHz Remote app * SubGHz: Add alutech table to enviroment alloc and free * Docs: Fix and update docs - thanks to @lesterrry * Plugins: Bluetooth Remote - implemented YouTube Shorts Remote (may be unstable) -* Plugins: Bluetooth Remote - improvements and fixes for TikTok remote (by @krolchonok | PR #420) +* Plugins: Bluetooth Remote - improvements and fixes for TikTok remote (by @krolchonok | PR #420 and #432) * Plugins: Implement an array for baudrates on GPS UART app (+ add 19200 baud) (by @p0ns | PR #416) * Plugins: Remove UART Echo from releases since it is locked on 115200 baud, and we have **UART Terminal** with ability to set baudrate * Plugins: Update **TOTP (Authenticator)** [(by akopachov)](https://github.com/akopachov/flipper-zero_authenticator) diff --git a/ReadMe.md b/ReadMe.md index ec188293d..fea644f92 100644 --- a/ReadMe.md +++ b/ReadMe.md @@ -54,6 +54,8 @@ Our Discord Community: - Lock device with pin(or regular lock if pin not set) by holding UP button on main screen [(by an4tur0r)](https://github.com/DarkFlippers/unleashed-firmware/pull/107) * Sub-GHz -> Short press OK in frequency analyzer to save detected frequency for usage in Read modes * Sub-GHz -> Long press OK button in Sub-GHz Frequency analyzer to switch to Read menu and automatically use selected frequency +* SubGHz -> New option to use timestamps + protocol name when you saving file, instead of random name - Enable in `Radio Settings -> Time in names = ON` +* SubGHz -> Read mode UI improvements (scrolling text, + shows time when signal was received) (by @wosk) * Sub-GHz -> External CC1101 module support (Hardware SPI used) * SubGHz -> **Hold right in received signal list to delete selected signal** * SubGHz -> **Custom buttons for Keeloq / Alutech AT4N / Nice Flor S / Somfy Telis / Security+ 2.0** - now you can use arrow buttons to send signal with different button code @@ -72,6 +74,7 @@ Thanks to Official team (to their SubGHz Developer, Skorp) for implementing deco Keeloq [Not ALL systems supported for decode or emulation yet!] - [Supported manufacturers list](https://0bin.net/paste/VwR2lNJY#WH9vnPgvcp7w6zVKucFCuNREKAcOij8KsJ6vqLfMn3b) Encoders or sending made by @xMasterX: +- Nero Radio 57bit (experimental) (+ 56bit encoder improvements) - Keeloq: HCS101 - Keeloq: AN-Motors - Keeloq: JCM Tech From 7514bc8b49c3dd90fae35d0f20b2d21ebb89b113 Mon Sep 17 00:00:00 2001 From: MX <10697207+xMasterX@users.noreply.github.com> Date: Fri, 21 Apr 2023 15:55:06 +0300 Subject: [PATCH 2/3] Final updates --- CHANGELOG.md | 1 + .../services/power/power_service/power.c | 16 ++++++++++++---- .../services/power/power_service/power.h | 6 ++++++ .../scenes/desktop_settings_scene_start.c | 6 ++++++ firmware/targets/f7/api_symbols.csv | 1 + 5 files changed, 26 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 81dd2a402..dbc2bdc13 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ * SubGhz: Nero Radio 57bit **experimental** support + encoder improvements and decoder changes * SubGhz: Fix RAW recording and reading, (bug where raw file plays endlessly) (Fixes issue #431) * SubGHz Remote: Add Alutech AT4N Support, fix some issues +* Power GUI: Changing battery style doesnt require reboot (Added API to trigger UI change from different place) (Inspired by @ESurge work) * Plugins: BLE Remote -> Keynote with vertical layout (by @Kami-no | PR #428) * Plugins: Improve wifi marauder keyboard (added extra symbols!) (Port uart terminal keyboard into wifi marauder) * Infrared: Update universal remote assets (by @amec0e | PR #421) diff --git a/applications/services/power/power_service/power.c b/applications/services/power/power_service/power.c index 2d890d2ee..e61776060 100644 --- a/applications/services/power/power_service/power.c +++ b/applications/services/power/power_service/power.c @@ -399,6 +399,18 @@ static void power_check_battery_level_change(Power* power) { } } +void power_trigger_ui_update(Power* power) { + DesktopSettings* settings = malloc(sizeof(DesktopSettings)); + bool is_loaded = DESKTOP_SETTINGS_LOAD(settings); + if(is_loaded) { + power->displayBatteryPercentage = settings->displayBatteryPercentage; + } else { + power->displayBatteryPercentage = DISPLAY_BATTERY_BAR; + } + free(settings); + view_port_update(power->battery_view_port); +} + int32_t power_srv(void* p) { UNUSED(p); @@ -431,10 +443,6 @@ int32_t power_srv(void* p) { // Update battery view port if(need_refresh) { - DesktopSettings* settings = malloc(sizeof(DesktopSettings)); - DESKTOP_SETTINGS_LOAD(settings); - power->displayBatteryPercentage = settings->displayBatteryPercentage; - free(settings); view_port_update(power->battery_view_port); } diff --git a/applications/services/power/power_service/power.h b/applications/services/power/power_service/power.h index c7f5d7e35..d83127c0b 100644 --- a/applications/services/power/power_service/power.h +++ b/applications/services/power/power_service/power.h @@ -94,6 +94,12 @@ bool power_is_battery_healthy(Power* power); */ void power_enable_low_battery_level_notification(Power* power, bool enable); +/** Trigger UI update for changing battery layout + * + * @param power Power instance + */ +void power_trigger_ui_update(Power* power); + #ifdef __cplusplus } #endif diff --git a/applications/settings/desktop_settings/scenes/desktop_settings_scene_start.c b/applications/settings/desktop_settings/scenes/desktop_settings_scene_start.c index 49c2e7422..b28d95d16 100644 --- a/applications/settings/desktop_settings/scenes/desktop_settings_scene_start.c +++ b/applications/settings/desktop_settings/scenes/desktop_settings_scene_start.c @@ -3,6 +3,7 @@ #include "../desktop_settings_app.h" #include "desktop_settings_scene.h" +#include #define SCENE_EVENT_SELECT_FAVORITE_PRIMARY 0 #define SCENE_EVENT_SELECT_FAVORITE_SECONDARY 1 @@ -169,4 +170,9 @@ void desktop_settings_scene_start_on_exit(void* context) { DesktopSettingsApp* app = context; variable_item_list_reset(app->variable_item_list); DESKTOP_SETTINGS_SAVE(&app->settings); + + // Trigger UI update in case we changed battery layout + Power* power = furi_record_open(RECORD_POWER); + power_trigger_ui_update(power); + furi_record_close(RECORD_POWER); } diff --git a/firmware/targets/f7/api_symbols.csv b/firmware/targets/f7/api_symbols.csv index 6bbb94a6a..5bc0106b6 100644 --- a/firmware/targets/f7/api_symbols.csv +++ b/firmware/targets/f7/api_symbols.csv @@ -2173,6 +2173,7 @@ Function,+,power_get_pubsub,FuriPubSub*,Power* Function,+,power_is_battery_healthy,_Bool,Power* Function,+,power_off,void,Power* Function,+,power_reboot,void,PowerBootMode +Function,+,power_trigger_ui_update,void,Power* Function,+,powf,float,"float, float" Function,-,powl,long double,"long double, long double" Function,+,pretty_format_bytes_hex_canonical,void,"FuriString*, size_t, const char*, const uint8_t*, size_t" From cbbdf0f6def49ed1d44f25f2ea9545835e637d9f Mon Sep 17 00:00:00 2001 From: MX <10697207+xMasterX@users.noreply.github.com> Date: Sat, 22 Apr 2023 04:25:05 +0300 Subject: [PATCH 3/3] Update pictures --- documentation/HowToInstall.md | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/documentation/HowToInstall.md b/documentation/HowToInstall.md index 29dcd3f38..2f27ad9cf 100644 --- a/documentation/HowToInstall.md +++ b/documentation/HowToInstall.md @@ -23,7 +23,7 @@ after that on web updater page - press `Connect` button - And wait, if all flashed successfully - you will have all needed assets pre installed - Done -![web_instr](https://user-images.githubusercontent.com/10697207/190942577-9d137e01-468b-4c74-8587-c2a17c3c7534.jpg) +![web](https://user-images.githubusercontent.com/10697207/233754320-1c952aa7-f73f-43a9-adf2-9eaf95e97249.jpg)
@@ -41,7 +41,8 @@ after that on web updater page - press `Connect` button - And if all flashed successfully - you will have all needed assets pre installed - Done -![ios](https://user-images.githubusercontent.com/10697207/192114863-75693972-31fb-4b5f-bcc4-4122abb352c2.jpg) +![ios](https://user-images.githubusercontent.com/10697207/233754364-a8474a48-2628-4be4-bb6e-a1c99fe99912.jpg) +

@@ -74,7 +75,8 @@ after that on web updater page - press `Connect` button - And if all flashed successfully - you will have all needed assets pre installed - Done -![andro_web](https://user-images.githubusercontent.com/10697207/197042413-cfc93f31-8b84-4cdb-967b-276f46224e50.jpg) +![androweb](https://user-images.githubusercontent.com/10697207/233754394-abbbd446-9b16-4a92-9a57-b9b9d0d1b45b.jpg) +

@@ -92,7 +94,8 @@ after that on web updater page - press `Connect` button - And wait, if all flashed successfully - you will have all needed assets pre installed - Done -![qflip](https://user-images.githubusercontent.com/10697207/192114874-4edae5f5-6bff-4674-8e3b-030ceaf17abc.png) +![qflip](https://user-images.githubusercontent.com/10697207/233754408-089f9f3e-9da7-4e40-840c-9b118361538e.jpg) +

@@ -111,7 +114,8 @@ after that on web updater page - press `Connect` button - Update will start, wait for all stages - Done -![manual](https://user-images.githubusercontent.com/10697207/192114890-b9220265-1fe3-4837-8e98-ed267282e11e.png) +![manual](https://user-images.githubusercontent.com/10697207/233754434-0d219490-634c-4dad-ad74-f0ae5f68ccb7.jpg) +