Skip to content

Commit

Permalink
Merge branch 'dev' into release
Browse files Browse the repository at this point in the history
  • Loading branch information
xMasterX committed Jul 25, 2023
2 parents 3a676f7 + 99b203e commit b579bca
Show file tree
Hide file tree
Showing 67 changed files with 1,201 additions and 900 deletions.
16 changes: 6 additions & 10 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,10 @@
## New changes
* SubGHz: OFW PR: change the operation of the TIM17 timer in CC1101_ext to 2µs -> **CAME Atomo and other protocols issues with external module should be fixed now**
* SubGHz: Temporatily revert new AM_Q in default modulations due to external CC1101 module issues
* Plugins: NRF24 MouseJacker -> Fixed issue #551 - Wrong folder path
* Plugins: Spectrum Analyzer -> Add a Precise mode and other small changes (by @ALEEF02 | PR #550 #553)
* Plugins: Updated Lightmeter [(by oleksiikutuzov)](https://github.com/oleksiikutuzov/flipperzero-lightmeter)
* Plugins: Various uFBT fixes (by @hedger)
* Infrared: Universal remote assets - Add Xiaomi TV and (Daikin AC from OFW PR 2913 by minchogaydarov)
* OFW PR 2912: NFC: Fix key invalidation (again) (by AloneLiberty)
* OFW PR 2907: Fix about screen (by andzhr)
* OFW PR 2896: BadUSB - Added French Canadian layout (by francis2054)
* Plugins: **22+ plugins was fixed (UI update issues) in extra pack and in base firmware pack**
* Plugins: Spectrum Analyzer - Modulation switching (hold OK) (by @ALEEF02 | PR #557)
* Plugins: BadBT -> Temp fix for macOS
* Plugins: Update TOTP (Authenticator) [(by akopachov)](https://github.com/akopachov/flipper-zero_authenticator) -> + added fix for UI update too
* Infrared: Add Play / Pause in universal projector remote
* Infrared: Update Universal remote assets (by @amec0e)

----

Expand Down
10 changes: 5 additions & 5 deletions applications/external/bad_bt/helpers/ducky_script.c
Original file line number Diff line number Diff line change
Expand Up @@ -27,11 +27,11 @@ const uint8_t BAD_BT_EMPTY_MAC_ADDRESS[BAD_BT_MAC_ADDRESS_LEN] =
* Delays for waiting between HID key press and key release
*/
const uint8_t bt_hid_delays[LevelRssiNum] = {
30, // LevelRssi122_100
25, // LevelRssi99_80
20, // LevelRssi79_60
17, // LevelRssi59_40
14, // LevelRssi39_0
60, // LevelRssi122_100
55, // LevelRssi99_80
50, // LevelRssi79_60
47, // LevelRssi59_40
34, // LevelRssi39_0
};

uint8_t bt_timeout = 0;
Expand Down
258 changes: 130 additions & 128 deletions applications/external/flipper_i2ctools/i2ctools.c
Original file line number Diff line number Diff line change
Expand Up @@ -73,143 +73,145 @@ int32_t i2ctools_app(void* p) {
// Share scanner with sender
i2ctools->sender->scanner = i2ctools->scanner;

while(furi_message_queue_get(event_queue, &event, FuriWaitForever) == FuriStatusOk) {
// Back
if(event.key == InputKeyBack && event.type == InputTypeRelease) {
if(i2ctools->main_view->current_view == MAIN_VIEW) {
break;
} else {
if(i2ctools->main_view->current_view == SNIFF_VIEW) {
stop_interrupts();
i2ctools->sniffer->started = false;
i2ctools->sniffer->state = I2C_BUS_FREE;
}
i2ctools->main_view->current_view = MAIN_VIEW;
}
}
// Up
else if(event.key == InputKeyUp && event.type == InputTypeRelease) {
if(i2ctools->main_view->current_view == MAIN_VIEW) {
if((i2ctools->main_view->menu_index > SCAN_VIEW)) {
i2ctools->main_view->menu_index--;
}
} else if(i2ctools->main_view->current_view == SCAN_VIEW) {
if(i2ctools->scanner->menu_index > 0) {
i2ctools->scanner->menu_index--;
}
} else if(i2ctools->main_view->current_view == SNIFF_VIEW) {
if(i2ctools->sniffer->row_index > 0) {
i2ctools->sniffer->row_index--;
}
} else if(i2ctools->main_view->current_view == SEND_VIEW) {
if(i2ctools->sender->value < 0xFF) {
i2ctools->sender->value++;
i2ctools->sender->sended = false;
}
}
}
// Long Up
else if(
event.key == InputKeyUp &&
(event.type == InputTypeLong || event.type == InputTypeRepeat)) {
if(i2ctools->main_view->current_view == SCAN_VIEW) {
if(i2ctools->scanner->menu_index > 5) {
i2ctools->scanner->menu_index -= 5;
}
} else if(i2ctools->main_view->current_view == SEND_VIEW) {
if(i2ctools->sender->value < 0xF9) {
i2ctools->sender->value += 5;
i2ctools->sender->sended = false;
}
} else if(i2ctools->main_view->current_view == SNIFF_VIEW) {
if(i2ctools->sniffer->row_index > 5) {
i2ctools->sniffer->row_index -= 5;
while(1) {
if(furi_message_queue_get(event_queue, &event, 100) == FuriStatusOk) {
// Back
if(event.key == InputKeyBack && event.type == InputTypeRelease) {
if(i2ctools->main_view->current_view == MAIN_VIEW) {
break;
} else {
i2ctools->sniffer->row_index = 0;
}
}
}
// Down
else if(event.key == InputKeyDown && event.type == InputTypeRelease) {
if(i2ctools->main_view->current_view == MAIN_VIEW) {
if(i2ctools->main_view->menu_index < MENU_SIZE - 1) {
i2ctools->main_view->menu_index++;
}
} else if(i2ctools->main_view->current_view == SCAN_VIEW) {
if(i2ctools->scanner->menu_index < ((int)i2ctools->scanner->nb_found / 3)) {
i2ctools->scanner->menu_index++;
}
} else if(i2ctools->main_view->current_view == SNIFF_VIEW) {
if((i2ctools->sniffer->row_index + 3) <
(int)i2ctools->sniffer->frames[i2ctools->sniffer->menu_index].data_index) {
i2ctools->sniffer->row_index++;
}
} else if(i2ctools->main_view->current_view == SEND_VIEW) {
if(i2ctools->sender->value > 0x00) {
i2ctools->sender->value--;
i2ctools->sender->sended = false;
if(i2ctools->main_view->current_view == SNIFF_VIEW) {
stop_interrupts();
i2ctools->sniffer->started = false;
i2ctools->sniffer->state = I2C_BUS_FREE;
}
i2ctools->main_view->current_view = MAIN_VIEW;
}
}
}
// Long Down
else if(
event.key == InputKeyDown &&
(event.type == InputTypeLong || event.type == InputTypeRepeat)) {
if(i2ctools->main_view->current_view == SEND_VIEW) {
if(i2ctools->sender->value > 0x05) {
i2ctools->sender->value -= 5;
i2ctools->sender->sended = false;
} else {
i2ctools->sender->value = 0;
i2ctools->sender->sended = false;
}
} else if(i2ctools->main_view->current_view == SNIFF_VIEW) {
if((i2ctools->sniffer->row_index + 8) <
(int)i2ctools->sniffer->frames[i2ctools->sniffer->menu_index].data_index) {
i2ctools->sniffer->row_index += 5;
// Up
else if(event.key == InputKeyUp && event.type == InputTypeRelease) {
if(i2ctools->main_view->current_view == MAIN_VIEW) {
if((i2ctools->main_view->menu_index > SCAN_VIEW)) {
i2ctools->main_view->menu_index--;
}
} else if(i2ctools->main_view->current_view == SCAN_VIEW) {
if(i2ctools->scanner->menu_index > 0) {
i2ctools->scanner->menu_index--;
}
} else if(i2ctools->main_view->current_view == SNIFF_VIEW) {
if(i2ctools->sniffer->row_index > 0) {
i2ctools->sniffer->row_index--;
}
} else if(i2ctools->main_view->current_view == SEND_VIEW) {
if(i2ctools->sender->value < 0xFF) {
i2ctools->sender->value++;
i2ctools->sender->sended = false;
}
}
}

} else if(event.key == InputKeyOk && event.type == InputTypeRelease) {
if(i2ctools->main_view->current_view == MAIN_VIEW) {
i2ctools->main_view->current_view = i2ctools->main_view->menu_index;
} else if(i2ctools->main_view->current_view == SCAN_VIEW) {
scan_i2c_bus(i2ctools->scanner);
} else if(i2ctools->main_view->current_view == SEND_VIEW) {
i2ctools->sender->must_send = true;
} else if(i2ctools->main_view->current_view == SNIFF_VIEW) {
if(i2ctools->sniffer->started) {
stop_interrupts();
i2ctools->sniffer->started = false;
i2ctools->sniffer->state = I2C_BUS_FREE;
} else {
start_interrupts(i2ctools->sniffer);
i2ctools->sniffer->started = true;
i2ctools->sniffer->state = I2C_BUS_FREE;
// Long Up
else if(
event.key == InputKeyUp &&
(event.type == InputTypeLong || event.type == InputTypeRepeat)) {
if(i2ctools->main_view->current_view == SCAN_VIEW) {
if(i2ctools->scanner->menu_index > 5) {
i2ctools->scanner->menu_index -= 5;
}
} else if(i2ctools->main_view->current_view == SEND_VIEW) {
if(i2ctools->sender->value < 0xF9) {
i2ctools->sender->value += 5;
i2ctools->sender->sended = false;
}
} else if(i2ctools->main_view->current_view == SNIFF_VIEW) {
if(i2ctools->sniffer->row_index > 5) {
i2ctools->sniffer->row_index -= 5;
} else {
i2ctools->sniffer->row_index = 0;
}
}
}
} else if(event.key == InputKeyRight && event.type == InputTypeRelease) {
if(i2ctools->main_view->current_view == SEND_VIEW) {
if(i2ctools->sender->address_idx < (i2ctools->scanner->nb_found - 1)) {
i2ctools->sender->address_idx++;
i2ctools->sender->sended = false;
}
} else if(i2ctools->main_view->current_view == SNIFF_VIEW) {
if(i2ctools->sniffer->menu_index < i2ctools->sniffer->frame_index) {
i2ctools->sniffer->menu_index++;
i2ctools->sniffer->row_index = 0;
// Down
else if(event.key == InputKeyDown && event.type == InputTypeRelease) {
if(i2ctools->main_view->current_view == MAIN_VIEW) {
if(i2ctools->main_view->menu_index < MENU_SIZE - 1) {
i2ctools->main_view->menu_index++;
}
} else if(i2ctools->main_view->current_view == SCAN_VIEW) {
if(i2ctools->scanner->menu_index < ((int)i2ctools->scanner->nb_found / 3)) {
i2ctools->scanner->menu_index++;
}
} else if(i2ctools->main_view->current_view == SNIFF_VIEW) {
if((i2ctools->sniffer->row_index + 3) <
(int)i2ctools->sniffer->frames[i2ctools->sniffer->menu_index].data_index) {
i2ctools->sniffer->row_index++;
}
} else if(i2ctools->main_view->current_view == SEND_VIEW) {
if(i2ctools->sender->value > 0x00) {
i2ctools->sender->value--;
i2ctools->sender->sended = false;
}
}
}
} else if(event.key == InputKeyLeft && event.type == InputTypeRelease) {
if(i2ctools->main_view->current_view == SEND_VIEW) {
if(i2ctools->sender->address_idx > 0) {
i2ctools->sender->address_idx--;
i2ctools->sender->sended = false;
}
} else if(i2ctools->main_view->current_view == SNIFF_VIEW) {
if(i2ctools->sniffer->menu_index > 0) {
i2ctools->sniffer->menu_index--;
i2ctools->sniffer->row_index = 0;
// Long Down
else if(
event.key == InputKeyDown &&
(event.type == InputTypeLong || event.type == InputTypeRepeat)) {
if(i2ctools->main_view->current_view == SEND_VIEW) {
if(i2ctools->sender->value > 0x05) {
i2ctools->sender->value -= 5;
i2ctools->sender->sended = false;
} else {
i2ctools->sender->value = 0;
i2ctools->sender->sended = false;
}
} else if(i2ctools->main_view->current_view == SNIFF_VIEW) {
if((i2ctools->sniffer->row_index + 8) <
(int)i2ctools->sniffer->frames[i2ctools->sniffer->menu_index].data_index) {
i2ctools->sniffer->row_index += 5;
}
}

} else if(event.key == InputKeyOk && event.type == InputTypeRelease) {
if(i2ctools->main_view->current_view == MAIN_VIEW) {
i2ctools->main_view->current_view = i2ctools->main_view->menu_index;
} else if(i2ctools->main_view->current_view == SCAN_VIEW) {
scan_i2c_bus(i2ctools->scanner);
} else if(i2ctools->main_view->current_view == SEND_VIEW) {
i2ctools->sender->must_send = true;
} else if(i2ctools->main_view->current_view == SNIFF_VIEW) {
if(i2ctools->sniffer->started) {
stop_interrupts();
i2ctools->sniffer->started = false;
i2ctools->sniffer->state = I2C_BUS_FREE;
} else {
start_interrupts(i2ctools->sniffer);
i2ctools->sniffer->started = true;
i2ctools->sniffer->state = I2C_BUS_FREE;
}
}
} else if(event.key == InputKeyRight && event.type == InputTypeRelease) {
if(i2ctools->main_view->current_view == SEND_VIEW) {
if(i2ctools->sender->address_idx < (i2ctools->scanner->nb_found - 1)) {
i2ctools->sender->address_idx++;
i2ctools->sender->sended = false;
}
} else if(i2ctools->main_view->current_view == SNIFF_VIEW) {
if(i2ctools->sniffer->menu_index < i2ctools->sniffer->frame_index) {
i2ctools->sniffer->menu_index++;
i2ctools->sniffer->row_index = 0;
}
}
} else if(event.key == InputKeyLeft && event.type == InputTypeRelease) {
if(i2ctools->main_view->current_view == SEND_VIEW) {
if(i2ctools->sender->address_idx > 0) {
i2ctools->sender->address_idx--;
i2ctools->sender->sended = false;
}
} else if(i2ctools->main_view->current_view == SNIFF_VIEW) {
if(i2ctools->sniffer->menu_index > 0) {
i2ctools->sniffer->menu_index--;
i2ctools->sniffer->row_index = 0;
}
}
}
}
Expand Down
Loading

0 comments on commit b579bca

Please sign in to comment.