Commit Graph

894 Commits

Author SHA1 Message Date
Sergey Gavrilov
4000f0cac5
[FL-2870] Printf function attributes ()
* Furi strings: printf attribute
* Logs: printf attribute
* Plugins: adapt
* Plugins: accommodate
* Unit tests: accommodate

Co-authored-by: あく <alleteam@gmail.com>
2022-10-07 22:35:15 +09:00
Sergey Gavrilov
38a82a1907
[FL-2839] Furi stream buffer ()
* Core: stream buffer
* stream buffer: API and usage
* stream buffer: documentation
* stream buffer: more documentation
* Furi: fix spelling

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2022-10-07 21:27:11 +09:00
MX
515e6db69c
Merge branch 'fz-dev' into dev 2022-10-07 00:35:01 +03:00
Astra
eaa3adf98a
[FL-2868] Remove string_push_uint64 ()
* Remove string_pust_uint64
* Oops, furi strings now
* Remove dead code
* Remove unneeded import

Co-authored-by: あく <alleteam@gmail.com>
2022-10-07 03:51:30 +09:00
Astra
6dde5586af
[FL-2803] Mifare Classic read improvements Part 1 ()
* Reuse found keys when reading a card
* Fix keys not being read if no newline at the end of the file
* Actually read all keys from the dictionary
* Support for furi_string
* Check only for re-used key after the current sector
* Declare the key attack function as static
* nfc: change logs, check worker state

Co-authored-by: gornekich <n.gorbadey@gmail.com>
Co-authored-by: あく <alleteam@gmail.com>
2022-10-07 02:07:56 +09:00
gornekich
5de2c32c81
[FL-2864] NFC update detect reader ()
* nfc: update detect reader view
* nfc: make detect reader more interractive
* nfc: update icons
* nfc: fix detect reader gui
* nfc: fix gui, fix worker events
* nfc: fix notifications
* nfc: add nfc_worker NULL assert

Co-authored-by: あく <alleteam@gmail.com>
2022-10-07 01:58:17 +09:00
Georgii Surkov
61189c3c82
[FL-2847] FFF trailing space fix ()
* Improve whitespace handlilng in FFF
* Add tests for odd fff user input
* Adjust formatting

Co-authored-by: あく <alleteam@gmail.com>
2022-10-06 23:18:20 +09:00
MX
007a11d70d
upd ofw pr 1832 2022-10-06 15:26:23 +03:00
Nikolay Minaylov
a69e150e2f
[FL-2812] RFID: write fix for some protocols
Co-authored-by: あく <alleteam@gmail.com>
2022-10-06 20:36:21 +09:00
MX
3e4d8a41e0
Remove string_push_uint64
OFW PR 1832 by Astrrra
2022-10-05 21:39:40 +03:00
MX
c60bfbf271
oh no 2022-10-05 21:27:13 +03:00
MX
0796263e81
Merge branch 'fz-dev' into dev 2022-10-05 19:27:46 +03:00
Sergey Gavrilov
4bf29827f8
M*LIB: non-inlined strings, FuriString primitive ()
* Quicksave 1
* Header stage complete
* Source stage complete
* Lint & merge fixes
* Includes
* Documentation step 1
* FBT: output free size considering BT STACK
* Documentation step 2
* py lint
* Fix music player plugin
* unit test stage 1: string allocator, mem, getters, setters, appends, compare, search.
* unit test: string equality
* unit test: string replace
* unit test: string start_with, end_with
* unit test: string trim
* unit test: utf-8
* Rename
* Revert fw_size changes
* Simplify CLI backspace handling
* Simplify CLI character insert
* Merge fixes
* Furi: correct filenaming and spelling
* Bt: remove furi string include

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2022-10-06 00:15:23 +09:00
MX
96502e21ae
RFID: write fix for some protocols
OFW PR 1828 by nminaylov
2022-10-04 21:06:16 +03:00
MX
4141483147
NFC update detect reader
OFW PR 1820 by gornekich
2022-10-04 18:23:11 +03:00
MX
b452b6fd32
FFF trailing space fix
OFW PR 1811 by gsurkov
2022-10-04 00:45:09 +03:00
MX
f202d27206
Merge branch 'fz-dev' into dev 2022-09-29 05:57:02 +03:00
hedger
f8b532f063
[FL-2831] Resources cleanup in updater ()
* updater: remove files from existing resources Manifest file before deploying new resources
* toolbox: tar: single file extraction API

Co-authored-by: あく <alleteam@gmail.com>
2022-09-29 02:13:12 +09:00
MX
4271246d8a
Merge branch 'fz-dev' into dev 2022-09-28 04:04:12 +03:00
Tom Samstag
e6e1e7fe15 Add formatting to DESfire data dump ()
Co-authored-by: gornekich <n.gorbadey@gmail.com>
2022-09-28 02:02:18 +09:00
MX
60242cd7c4
fix nfc device typo, doesn’t affect resulting keys 2022-09-26 19:46:12 +03:00
MX
a9210b2849
Merge branch 'fz-dev' into dev 2022-09-26 19:37:37 +03:00
Shane Synan
9f501034c3
Power: Also ask charger if charge done ()
* power: Also ask charger if charge done
* F7: bump API Symbols version
* Lib: remove double include in bq25896.c

Co-authored-by: あく <alleteam@gmail.com>
2022-09-27 00:34:59 +09:00
MX
fa9602bd68
Merge branch 'fz-dev' into dev 2022-09-26 15:27:24 +03:00
hedger
efb09380bd
[FL-2836] Fast flash programming mode ()
* updater: lowered logging level for resources unpacking; hal: implemented fast flash write mode
* hal: reworked fast flash programming; clearing most error flags on flash init; changed some flash functions return type from bool to void; scripts: fixed malformed CRC values in update bundles in certain cases;
* hal: flash: larger critical section
* hal: flash: enabling fast write inside critical section
* api_symbols: bump minor version
2022-09-26 20:03:21 +09:00
MX
e96e414561
Merge branch 'fz-dev' into dev 2022-09-26 02:06:09 +03:00
David Coles
a6b98ccbbe
Preliminary Rust support ()
* Add support for R_ARM_THM_MOVW_ABS_NC/THM_MOVT_ABS

These are sometimes emitted by the Rust LLVM compiler.

Ref: https://github.com/ARM-software/abi-aa/blob/main/aaelf32/aaelf32.rst#56relocation

* Discard LLVM bitcode from extension applications

LLVM-based compilers may include uncompressed bitcode in object files
to help with link-time optimization. However this can bloat binary sizes
from KB to MB.

* Expose alligned_malloc/free functions to applications

This is required to implement a global allocator in Rust.
2022-09-26 07:06:46 +10:00
MX
01ca588488
Merge branch 'fz-dev' into dev 2022-09-25 18:27:58 +03:00
Skorpionm
bc777b2eff
SubGhz: fix config menu ()
* SubGhz: fix config menu
* SubGhz: fix gui Magellen protocol
* SubGhz: fix gui Transmit SubGhz
* SubGhz: keeloq, new gen manufacture code
* SubGhz: Update keeloq_mfcodes

Co-authored-by: あく <alleteam@gmail.com>
2022-09-25 23:34:52 +09:00
Sergey Gavrilov
e6d22ed147
ELF-Loader: C++ plugin support, loader overhaul. ()
* fap-loader: load all code and data sections
* fap-loader: relocate all code and data sections
* fap-loader: remove old elf loader
* fap-loader: new jmp call relocation
* openocd: resume on detach
* fap-loader: trampoline for big jumps
* fap-loader: rename cache
* fap-loader: init_array support
* fap-loader: untangled flipper_application into separate entities
* fap-loader: fix debug
* fap-loader: optimize section container
* fap-loader: optimize key for section container
* fap-loader: disable debug log
* documentation
* F7: bump api symbols version
* Lib: cleanup elf_file.c

Co-authored-by: あく <alleteam@gmail.com>
2022-09-25 23:11:29 +09:00
MX
436f70b69b
Merge branch 'fz-dev' into dev 2022-09-25 16:46:23 +03:00
Sergey Gavrilov
92e440c77d
Core: simplify record container ()
Co-authored-by: あく <alleteam@gmail.com>
2022-09-25 20:48:57 +09:00
MX
e8bb45496d
Merge branch 'fz-dev' into dev 2022-09-22 21:45:26 +03:00
Andrea Sacchi
3846852f2b
NFC Fix Mifare Classic ()
* Fix Mifare Classic key str to int conversion: Wrong cast lead to unexpected behavior converting key from str to int.
* Nfc: fix type cast in mf_classic_dict and add basic unit tests

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2022-09-23 02:35:28 +09:00
MX
e6bcba6959
update changelog, minor fixes 2022-09-22 18:23:32 +03:00
MX
e13edc2f70
keeeloq update 2022-09-22 18:01:54 +03:00
MX
87393a086c
fix rfid fuzzer crashes, some new random names 2022-09-21 08:43:07 +03:00
MX
6000d47a0f
allow saving only for protocols without encoder 2022-09-21 07:12:09 +03:00
MX
d986ef4104
fix nice flor s crash, fix debug pack for debug builds 2022-09-21 06:52:34 +03:00
MX
7c7ac07e6a
Merge pull request from mvanzanten/adding-support-for-hidprox
adding support for HIDProx, updating the UI to switch between protocols
2022-09-20 23:25:45 +03:00
MX
ca02826cfd
set time between cards to 6, run fbt format 2022-09-20 23:24:34 +03:00
MX
96ad7f3cef
fix nfc list crash, fix magellen gui, fix transmitter gui 2022-09-20 23:13:15 +03:00
MX
b2589698ff
Merge branch 'fz-dev' into dev 2022-09-20 21:39:22 +03:00
Max Lapan
3360f818a1
Subghz: Adding checks for get_upload functions ()
* Adding checks for get_upload functions
  Almost in every protocol, function which generates upload might fail and return false.
  But we don't check this result, which might end up sending random memory contents to the air.
* Format sources and fix crash on ivalid bit count in chamberlain

Co-authored-by: あく <alleteam@gmail.com>
2022-09-20 14:29:10 +09:00
MX
e2123c55bb
Merge branch 'fz-dev' into dev 2022-09-19 21:15:04 +03:00
David
f5ff6438d1
NFC user dict list, delete, and de-duplication. ()
* Add MFC user keys list
* Leakey submenu fix
* Set next target for Save/Delete success scenes
* Delete individual user keys
* Update count of total keys
* Fix memory leak
* Check for duplicate keys
* Remove a submodule that I never added?
* Swap and position icons
* Revamp according to design doc
* Rename icons to include size and replace keychain icon with smaller variant
* Fix typos
* Final fixes
* Fufill requested changes
* Cleanup comments
* Merge dev after SD app loading
* Fixing icon names
* Revert merge mistakes and API version
* Scene switching adjustments
* F7: add/change/remove some nfc icons in api_symbols.csv

Co-authored-by: あく <alleteam@gmail.com>
2022-09-20 01:43:53 +09:00
Astra
9f3b80e606
Add new card parsers ()
* Add the "Two cities" parser
* Add plantain and plantain4k parsers
* Add new parsers to the supported list
* United card PoC
* Fix nfc device not sleeping
* Completely read the 4K troika variants
* Correct naming
* Update to reflect upstream changes
* Add support for MfUl info
* Fix parsers
* Card type detection fixes
* Remove debug info
* Fixes for the verification of cards
* nfc: fix verification for supported cards
* nfc: remove unused vars
* Improve card reading reliability and fix plantain
* plantain: change log level

Co-authored-by: gornekich <n.gorbadey@gmail.com>
2022-09-20 01:05:04 +09:00
MX
111656d2c1
Merge branch 'fz-dev' into dev 2022-09-19 18:50:20 +03:00
Max Lapan
d003db0404
SubGhz: Oregon v2.1 decoder ()
* Oregon v2.1 decoder
* Refactor FSM to switch
* Refactor headers
* Format strings
* Unit tests of oregon2
* Cleanups
* Add oregon2 raw data to random_test_raw.sub
* Adjust count of packets detected on random test
* Format sources

Co-authored-by: あく <alleteam@gmail.com>
2022-09-19 23:24:24 +09:00
Nikolay Minaylov
fb476c29e6
RFID: fix read info screen ()
* RFID: fix read info screen
* Fix line break for long data string
* Protocol data redecoding before write

Co-authored-by: SG <who.just.the.doctor@gmail.com>
Co-authored-by: あく <alleteam@gmail.com>
2022-09-19 22:21:40 +09:00
hedger
ed385594a3
faploader: more subsystem headers in API table ()
* faploader: more subsystem headers in API table; not counting header entries for SDK version change
* subghz: removed dead function
* Adjusted API version
* hal: removed furi_hal_power_get_system_voltage
* lib: mbedtls: additional flags for .fap linkage
* fbt: rebuilding assets when git commit id changes
* fbt: removed assets rebuild on git commit id change; added explicit dependency for SDK source on compiled assets parts; removed unneeded sdk regeneration runs
* fbt: changed stock plugins to EXTERNAL apps; restored building app as a PLUGIN as a part of main fw as well as a .fap; readme fixes
* fbt: restored certain apps to PLUGIN type
* fbt: app manifests: renamed version->fap_version, added extra fields
* fbt: fixed version processing after rename

Co-authored-by: あく <alleteam@gmail.com>
2022-09-19 21:39:00 +09:00
MX
c28e4ea733
Merge pull request from h4sh5/random_uid_reader_detect
random uid for detect reader each time NFC app exists and comes back
2022-09-16 22:01:08 +03:00
MX
c894948d4f
faploader api extension and lib fixes
OFW PR 1742 by hedger

keeping api version the same to allow compatibility 
it might be changed in next releases if api changes are destructive
2022-09-16 17:30:07 +03:00
hedger
007a3d295e
[FL-2819] updater: fixed failing backups on /int with empty files in it
Co-authored-by: あく <alleteam@gmail.com>
2022-09-15 22:55:55 +09:00
MX
8fd4225939
fix detect raw bug, fix came atomo 2022-09-15 06:45:19 +03:00
MX
51ffdcd3bc
update api, add icons, fix picopass again 2022-09-15 01:14:55 +03:00
hedger
d47fdce337
updater: fixed failing backups on /int with empty files in it 2022-09-14 21:04:46 +03:00
MX
3fbaad1488
Merge branch 'fz-dev' into dev 2022-09-14 21:04:04 +03:00
SG
b9a766d909 [FL-2627] Flipper applications: SDK, build and debug system ()
* Added support for running applications from SD card (FAPs - Flipper Application Packages)
* Added plugin_dist target for fbt to build FAPs
* All apps of type FlipperAppType.EXTERNAL and FlipperAppType.PLUGIN are built as FAPs by default
* Updated VSCode configuration for new fbt features - re-deploy stock configuration to use them
* Added debugging support for FAPs with fbt debug & VSCode
* Added public firmware API with automated versioning

Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: SG <who.just.the.doctor@gmail.com>
Co-authored-by: あく <alleteam@gmail.com>
2022-09-15 02:21:03 +09:00
SG
873e1f114b
[FL-2627] Flipper applications: SDK, build and debug system () 2022-09-15 01:11:38 +09:00
MX
4a61a28f57
Protocol data redecoding before write
OFW PR 1723 by nminaylov
2022-09-14 16:18:23 +03:00
MX
b00117e02c
Detect RAW feature
by perspecdev
2022-09-14 16:01:30 +03:00
Haoxi Tan
6b91c660d4 random uid each time NFC app exists and comes back 2022-09-14 20:10:49 +10:00
MX
1c00709ea6
fix custom name serial, bt mac, fix subghz starline 2022-09-11 15:03:44 +03:00
MX
bcaf898c57
fixes and impovements 2022-09-11 02:09:02 +03:00
MX
177fabe50c
add mpu, fix keeloq 2022-09-10 20:16:08 +03:00
MX
8abb9e8a2b
Merge branch 'fz-dev' into dev 2022-09-08 17:45:37 +03:00
Skorpionm
e9ab581771
SubGhz: fix decoder kelooq ()
* SubGhz: fix decoder kelooq

Co-authored-by: hedger <hedger@users.noreply.github.com>
2022-09-08 10:27:03 +03:00
あく
b62096fb91
[FL-2645, FL-2810] SubGhz: handle missing key in cryptostore. Lib: lower default display contrast. ()
* SubGhz: skip file loading on key load fail

* Lib: update default display contrast

* Format sources

Co-authored-by: hedger <hedger@users.noreply.github.com>
2022-09-08 10:18:18 +03:00
MX
77b19ec0db
OFW: SubGhz: fix decoder keeloq
OFW PR 1719 by Skorpionm
2022-09-08 05:39:21 +03:00
MX
48691b2296
Merge branch 'fz-dev' into dev 2022-09-05 20:53:59 +03:00
あく
3a767c9c02
[FL-2794] Lib: update LFS to v2.5.0, lower update free page limit ()
* Lib: update lfs to v2.5.0

* Storage: set minimum free pages for update on internal storage to 3

* Updater: lower min int free space limit

* lfs: disabled debug and trace logs by default

Co-authored-by: hedger <hedger@nanode.su>
2022-09-05 20:40:20 +03:00
MX
a8858e38b5
Merge branch 'fz-dev' into dev 2022-09-05 19:23:34 +03:00
VVX7
8d8481b17f
fix buffer overflow in mifar ul load ()
Co-authored-by: gornekich <n.gorbadey@gmail.com>
2022-09-05 20:42:59 +09:00
MX
8323877120
formatted, attempt to fix rfid fuzzer crash
crash doesn’t fixed with this commit
2022-09-03 23:10:07 +03:00
MX
c41555b579
Merge branch 'fz-dev' into dev 2022-09-03 16:30:13 +03:00
gornekich
1853359d78
[FL-2759], [FL-2766] NFC collect params for mfkey32 attack ()
* nfc: start nfc over rpc
* nfc: add detect reader state
* nfc: add reader analyzer
* nfc: rework reader analyzer
* reader_analyzer: print collected nonces to debug
* reader analyzer: add save on SD card
* reader_analyzer: separate mfkey related part to different file
* mfkey32: add logic for collecting parameters
* nfc: rework pcap with reader analyzer
* nfc: add logger for reader
* nfc: clean up
* nfc: add detect reader view
* nfc: add detect reader and mfkey nonces scenes
* nfc: add mfkey comlplete scene
* nfc: add new assets
* nfc: fix gui
* nfc: fix iso14443-4 UID emulation
* nfc: add no sd card notification
* nfc: fix grammar

Co-authored-by: あく <alleteam@gmail.com>
2022-09-03 21:25:36 +09:00
Skorpionm
a3932cfa6d
[FL-2787] SubGhz: add protocol Clemsa, fix decoder BETT ()
* SubGhz: add protocol Clemsa
* SubGhz: fix decoder BETT protocol

Co-authored-by: あく <alleteam@gmail.com>
2022-09-03 15:19:01 +09:00
Sebastian Mauer
1d787e6da8
Add support for Keri tags ()
Co-authored-by: SG <who.just.the.doctor@gmail.com>
2022-09-02 21:36:13 +10:00
Sebastian Mauer
10b0a611cf
Add support for Gallagher tags ()
* Add Gallagher protocol
2022-09-02 21:15:34 +10:00
Skorpionm
0ee4573a65
SubGhz: add protocol Intertechno_V3 ()
* SubGhz: add decode Intertechno_V3
* SubGhz: add encoder Intertechno V3
* SubGhz: add uni_test Intertechno V3
* SubGhz: fix syntax
* SubGhz: add Intertechno V3 dimming mode
* SubGhz: fix parsing event Magellen protocol
* SubGhz: fix syntax
* SubGhz: fix encoder dimm mode

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2022-08-31 23:27:34 +09:00
Skorpionm
311b60f815
[FL-2771] SubGhz: add protocol Prastel
Co-authored-by: あく <alleteam@gmail.com>
2022-08-31 23:21:36 +09:00
MX
4d388f4bde
SubGhz: add protocol Intertechno_V3 - OFW PR 1622
by Skorpionm
2022-08-30 21:55:25 +03:00
MX
079cadaeda
SubGhz: add protocol Prastel - OFW PR 1674
by Skorpionm
2022-08-30 21:25:08 +03:00
MX
0c0fb57410
Merge branch 'fz-dev' into dev 2022-08-30 21:23:28 +03:00
Eric Betts
8e9043003f
Picopass write ()
* [picopass] Prevent false success with non-standard key
* UI for writing
* worker function for write
* Update write command value
* Show card read failure message

Co-authored-by: あく <alleteam@gmail.com>
2022-08-30 22:59:34 +09:00
MX
5272b81ae6
Merge branch 'fz-dev' into dev 2022-08-30 11:42:39 +03:00
Sebastian Mauer
d76ba20652
Add support for Pyramid tags ()
* Add support for Pyramid tags
* Also add additional checks for AWID decoder to avoid missdetection

* lfrfid worker: reset GPIO_LOAD pin
* lfrfid: protocol viking, format
* lfrfid: protocol pyramid, format
* lfrfid: protocol paradox, format
* lfrfid: protocol jablotron, format
* lfrfid: protocol em4100, format
* lfrfid: increase reading time by 0.5s since protocol viking takes longer to read

Co-authored-by: SG <who.just.the.doctor@gmail.com>
2022-08-30 02:31:28 +10:00
Walter Doekes
611b7e15ed
Remove execute permissions from *.c and *.h files ()
* Add permission fix (no execute bit for source files) to fbt lint|format
* Remove execute bit from 59 source files using fbt format
* Also list which permissions are unwanted in lint.py
* Also remove exec permissions from lib/../rfal_nfc.c

Co-authored-by: あく <alleteam@gmail.com>
2022-08-30 01:20:57 +09:00
Sebastian Mauer
274f17ed5a
Add support for Viking tags ()
* Add support for Viking tags
Fix blocks_to_write for T5577
2022-08-30 01:19:56 +10:00
Sebastian Mauer
f09c5889dd
Add support for Jablotron tags ()
* Add support for Jablotron tags
2022-08-30 01:15:27 +10:00
Sebastian Mauer
39f936ce12
Add support for Paradox tags ()
* Add support for Paradox tags
2022-08-30 01:08:10 +10:00
Sebastian Mauer
1350dcaf63
Add support for PAC/Stanley tags ()
* Add support for PAC/Stanley tags
* Address review comments
2022-08-30 01:04:17 +10:00
MX
bacc8fa669
Merge pull request from mothball187/nrfsniffer-improvements
tweak sniff parameters for more speed and reliability
2022-08-28 05:59:06 +03:00
mothball187
79c4b617c1 tweak sniff parameters for more speed and reliability. clear sniff data on stop or exit. replace preamble GUI option with sample time option 2022-08-27 19:47:10 -07:00
MX
194727515b
subghz decode raw gui
by qistoph
2022-08-28 04:46:59 +03:00
MX
66e361714f
Merge branch 'fz-dev' into dev 2022-08-27 02:06:06 +03:00
Yukai Li
ab4bb55d0f
nfc: Change furi_assert to furi_crash for default switch cases ()
* nfc: Change furi_assert to furi_crash for default switch cases
* Nfc: change MiFare Ultralight crash message

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2022-08-26 01:07:54 +09:00
MX
f9d3d6bf5c
fix unirf crash, fix keeloq seed display, fix flipfrid
and add new unirf icon(animated) by Svarich
2022-08-25 03:21:44 +03:00
MX
1f68cf09eb
Merge branch 'fz-dev' into dev 2022-08-24 23:10:57 +03:00
Skorpionm
ce7b943793
[FL-2764] SubGhz: fix CAME, Chamberlain potocol ()
* SubGhz: fix guard time CAME potocol
* SubGhz: fix file upload Chamberlain
* Github: fix spelling

Co-authored-by: あく <alleteam@gmail.com>
2022-08-25 00:14:27 +09:00
SG
7e20df7e93
LFRFID RC fixes ()
* lfrid: fix write validation
* lfrid app: restore key data after write
2022-08-24 23:41:59 +09:00
MX
11e73cc670
Merge branch 'fz-dev' into dev 2022-08-23 19:20:06 +03:00
SG
9bfb641d3e
[FL-2529][FL-1628] New LF-RFID subsystem ()
* Makefile: unit tests pack
* RFID: pulse joiner and its unit test
* Move pulse protocol helpers to appropriate place
* Drop pulse_joiner tests
* Generic protocol, protocols dictionary, unit test
* Protocol dict unit test
* iButton: protocols dictionary
* Lib: varint
* Lib: profiler
* Unit test: varint
* rfid: worker mockup
* LFRFID: em4100 unit test
* Storage: file_exist function
* rfid: fsk osc
* rfid: generic fsk demodulator
* rfid: protocol em4100
* rfid: protocol h10301
* rfid: protocol io prox xsf
* Unit test: rfid protocols
* rfid: new hal
* rfid: raw worker
* Unit test: fix error output
* rfid: worker
* rfid: plain c cli
* fw: migrate to scons
* lfrfid: full io prox support
* unit test: io prox protocol
* SubGHZ: move bit defines to source
* FSK oscillator: level duration compability
* libs: bit manipulation library
* lfrfid: ioprox protocol, use bit library and new level duration method of FSK ocillator
* bit lib: unit tests
* Bit lib: parity tests, remove every nth bit, copy bits
* Lfrfid: awid protocol
* bit lib: uint16 and uint32 getters, unit tests
* lfrfid: FDX-B read, draft version
* Minunit: better memeq assert
* bit lib: reverse, print, print regions
* Protocol dict: get protocol features, get protocol validate count
* lfrfid worker: improved read
* lfrfid raw worker: psk support
* Cli: rfid plain C cli
* protocol AWID: render
* protocol em4100: render
* protocol h10301: render
* protocol indala26: support every indala 26 scramble
* Protocol IO Prox: render
* Protocol FDX-B: advanced read
* lfrfid: remove unused test function
* lfrfid: fix os primitives
* bit lib: crc16 and unit tests
* FDX-B: save data
* lfrfid worker: increase stream size. Alloc raw worker only when needed.
* lfrfid: indala26 emulation
* lfrfid: prepare to write
* lfrfid: fdx-b emulation
* lfrfid: awid, ioprox write
* lfrfid: write t55xx w\o validation
* lfrfid: better t55xx block0 handling
* lfrfid: use new t5577 functions in worker
* lfrfid: improve protocol description
* lfrfid: write and verify
* lfrfid: delete cpp cli
* lfrfid: improve worker usage
* lfrfid-app: step to new worker
* lfrfid: old indala (I40134) load fallback
* lfrfid: indala26, recover wrong synced data
* lfrfid: remove old worker
* lfrfid app: dummy read screen
* lfrfid app: less dummy read screen
* lfrfid: generic 96-bit HID protocol (covers up to HID 37-bit)
* rename
* lfrfid: improve indala26 read
* lfrfid: generic 192-bit HID protocol (covers all HID extended)
* lfrfid: TODO about HID render
* lfrfid: new protocol FDX-A
* lfrfid-app: correct worker stop on exit
* misc fixes
* lfrfid: FDX-A and HID distinguishability has been fixed.
* lfrfid: decode HID size header and render it ()
* lfrfid: rename HID96 and HID192 to HIDProx and HIDExt
* lfrfid: extra actions scene
* lfrfid: decode generic HID Proximity size lazily ()
* lib: stream of data buffers concept
* lfrfid: raw file helper
* lfrfid: changed raw worker api
* lfrfid: packed varint pair
* lfrfid: read stream speedup
* lfrfid app: show read mode
* Documentation
* lfrfid app: raw read gui
* lfrfid app: storage check for raw read
* memleak fix
* review fixes
* lfrfid app: read blink color
* lfrfid app: reset key name after read
* review fixes
* lfrfid app: fix copypasted text
* review fixes
* lfrfid: disable debug gpio
* lfrfid: card detection events
* lfrfid: change validation color from magenta to green
* Update core_defines.
* lfrfid: prefix fdx-b id by zeroes
* lfrfid: parse up to 43-bit HID Proximity keys ()
* Fbt: downgrade toolchain and fix PS1
* lfrfid: fix unit tests
* lfrfid app: remove printf
* lfrfid: indala26, use bit 55 as data
* lfrfid: indala26, better brief format
* lfrfid: indala26, loading fallback
* lfrfid: read timing tuning

Co-authored-by: James Ide <ide@users.noreply.github.com>
Co-authored-by: あく <alleteam@gmail.com>
2022-08-24 00:57:39 +09:00
Eric Betts
f92127c0a7
Picopass load/info/delete ()
* increase stack size
* rfalPicoPassPollerWriteBlock
* UI for loading picopass
* Move picopass parsing and add delete, delete success

Co-authored-by: あく <alleteam@gmail.com>
2022-08-23 22:19:17 +09:00
MX
56907f0c9f
Merge branch 'fz-dev' into dev 2022-08-23 11:11:11 +03:00
Skorpionm
57328761cf
[FL-2757] SubGhz: add protocol Magellen ()
* SubGhz: add decoder Paradox Wireless
* SubGhz: fix syntax
* SubGhz: rename paradox_wireless -> magellen, add encoder Magellen, parse event
* SuBghz: add unit_test Magellen

Co-authored-by: あく <alleteam@gmail.com>
2022-08-23 03:01:42 +09:00
gornekich
8992f8ac36
Fix mifare ultralight/ntag unlock
Co-authored-by: あく <alleteam@gmail.com>
2022-08-23 02:14:31 +09:00
hedger
9829145d8c
fbt: fixed include paths; added PVS-Studio configuration ()
* fbt: fixed include paths for generated version header
* lib: STM32CubeWB: refactored & cleaned up WPAN include paths
* hal: linter fixes for new headers
* fbt: added version_json target
* Added .pvsconfig; split common_defines.h into 2 files
* Added PVS-Studio basic configuration files; updated .gitignore

Co-authored-by: あく <alleteam@gmail.com>
2022-08-23 02:06:17 +09:00
MX
8f59217dd4
fixed typos in encoders 2022-08-17 23:33:41 +03:00
MX
cee1611583
Merge branch 'fz-dev' into dev 2022-08-17 23:25:29 +03:00
MX
9b13842467
Fix typos in subghz ()
Co-authored-by: あく <alleteam@gmail.com>
2022-08-18 01:40:09 +09:00
gornekich
560ea5f995
[FL-2714] New NFC info screens ()
* nfc: add scroll element for info
* widget: format lines for scroll text element
* widget: fix new line generation
* widget: finish element text scroll
* nfc: rework ultralight and NTAG info scenes
* nfc: rework mf classic info screens
* nfc: rework nfca info scenes
* nfc: fix mf ultralight navigation
* widget: add documentation
* nfc: rework bank card infO
* nfc: rework device info scene
* nfc: fix incorrect atqa order
* mf ultralight: remove unused function
* widget: add mutex for model protection
* widget: fix memory leak
* nfc: rework delete scene
* nfc: fix selected item in saved menu scene
* widget: fix naming in text scroll element
* nfc: fix navigation from delete success
* nfc: add dictionary icon
* widget: fix memory leak
2022-08-18 00:08:13 +09:00
MX
a896aa4113
allow setting custom flipper name
serial & ble mac generated from custom name (if set), CI support added too
2022-08-14 05:34:54 +03:00
MX
13465ef41d
Merged latest OFW changes 2022-08-12 05:18:27 +03:00
MX
db430214e2
Return storage fixes OFW PR 1563
This reverts commit b2bd1353a9.
2022-08-12 00:53:52 +03:00
Nikolay Minaylov
a5a79c5da3
[FL-2705] RPC APP fixes
Co-authored-by: あく <alleteam@gmail.com>
2022-08-12 00:37:23 +09:00
Skorpionm
36b8dfe655
[FL-2729] SubGhz: fix bett decoder ()
* SubGhz: fix bett decoder
* SubGhz: fix duration preamble bett protocol

Co-authored-by: あく <alleteam@gmail.com>
2022-08-12 00:21:13 +09:00
Skorpionm
a39111ade2
[FL-2723] SubGhz: add protocol Honeywell_WDB / Doorbell ()
* SubGhz: add protocol Honeywell_WDB (receive/save/load/transfer)
* SubGhz: add  parsing data honeywell
* SubGhz: fix UI CAME TWEE
* SubGhz: add unit_test honeywell_wdb

Co-authored-by: あく <alleteam@gmail.com>
2022-08-11 21:20:31 +09:00
あく
fae392d84e
[FL-2677] SubGhz: region provisioning ()
* FuriHal: region HAL draft
* FuriHal,SubGhz: complete region provisioning.
* Rpc: fix null pointer dereference.
* Cli: device info formatting
* FuriHal: region provisioning fixes and documentation.
2022-08-11 19:21:56 +10:00
MX
b2bd1353a9
Temporary drop storage fixes OFW PR 2022-08-10 16:53:54 +03:00
MX
338871cb2b
Merge branch 'fz-dev' into dev 2022-08-09 21:39:35 +03:00
hedger
1d50a5981e
[FL-2059] Storage fixes for handling empty files ()
* storage: fixed handling of zero-length files
* docs: added ReadMe.md for vscode workspace
* rpc: storage: improved empty file & error handling in write handler
* docs: markdown fix
* docs: typo fixes

Co-authored-by: SG <who.just.the.doctor@gmail.com>
Co-authored-by: あく <alleteam@gmail.com>
2022-08-10 00:57:11 +09:00
Astra
01eb92db06
Mifare Classic emulation fixes ()
* Add fix for field
* More small bugfixes
* Clean up
2022-08-10 01:45:52 +10:00
MX
6afc457807
Merge branch 'fz-dev' into dev 2022-08-07 21:25:02 +03:00
Skorpionm
416cce9ffc
[FL-2718, FL-2719] SubGhz: add protocol BERNER / ELKA / TEDSEN / TELETASTER / Doitrand / Marantec / Phoenix V2 (static mode) / Phox (static mode), fix Princeton ()
* SubGhz: add protocol marantec
* SubGhz: add protocol BERNER / ELKA / TEDSEN / TELETASTER
* SubGhz: add protocol Doitrand
* SubGhz: delete debug
* SubGhz: add protocol Phoenix V2 (static mode)
* SubGhz: fix serial decode Phoenix V2
* SubGhz: fix Princeton, display serial number and button on boot
* SubGhz: fix Bett decoder and fix unit_test
* SubGhz: update test_random_raw for unit_test

Co-authored-by: あく <alleteam@gmail.com>
2022-08-08 00:56:45 +09:00
gornekich
173c94156d
NFC: Add Skylanders support ()
* nfc: add skylanders support
* nfc: format sources

Co-authored-by: あく <alleteam@gmail.com>
2022-08-08 00:33:14 +09:00
Peter Seprus
f3d7d7dba0
Extend random name generator ()
* Extend random name generator
* Format sources

Co-authored-by: あく <alleteam@gmail.com>
2022-08-08 00:28:04 +09:00
Vitaliya Chumakova
9ffcc52ada
Mifare Ultralight authentication ()
* mifare ultralight auth prototype
* it works!
* Reference source
* use countof
* rework everything
* oops forgot scenes
* build: revert changes in manifest, stack size
* build: fix buid, format sources
* nfc: update unlock ultralight GUI
* nfc: fix byte input header
* nfc: add new scenes for locked ultralight
* nfc: add data read to ultralights
* nfc: add unlock option in mf ultralight menu
* nfc: add data read init in ultralight generation
* nfc: lin sources, fix unlocked save
* nfc: format python sources
* nfc: clean up

Co-authored-by: gornekich <n.gorbadey@gmail.com>
2022-08-08 00:09:00 +09:00
MX
4a4f3d2b27
err messages 2022-08-06 05:41:06 +03:00
MX
ffc3b634b8
a bit of fixes 2022-08-06 05:18:05 +03:00
MX
3cf13c71d9
replace sprintf as it not used anymore 2022-08-03 22:09:39 +03:00
MX
81be4dfe13
Merge branch 'fz-dev' into dev 2022-08-03 21:09:13 +03:00
HexPandaa
4c499d9045
Fix directory name in lib readme ()
Co-authored-by: あく <alleteam@gmail.com>
2022-08-04 02:13:06 +09:00
Fedor Indutny
3ee93e1a82
nfc: make dict attack more interactive ()
* nfc: deduplify dict attack worker code
* nfc: make dict attack more interactive

Co-authored-by: gornekich <n.gorbadey@gmail.com>
Co-authored-by: あく <alleteam@gmail.com>
2022-08-04 02:07:35 +09:00
Georgii Surkov
135fbd294b
[FL-2693] RW buffered streams ()
* Add write methods for stream cache
* Fix logical error
* Implement write cache for buffered file streams
* Minor code refactoring
* Less ugly code
* Better read() implementation
* Intermediate implementation
* Fix logical error
* Code cleanup
* Update FFF comments
* Fix logical error
* Github: rsync with delete

Co-authored-by: あく <alleteam@gmail.com>
2022-08-04 01:43:14 +09:00
SG
bc34689ed6
Make printf great again ()
* Printf lib: wrap *printf* functions
* Printf lib, FW: drop sprintf. Dolphin: dump timestamp as is, wo asctime.
* FW: remove sniprintf, wrap assert functions
* Printf lib: wrap putc, puts, putchar
* Printf: a working but not thread-safe concept.
* Poorly wrap fflush
* stdglue: buffers
* Core: thread local buffers
* Core: move stdglue to thread api, add ability to get FuriThread instance of current thread.
* RPC tests: replace sprintf with snprintf
* Applications: use new stdout api
* Printf lib: wrap more printf-like and stdout functions
* Documentation
* Apps: snprintf size fixes

Co-authored-by: あく <alleteam@gmail.com>
2022-08-04 01:00:17 +09:00
MX
aa40f428a5
Merge branch 'fz-dev' into dev 2022-08-02 19:27:01 +03:00
Max Andreev
93a4b9c4a9
[FL-2649] Drop Docker in CI/CD ()
* enable sparseCheckout, moving github actions from docker to raw shell
* fix missing known_hosts while setting ssh priv key
* fix build.yml
* add ssh key to upload just in time
* fixing rsync syntax
* fix build.yml
* try to fix build.yml again
* testing rsync
* test rsync again
* add linters
* add Black Python linter to submodules
* add Black submodule
* add working python linter target, dirty file list
* up toolchain to version 4
* up toolchain to ver 5
* up toolchain version to 6
* fbt: using black 22.6.0
* remove Black submodule, up toolchain to ver 7
* fbt: added lint_py, format_py targets
* add pvs_studio workflow
* fix pvs_studio segfault
* fix pvs_studio command
* fix pvs_studio command 2
* show env before run pvs_studio
* try to debug pvs_studio
* try to strace pvs_studio..
* Add FBT_TOOLCHAIN_PATH, MacOS Rosseta check, and ignore non-x86_64 linux architectures
* prevent redownloading toolchain on github-runners
* fix toolchain download exitcode
* add strace to debug pvs_studio segfault
* disable strace to catch full code dump
* Add './fbt cli' target to access Flipper CLI via PySerial
* remove pvs_studio from this PR
* removing clang-format from toolchain due errors
* make source easy, and fix some mistakes found by @hedger
* Add check_submodules workflow, some fixes
* fixing mistakes

Co-authored-by: hedger <hedger@nanode.su>
Co-authored-by: hedger <hedger@users.noreply.github.com>
2022-08-02 23:05:31 +09:00
Georgii Surkov
01afb289c0
[FL-2713] Buffered file streams fix ()
* Fix incorrect buffered stream behaviour
* Add specific tests
* Make the test fail on wrong behaviour
* Better names

Co-authored-by: あく <alleteam@gmail.com>
2022-08-02 22:17:37 +09:00
MX
a74262cef2
update unirf / other fixes 2022-08-01 23:20:04 +03:00
MX
a5dd804d3e
Merge remote-tracking branch 'origin/dev' into dev 2022-08-01 17:36:16 +03:00
MX
c0f0ec3c95
Merge branch 'fz-dev' into dev 2022-08-01 17:30:50 +03:00
Skorpionm
4da6eba395
[FL-2706, FL-2709] SubGhz: checking saved key files for length ()
* [FL-2706] SubGhz: checking saved key files for length
* SubGhz: fix RAW file upload error
* [FL-2709] GubGhz: RAW screen fix

Co-authored-by: あく <alleteam@gmail.com>
2022-08-01 21:24:21 +09:00
TQMatvey
a15954910e SubGhz: Fix Sd: being inside the Send button 2022-08-01 15:29:48 +07:00
MX
712a48b5db
Fix typo in subghz ()
* fix typo across subghz

Co-authored-by: あく <alleteam@gmail.com>
Co-authored-by: Aleksandr Kutuzov <aku@plooks.com>
2022-07-31 08:34:38 +09:00
MX
79e7636507
fmt 2022-07-29 19:34:41 +03:00
MX
f4cc9e5de7
plugins & badusb
if author want their plugin to be removed - create issue, thanks
2022-07-29 17:48:51 +03:00
MX
05a1ef0e71
Merge branch 'fz-dev' into dev 2022-07-28 18:30:09 +03:00
gornekich
c40e8811d6
[FL-2701], [FL-2702], [FL-2699] NFC fixes ()
* nfc: change read scene views
* nfc: rework return after save success
* nfc: add fallback to read UID of unrecognized iso14443-3
* nfc: show mifare desfire on read success
* nfc: add restore original confirm scene
* nfc: fix icon name
* nfc: clear 6 bit in SAK to emulate 14443-4 uids
* nfc: don't change original sak
2022-07-28 21:34:28 +09:00
Eng1n33r
b6ab686a34
fix typo 2022-07-27 15:58:32 +03:00
Eng1n33r
a79dea948b
Merge branch 'fz-dev' into dev 2022-07-26 21:11:03 +03:00
Eng1n33r
acd5430c21
Merge branch 'fz-dev' into dev 2022-07-26 21:09:31 +03:00
hedger
80a7de8078
updater: fixed dolphin level not being migrated () 2022-07-27 02:13:09 +09:00
gornekich
9c59bcd776
[FL-2605] NFC new design ()
* 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
Skorpionm
ec19c11dbe
[FL-2669] SubGhz: add support for loading custom presets ()
* 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
Skorpionm
ed7db336c1
[FL-2684, FL-2685] bugfix subghz ()
* [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
Eng1n33r
2c0dcc808d
Merge branch 'fz-dev' into dev 2022-07-26 15:52:19 +03:00
hedger
056446dfed
[FL-2675] /int space reservation ()
* 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
Eng1n33r
15d5a0c1f2
Merge branch 'fz-dev' into dev 2022-07-25 19:46:29 +03:00
Eric Betts
cd77b93f26
Picopass: dump full card, extract some details ()
* 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
Yukai Li
f8e0ec42c5
nfc: NTAG203 support ()
* 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
Georgii Surkov
c22d66590e
[FL-2682] Allow spaces in file names 2022-07-25 20:23:47 +09:00
Eng1n33r
087c66c8e4
Merge branch 'flipperdevices:dev' into dev 2022-07-22 20:22:15 +03:00
Georgii Surkov
16e598b2c0
[FL-2655, FL-2650] Buffered file streams ()
* 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
Eng1n33r
1fdae5931b
Merge remote-tracking branch 'origin/dev' into dev 2022-07-20 19:03:00 +03:00
Eng1n33r
87cfec3e5d
FAAC SLH correct seed view 2022-07-20 16:37:55 +03:00
Eng1n33r
ad970c6c6d
Merge branch 'fz-dev' into dev 2022-07-20 16:28:48 +03:00
あく
e3c7201a20
Furi: core refactoring and CMSIS removal part 2 ()
* 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
Eng1n33r
27b352a200
increase hold duration 2022-07-17 11:09:30 +03:00
Eng1n33r
855c015ea1
Merge branch 'flipperdevices:dev' into dev 2022-07-17 09:19:23 +03:00
Eric Betts
edc6ca0c8f
Log MFC nonces for use with mfkey32v2 ()
Co-authored-by: あく <alleteam@gmail.com>
2022-07-17 15:13:51 +09:00
Eric Betts
c29ab50016
Calculate picopass CRC dynamically ()
Co-authored-by: あく <alleteam@gmail.com>
2022-07-17 15:01:19 +09:00
Eng1n33r
420af35f89
FAAC SLH/Spa 20-bits counter 2022-07-17 08:05:09 +03:00
Eng1n33r
d838bbdd36
An-Motors and HCS101 rolling emulation 2022-07-14 22:44:52 +03:00
Eng1n33r
521db5dc0d
Merge branch 'fz-dev' into dev 2022-07-14 20:24:33 +03:00
SG
6ac1ed2aaa
IR: increase raw timings amount ()
Co-authored-by: あく <alleteam@gmail.com>
2022-07-15 02:06:25 +09:00
Eng1n33r
5025e86af7
Merge branch 'flipperdevices:dev' into dev 2022-07-08 15:57:08 +03:00
Eric Betts
f46ae5a704
Namespace loclass library ()
* 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
Eng1n33r
968c0cb1ab
Merge branch 'flipperdevices:dev' into dev 2022-07-06 17:37:42 +03:00
Astra
c72b678510
SubGh: fix a race condition () 2022-07-06 23:28:31 +09:00
Eng1n33r
89f0a6c8fd
Merge branch 'flipperdevices:dev' into dev 2022-07-05 19:04:12 +03:00
gornekich
ece142a667
Fix buffer overflow in mifare classic lib 2022-07-06 00:41:19 +09:00
Equip
e147b2ceea
Added Javacard Emulated mifare classic 1K compatibility ()
* Add Mifare classic 1k JC handling
  Add mifare classic Javacard emulation handling
* Adding MIFARE 1K Javacard Emulation Compatibility
  MIFARE Classic 1K Cards from NXP have the SAK value of 0x08.
  MIFARE Classic 1K Cards that are emulated via javacard applet have an SAK value of 0x09.
  Adding the SAK values accordingly so that Javacard emulated mifare classic tags are properly handled.
* update mifare_common.c
  added javacard emulation handling for mifare classic 1k

Co-authored-by: gornekich <n.gorbadey@gmail.com>
Co-authored-by: あく <alleteam@gmail.com>
2022-07-06 00:34:21 +09:00
Eric Betts
8af2198684
Iclass UI ()
* 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
Eng1n33r
41341658dd
Merge branch 'fz-dev' into dev 2022-07-04 21:57:40 +03:00
hedger
b95cd2df14
[FL-2578] Updater fixes related to /int handling ()
* 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
Eng1n33r
cba5cb745c
Merge remote-tracking branch 'flipperdevices/dev' into dev 2022-07-03 21:04:15 +03:00
gornekich
5769595e67
NFC emulation software tunning ()
* 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
Eric Betts
1975868ed8
PicoPass / iClass ()
* 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
Eng1n33r
e8c392c60a Merge remote-tracking branch 'flipperdevices/dev' into dev 2022-07-01 01:52:45 +03:00
quantum-x
8632c77d68
1342 add mifare infineon ()
* Adding MIFARE 1K Infineon Compatibility
  As per Issue ,
  MIFARE Classic 1K Cards from NXP have the SAK value of 0x08.
  MIFARE Classic 1K Cards from Infineon have an SAK value of 0x88.
  Adding the SAK values accordingly so that Infineon tags are properly handled.
2022-06-30 23:47:08 +09:00
Eng1n33r
158e2c89e3
fix typo 2022-06-26 23:03:39 +03:00
r3df0xx
f2c5aafb0c Update nanopb 2022-06-26 21:28:08 +03:00
Eng1n33r
1c55a55ddd
adaptation to the new build system + fixes 2022-06-26 20:57:29 +03:00
Skorpionm
6d38740a46
SubGhz: fix protocol scher_khan ()
Co-authored-by: あく <alleteam@gmail.com>
2022-06-26 21:16:56 +09:00
Eng1n33r
aaeede7793
Merge branch 'fz-dev' into dev 2022-06-26 15:16:32 +03:00
hedger
f3b1475ede
[FL-2052] New build system based on scons () 2022-06-26 21:00:03 +09:00
Eng1n33r
767f7ff92e code formatted 2022-06-24 13:01:41 +03:00
Eng1n33r
aa967d63ea
Merge branch 'flipperdevices:dev' into dev 2022-06-22 18:22:06 +03:00
Skorpionm
c79fb61909
SubGhz: add protocol PowerSmart / SolarSmart Roller Shutters ()
* 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
Eng1n33r
c6a3b71db6 Merge branch 'fz-dev' into dev 2022-06-21 18:21:49 +03:00
Yukai Li
556af0b82b
nfc: NTAG21x complete emulation ()
* 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
Eng1n33r
d892021272
Merge branch 'flipperdevices:dev' into dev 2022-06-21 17:31:47 +03:00
hedger
eb31fed0e2
[FL-2556] Update complete screen ()
* 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
Eng1n33r
79f216ec48
Merge branch 'flipperdevices:dev' into dev 2022-06-20 18:58:48 +03:00
あく
839e52ac32
[FL-2591] Furi: remove CMSIS thread api, migrate to FuriThread, remove unused CMSIS APIs ()
* Furi: remove CMSIS thread api, migrate to FuriThread, remove unused CMSIS APIs
* Furi: magic thread catcher validating thread completion; backtrace improver
* Furi: allow furi_thread_get_current_id outside of thread context
* Furi: use IRQ instead of ISR for core primitives
2022-06-20 18:54:48 +04:00
r3df0xx
43e26b8f83 Update came_atomo.c
remove excess logging to save more free space
2022-06-17 18:39:15 +03:00
r3df0xx
b09801e677 Update came_atomo.c
better encoder ?
2022-06-17 17:20:50 +03:00
r3df0xx
24cf48e8e9 Update star_line.c 2022-06-16 22:12:39 +03:00
r3df0xx
771fa0f41d Update keeloq.c 2022-06-16 21:58:13 +03:00
r3df0xx
9f2fdc5a6f Fix protocol Scher-Khan, remove excess star-line code 2022-06-16 20:57:27 +03:00
r3df0xx
0a3aabc60d Fix KeeLoq Uknown behavior, patch StarLine same way 2022-06-16 19:58:34 +03:00
r3df0xx
522c0275b1 few improvements
Remove unused sub-ghz AU patable, remove Atomo excess code, add seed value show on KeeLoq screen.
2022-06-14 21:39:42 +03:00
r3df0xx
e80147bf73 Update came_atomo.c
proper cnt_2 work
2022-06-14 19:25:23 +03:00
r3df0xx
c0fbe42ba3 Update came_atomo.c
remove incorrect "dma impulse takedown"
2022-06-13 00:27:15 +03:00
r3df0xx
1413f8e34f Came Atomo emulation improvements
+ clean-up a little
2022-06-12 23:33:05 +03:00
r3df0xx
1f4020240b KeeLoq protocol rework. Atomo emulation beta-test.
Fix critical issue with keeloq manufacturer name random change. Now you can emulate any manufacturer system with proper key handling.
Came Atomo parcel counter increasing and emulation. Beta test (need rework signal header and make button counter cycle array for encoder).
2022-06-11 22:53:23 +03:00
r3df0xx
a62f3416af Update came_atomo.c 2022-06-09 23:29:41 +03:00
r3df0xx
97676e79a8 Update came_atomo.c
add header (beta-test)
2022-06-09 19:26:48 +03:00
Eng1n33r
6314272a71
Merge branch 'flipperdevices:dev' into dev 2022-06-09 15:03:18 +03:00
Kevin Wallace
9c9f66a30f
nfc: add debug PCAP output, refactor Mifare DESFire following ()
* nfc: refactor nfc_worker_read_mifare_desfire to use furi_hal_nfc_tx_rx
  Renames furi_hal_nfc_exchange_full to furi_hal_nfc_tx_rx_full, and
  rewrites it to use furi_hal_nfc_tx_rx.  This eliminates the final
  remaining use of furi_hal_nfc_exchange, so remove that.
* nfc: write debug.pcap when debug mode enabled
  Limited to NFC protocols that use furi_hal_nfc_tx_rx to communicate.
* switch to Doxygen style comment

Co-authored-by: Kevin Wallace <git+flipperzero@kevin.wallace.seattle.wa.us>
Co-authored-by: あく <alleteam@gmail.com>
2022-06-09 17:35:34 +09:00
Nikolay Minaylov
cfb1a0d01c
Hardware LED blinking ()
* Hardware LED blinking notification messages
* Blink: fix crash on exit, reset blinking on exit
* Lib: remove unused UNUSED

Co-authored-by: あく <alleteam@gmail.com>
2022-06-09 16:33:46 +09:00
Nikolay Minaylov
41cf421234
[FL-2565] Archive: switch to browser worker 2022-06-09 16:09:52 +09:00
r3df0xx
9a15634705 Update came_atomo.c
working parcel counter ++
2022-06-08 18:52:37 +03:00
r3df0xx
6cb484375d Update came_atomo.c
fix DMA delta impulse
2022-06-08 00:14:19 +03:00
r3df0xx
6e27b0cecb Update came_atomo.c
revert header, need to put out of loop
2022-06-07 23:12:49 +03:00
r3df0xx
02f7d046a9 Update came_atomo.c 2022-06-07 23:00:23 +03:00
r3df0xx
1fbe15c1ce Update came_atomo.c 2022-06-07 22:54:11 +03:00
r3df0xx
a29e34c3f4 Update came_atomo.c
code make-up, fix pause to 68ms
2022-06-07 20:01:22 +03:00
r3df0xx
d057c63344 Update came_atomo.c 2022-06-07 18:50:35 +03:00
r3df0xx
1b332c0323 Update came_atomo.c 2022-06-07 17:26:19 +03:00
r3df0xx
e3395ae36e Update came_atomo.c
test invert back
2022-06-06 17:53:13 +03:00
r3df0xx
78de90d429 Update came_atomo.c
invert data to upload
2022-06-06 16:25:46 +03:00
r3df0xx
42bf635ab3 data_2 in generic for Atomo protocol
split data concept for such case
2022-06-05 17:02:32 +03:00
r3df0xx
4318931c87 Update came_atomo.c
dumb transmition, need to fix encoder params
2022-06-05 13:00:24 +03:00
r3df0xx
a9d06393ac Update came_atomo.c
temp fix encoder size
2022-06-05 12:35:26 +03:00
r3df0xx
d80118a4a3 Came Atomo save&send (beta-test)
Testing algorythm and tx work.
2022-06-04 22:41:25 +03:00
r3df0xx
45f6b18e21 Update came_atomo.c
log decrypted data
2022-06-04 14:28:22 +03:00
r3df0xx
d18b402cae Update came_atomo.c
correct btn decode
2022-06-04 14:07:33 +03:00
r3df0xx
77206f9b5d atomo correct recieve (beta test) 2022-06-04 03:32:21 +03:00
r3df0xx
8400fcce27 Update came_atomo.c
show inverted data
2022-06-03 21:44:55 +03:00
Eng1n33r
baaf689141 Merge last fz-dev into dev 2022-06-01 16:20:10 +03:00
Eng1n33r
22cbe276a8 big merge with fz main repo 2022-06-01 16:07:53 +03:00
Skorpionm
b625e84424
SubGhz: Add Chamberlain 7-Code, Chamberlain 8-Code, Chamberlain 9-Code ()
* SubGhz: fix protocol MegaCode start duration
* SubGhz:  add reception Chamberlain Code 7, 8, 9 protocols
* SubGhz: Generating an upload from HEX data and a duration of 1 bit
* SubGhz: add transmit Chamberlain Code 7, 8, 9 protocol
* SubGhz: Rename Firefly -> Linear

Co-authored-by: あく <alleteam@gmail.com>
2022-06-01 21:17:21 +09:00
UberGuidoZ
2c4b2b8775
Fixing typo across many files ()
* Update furi_hal_subghz.c
* Update subghz_scene_read_raw.c
* Update subghz_i.c
* Update came_twee.c
* Update secplus_v2.c
2022-06-01 07:35:31 +09:00
Skorpionm
66dbb68947
SubGhz: support 310 MHz and fix ()
* SubGhz: add frequency support 310 MHz
* SubGhz: deleting a TMP file using the "Erase" button in Read RAW
* SubGhz: fix frequency analyzer scan speed
* SubGhz: fix start duration came_atomo protocol
* SubGhz: refactoring subghz_setting
* SubGhz: refactoring load setting frequency analyzer
* SubGhz: fix load setting,  default frequency
* SubGhz: patch raw temp file remove code to work with string_t
* Storage: parallel safe cli
* SubGhz: new frequency settings loading system
* Assets: recompile to include latest subghz custom frequency control changes

Co-authored-by: あく <alleteam@gmail.com>
2022-06-01 00:50:50 +09:00
r3df0xx
b23b3c9e8d Revert "fetch big commit from upstream"
This reverts commit 6634999113.
2022-05-27 22:18:35 +03:00
r3df0xx
6634999113 fetch big commit from upstream 2022-05-27 22:12:40 +03:00
r3df0xx
cf714d3e66 Revert "Fetch upstream dev changes"
This reverts commit 6e88e33171, reversing
changes made to 580fe77fb7.
2022-05-27 17:14:43 +03:00