9c59bcd776
[FL-2605] NFC new design ( #1364 )
...
* nfc: add new read scene
* lib: refactore nfc library
* mifare desfire: add read card fuction
* lib nfc: add auto read worker
* nfc: add supported cards
* nfc: add mifare classic read success scene
* nfc: add troyka support
* submodule: update protobuf
* nfc: mifare classic keys cache
* nfc: rework mifare classic key cache
* Correct spelling
* nfc: add user dictionary
* nfc: introduce block read map in fff
* nfc: rework dict attack
* nfc: improve dict attack
* nfc: rework mifare classic format
* nfc: rework MFC read with Reader
* nfc: add gui for MFC read success scene
* nfc: fix dict attack view gui
* nfc: add retry and exit confirm scenes
* nfc: add retry and exit scenes navigation
* nfc: check user dictionary
* nfc: remove unused scenes
* nfc: rename functions in nfc worker
* nfc: rename mf_classic_dict_attack -> dict_attack
* nfc: change scenes names
* nfc: remove scene tick events
* nfc: rework dict calls with buffer streams
* nfc: fix notifications
* nfc: fix mf desfire navigation
* nfc: remove notification from mf classic read success
* nfc: fix read sectors calculation
* nfc: add fallback for unknown card
* nfc: show file name while emulating
* nfc: fix build
* nfc: fix memory leak
* nfc: fix desfire read
* nfc: add no dict found navigation
* nfc: add read views
* nfc: update card fix
* nfc: fix access bytes save
* nfc: add exit and retry confirm to mf ultralight read success
* nfc: introduce detect reader
* nfc: change record open arg to macros
* nfc: fix start from archive
Co-authored-by: Astra <astra@astrra.space >
Co-authored-by: あく <alleteam@gmail.com >
2022-07-27 00:30:49 +09:00
ec19c11dbe
[FL-2669] SubGhz: add support for loading custom presets ( #1398 )
...
* SubGhz: load custom -preset
* SubGhz: fix error prt=0
* SubGhz: load custom preset
* SubGhz: code refactoring to support custom preset
* SubGhz: add custom presert refactoring
* SubGhz: fix alloc history alloc preset
* SubGhz: fix error load file
* SubGhz: fix start custom preset
* SubGhz: fix delete custom preset
* SubGhz: add description Custom_preset_data for CC1101
* SubGhz: debug logging and buffer size rounding
Co-authored-by: あく <alleteam@gmail.com >
Co-authored-by: Aleksandr Kutuzov <aku@plooks.com >
2022-07-26 23:16:59 +09:00
ed7db336c1
[FL-2684, FL-2685] bugfix subghz ( #1446 )
...
* [FL-2684] SubGhz: fix incorrect CAME TWICE protocol definition
* [FL-2685] SubGhz: fix the recorded RAW signal is deleted when trying to transmit on a prohibited frequency
Co-authored-by: あく <alleteam@gmail.com >
2022-07-26 21:58:07 +09:00
3fa5e18c5a
[FL-2692, FL-2604, FL-2632] New first start sequence ( #1456 )
...
* desktop: restored automatic power off & manual power off on slideshow view; assets: added frames for new first start sequence; docs: added info on slideshow compilation
* desktop: restarting long timer on OK button release
Co-authored-by: あく <alleteam@gmail.com >
2022-07-26 21:44:03 +09:00
056446dfed
[FL-2675] /int space reservation ( #1448 )
...
* storage: added global #defines for /int, /ext & /any
* storage: introduced PATH_EXT, PATH_INT& PATH_ANY macros
* core apps: moved hardcoded config files names to separate headers; prefixed them with "."; updater: added file name migration to new naming convention on backup extraction
* storage: fixed storage_merge_recursive handling of complex directory structures; storage_move_to_sd: changed data migration logic to all non-dot files & all folders
* core: added macro aliases for core record names
* Bumped protobuf commit pointer
* storage: reserved 5 pages in /int; denying write&creation of non-dot files when running out of free space
Co-authored-by: あく <alleteam@gmail.com >
2022-07-26 21:21:51 +09:00
Georgii Surkov and GitHub
52a83fc929
[FL-2688] Fix incorrect remote renaming behaviour #1455
2022-07-26 20:46:14 +09:00
cd77b93f26
Picopass: dump full card, extract some details ( #1408 )
...
* Dump entire picopass card
* Capture more iClass details
* facility code bugfix
Co-authored-by: あく <alleteam@gmail.com >
2022-07-26 00:36:38 +09:00
f8e0ec42c5
nfc: NTAG203 support ( #1383 )
...
* nfc: Fix original MFUL feature flags
* nfc: Add NTAG203 read support
* nfc: Update emulation lock byte handling for NTAG203
* nfc: Add NTAG203 counter emulation support
* nfc: Add NTAG203 tag generator
* nfc: Fix NTAG203 emulating GET_VERSION
* nfc: Fix MFUL version reading
* nfc: Complete NTAG203 counter emulation behavior
* nfc: Complete NTAG203 emulation
* nfc: Remove unnecessary init in MFUL emulation
* nfc: Add notes about MFUL type enum
Co-authored-by: gornekich <n.gorbadey@gmail.com >
Co-authored-by: あく <alleteam@gmail.com >
2022-07-26 00:21:05 +09:00
30820b83b5
[FL-2464, FL-2466] RFID, ibutton text fix #1413
...
Co-authored-by: あく <alleteam@gmail.com >
2022-07-25 23:46:42 +09:00
ac60d1808a
fixing typos, satus -> status ( #1422 )
...
Co-authored-by: あく <alleteam@gmail.com >
2022-07-25 23:35:02 +09:00
d80edba891
RPC App: state message and GUI update ( #1423 )
...
* RPC App: state message and GUI update
* Protobuf submodule update
Co-authored-by: SG <who.just.the.doctor@gmail.com >
Co-authored-by: あく <alleteam@gmail.com >
2022-07-25 23:16:45 +09:00
f5d6a8084b
[FL-2668] GUI message screens update #1428
...
Co-authored-by: SG <who.just.the.doctor@gmail.com >
Co-authored-by: あく <alleteam@gmail.com >
2022-07-25 21:11:34 +09:00
3ee592cae7
Fix SubGHz chat immediately closing #1440
...
It's just an if condition which should've been inverted
Co-authored-by: あく <alleteam@gmail.com >
2022-07-25 20:48:06 +09:00
253b98c8f0
Added condition to cli "log" command to end if serial terminal is disconnected. ( #1425 )
...
* Added condition to cli "log" command. If USB is disconnected while "log" command is running, it will end the command.
* Reverted change on cli_commands.c
Added condition in cli.c for cli_cmd_interrupt_received function to react appropriately when serial terminal is disconnected.
Added condition in subghz_cli.c for subghz chat cmd to exit gracefully when serial terminal is disconnected.
* Formatting
Co-authored-by: あく <alleteam@gmail.com >
2022-07-23 12:35:14 +09:00
Georgii Surkov and GitHub
16e598b2c0
[FL-2655, FL-2650] Buffered file streams ( #1424 )
...
* Initial buffered file stream implementation
* Fix logical errors
* Fix more logical errors
* Minimally working implementation
* Adapt infrared unit tests for buffered streams
* Increase read buffer size from 512 to 1K
* Correct naming and formatting
* More code improvements
* Allow passing access and open modes for buffered streams
* Implement tests for buffered streams
* Better file and method names
* Add comments and correct formatting
* Use buffered streams in Infrared
* Fix compilation error
2022-07-23 01:00:25 +09:00
e3c7201a20
Furi: core refactoring and CMSIS removal part 2 ( #1410 )
...
* Furi: rename and move core
* Furi: drop CMSIS_OS header and unused api, partially refactor and cleanup the rest
* Furi: CMSIS_OS drop and refactoring.
* Furi: refactoring, remove cmsis legacy
* Furi: fix incorrect assert on queue deallocation, cleanup timer
* Furi: improve delay api, get rid of floats
* hal: dropped furi_hal_crc
* Furi: move DWT based delay to cortex HAL
* Furi: update core documentation
Co-authored-by: hedger <hedger@nanode.su >
2022-07-20 13:56:33 +03:00
73711c75e6
Update bad_usb_script.c to fix incorrect ALT key const #1406
...
Co-authored-by: あく <alleteam@gmail.com >
2022-07-17 18:56:47 +09:00
e7c3da1da9
[FL-2658, FL-2657] SubGhz: add new protocol (IronLogic, Comunello, Sommer(fsk476), Normstahl, KEY, EcoStar, Gibidi, Mutancode) ( #1404 )
...
* Subghz: fix cli no load keeloq_mfcodes_user
* SubGhz: add new protocol (IronLogic, Comunello, Sommer(fsk476), Normstahl, KEY, EcoStar, Gibidi, Mutancode)
* SubGhz: fix syntax
* SubGhz: fix error build
Co-authored-by: あく <alleteam@gmail.com >
2022-07-17 18:45:21 +09:00
80629de01e
[FL-2601] Move Infrared unit test data to assets ( #1396 )
...
* Move samsung raw data to assets
* Add more assets and fix bugs
* Clean up code
* Implement all raw data as assets
* Remove input data from old test files
* Better signal names
* Better file opening logic
* Implement loading parsed data from files
* Move most of RC5 tests into assets
* Add more test cases
* Add more test cases
* Eliminate RUN_DECODER macro
* Better code structure
* Implement run_encoder function
* More encoder tests
* Move all encoder tests to assets
* Move all test data to assets
* Normalise function names
* Rename code files
* Uncomment other tests
* Swich test order to avoid weird memory leaks
* UnitTests: cleanup output and redirect it into stdout
* UnitTests: selectable tests and better reporting
Co-authored-by: あく <alleteam@gmail.com >
2022-07-17 18:21:56 +09:00
877c5c8122
[FL-1962, FL-2464, FL-2465, FL-2466, FL-2560, FL-2637, FL-2595] Ibutton, Infrared, LfRFID GUI fixes ( #1392 )
...
* Ibutton, Infrared, LfRFID GUI fixes
* Loading screens update
Co-authored-by: あく <alleteam@gmail.com >
2022-07-17 16:41:16 +09:00
975ee0c009
Change # to ! for the inverted text example ( #1395 )
...
The code already works with "!", but the comment was wrong.
Co-authored-by: あく <alleteam@gmail.com >
2022-07-15 01:58:52 +09:00
2caa5c3064
[FL-2633] Move files from /int to /ext on SD mount #1384
...
Co-authored-by: あく <alleteam@gmail.com >
2022-07-15 01:44:34 +09:00
Max Andreev and GitHub
fd498bdfcf
[FL-2554] Embedded arm-none-eabi toolchain ( #1351 )
2022-07-15 01:24:26 +09:00
222394d3ea
added gui-shift command to ducky script ( #1381 )
...
Co-authored-by: Daniel Isenhower <daniel@reciprocityentertainment.com >
Co-authored-by: あく <alleteam@gmail.com >
2022-07-10 21:51:35 +09:00
Eric Betts and GitHub
41bd1fb9a5
Save picopass as picopass or, for 26bit, as lfrfid ( #1380 )
2022-07-10 21:46:46 +09:00
f46ae5a704
Namespace loclass library ( #1379 )
...
* Namespace loclass library
* Lib: const for immutable variables and bss cleanup
Co-authored-by: あく <alleteam@gmail.com >
2022-07-08 21:56:23 +09:00
6b3625f46b
Bluetooth Remote Additions ( #1330 )
...
* Update the HID Keycodes to pull from the library
* Composite BLE Report Map, add consumer & mouse HID
* Add Mouse & keyboard bt remote, fixed media remote
* BT Keyboard remove long press shift
* Fix usb hid modifier keys
* Fixed misaligned bad usb keys
* Fix keyboard app keys
* Partial fix for bt app and linux
* Update to work across platforms
* Fix for report ids
* BtHidApp: move variable from bss to model, cleanup naming.
* FuriHal: add const to immutable data declaration
Co-authored-by: あく <alleteam@gmail.com >
2022-07-08 21:36:34 +09:00
e17dae2d00
[FL-2612, FL-2618, FL-2619, FL-2622] CLI, threads, notifications, archive fixes ( #1354 )
...
* CLI, notifications, archive fixes
* Led blink fix
* Fix thread flags notification index
* Archive: fix infinite tab switch on empty SD card
Co-authored-by: あく <alleteam@gmail.com >
2022-07-06 22:54:08 +09:00
8af2198684
Iclass UI ( #1366 )
...
* Move structs to header
* roll mbedtls into loclass
* Picopass with scene for reading card
* Picopass: fix memory leak
* Lib: return mbedtls back
* Picopass: rename symbols to match naming guide
Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com >
2022-07-06 00:28:27 +09:00
hedger and GitHub
c49db35ee0
storage: lfs fingerprint wasn't updated when both geometry changed & factory reset was requested, resulting in second re-format on next boot ( #1372 )
2022-07-05 21:17:26 +09:00
05b7b7f2db
plugins: snake: simplification in direction calculation ( #1361 )
...
Co-authored-by: hedger <hedger@users.noreply.github.com >
2022-07-04 20:49:23 +03:00
793501d62d
Add GPIO control through RPC ( #1282 )
...
* Add GPIO control through RPC
* Assets: sync protobuf to 0.10
* Assets: update protobuf to fixed v10
Co-authored-by: あく <alleteam@gmail.com >
2022-07-05 00:32:06 +09:00
b95cd2df14
[FL-2578] Updater fixes related to /int handling ( #1359 )
...
* Updater fixes related to /int handling
updater: performing factory reset on update, checking for LFS free space before updating, fixed improper error handling on backup/restore operations, rebalanced update stage weights for better progress visuals
scripts: added CLI output validation for selfupdate.py
storage: added pointer validation in storage_int_common_fs_info
desktop: fixed crash on rendering invalid slideshows
* Typo fix
* rpc: Updated protobuf to 0.9
* rpc: removed updater status conversion
Co-authored-by: あく <alleteam@gmail.com >
2022-07-04 22:36:12 +09:00
4a1695ba1c
[FL-2589] RPC App control commands ( #1350 )
...
* RPC App control commands
* Button release timeout
* SubGhz tx fix
Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com >
2022-07-04 22:09:46 +09:00
0e78f38404
nfc: On-device tag generator ( #1319 )
...
* nfc: Add tag generator base
* nfc: Fix BCC generation
* nfc: Add MFUL EV1 generators
* nfc: Fix typos in generator
* nfc: Add NTAG21x generators
* nfc: More const
* nfc: Add NTAG I2C generators
* nfc: Add field names to generator initializers
* nfc: Move generators to add manually scene
* nfc: Revise tag generator UX
* nfc: Revert add manually menu item name
* nfc: Remove unused scene start submenu index
Co-authored-by: あく <alleteam@gmail.com >
Co-authored-by: gornekich <n.gorbadey@gmail.com >
2022-07-04 20:16:59 +09:00
Eric Betts and GitHub
ffd6eda361
Add iClass keys to source ( #1360 )
2022-07-04 20:54:36 +10:00
fea2bfa822
[FL-2610] SubGhz: add keypad lock SubGhz -> Read ( #1343 )
...
* [FL-2610] SubGhz: add keypad lock SubGhz -> Read
* SubGhz: fix multiple clicks on the back button
* SubGhz: turn on the backlight when receiving with the keypad locked. key processing delay when exiting Locked mode
* SubGhz: chanage lock variable and enums names
* SubGhz: replace direct return with consumed
Co-authored-by: あく <alleteam@gmail.com >
2022-07-04 01:03:36 +09:00
5769595e67
NFC emulation software tunning ( #1341 )
...
* digital_signal: optimize calculationxx
* firmware: add listen start and listen rx
* digital signal: rework with fixed point calculation
* nfc: tune timings
* nfc: fix array overflow
* mifare classic: fix key access
* nfc: rework spi bus access
* nfc: rework listen mode with st25r3916 calls
* digital signal: speed up digital_signal_append()
* digital signal: remove unused profiling
* nfc: clean up code
* nfc: correct sleep state
* nfc: add unit tests
* nfc: fix memory leak in unit test
* digital_signal: remove unused code
* nfc: fix incorrect sak load in pt memory
Co-authored-by: あく <alleteam@gmail.com >
2022-07-03 23:51:50 +09:00
1975868ed8
PicoPass / iClass ( #1298 )
...
* add mdedtls for des3 implementation
* add localss from RfidResearchGroup/proxmark3
* picopass reader app and rfal for communicating with picopass cards
* always turn off field
* close storage when keys are not found
* Add mbedtls as submodule
* add mbedtl_config
* Switched to only including specific mbedtls files I need. Thank you @kevinwallace
* cherry-pick kevinwallace sconsify
* scons for mbedtls/loclass
* Reset to ready state on error
* unsigned FC/CN
* clean FC/CN if not decoded
Co-authored-by: hedger <hedger@users.noreply.github.com >
Co-authored-by: あく <alleteam@gmail.com >
Co-authored-by: Kevin Wallace <git+flipperzero@kevin.wallace.seattle.wa.us >
2022-07-03 17:44:38 +09:00
8b988e2b17
fbt: updater over USB ( #1344 )
...
* Scripts: added update package uploader over USB; fbt: added flash_usb target
* fbt: additional dependencies for flash_usb
* Cli: fix cursor_position corruption
Co-authored-by: あく <alleteam@gmail.com >
2022-06-28 22:03:49 +09:00
e6f18cc322
fbt: building core with respect for debug flag ( #1347 )
...
* fbt: building `core` with respect for debug flag
* fbt: added size output for firmware elf
* Infrared: fix cli
Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com >
2022-06-28 21:28:55 +09:00
hedger and GitHub
f3b1475ede
[FL-2052] New build system based on scons ( #1269 )
2022-06-26 21:00:03 +09:00
c79fb61909
SubGhz: add protocol PowerSmart / SolarSmart Roller Shutters ( #1335 )
...
* SubGhz: add protocol Power Smart
* SubGhz: parsing protocol Power Smart
* SubGhz: add parsing cannel
* SubGhz: add unit test
* SubGhz: update files unit test_random_raw
Co-authored-by: あく <alleteam@gmail.com >
2022-06-23 00:18:52 +09:00
0b83316560
[FL-2603] Infrared: exit app properly if ran from outside the launcher ( #1340 )
...
* Exit app if no previous scene was found
* Infrared: correct return logic for started from archive app
Co-authored-by: あく <alleteam@gmail.com >
2022-06-23 00:12:39 +09:00
Georgii Surkov and GitHub
9868a65c15
[FL-2602] Infrared: Fix crash when messing with SD card ( #1339 )
...
* Fix crash after removing SD card and exiting
* Show an error if SD card was removed on Universal remote screen
2022-06-23 00:05:17 +09:00
556af0b82b
nfc: NTAG21x complete emulation ( #1313 )
...
* nfc: Refactor Mifare Ultralight feature flags
Unify them in both reader and emulator to make handling easier
* nfc: Refactor MFUL PWD_AUTH and add AUTHLIM counter
* nfc: Add MFUL EV1 VCSL command emulation
* nfc: Enforce message size check in MFUL emulation
Also fix READ_CNT byte order, but it's not fully working
* nfc: Add MFUL auth counter serialization
Also fill counter on successful read from tag
* nfc: Fix MFUL INCR_CNT emulation
* nfc: Fix MFUL READ_CNT emulation
* nfc: Refactor MFUL emulation and implement full write support
* nfc: Fix Mifare Ultralight serialization
* nfc: Add MFUL OTP/CC handling
* nfc: Make sure MF0UL21 dynamic lock byte 3 also reads 0xBD
* nfc: Small MFUL refactor and fix CFGLCK behavior
* WIP: nfc: MFUL read support with ASCII mirror and auth roll-over
This is too complex and I don't like it
* nfc: Simplify MFUL read emulation, fix mirror range check
* nfc: Implement MFUL auth and ASCII mirror for FAST_READ
* nfc: Fix MFUL read roll-over with AUTH0 set
* nfc: Implement MFUL read counter increment
* nfc: Align ASCII mirror to NTAG21x behavior
* nfc: Handle invalid command in MFUL emulation
* nfc: Fix MFUL static lock check
* nfc: Refactor MFUL emulation to use cached config pages
* nfc: Refactor MFUL auth counter to count up instead of down
* nfc: Add missing NULL check
* WIP: nfc: Various MFUL emulation behavior tweaks
* WIP: nfc: More MFUL emulation behavior adjustments
* nfc: Match AUTHLIM emulation to NTAG21x behavior
* nfc: Fix MFUL dynamic lock emulation
* nfc: Fix typo in MFUL read counters
* nfc: Fix typo in MFUL FAST_READ emulation
* nfc: Increase emulation TX buffer size
Enough space for if someone requests FAST_READ of all pages of an NTAG
* nfc: Fix MFUL negative verification counter overflow
* nfc: Change auth counter kv name
* nfc: Fix NTAG I2C FAST_READ emulation
* nfc: Fix NTAG21x config reload behavior
Co-authored-by: あく <alleteam@gmail.com >
2022-06-22 00:04:35 +09:00
88facf20c1
nfc: DESFire fixes ( #1334 )
...
* nfc: don't give up on reading DESFire card if GET_KEY_SETTINGS fails
Some cards are configured to refuse to provide key settings, but still
provide other info. For example, Ubiquiti UniFi Protect access cards
won't list keys or applications, but will still answer GET_FREE_MEMORY.
* nfc: don't show error when saving DESFire card with no applications
* nfc: fix DESFire load with 0 applications or no PICC key settings
Co-authored-by: Kevin Wallace <git+flipperzero@kevin.wallace.seattle.wa.us >
Co-authored-by: gornekich <n.gorbadey@gmail.com >
Co-authored-by: あく <alleteam@gmail.com >
2022-06-21 23:58:22 +09:00
Georgii Surkov and GitHub
92f763e553
[FL-2548] Infrared: show error if no SD card/databases ( #1337 )
...
* Add Database error scene
* More general popup callback name
2022-06-21 23:45:55 +09:00
hedger and GitHub
eb31fed0e2
[FL-2556] Update complete screen ( #1332 )
...
* Desktop: slideshow implementation
* Updater: handling splashscreen installation; added format version field to slideshow binary
* Desktop: added bidirectional slideshow navigation + instant cancel by "back" button; Updater: rebalanced update stages weights
* Updater: fixed missing field init; fixed potential loop when baking slideshows
* Assets: fixed "update complete" image to match original
* Desktop: added check for slideshow file version
* Scripts: slideshow.py cleanup
* Desktop: removed first start intro sequence
* Desktop: removed first start remnants
2022-06-21 23:11:34 +09:00
4b02a404ba
[FL-2588] RPC storage: Ignore incorrect file names #1318
...
Co-authored-by: あく <alleteam@gmail.com >
2022-06-21 22:46:39 +09:00