Commit graph

778 commits

Author SHA1 Message Date
MX
2740368b0e
Merge branch 'fz-dev'
Conflicts:
	.gitmodules
	firmware/targets/f7/api_symbols.csv
2022-10-20 19:06:56 +03:00
Sergey Gavrilov
42df7aa04a
Fix FuriString oplist (init move) (#1894)
* FuriString, Infrared: fix oplist and drop string_t.
* Elf loader: log size
* Comment fix
* API: furi_hal_console_init
2022-10-20 19:58:11 +09:00
Skorpionm
9a9abd59e9
[FL-2904, FL-2900, FL-2890] WS: add app WeatherStation (#1833)
* WeatherStation: start
* SubGhz: rename protocol magellen -> magellan
* WeatherStation: err Unresolved symbols: {'subghz_protocol_decoder_base_get_string'}
* WeatherStation: fix Unresolved symbols: {'subghz_protocol_decoder_base_get_string'}
* Subghz: add set protocol_items
* WeatherStation: adding your protocols
* WS: add Infactory protocol
* WS: add history
* WS: add setting
* WS: add lock
* WS: add hopper frequency
* WS: fix history
* WS fix string_t -> FuriString*
* WS: add images
* WS: history record update when receiving data from the sensor again
* WS: add receiver info, delete extra code
* WS: add protocol ThermoPRO_TX4
* [FL-2900] SubGhz: Move icons in Sub-GHz
* WS: add Notification
* [FL-2890] SubGhz: Rename *_user files in resources to _user.example
* WS: add about scene
* WS: removing redundant code
* WS: add  protocol Nexus-TH
* WS: add protocol GT_WT03
* WS: fix notification and rename "Weather Station" -> "Read Weather Station"
* SubGhz: partial unit tests fix
* SubGhz: fix unit_test
* SubGhz: remove dead code
* SubGhz: rename SubGhzPresetDefinition into SubGhzRadioPreset, cleanup subghz types.

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2022-10-20 02:27:26 +09:00
MX
a3c6d8bb4a
SubGhz: rename SubGhzPresetDefinition into SubGhzRadioPreset, cleanup subghz types. 2022-10-19 18:52:21 +03:00
Aleksandr Kutuzov
3807d61034
SubGhz: remove dead code 2022-10-19 18:41:04 +03:00
MX
6579576490
fix protocol items requirement 2022-10-18 20:38:37 +03:00
MX
57251eb028
Merge branch 'fz-dev' into dev 2022-10-18 19:55:26 +03:00
Aleksandr Kutuzov
f33ea3ebe0
SubGhz: partial unit tests fix 2022-10-18 19:54:40 +03:00
MX
84d12da45a
add app WeatherStation
OFW PR 1833 by Skorpionm
2022-10-18 19:51:44 +03:00
Skorpionm
68009c6230
[FL-2919] SubGhz: CAME Wrong number of bits in key (add protocol Airforce) (#1890)
Co-authored-by: あく <alleteam@gmail.com>
2022-10-18 23:24:53 +09:00
Georgii Surkov
02c27becb0
[FL-2912] Forced RAW receive option for Infrared CLI #1891
Co-authored-by: あく <alleteam@gmail.com>
2022-10-18 23:10:21 +09:00
MX
fd3e70492d
add support for Normstahl, Mutancode, FAAC RC, XT 2022-10-17 22:43:33 +03:00
MX
4f7ca617cc
Merge branch 'fz-dev' into dev 2022-10-17 21:20:28 +03:00
gornekich
dfbe21e720
NFC fixes part 3 (#1885)
* nfc: fix read next key
* nfc: verify new line ending in user dictionary file
* nfc: fix cache save
* nfc: add unit test for dict load
* nfc: fix total key count in dictionary

Co-authored-by: あく <alleteam@gmail.com>
2022-10-18 02:10:41 +09:00
MX
d547307357
Fix DTM Neo encoder 2022-10-14 01:30:20 +03:00
MX
947e44ce86
Merge branch 'fz-dev' into dev 2022-10-13 20:32:05 +03:00
Astra
55f8beef9f
[FL-2876] MFC Improvements Part 2/2 (#1868)
* Remove keys incorrectly added by the key cache
* Improve responsiveness while checking for re-used keys and fix skipping keys when card is removed
* Actually check if the card is completely read
* Discard incorrect keys on a lower level
* nfc: clean up

Co-authored-by: gornekich <n.gorbadey@gmail.com>
2022-10-14 01:23:29 +09:00
MX
3dde6089fc
update mfc improvements
OFW PR 1868 by Astrrra
2022-10-13 16:06:34 +03:00
MX
3a569d4be8
Merge branch 'fz-dev' into dev 2022-10-13 00:42:15 +03:00
Luke Williams
50dc2d7389
36-bit AWID (L11601 Lenel) (#1838)
* 36-bit AWID
* Rfid: correct vendor name AWIG -> AWID

Co-authored-by: Sergey Gavrilov <who.just.the.doctor@gmail.com>
Co-authored-by: あく <alleteam@gmail.com>
2022-10-13 01:31:54 +09:00
MX
2e047ff411
allow 36-bit AWID (L11601 Lenel)
OFW PR 1838 by ae5au
2022-10-12 05:32:58 +03:00
MX
6b5631e5b0
MFC Improvements Part 2/2
OFW PR 1868 by Astrrra
2022-10-12 05:29:42 +03:00
MX
aa9f958f07
Merge branch 'fz-dev' into dev 2022-10-12 04:37:59 +03:00
MX
022315e93d
Improve keeloq, add JCM support, fix Nice Smilo, MHouse, and more
now manufacturer name is saved into file, and will not change randomly, 
added support for JCM
fixed Nice Smilo, MHouse
2022-10-12 04:18:29 +03:00
gornekich
2552278a3d
[FL-2883] NFC: bank card rework reading (#1858)
* nfc: remove bank card save option
* nfc: remove bank card save from nfc device
* nfc: remove unused function in emv
* nfc: try several times to start emv application
* nfc: add AID display fallback for bank cards

Co-authored-by: あく <alleteam@gmail.com>
2022-10-12 02:13:12 +09:00
MX
91d7a38ca6
update changelog and fix subghz issues 2022-10-09 04:24:51 +03:00
MX
b0c9af9c06
Merge branch 'fz-dev' into dev 2022-10-08 23:11:16 +03:00
Sergey Gavrilov
981f7ff8b0
Elf loader: do not load .ARM.* sections (#1850)
* Elf loader: do not load .ARM sections
* Fix section name
2022-10-09 00:51:51 +09:00
SG
c38c42906f
Elf loader: do not load .ARM sections 2022-10-08 17:50:26 +03:00
MX
184b467f62
add nfc feature back, bug seems to be fixed 2022-10-08 00:03:06 +03:00
MX
16ea8dc568
Merge branch 'fz-dev' into dev 2022-10-07 21:11:40 +03:00
Sergey Gavrilov
37b5e58a60
More correct elf loader (#1839)
* ELF File: more robust section loader
* ELF File: faster and smaller preinit, init and fini arrays handling
* ELF File: load sections on preload stage
* ELF File: naming
* Furi: fix use after free in thread join

Co-authored-by: あく <alleteam@gmail.com>
2022-10-08 02:06:29 +09:00
MX
b4b3c182c5
fixes for new printf and furistream 2022-10-07 18:32:58 +03:00
MX
bdd052937b
Merge branch 'fz-dev' into dev 2022-10-07 17:24:20 +03:00
Sergey Gavrilov
4000f0cac5
[FL-2870] Printf function attributes (#1841)
* 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 (#1834)
* 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 (#1832)
* 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 (#1822)
* 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 (#1820)
* 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 (#1811)
* 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 #1828
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 (#1795)
* 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 (#1796)
* 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 (#1784)
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 (#1378)
* 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 (#1782)
* 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 (#1781)
* 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 (#1748)
* 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. (#1744)
* 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 (#1776)
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 (#1769)
* 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 #74 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 (#1704)
* 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. (#1533)
* 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 (#1503)
* 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 (#1678)
* 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 (#1723)
* 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 (#1742)
* 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 #69 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 #1735
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 (#1387)
* 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 (#1387) 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