Commit graph

1554 commits

Author SHA1 Message Date
MX
4fd0ce3eb5
fix dea mio formula
thanks @Leptopt1los for working on that instead of sleeping lol
2024-01-31 00:50:52 +03:00
Nikita Vostokov
51d8b18f3e Read SFI until PAN find
* get rid of input result buffers
2024-01-30 00:26:16 +00:00
Methodius
ce80586822
Merge remote-tracking branch 'upstream/dev' into dev 2024-01-30 02:22:28 +09:00
Methodius
fee4a5a8f7
EMV save/load dump options added 2024-01-30 02:22:21 +09:00
MX
35a93e6eef
update honeywell proto to latest one
by Willy-JL
2024-01-29 17:32:25 +03:00
Methodius
3612814a18
back to parser 2024-01-29 23:12:17 +09:00
Nikita Vostokov
1165e25f00 Read all files 2024-01-29 13:48:33 +00:00
Nikita Vostokov
653af9a5cd Read PIN tries and transactions counters 2024-01-29 00:07:17 +00:00
Nikita Vostokov
786f3568c0 Fix retry loop (on Android HCE) 2024-01-28 20:18:17 +00:00
MX
830dbc7a71
subghz dea_mio fixes and programming mode support 2024-01-28 22:47:47 +03:00
Nikita Vostokov
4b786fb77e Refactor response decoder
Read transactions history
2024-01-28 03:57:12 +00:00
MX
16b8fa4715
Subghz save files with receive time [ci skip]
+ merge better scene_save_name code (removing kostily)
some modifications to original code was made to keep previous formats
original implementation by Willy-JL

Source:
a1c7dc5eaa
7e7509d481 (diff-1708ba08196de5331f4b4c3d8e13162e78d5edb33e1308c1b4cc09975264151e)
2024-01-28 06:45:33 +03:00
MX
1ceacc6555
subghz keeloq fix emulation for multiple systems
and extend add manually support for 2 of them
2024-01-27 18:55:50 +03:00
MX
acd6445d3b
fix NFC V dumps v3 crashing at info page 2024-01-27 03:20:53 +03:00
Nikita Vostokov
5e384ccc43 Fix log 2024-01-23 22:40:38 +00:00
Nikita Vostokov
3fce83eb79 Process error codes 2024-01-23 22:40:38 +00:00
Nikita Vostokov
3f6092d95c Don't stop if SELECT APPLICATION failed 2024-01-23 22:40:38 +00:00
Nikita Vostokov
87f8f1d9c4 Remove kostyly, add raw debug 2024-01-23 22:40:38 +00:00
Methodius
84abb53712
Track2 support
Co-authored-by: Nikita Vostokov <1042932+wosk@users.noreply.github.com>
2024-01-23 19:51:59 +09:00
Methodius
39e9dd0ab0
T5577 write/clear with custom password option added 2024-01-20 07:47:45 +03:00
Methodius
ecabcbc58a
Kostyly for iso14443-4a poller (pwt_ext)
Co-authored-by: Nikita Vostokov <1042932+wosk@users.noreply.github.com>
2024-01-20 05:42:35 +09:00
gornekich
7db8d5aa82
[FL-3648] Mf DESFire fixes (#3367)
* mf desfire: process loading applications with 0 files
* mf desfire: add HID desfire support
* nfc: fix mfdes loading and rendering crashes
* mf desfire: change handling HID cards
* mf desfire: fix PVS warnings
* mf desfire: fix cmp logic

Co-authored-by: あく <alleteam@gmail.com>
2024-01-19 23:24:38 +03:00
John Scarfone
f37d00a8ba
Bugfix: Strip last parity bit from decoded FDX-B data (#3199)
* remove last parity bit from buffer
* add unit tests
* zap old debug logging

---------

Co-authored-by: Sergei Gavrilov <who.just.the.doctor@gmail.com>
2024-01-19 23:22:28 +03:00
あく
11ecb54576
FuriHal: interrupt priorities and documentation (#3366)
* FuriHal: interrupt priorities and documentation
* FuriHal: wording
* FuriHal: update interrupt docs
* FuriHal: add more interrupt priority levels
* FuriHal: proper furi_check in interrupts, shift default level to 10

---------

Co-authored-by: hedger <hedger@users.noreply.github.com>
2024-01-19 23:22:21 +03:00
MX
a1e62c3e76
FuriHal: UART refactoring (#3211)
* FuriHal: UART refactoring
* ApiSymbols: add furi_record_destroy
* FuriHal: cleanup serial API, add logging configuration in RTC
* FuriHal: hide private part in _i header. Toolbox: cleanup value index. SystemSettings: logging device and baudrate.
* FuriHal: RTC logging method documentation
* Synchronize API Symbols
* Furi: mark HEAP_PRINT_DEBUG as broken
* FuriHal: furi_hal_serial, add custom IRQ func
* Fix PR review issues
* FuriHal: UART add reception DMA (#3220)
* FuriHal: add DMA serial rx mode
* usb_uart_bridge: switch to working with DMA
* Sync api symbol versions
* FuriHal: update serial docs and api
* FuriHal: Selial added similar API for simple reception mode as with DMA
* FuriHal: Update API target H18
* API: ver API H7
* FuriHal: Serial error processing
* FuriHal: fix furi_hal_serial set baudrate
* Sync api symbols
* FuriHal: cleanup serial isr and various flag handling procedures
* FuriHal: cleanup and simplify serial API
* Debug: update UART Echo serial related flags
* FuriHal: update serial API symbols naming
* FuriHalSerial: various improvements and PR review fixes
* FuriHal: proper ISR function signatures

---------

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: SkorP <skorpionm@yandex.ru>
Co-authored-by: Skorpionm <85568270+Skorpionm@users.noreply.github.com>
2024-01-19 23:20:37 +03:00
Methodius
b5964b9795
Enum order fixes by Willy-JL
Co-authored-by: Willy-JL <49810075+Willy-JL@users.noreply.github.com>
2024-01-20 05:18:16 +09:00
MX
36114de5f7
SubGhz: add subghz tx_from_file CLI cmd, major TX flow refactoring, various improvements and bug fixes (#3302)
By Skorpionm
* SubGhz: add cmd CLI "subghz tx_from_file"
* SubGhz:  add sending raw.sub files
* SubGhz: add load custom preset
* SubGhz: remove unnecessary files
* SubGhz: change message
* SubGhz: fix printf formatting
* SubGhz: Cli refactoring code
* FuriHal: add furi_hal_subghz Tx Rx IDLE state switching test
* SubGhz: remove debug code, fix ext driver compilation
* SubGhz: cleanup code, move wait status routine to cc1101 driver
* SubGhz: proper pin mode transition in tx stop isr routine, proper DMA and ISR priorities, fix issue with async tx stuck
* SubGhz: simplify async tx stop flow, fix ISR ARR check condition race
* SubGhz: check ARR only when we transmitting
* SubGhz: check ARR only when we transmitting for ext cc1101
* SubGhz: lower ISR priorities to safe level
* SubGhz: proper gpio config, comments update

Co-authored-by: あく <alleteam@gmail.com>
2024-01-19 22:45:59 +03:00
gornekich
4f50ef9b54
[FL-3648] Mf DESFire fixes (#3367)
* mf desfire: process loading applications with 0 files
* mf desfire: add HID desfire support
* nfc: fix mfdes loading and rendering crashes
* mf desfire: change handling HID cards
* mf desfire: fix PVS warnings
* mf desfire: fix cmp logic

Co-authored-by: あく <alleteam@gmail.com>
2024-01-16 18:41:51 +09:00
John Scarfone
f9f67e6d54
Bugfix: Strip last parity bit from decoded FDX-B data (#3199)
* remove last parity bit from buffer
* add unit tests
* zap old debug logging

---------

Co-authored-by: Sergei Gavrilov <who.just.the.doctor@gmail.com>
2024-01-16 18:31:50 +10:00
あく
dd182ab179
FuriHal: interrupt priorities and documentation (#3366)
* FuriHal: interrupt priorities and documentation
* FuriHal: wording
* FuriHal: update interrupt docs
* FuriHal: add more interrupt priority levels
* FuriHal: proper furi_check in interrupts, shift default level to 10

---------

Co-authored-by: hedger <hedger@users.noreply.github.com>
2024-01-16 03:17:07 +04:00
あく
fc043da9c6
FuriHal: UART refactoring (#3211)
* FuriHal: UART refactoring
* ApiSymbols: add furi_record_destroy
* FuriHal: cleanup serial API, add logging configuration in RTC
* FuriHal: hide private part in _i header. Toolbox: cleanup value index. SystemSettings: logging device and baudrate.
* FuriHal: RTC logging method documentation
* Synchronize API Symbols
* Furi: mark HEAP_PRINT_DEBUG as broken
* FuriHal: furi_hal_serial, add custom IRQ func
* Fix PR review issues
* FuriHal: UART add reception DMA (#3220)
* FuriHal: add DMA serial rx mode
* usb_uart_bridge: switch to working with DMA
* Sync api symbol versions
* FuriHal: update serial docs and api
* FuriHal: Selial added similar API for simple reception mode as with DMA
* FuriHal: Update API target H18
* API: ver API H7
* FuriHal: Serial error processing
* FuriHal: fix furi_hal_serial set baudrate
* Sync api symbols
* FuriHal: cleanup serial isr and various flag handling procedures
* FuriHal: cleanup and simplify serial API
* Debug: update UART Echo serial related flags
* FuriHal: update serial API symbols naming
* FuriHalSerial: various improvements and PR review fixes
* FuriHal: proper ISR function signatures

---------

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: SkorP <skorpionm@yandex.ru>
Co-authored-by: Skorpionm <85568270+Skorpionm@users.noreply.github.com>
2024-01-16 03:09:37 +04:00
Methodius
4b7b0ad6b9
EMV parser added 2024-01-16 02:43:17 +09:00
Nikita Vostokov
08a5adf18e
Fix EMV reading
2 MasterCard were successfully read

Issues: some VISA and Mastercard and all UnionPay can't be read

TODO: currency, country, Application name
TODO: Support multi application mode to read co-branded card.
2024-01-15 19:03:31 +09:00
Methodius
3a82b3aa3c
Merge remote-tracking branch 'upstream/dev' into dev 2024-01-15 19:03:15 +09:00
Skorpionm
d73d007797
SubGhz: add subghz tx_from_file CLI cmd, major TX flow refactoring, various improvements and bug fixes (#3302)
* SubGhz: add cmd CLI "subghz tx_from_file"
* SubGhz:  add sending raw.sub files
* SubGhz: add load custom preset
* SubGhz: remove unnecessary files
* SubGhz: change message
* SubGhz: fix printf formatting
* SubGhz: Cli refactoring code
* FuriHal: add furi_hal_subghz Tx Rx IDLE state switching test
* SubGhz: remove debug code, fix ext driver compilation
* SubGhz: cleanup code, move wait status routine to cc1101 driver
* SubGhz: proper pin mode transition in tx stop isr routine, proper DMA and ISR priorities, fix issue with async tx stuck
* SubGhz: simplify async tx stop flow, fix ISR ARR check condition race
* SubGhz: check ARR only when we transmitting
* SubGhz: check ARR only when we transmitting for ext cc1101
* SubGhz: lower ISR priorities to safe level
* SubGhz: proper gpio config, comments update

Co-authored-by: あく <alleteam@gmail.com>
2024-01-15 14:38:43 +09:00
MX
34517ec43e
update honeywell
by Willy-JL

aab879bebf/lib/subghz/protocols/honeywell.c
2024-01-13 15:30:26 +03:00
Methodius
0d40e57cc8
LF RFID: Write with random password added [ci skip] 2024-01-13 02:39:50 +03:00
Methodius
d337222cbe
minor fixes 2024-01-12 22:14:21 +09:00
MX
81efe25a6e
Merge branch 'ofw_dev' into dev 2024-01-12 15:39:40 +03:00
Leptopt1los
d289545bf8
NFC: system dict skip when user dict is skipped fix (#3356)
* NFC: system dict skip when user dict is skipped fix
* MFC poller allocator fix (by gornekich)

Co-authored-by: gornekich <n.gorbadey@gmail.com>
2024-01-12 17:41:19 +09:00
Methodius
e8b468b492
EMV Poller fix 2024-01-12 17:08:34 +09:00
MX
8a3557bc97
merge FuriHal: fix start duration furi_hal_subghz_async_tx 2024-01-11 17:33:29 +03:00
Methodius
e9454b629b
NFC fap: EMV protocol added 2024-01-11 18:11:54 +09:00
Skorpionm
34539cda17
FuriHal: fix start duration furi_hal_subghz_async_tx (#3230)
* FuriHal: fix start duration furi_hal_subghz_async_tx
* FuriHal: add check min duration arr for the first level
* FuriHal: fix conflict dev
* SubGhz: fix unit_test
* FuriHal: subghz internal fix start/stop transmit duration
* Drivers: subghz external fix start/stop transmit duration
* FuriHal: subghz optimization
* SubGhz: fix unit_test subghz
* FuriHal: subghz fix end duration if size == size dma buf
* FuriHal: revert enum values order, remove garbage
* FuriHal: revert one more small bit in subghz
* FuriHal: handle various corner cases in subghz transmission
* FuriHal: cleanup subghz code
* FuriHal: add parenthesis around value in subghz defines
* FuriHal: add packer subghz_async_tx
* FuriHal: more reliable subghz transmission end handling, fixes stuck transmission
* FuriHal: add subghz crutch docs, and rename some defines to conform naming standards
* FuriHal: subghz,  the logic of timers has been changed. disabling the shadow register ARR
* FuriHal: fix subghz off dma irq
* SubGhzExt: fun rename
* FuriHal,SubGhz: fix g0 state on reset, fix incorrect async_tx stop sequence, remove dead code.

Co-authored-by: あく <alleteam@gmail.com>
2024-01-11 16:56:14 +09:00
Methodius
d0c466ccc0
EMV protocol added 2024-01-11 00:48:55 +09:00
MX
e5ceef3422
Merge branch 'ofw_dev' into dev 2023-12-29 16:57:23 +03:00
gornekich
a7b60bf2a6
MFC emulation fixes (#3324)
* mf classic listener: fix write block
* nfc: go to idle state instead of sleep
* lib nfc: fix documentation
2023-12-29 12:24:20 +09:00
MX
111750c420
Merge branch 'ofw_dev' into dev 2023-12-22 22:14:20 +03:00
あく
531ba24e9a
Rollback #3305 and #3297 fix various rendering issues (#3307)
* Revert "[FL-3729, FL-3730] Gui: fix string width calculation (#3305)"
* Revert "Added UTF-8 support to Flipper Zero canvas API (#3297)"
2023-12-22 11:08:46 +00:00
MX
92bed4a081
Merge branch 'ofw_dev' into dev 2023-12-21 19:48:12 +03:00
あく
1543170f4c
[FL-3729, FL-3730] Gui: fix string width calculation (#3305) 2023-12-21 16:43:11 +00:00
MX
78d1507f14
Merge branch 'ofw_dev' into dev 2023-12-19 16:27:23 +03:00
gornekich
6f6074dc01
Keys Dict: fix PVS warnings (#3299)
* keys dict: fix PVS warnings
* nfc app: suppress PVS warning
2023-12-19 12:11:35 +00:00
MX
528d2a7ec3
Merge branch 'ofw_dev' into dev 2023-12-18 21:23:58 +03:00
Andrea Maugeri
7642d67cae
NfcDict Refactoring (#3271)
* toolbox(keys_dict): generalize nfc_dict
* nfc: rework nfc app and tests
* toolbox(keys_dict): improve code readability
2023-12-18 14:30:56 +00:00
MX
db57ff947b
Merge branch 'ofw_dev' into dev 2023-12-16 02:16:46 +03:00
gornekich
09540929c3
[FL-3717] MFC emulation fix (#3291)
* mf classic listener: reset state before sleep and after nack
* Fix PVS warnings
* Fix PVS and compiler disagree on builtins

Co-authored-by: あく <alleteam@gmail.com>
2023-12-15 17:51:20 +00:00
Leptopt1los
36aecfbec9
nfc_util: little endian bytes2num functions added (#3287)
* nfc_util_bytes2num_little_endian function added
* f18 target api version sync
* Bump api version

Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: あく <alleteam@gmail.com>
2023-12-15 17:05:16 +00:00
MX
2d860b4a22
fix key display newline 2023-12-14 01:14:08 +03:00
gornekich
73145e0beb
mf classic listener: reset state before sleep and after nack 2023-12-14 00:35:21 +03:00
MX
55b4f87cd7
Merge branch 'ofw_dev' into dev 2023-12-13 20:24:48 +03:00
gornekich
155e4e9fa4
[FL-3706], [FL-3674] NFC NTAG and ISO14443-3b reading fix (#3285)
* mf ultralight poller: reset field after reading tearing flags
* iso14443-3b poller: change cid comparison in ATTRIB cmd

Co-authored-by: あく <alleteam@gmail.com>
2023-12-12 15:24:06 +00:00
MX
1daa2fa377
Merge branch 'ofw_dev' into dev 2023-12-07 08:03:18 +03:00
gornekich
82baf1e923
[FL-3701] NFC fixes (#3264)
* nfc app: fix unlock with manual password crash
* nfc app: preserve card detected state
* nfc app: fix mf keys scene switch
* nfc app: fix multiple protocol tag detect notification
* nfc plugin: fix retrun in function body in aime parser
* iso14443-3b poller: rework ATTRIB response check
* nfc app: fix navigation after file load failur
* iso14443-3b poller: fix PVS warning
* mfc listener: add crutch in mfc emulation
2023-12-05 22:40:06 +09:00
MX
c416041379
Fix secplus v1 key display issue 2023-12-05 03:40:12 +03:00
MX
10444b943e
Fix keeloq decode logic 2023-12-05 03:34:31 +03:00
MX
9bf8f1015d
fix keeloq null pointer if unknown 2023-12-03 18:41:28 +03:00
MX
06a58ebd53
Merge branch 'ofw_dev' into dev [ci skip] 2023-12-02 23:19:43 +03:00
Skorpionm
eb6fe0a4db
SubGhz: fix count bit for detect gate_tx protocol (#3253)
Co-authored-by: あく <alleteam@gmail.com>
2023-12-02 16:34:02 +09:00
pborsutzki
c6a14e1a67
Fixed a zero allocation error when reading an iso15693 nfc tag with no additional blocks. (#3229)
Co-authored-by: gornekich <n.gorbadey@gmail.com>
2023-12-02 16:27:58 +09:00
RebornedBrain
6a5d63803a
[FL-3675] Ntag21x write (#3246)
* New scenes for ultralight poller write mode
* Added new button and transition logic for write operation
   For now write is only possible for NTAG21x cards with default password and no AUTHLIM set
* Poller states extended
* Enums and datatypes extended for new poller mode
* Added mode field to poller instance datatype
* New states for poller added in order to implement write mode
* Added new event type for locked cards in order to simplify state flow
* New logic for poller write commands
* Scenes adjustments
* Scenes renamed
* New field added to poller instance
* Now we write in 'page per call' mode
* Now function takes callback return value into account
* Callback will be called only in write mode
* Event type added
* Log adjusted and start page to write set
* Logs added and check in now false at start, then it moves to true
* Now mf_ultralight_poller_handler_request_write_data halts card in case of check failure and stops poller
* All fail events now returns NfcCommandStop callback
* In case of fail we move back properly
* Remove garbage

Co-authored-by: gornekich <n.gorbadey@gmail.com>
Co-authored-by: あく <alleteam@gmail.com>
2023-12-02 13:45:47 +09:00
MX
159aef022b
Fix keeloq decoding order 2023-12-01 22:51:21 +03:00
MX
00ceb2cd5d
Merge branch 'ofw_dev' into dev 2023-12-01 20:29:16 +03:00
Augusto Zanellato
b51a754fd9
Mifare Classic nested auth support (#3238)
Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2023-12-01 22:25:53 +09:00
Augusto Zanellato
c1e0d02afc
ST25TB poller refining + write support (#3239)
* nfc: st25tb: rework async poller
* nfc: st25tb: introduce sync poller
* nfc: st25tb: add write support
* nfc: st25tb: rewrite poller to use better states
* nfc: st25tb: move to mode request state after success
* nfc: st25tb: minor bug fixes
* type wasn't properly set on ready event
* sending NfcCustomEventPollerFailure on St25tbPollerEventTypeFailure caused poller to being freed and ultimately resulted in a thread crash

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2023-12-01 18:42:00 +09:00
hedger
890c9e87ce
[FL-3690] Libraries cleanup; u2f crypto rework to use mbedtls (#3234)
* examples: plugins: utilize fal_embedded
* libs: removed fnv1a_hash
* furi: added FURI_PACKED; apps, libs: changed to use FURI_PACKED
* lib: mbedtls: using custom config
* lib: toolbox: removed md5, switched to mbedtls
* targets: f18: link fix
* lib: added mbedtls_cfg.h
* apps: nfc: explicit dependency on libmbedtls
* u2f: reworking to mbedtls
* u2f: replaced sha256 & hmac with mbedtls
* u2f: functional rework using mbedtls
* libs: dropped micro-ecc
* u2f: dropped old implementation
* toolbox: removed sha256 impl
* mcheck() for mbedtls
* libs: removed libmisc; split into smaller libs
* apps: debug: fixed display_test
* apps: include cleanups
* fbt: fixed VERSIONCOMSTR
* furi: added FURI_CHECK_RETURN
* lib: removed qrcode
* cleanup
* fbt: lint_py+format_py: fixed excessive command length
* api: Removed bzero from f7
* api: Removed bzero from f18
* Bump API Symbols

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2023-12-01 18:16:48 +09:00
MX
ff41d262dc
add 303.9 frequency 2023-11-29 16:18:20 +03:00
MX
a7b2427007
Merge branch 'ofw_dev' into dev 2023-11-26 19:58:48 +03:00
Astra
f9101d8084
[FL-3686] Mifare Classic fixes (#3221)
* Update Mifare Classic generators to create more accuate data
* Check the transfer buffer validity for NACK
* Fix the AC issues
* CRC errors don't really affect emulation, checking for them isn't worth it
* Make ATQA logic a bit easier to understand
* mf classic: change log level
* mf classic: fix log level

Co-authored-by: gornekich <n.gorbadey@gmail.com>
Co-authored-by: あく <alleteam@gmail.com>
2023-11-26 17:20:49 +09:00
RebornedBrain
1c3cbec661
[FL-3640] NFC: Felica UID emulation (#3190)
* Added basic template of Felica listener
* Raw nfc felica listener functions
* Added functions to setup chip for felica listener
* Cleanup function templates from unnecessary parts
* Removed todo comment
* Updated api versions
* Adjusted chip config for felica
* Set proper chip passive target mode for felica
* Added felica function to unit tests
* Update furi_hal_nfc_felica.c
* Removed duplication

Co-authored-by: gornekich <n.gorbadey@gmail.com>
2023-11-26 17:10:33 +09:00
MX
91d614dd25
add subghz honeywell protocol
by htotoo

https://github.com/Flipper-XFW/Xtreme-Firmware/commits?author=htotoo
2023-11-21 01:00:15 +03:00
MX
a64c9534e2
Merge branch 'ofw_dev' into dev 2023-11-17 02:20:27 +03:00
Sergey Gavrilov
4b3e8aba29
[FL-3664] 64k does not enough (#3216)
* Unit tests: add "exists" to furi_record tests
* Unit tests: mu_warn, storage 64k test
* Storage: read/write over 64k
* Unit tests: moar tests for storage r/w for >64k cases
* Apps, libs: replace uint16_t with size_t on storage r/w operations
* Unit tests: better data pattern, subghz: warning if transmission is prohibited

Co-authored-by: あく <alleteam@gmail.com>
2023-11-16 01:39:27 +09:00
Flipper Zelebro
a61b5d4b4c
Add Mastercode SubGHz Protocol (#3187)
* Add Mastercode SubGHz Protocol
* Add 2 valid raw files and cleanup code
* Add tests to the two Raw Files
* Remove extra test & delete comments
* Fixes pulse length and shows correct Key

Co-authored-by: FlipperZelebro <flipperzelebro [at] gmail.com>
Co-authored-by: あく <alleteam@gmail.com>
2023-11-15 18:04:45 +09:00
gornekich
c00776ca22
[FL-3666] NFC API improvements (#3214)
* drivers: expose st25r3916 driver API
* nfc poller: add start with custom callback
* mf classic: rework sync API with poller custom start
* mf ultralight: rework sync API with poller custom start
* iso14443_3a poller: remove unused col res state
* nfc: rework nfc poller custom start
* mf ultralight: rename sync API
* mf classic: rename sync API
* iso14443-3a: rename sync API
* nfc: remove async prefix in internal functions
* nfc: expose internal API
* nfc: fix sync api include and docs
* targets: fix f18 build
* nfc: rework NfcGenericEventEx type
* nfc poller: add documentation
* iso14443-3a poller: add documentation
* felica poller: add documentation
* iso14443_3b poller: add documentation
* so14443_4a poller: add documentation
* iso14443_4b poller: add documentation
* iso15693 poller: add documentation
* slix poller: add documentation
* mf desfire poller: add documentation
* mf ultralight poller: fix API and add documentation
* mf classic poller: add documentation

Co-authored-by: あく <alleteam@gmail.com>
2023-11-15 17:32:45 +09:00
RebornedBrain
d0b9a3a4ae
[NFC] MF Ultralight no pwd polling adjustment (#3207)
* Listener log level changed to Trace
* Show pages count without pwd pages in case of no auth success
* Fixed unit tests

Co-authored-by: gornekich <n.gorbadey@gmail.com>
Co-authored-by: あく <alleteam@gmail.com>
2023-11-15 17:02:35 +09:00
Tobias Jost
dc246ddb09
Fix limited_credit_value having wrong value in mf_desfire_file_settings_parse (#3204)
Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: あく <alleteam@gmail.com>
2023-11-15 16:39:29 +09:00
MX
ef09dcf8f8
subghz things and remove rtos finally 2023-11-13 12:42:05 +04:00
MX
b958bfd5c9
Merge branch 'ofw_dev' into nfcrefactoring 2023-11-11 20:18:55 +04:00
gornekich
16ffa2bf75
[FL-3657] Fix NFC unit tests (#3192)
Co-authored-by: あく <alleteam@gmail.com>
2023-11-09 15:18:36 +09:00
MX
bee48f483c
Merge branch 'ofw_dev' into nfcrefactoring 2023-11-01 21:07:33 +03:00
あく
aa06328516
Furi, FuriHal: remove FreeRTOS headers leaks (#3179)
* Furi: remove direct FreeRTOS timers use
* Furi: eliminate FreeRTOS headers leak. What did it cost? Everything...
* SubGhz: proper public api for protocols. Format Sources.
* Furi: slightly less redundant declarations
* Desktop: proper types in printf
* Sync API Symbols
* Furi: add timer reset and fix dolphin service, fix unit tests
* Furi: proper timer restart method naming and correct behavior in timer stopped state.

---------

Co-authored-by: hedger <hedger@nanode.su>
2023-11-01 11:24:11 +04:00
hedger
bbe68d6ffc
[FL-3629] fbt: SD card resource handling speedup (#3178)
* fbt: reduced size of resources dependency graphs, resulting in faster build task evaluation
* lib: flipper_app: fixed error message & error handling for plugins
2023-10-31 15:27:58 +04:00
あく
9af81ce8d0
Furi: cleanup crash use (#3175)
* Furi: optional message in furi_crash and furi_halt
* Consistent furi_crash use
* UnitTests: crash instead of assert
* furi: check: fixed macro for default arg
* unit_tests: fixed crashes everywhere
* lib: infrared: fixed PVS warnings
* furi: eliminated __FURI_ASSERT_MESSAGE_FLAG
* Furi: update check.h docs
* Furi: add check.h usage note
* Docs: grammar

---------

Co-authored-by: hedger <hedger@nanode.su>
2023-10-31 14:40:32 +04:00
MX
593b5fc098
Merge branch 'ofw_dev' into nfcrefactoring 2023-10-29 02:23:02 +03:00
Georgii Surkov
cfaf745523
[FL-3643] Fix crash when reading files > 64B (#3166)
* Increase MF DESFire result buffer
* Ignore chunks that do not fit into the result buffer and show warning
* Display information about partial files

Co-authored-by: あく <alleteam@gmail.com>
2023-10-28 23:29:14 +09:00
gornekich
3d872cf37a
[FL-3637] NFC RC fixes (#3165)
* firmware: remove nfc lib build settings section
* furi hal nfc: fix nfc irq gpio deinit
* lib nfc: remove deprecated exception from sources
* nfc: use ASK demodulator in transparent mode
* mf ultralight: add upper page bound for NTAGI2C1K
* furi hal nfc: set event if nfc event was started
* nfc: fix PVS warnings
* lib signal reader: remove gpio pull setting in alloc
* furi: added math.h include for compatibility with existing apps
* nfc: remove resolved TODO in mf desfire poller
* bump api symbol version

Co-authored-by: hedger <hedger@nanode.su>
Co-authored-by: あく <alleteam@gmail.com>
2023-10-28 23:22:07 +09:00
Georgii Surkov
844e0f10e5
[FL-3639] Fix MF DESFire record file handling (#3167) 2023-10-28 22:56:49 +09:00
MX
3bbb326c9c
Merge branch 'ofw_dev' into nfcrefactoring 2023-10-24 14:42:49 +03:00
gornekich
d92b0a82cc
NFC refactoring (#3050)
"A long time ago in a galaxy far, far away...." we started NFC subsystem refactoring.

Starring:

- @gornekich - NFC refactoring project lead, architect, senior developer
- @gsurkov - architect, senior developer
- @RebornedBrain - senior developer

Supporting roles:

- @skotopes, @DrZlo13, @hedger - general architecture advisors, code review
- @Astrrra, @doomwastaken, @Hellitron, @ImagineVagon333 - quality assurance

Special thanks:

@bettse, @pcunning, @nxv, @noproto, @AloneLiberty and everyone else who has been helping us all this time and contributing valuable knowledges, ideas and source code.
2023-10-24 12:08:09 +09:00
MX
2958e5cef3
Merge branch 'ofw_dev' into dev 2023-10-23 21:40:52 +03:00
Sergey Gavrilov
1b6295b2bf
[FL-3632] FastFAP: human readable error log (#3156) 2023-10-23 18:49:16 +09:00
MX
29a1865ec3
Merge branch 'dev' into niceflors 2023-10-16 18:07:51 +03:00
MX
b87a8ca329
Merge branch 'ofw_dev' into dev 2023-10-15 01:30:55 +03:00
あく
f45a5dff43
Fix various crashes if debug libraries used (#3144)
* FuriHal: enable HSI in stop mode only if we use STOP0, proper SMPS selected clock assert

* Furi: fix double crash caused by bkpt use outside of debug session

* Libs: update ERC and MGG contrast

* Fix various crashes with LIB_DEBUG=1

* BadUsb: size_t where it should be and proper printf types

* Various fixes and make PVS happy

* FuriHal: proper CCID status and make PVS happy

* boot: update mode: graceful handling of corrupted stage file

---------

Co-authored-by: hedger <hedger@nanode.su>
2023-10-12 20:34:30 +04:00
MX
76e5a1c087
Merge branch 'ofw_dev' into dev 2023-10-09 22:21:49 +03:00
h00die
38792f2c93
Fix spelling across some project files (#3128)
* codespell across project

Co-authored-by: あく <alleteam@gmail.com>
2023-10-10 04:01:17 +09:00
あく
fbded1e4ee
Lib: update stm32wb_copro to 1.17.3 release (#3119)
* Lib: update stm32wb_copro to 1.17.3 release
* Bump copro versions
* Lib: switch stm32_copro to release
2023-10-09 22:03:27 +09:00
Soren
8ebfda6b8c Added NiceFloR-S to ignore options, removed colons. 2023-10-03 17:56:39 +03:00
MMX
e7ea821650
Merge pull request #612 from baugp/t5577-write-pwd-fix
bugfix t5577_write_with_pass
2023-10-03 09:14:11 +03:00
MX
2f44fd6cac
nice flor s add button code 0x3 2023-09-30 23:41:54 +03:00
Piyamate Wisanuvej
e739aeeb10 bugfix t5577_write_with_pass 2023-09-26 10:08:40 +07:00
MX
8666cdc5ef
Merge branch 'ofw_dev' into dev 2023-09-21 22:43:48 +03:00
Filipe Paz Rodrigues
a089aeb2bd
Add Initial CCID support (#3048)
* Add Initial CCID support
* Sync api symbols
* Format sources

Co-authored-by: あく <alleteam@gmail.com>
2023-09-21 18:09:00 +09:00
MX
8f5ea2be83
Merge branch 'ofw_dev' into dev 2023-09-19 17:27:48 +03:00
あく
338fc3afea
New clock switch schema, fixes random core2 crashes (#3008)
* Updated stack to 1.17.0

* hal: ble: Fixed stack config

* Bumped stack version in config

* scripts: added validation of copro stack version in update bundles

* Copro: update to 1.17.2

* FuriHal: adjust tick frequency for HSE as sys clk

* FuriHal: adjust systick reload on sys clock change

* Sync api and format sources

* scripts: updated ob.data for newer stack

* FuriHal: return core2 hse pll transition on deep sleep

* FuriHal: cleanup ble glue

* FuriHal: rework ble glue, allow shci_send in critical section

* FuriHal: sync api symbols

* FuriHal: cleanup BLE glue, remove unused garbage and duplicate declarations

* FuriHal: BLE glue cleanup, 2nd iteration

* FuriHal: hide tick drift reports under FURI_HAL_OS_DEBUG

* Lib: sync stm32wb_copro with latest dev

* FuriHal: ble-glue, slightly less editable device name and duplicate definition cleanup

* FuriHal: update ble config options, enable some optimizations and ext adv

* FuriHal: update clock switch method documentation

* FuriHal: better SNBRSA bug workaround fix

* FuriHal: complete comment about tick skew

* FuriHal: proper condition in clock hsi2hse transition

* FuriHal: move PLL start to hse2pll routine, fix lockup caused by core2 switching to HSE before us

* FuriHal: explicit HSE start before switch

* FuriHal: fix documentation and move flash latency change to later stage, remove duplicate LL_RCC_SetRFWKPClockSource call

---------

Co-authored-by: hedger <hedger@nanode.su>
Co-authored-by: hedger <hedger@users.noreply.github.com>
2023-09-19 18:22:21 +04:00
MX
7f474ed9c6
Ignore princeton option and fix typo magellan 2023-09-11 17:03:17 +03:00
MX
eb2607f308
Merge branch 'ofw_dev' into dev 2023-09-11 15:26:26 +03:00
あく
1c0276a0be
Various Fixes and Improvements (#3059)
* FuriHal: lower MGG display contrast by 4 points
* FuriHal: unify external gpio resources initialization
* Infrared: parse raw in universal TV file, cleanup it with new ifrared script. Other minor changes.
* Gui: fix elements_multiline_text_aligned eating symbols
* Lib: human readable errors in flipper application package
* Special request from marketing team
2023-09-11 16:23:00 +10:00
MX
b3cce2351a
Some faac fixes 2023-09-05 14:40:49 +03:00
MX
1859b06b6a
oops 2023-09-05 05:59:21 +03:00
MX
1653abe0ef
Remove unused table 2023-09-05 05:51:21 +03:00
MX
ffc6f726f0
fix small bug 2023-09-05 05:43:06 +03:00
MX
0eb06ba2b7
Actually working progmode, new add manually options + bonus fixes 2023-09-05 05:31:03 +03:00
Eng1n33r
2a789ae1c1
faac beta-3 2023-09-04 23:55:08 +03:00
Eng1n33r
cfc5caca63
Merge branch 'DarkFlippers:dev' into dev 2023-09-04 20:50:46 +03:00
MX
9c6e20356f
Merge branch 'ofw-dev' into dev 2023-09-04 16:47:08 +03:00
Sergey Gavrilov
0b806c2360
Storage: force mount (#3033)
* Storage: count opened files
* Storage: sd mount
* Storage: prompt to mount SD card if not mounted
* F18: update API
* F18: update API version
* Fix logger naming scheme
* Storage: storage_files_count -> storage_open_files_count

Co-authored-by: あく <alleteam@gmail.com>
2023-09-04 14:10:07 +09:00
Eng1n33r
686fab7296
Merge remote-tracking branch 'origin/dev' into dev
faac prg mode beta-2
2023-09-02 22:04:36 +03:00
MX
7d2deb5939
add some non working code 2023-09-02 21:45:51 +03:00
Eng1n33r
06a528f497
FAAC SLH prog mode [beta] 2023-09-02 19:00:45 +03:00
MX
265d2592e7
proper check 2023-09-02 16:26:19 +03:00
MX
3898e6e71d
Fixes and de-kostilying 2023-09-02 16:00:24 +03:00
MX
bd2cfb55df
Merge branch 'dev' into eng_dev 2023-09-02 14:28:49 +03:00
MX
15c480b68a
Merge branch 'ofw-dev' into dev 2023-09-02 13:33:32 +03:00
Max
52b5966262
Add File Naming setting for more detailed naming (#3002)
* added filename mode setting
* added furi_flag checks for when filename_mode is set
* changed naming for ibutton, lfrfid and subghz
* requested changes from PR
* Lib: gather all naming bits and pieces under name generator module. Properly bump api version. FuriHal: fix RTC flag enum.
* PR requested changes
* bug fix for arg type
* added functionality for other application scenes
* Lib: cleanup name generator API, simplify usage. Sync API symbols.
* Lib: proper size type in name_generator. Cleanup.
* FuriHal: cleanup rtc api usage across firmware

Co-authored-by: あく <alleteam@gmail.com>
2023-09-01 14:57:49 +09:00
suaveolent
d8d2b360cb
Add support for Mifare Classic 4k SAK 0x38 ATQA 0x02, 0x04, 0x08 (#3009)
Co-authored-by: suaveolent <suaveolent@users.noreply.github.com>
Co-authored-by: あく <alleteam@gmail.com>
2023-09-01 11:22:29 +09:00
あく
f218c41d83
Undo some TODO (#3024)
* TODO FL-3497: impossible to fix with current memory allocator

* TODO FL-3497: removed, requires radically different settings approach

* TODO FL-3514: removed, yes we should

* TODO FL-3498: implemented, guarding view port access with mutex.

* TODO FL-3515: removed, questionable but ok

* TODO FL-3510: removed, comment added

* TODO FL-3500: refactored, store pin numbers in GpioPinRecord, fix gpio app crash caused by incorrect gpio_pins traversal.

* Format Sources

* TODO FL-3505: removed, mutex alone is not going to fix issue with WPAN architecture

* TODO FL-3506: removed, change ownership by copy is good

* TODO FL-3519: documentation and link to source added

* Lib: remove unneded total sum from comment in bq27220

---------

Co-authored-by: hedger <hedger@users.noreply.github.com>
2023-09-01 05:54:52 +04:00
Astra
7aa55ebc6c
[FL-3543] Check the filetype of the update manifest (#3025)
Co-authored-by: あく <alleteam@gmail.com>
2023-09-01 10:47:02 +09:00
Eng1n33r
b91f8d009e
Fix KL unknown mf cnt bug 2023-08-31 22:39:22 +03:00
Eng1n33r
ce1336c0ed
fix anomaly 2023-08-24 22:14:00 +03:00
Eng1n33r
f93aab9b22
Merge branch 'DarkFlippers:dev' into dev 2023-08-24 16:03:07 +03:00
Eng1n33r
09aabff55b
EditCnt rework [in progress] 2023-08-24 00:00:28 +03:00
MX
0660329ae5
Merge branch 'ofw-dev' into dev 2023-08-23 23:47:03 +03:00
MX
b5426197f5
fix 0xFFFF counter value being skipped 2023-08-23 23:40:13 +03:00
Skorpionm
940ec36a0b
SubGhz: fix todo (#2984)
* [FL-3501] SubGhz: fix Handle multiple external cc1101 modules
* [FL-3502] SubGhz: fix Protocol not found error message
* [FL-3503] SubGhz: fix Handle rx buffer overflow
* {FL-3520] SubGhz: Handle RX buffer overflow with external cc1101
* [FL-3548] SubGhz: Security+ 2.0 counter start value
* [FL-3552] Sub-GHz: Check saved file
* [FL-3555] [FL-3554] Sub-GHz: RX buffer overflow handling and check that buffer has been properly written
* [FL-3557] Sub-GHz: No optimization required
* [FL-3558] Sub-GHz: Keeloq 0 discriminator
* [FL-3559] Sub-GHz: Keeloq unknown learning
* [FL-3560] Sub-GHz: callback for updating keeloq data on display
* SubGhz: fix RXFIFO_OVERFLOW

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2023-08-24 04:51:32 +09:00
Eng1n33r
6042254861
Merge branch 'DarkFlippers:dev' into dev 2023-08-23 17:59:56 +03:00
Eng1n33r
df5b2cbddd
fix misspelling 2023-08-22 23:58:49 +03:00
MX
20593d56c0
Merge branch 'ofw-dev' into dev 2023-08-22 21:53:50 +03:00
Astra
27b2808ade
[FL-3481] Properly reset the NFC device data (#2980)
Co-authored-by: あく <alleteam@gmail.com>
2023-08-23 03:40:05 +09:00
hedger
ace0901125
[FL-3486,FL-3392] fbt: various improvements and bug fixes (#2982)
* fbt: extapps: compact debug format for .faps
* fbt: sdk: fixed symbol cache regen logic for removed-only symbols
* lib: elf_file: early .fap file handle release
* fbt: extapps: added FAP_VERSION define for application environments
* github: added appsymbols artifact
* api: updates for f18
* github: fixed early fap_dist
* fbt: added flash_dap
* ufbt: added flash_dap
* fbt: reworked flash target; scripts: program.py->fwflash.py and changes
* vscode: updated configuration
* scripts: fwflash.py: ugly fixes for ufbt
* scripts: fwflash.py: cleanup
* fbt: flash: always use .elf file
* scripts: fwflash: fixed elf file path

Co-authored-by: あく <alleteam@gmail.com>
2023-08-23 03:33:10 +09:00
Nikolay Minaylov
991e58e405
Littlefs updated to v2.7.0 (#2986)
Co-authored-by: あく <alleteam@gmail.com>
2023-08-23 03:08:58 +09:00
Astra
e353433cd8
[FL-3488] Assign tickets to all TODO items (#2988)
Co-authored-by: あく <alleteam@gmail.com>
2023-08-23 02:56:27 +09:00
Eng1n33r
2b5ad4f5af
Correct counter work. FAAC SLH bugfix. 2023-08-22 20:22:49 +03:00
Eng1n33r
69debc36a0
FAAC SLH 0x0 seed new "smart logic"
Comeback
2023-08-21 04:18:47 +03:00
Eng1n33r
0af8bd1e8b
Test FAAC 0x0 seed 2023-08-18 16:41:35 +03:00
MX
3584e0da46
Fix FAAC counter fix seed being not removed from RAM 2023-08-17 17:33:21 +03:00
MX
e892c977f3
Merge remote-tracking branch 'flipperdevices/subghz/fix_todo' into dev 2023-08-17 02:26:21 +03:00
SkorP
0ecec8a711 [FL-3502] SubGhz: fix Protocol not found error message 2023-08-16 10:46:08 +04:00
Astra
830e202bb1
Properly reset the NFC device data 2023-08-14 17:49:09 +03:00
MX
7bd8846288
small fix for random uid 2023-08-14 03:52:22 +03:00
MMX
196edb5d05
Merge pull request #571 from DarkFlippers/nfc_mfclassic_custom_uid
NFC App: Add manual MF Classic custom UID
2023-08-14 03:11:20 +03:00
MX
09d5b3b1ed
Expose additional functions of the crypto engine to user (#2923)
* Allow loading user supplied keys and add CTR mode
* Add GCM mode to furi_hal_crypto
* Split up CTR and GCM code, add flag for adv crypto
* Add convenience functions for GCM crypto
* Run fbt format
* Update GCM to support additional auth data
* Update APIs
* FuriHal: update crypto documentation, method names and usage
* Clean up code for key (un)loading, GCM and CTR
  - get rid of goto
  - do not use furi_hal_bt_is_alive() when not using secure enclave
  - give defines a type and wrap in ()
* Add unit test for CTR and GCM crypto
* FuriHal: const in crypto unit tests, cortex timer for crypto operations timeouts
* FuriHal: update crypto docs

Co-authored-by: twisted_pear <twstd@posteo.net>
Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: あく <alleteam@gmail.com>
2023-08-11 17:55:40 +03:00
twisted-pear
c976ff11bf
Expose additional functions of the crypto engine to user (#2923)
* Allow loading user supplied keys and add CTR mode
* Add GCM mode to furi_hal_crypto
* Split up CTR and GCM code, add flag for adv crypto
* Add convenience functions for GCM crypto
* Run fbt format
* Update GCM to support additional auth data
* Update APIs
* FuriHal: update crypto documentation, method names and usage
* Clean up code for key (un)loading, GCM and CTR
  - get rid of goto
  - do not use furi_hal_bt_is_alive() when not using secure enclave
  - give defines a type and wrap in ()
* Add unit test for CTR and GCM crypto
* FuriHal: const in crypto unit tests, cortex timer for crypto operations timeouts
* FuriHal: update crypto docs

Co-authored-by: twisted_pear <twstd@posteo.net>
Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: あく <alleteam@gmail.com>
2023-08-10 17:44:46 +09:00
MX
7027f6a4c4
Merge branch 'ofw-dev' into dev 2023-08-09 15:05:12 +03:00
Astra
a39ef50fdb
[FL-3433] Add compressor.h to the SDK (#2962) 2023-08-09 16:52:41 +09:00
Sergey Gavrilov
00cdc3d1cb
[FL-3461] RPC: md5 in storage list (#2929)
* Protobuf: update
* Toolbox: md5 for file. Unit-Tests: test md5_calc.
* Storage RPC, CLI, unit tests: use new md5_calc
* Protobuf: update
* RPC, StorageList: append md5 info to file
* fbt: attempt to fix shallow submodule checkouts
* pvs: make happy
* Protobuf: update to latest release

Co-authored-by: hedger <hedger@nanode.su>
Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2023-08-09 06:34:54 +09:00
gid9798
8936c02487 NFC App: Add manual MF Classic custom UID 2023-08-08 14:16:35 +03:00
Derek Jamison
e9f1af44f2
Fixes #2957 - subghz decode_raw (#2958)
* Fixes #2957 - subghz decode_raw
* SubGhz: proper decode_raw fix

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2023-08-08 17:03:39 +09:00
Astra
1e4af1d550
FDX-B temperature in system units (#2941)
* FDX-B temperature now uses system units
* LF-RFID: wrap floats in fdx-b temperature conversion

Co-authored-by: あく <alleteam@gmail.com>
2023-08-07 19:28:47 +09:00
MX
f70d2b5ae7
revert old nfc debug defines was used to save space 2023-08-05 14:25:16 +03:00
Astra
d09cf6c692
FDX-B temperature now uses system units 2023-08-05 14:00:48 +03:00
MX
74ffb02b56
Merge branch 'ofw-dev' into dev 2023-08-02 19:09:48 +03:00
erikj95
cf6706c42e
NFC CLI: Fix multiple apdu commands from not working when one of them gives an empty response (#2922)
* NFC CLI: Fix multiple apdu commands from not working when one of them gives an empty response
* Make PVS happy

Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: あく <alleteam@gmail.com>
2023-08-03 00:24:02 +09:00
AloneLiberty
a7aef0bfc2
NFC: Fix MFC key invalidation (#2912)
* NFC: Fix key invalidation (again~)
* NFC: shouldn't be there
This code get called each time we check for B key

Co-authored-by: あく <alleteam@gmail.com>
2023-08-03 00:06:38 +09:00
hedger
17bcfee224
[FL-3441] faploader: always create app dir, even if it doesn't have subdirs (#2901)
Co-authored-by: あく <alleteam@gmail.com>
2023-08-02 00:43:14 +09:00
MMX
fe7a1c2fcc
SubGHz - Keeloq: Read Centurion Nova remotes (#2892)
Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: あく <alleteam@gmail.com>
2023-08-01 18:32:24 +09:00
gid9798
c6b6aec057 replace power amp in driver 2023-07-30 12:12:59 +03:00
MX
0f9c6ba847
Remake it more properly
still has problems, need to rewrite subghz_devices tx/rx switch code, checking strcmp every time is not good too, but better than loading whole config from microsd
2023-07-29 03:51:46 +03:00
Z3BRO
58beca313d SubGHz External High Power 2023-07-27 17:25:32 +02:00
AloneLiberty
b58be2bf1e
NFC: Fix key invalidation (again~) 2023-07-22 19:20:49 +03:00
hedger
9fa3375b0a
faploader: always create app dir, even if it doesn't have subdirs 2023-07-20 00:09:06 +03:00
MX
2f532a547e
Merge branch 'ofw-dev' into dev 2023-07-18 22:53:16 +03:00
あく
76e97b8d35
[FL-3051] Gauge initialization routine refactoring, new DataMemory layout, configuration update (#2887)
* FuriHal: refactor power gauge config

* Format sources and move gauge DM load to separate method

* FuriHal: bq27220 refactoring part 1

* Power: use SYSDWN battery status flag for system shutdown

* Libs: bq27220 read DM before write, fix incorrect shift

* FuriHal: cleanup gauge config, add flags, add ptr DM type, update symbols

* FuriHal: 2 stage gauge DM verification and update, better detection routine

* FuriHal: update gauge configuration, lower sleep current and deadband

* FuriHal: gauge and charger health reporting

* Lib: cleanup bq27220 sources

* FuriHal: correct documentation for furi_hal_power_is_shutdown_requested

* FuriHal: proper gauge config for f7
2023-07-18 14:46:38 +04:00
MX
2c8350818c
Merge branch 'ofw-dev' into dev 2023-07-17 20:33:26 +03:00
hedger
20f6394ad8
[FL-3431] Radio headers in SDK (#2881) 2023-07-17 11:51:15 +04:00
MX
635c824b1b
Merge branch 'ofw-dev' into dev 2023-07-14 16:53:45 +03:00
hedger
f2324e4d1c
[FL-3377] Update error code descriptions (#2875)
* updater: added update error code descriptions
* updater: separate ram/flash messages
* updater: extra pre-update checks
* updater: fixed string comparison
* updater: Additional logging

Co-authored-by: あく <alleteam@gmail.com>
2023-07-14 17:45:16 +04:00
MX
c4b04a06bb
Merge branch 'ofw-dev' into dev 2023-07-12 21:19:16 +03:00
Skorpionm
25ec09c7eb
SubGhz: fix check connect cc1101_ext (#2857)
* SubGhz: fix check connect cc1101_ext
* SubGhz: fix syntax
* SubGhz: enable interface pin pullups
* SubGhz: fix syntax
* SubGhz: fix CLI check connect CC1101_ext
* SubGhz: fix CLI display of the selected device

Co-authored-by: あく <alleteam@gmail.com>
2023-07-12 13:41:46 +04:00
AloneLiberty
bf15d3ce74
NFC: Improved MFC emulation on some readers (#2825)
* NFC: Improved MFC emulation on some readers
* NFC: Improved emulation on some readers (part 2): Some Android devices don't like this
* NFC: Improved emulation on some readers (part 3): I knew that during the emulation timings are critical, but one log breaks all...
* NFC: Improved emulation on some readers (part 4): Add fixes to Detect reader and refactor code
* NFC: Improved emulation on some readers (part 5)
* NFC: Improved emulation on some readers (part 6): GUI doesn't update without delay
* NFC: Improved emulation on some readers (part 7): Reworked emulation flow, some bug fixes and improvements


Co-authored-by: あく <alleteam@gmail.com>
Co-authored-by: gornekich <n.gorbadey@gmail.com>
2023-07-12 13:14:11 +04:00
MMX
14fc960246
Infrared: RCA protocol support (#2823)
* RCA protocol support
* Add unit test

Co-authored-by: あく <alleteam@gmail.com>
2023-07-11 12:39:07 +04:00
MX
9f9664f6ca
Merge branch 'dev' into cc1101_ext 2023-07-10 22:44:17 +03:00
gid9798
0e1a54141e Fix SubGhz Apps & LF RFID 2023-07-10 19:59:25 +03:00
MX
5fa0706d70
Merge branch 'dev' into cc1101_ext 2023-07-10 17:04:53 +03:00
MX
bb7ffd6ff5
Merge branch 'ofw-dev' into dev 2023-07-10 16:55:28 +03:00
Sergey Gavrilov
9b2d80d6b7
[FL-3400] External menu apps (#2849)
* FBT, applications: add MENUEXTERNAL app type
* FBT, uFBT: build MENUEXTERNAL as EXTERNAL app
* Loader menu: show external menu apps
* LFRFID: move to sd card
* FBT: always build External Applications list
* Archive: look for external apps path
* Infrared: move to sd card
* Apps: add "start" apps
* iButton: move to sd card
* BadUSB: move to sd card
* External apps: update icons
* GPIO: move to sd card
* Loader: look for external apps path
* U2F: move to sd
* SubGHz: move to sd
* Apps: "on_start" metapackage
* NFC: move to sd
* Sync f7 and f18

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2023-07-10 12:03:41 +04:00
gid9798
9494cc01a9 Merge remote-tracking branch 'UFW/dev' into cc1101_ext 2023-07-07 15:45:59 +03:00
MX
49cce65018
Merge branch 'ofw-dev' into dev 2023-07-06 18:54:39 +03:00
Skorpionm
cef59887ed
[FL-3401, FL-3402] SubGhz: add "SubGhz test" external application and the ability to work "SubGhz" as an external application (#2851)
* [FL-3401] SubGhz:  add "SubGhz test" external application
* SubGhz: delete test test functionality from SubGhz app
* [FL-3402] SubGhz: move func protocol creation API

Co-authored-by: あく <alleteam@gmail.com>
2023-07-07 00:15:03 +09:00
MX
a6978bfd2d
WIP OFW PR 2825: NFC: Improved MFC emulation on some readers
Not finished yet, added in current condition for more tests
by AloneLiberty
2023-07-06 02:44:28 +03:00
MX
e6ae2c03ca
Keeloq: Centurion Nova support 2023-07-06 00:49:54 +03:00
MX
550edc3666
Fix Issue #532 2023-07-05 20:35:57 +03:00
MX
3d1d5f5b77
Merge branch 'ofw-dev' into dev 2023-07-05 20:03:20 +03:00
gornekich
e6b0494d4d
[FL-3407] NFC: Mf Ultralight emulation optimization (#2847)
Co-authored-by: あく <alleteam@gmail.com>
2023-07-06 01:55:04 +09:00
Skorpionm
906cca8f24
Furi_Power: fix furi_hal_power_enable_otg (#2842)
* Furi_Power: fix furi_hal_power_enable_otg
* SubGhz: fix error output connected USB
* Furi_Hal: fix target F18
* Fix api_symbols.csv version for F7

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2023-07-06 01:48:02 +09:00
MX
255830ffab
FAAC ui and counter with no seed fixes 2023-07-05 17:56:08 +03:00
gid9798
2ef07a7a6c SubGhz: add some consts and fix unit tests 2023-07-03 14:02:57 +03:00
gid9798
01d7beef4e SubGhz: furi_hal_subghz remove preset load function by name 2023-07-03 13:36:26 +03:00
gid9798
0d6e6c4d85 SubGhz: fix split h and c 2023-07-03 12:48:47 +03:00
gid9798
2fb57529a0 SubGhz: fiz module seletion, furi_assert(device). drivers targets 2023-07-03 12:35:27 +03:00
gid9798
c1f056cf93 Merge remote-tracking branch 'UFW/dev' into cc1101_ext 2023-07-03 11:15:32 +03:00
MX
a8dd326fdc
Merge branch 'dev' into subghz/code_improvement 2023-07-02 11:55:38 +03:00
Skorpionm
8c93695d01
[FL-3375] SubGhz: add CC1101 module external (#2747)
* SubGhz: add CC1101 Ext driver
* SubGhz:  move TIM2 -> TIM17 use cc1101_ext
* FuriHal: SPI move channel DMA 3,4 -> 6.7
* Documentation: fix font
* SubGhz: add work with SubGhz devices by link to device
* SubGhz: add support switching external/internal cc1101 "subghz chat"
* SubGhz: add support switching external/internal cc1101 "subghz tx" and "subghz rx"
* SubGhz: add "Radio Settings" scene
* SubGhz: add icon
* SubGhz: add supported CC1101 external module in SubGhz app
* SubGhz: fix check frequency supported radio device
* SubGhz: fix clang-formatted
* Sughz: move dirver CC1101_Ext to lib , compile cmd ./fbt launch_app APPSRC=radio_device_cc1101_ext
* SubGhz: fix CLI
* SubGhz: fix PVS
* SubGhz: delete comments
* SubGhz: fix unit_test
* Format sources
* Update api symbols and drivers targets
* Drivers: find proper place for target option
* SubGhz: external device connected method naming
* Format sources
* SubGhz:  fix module selection menu, when external is not connected
* SubGhz: fix furi_assert(device);
* SubGhz: fix split h and c
* SubGhz: furi_hal_subghz remove preset load function by name
* SubGhz: deleted comments
* Format Sources
* SubGhz: add some consts and fix unit tests
* Sync API Symbols

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2023-06-30 23:03:36 +09:00
MX
79d585323e
Merge branch 'ofw-dev' into dev 2023-06-30 13:34:17 +03:00
あく
6d9de25494
Furi,FuriHal: various improvements (#2819)
* Lib: adjust default contrast for ERC displays

* Furi: various improvements in check module

* Format Sources

* FurHal: ble early hardfault detection

---------

Co-authored-by: hedger <hedger@users.noreply.github.com>
2023-06-30 13:52:43 +04:00
MX
980e5061f3
Merge branch 'ofw-dev' into dev 2023-06-30 12:05:00 +03:00
Sergey Gavrilov
95c1585df6
[FL-3211][FL-3212] Debug apps: speaker, uart_echo with baudrate (#2812)
* Music player: move music_worker to library
* Music player: drop cli
* Debug: speaker debug app
* Debug: baudrate arg in uart_echo app
* Libs: add music_worker to api
* Libs: add music_worker to targets linker_dependencies

Co-authored-by: あく <alleteam@gmail.com>
2023-06-29 20:23:04 +09:00
AloneLiberty
e5ae3e22b3
NFC: Fix key invalidation logic (#2782)
* NFC: Fix key invalidation logic
* NFC: Fix crash in CLI with empty response
* Fix incorrect key conversions
* Proper call to nfc_util

Co-authored-by: あく <alleteam@gmail.com>
Co-authored-by: Astra <me@astrra.space>
2023-06-29 17:24:13 +09:00
MX
5e2d01f159
Update OFW PR 2782 2023-06-29 04:37:39 +03:00
MX
b0988e4d86
Merge branch 'ofw-dev' into dev 2023-06-29 04:22:51 +03:00
g3gg0.de
c10c45616d
SLIX2 emulation support / practical use for Dymo printers (#2783)
* improve digital_signal for longer packets, also clean up code
* added SLIX2 specific features like signature and unknown keys (for issue #2781), added WRITE_PASSWORD handling
* fix NfcV AFI selection
* when NFCV_CMD_READ_MULTI_BLOCK reads beyond memory end, return the maximum possible block's content
* added SLIX2 reading
* fix NXP SYSTEMINFO response check size
* capture the first received password if none was set before
* clear stored data before reading SLIX details renamed slix2_dump functions to slix2_read
* display card block size values as decimal

Co-authored-by: あく <alleteam@gmail.com>
2023-06-29 02:44:34 +09:00
Sergey Gavrilov
645a7c5989
[FL-3386] Fast FAP Loader (#2790)
* FBT: build and add FastFAP(tm) sections
* Elf file: fast loading fap files. Really fast, like x15 times faster.
* fastfap.py: cleanup unused imports
* Toolchain: 23 version
* Elf File: remove log messages
* Scripts: fix file permissions
* FBT: explicit interpreter for fastfap invocation

Co-authored-by: あく <alleteam@gmail.com>
2023-06-28 17:19:10 +09:00
PpHd
0a5508a8a1
Fix M*LIB usage (#2762)
* Fix M*LIB usage
* Fix oplist definition of SubGhzFrequencyAnalyzerLogItem
* Fix oplist definition of M_CSTR_DUP_OPLIST
* Remove dependency of furi_string_utf8_decode to the internal definition of string_unicode_t
* Replace obsolete macro M_IF_DEFAULT1 to M_DEFAULT_ARGS

Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: あく <alleteam@gmail.com>
2023-06-27 19:50:09 +09:00
MX
a466885df3
Merge branch 'ofw-dev' into dev 2023-06-25 03:08:40 +03:00
MX
6f3f2fa1e7
OFW PR 2783: SLIX2 emulation support
by g3gg0
2023-06-24 21:14:00 +03:00
MX
8e126112f0
OFW PR 2782: NFC: Fix key invalidation logic
by AloneLiberty
2023-06-24 21:11:27 +03:00
Sergey Gavrilov
761a14e6e2
[FL-2837][FL-3270] Loader refaptoring: second encounter (#2779)
* Core: rename internal FlipperApplication to FlipperInternalApplication
* FAP Loader: move load_name_and_icon to flipper_application library
* Loader menu: rework api
* View holder: move to gui service
* Loader: simple "loading" worker
* Loader: applications dialog
* Loader: fapping
* Update f18 api
* Apps: remove fap_loader
* Libs, flipper application: store args, rename thread allocation
* Loader: error handling
* Apps: use loader error handling
* Loader: documentation
* FBT: accomodate loader
* Loader: do not raise gui error if loader is locked
* Archive: accomodate loader
* Loader: fix loading message
* Flipper: drop some old dolphin legacy
* Loader: generalize error construction

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2023-06-23 21:01:40 +09:00
gid9798
5eb677aa55 prt2 2023-06-18 20:25:40 +03:00
gid9798
3000b8fd0d prt1 2023-06-18 20:25:16 +03:00
gid9798
a191631c32 DIR_NAME and Drivers 2023-06-18 16:44:45 +03:00
gid9798
417dedd317 SubGhz App: remove kostily and velosipedy 2023-06-14 01:24:05 +03:00
gid9798
c4baf3194e SubGhz App: change load custom presets 2023-06-13 22:17:54 +03:00
MX
6256f0c46e
Add more freqs to default list 2023-06-12 04:33:16 +03:00
MX
451aa86c91
Infrared RCA Protocol + Update docs
Thanks to anonymous contributor for protocol implementation and testing
2023-06-10 21:02:52 +03:00
MX
de626626de
Merge branch 'ofw-dev' into dev 2023-06-09 16:02:32 +03:00
Astra
4900e8b7a2
[FL-3284] Fix reading Mifare Classic cards with unusual access conditions and fix emulation of unknown keys (#2620)
* I was outplayed by the C programming language
* Fix emulating empty keys as 0s
* Add exceptions for Detect Reader
* Sync api_symbols.csv for F18
* Outplayed by the C language [X2]

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2023-06-09 21:41:40 +09:00
MX
18220515b5
Merge branch 'ofw-dev' into dev 2023-06-08 14:58:46 +03:00
hedger
3226254876
[FL-3351] github: re-enabled f18 build (#2743)
* github: re-enabled f18 build
* scripts: storage: better transfer logging
* Fix PVS warnings

Co-authored-by: あく <alleteam@gmail.com>
2023-06-08 15:16:01 +09:00
g3gg0.de
c186d2b0cc
added ISO15693 (NfcV) reading, saving, emulating and revealing from privacy mode (unlock) (#2316)
* added support for ISO15693 (NfcV) emulation, added support for reading SLIX tags
* SLIX: fixed crash situation when an invalid password was requested
* ISO15693: show emulate menu when opening file
* rename NfcV emulate scene to match other NfcV names
* optimize allocation size for signals
* ISO15693: further optimizations of allocation and free code
* ISO15693: reduce latency on state machine reset
* respond with block security status when option flag is set
* increased maximum memory size to match standard
  added security status handling/load/save
  added SELECT/QUIET handling
  more fine grained allocation routines and checks
  fix memset sizes
* added "Listen NfcV Reader" to sniff traffic from reader to card
* added correct description to delete menu
* also added DSFID/AFI handling and locking
* increase sniff log size
* scale NfcV frequency a bit, add echo mode, fix signal level at the end
* use symbolic modulated/unmodulated GPIO levels
* honor AFI field, decrease verbosity and removed debug code
* refactor defines for less namespace pollution by using NFCV_ prefixes
* correct an oversight that original cards return an generic error when addressing outside block range
* use inverse modulation, increasing readable range significantly
* rework and better document nfc chip initialization
* nfcv code review fixes
* Disable accidentally left on signal debug gpio output
* Improve NFCV Read/Info GUIs. Authored by @xMasterX, committed by @nvx
* Fix crash that occurs when you exit from NFCV emulation and start it again. Authored by @xMasterX, committed by @nvx
* Remove delay from emulation loop. This improves compatibility when the reader is Android.
* Lib: digital signal debug output pin info

Co-authored-by: Tiernan Messmer <tiernan.messmer@gmail.com>
Co-authored-by: MX <10697207+xMasterX@users.noreply.github.com>
Co-authored-by: gornekich <n.gorbadey@gmail.com>
Co-authored-by: あく <alleteam@gmail.com>
2023-06-08 14:30:53 +09:00
MX
0d394a6f87
Merge branch 'ofw-dev' into dev 2023-06-07 00:29:06 +03:00
MX
d86eb870d4
pre-merge fix 2023-06-07 00:28:26 +03:00
Skorpionm
dbd48a04d4
[FL-3331] SubGhz: add subghz_protocol_registry external API (#2712)
* [FL-3331] SubGhz: add subghz_protocol_registry external API

* F18: fix API version

---------

Co-authored-by: hedger <hedger@nanode.su>
2023-06-06 23:13:41 +04:00
あく
76c70bdf2c
[FL-3316] Settings: add contrast adjustment (#2737)
Co-authored-by: hedger <hedger@users.noreply.github.com>
2023-06-06 21:46:01 +04:00
MX
a0e39ddb67
more checks just in case?? 2023-06-03 20:36:20 +03:00
Tiernan Messmer
2008247e65
Remove delay from emulation loop. This improves compatibility when the reader is Android. 2023-06-03 15:48:33 +03:00
MX
d16ba6c4c8
Fix stilmatic support? 2023-06-03 00:29:01 +03:00
MX
2dc0059b1c
NFC V, review gui fixes, disable debug output in digital signal 2023-06-02 16:47:54 +03:00
MX
b0c322ec90
Fix crash on second emulation NFC V 2023-06-02 15:03:01 +03:00
MX
4c134d8fdc
Merge branch 'ofw-dev' into dev 2023-06-01 16:19:37 +03:00