Commit Graph

183 Commits

Author SHA1 Message Date
0mega fdb1e3fe90 fix to allow to disable emulate from defines if needed 2026-07-01 08:54:44 +02:00
0mega 62b31bfe95 More Memory optimizations and new protocols
- Split RX registries into more plugins: AM, AM VAG, FM, FM F4, and FM Honda1
- Add per-protocol TX plugins so emulation loads only the selected encoder
- Sub Decode (enabled by default) and Timing Tuner as plugins
- Max history increased to 20 signals
- Fix Sub Decode and simplified UI
- Add Check Saved setting ported from dexter_pester PR !
- Fix Fiat V1 decoder and add HITAG2 key TX support
- Add Renault V0, Fiat V2, Honda V2, Ford V3 (& US variant) Thanks Ash

Sorry this is a lot at once x)
2026-06-30 21:28:26 +02:00
MX f14c40089d apply fbt formatting
FAP Build / ufbt: Build for Momentum dev (push) Successful in 59s
FAP Build / ufbt: Build for Momentum release (push) Successful in 1m0s
FAP Build / ufbt: Build for OFW dev channel (push) Successful in 52s
FAP Build / ufbt: Build for OFW release channel (push) Successful in 1m1s
FAP Build / ufbt: Build for Unleashed release (push) Successful in 1m4s
FAP Build / ufbt: Build for Unleashed dev (push) Successful in 1m3s
2026-06-12 17:11:09 +03:00
MX 35f678671a fix
FAP Build / ufbt: Build for Momentum dev (push) Successful in 1m1s
FAP Build / ufbt: Build for Momentum release (push) Successful in 58s
FAP Build / ufbt: Build for OFW dev channel (push) Successful in 59s
FAP Build / ufbt: Build for OFW release channel (push) Successful in 1m1s
FAP Build / ufbt: Build for Unleashed dev (push) Successful in 1m1s
FAP Build / ufbt: Build for Unleashed release (push) Successful in 1m8s
2026-06-09 05:21:45 +03:00
MX f45c2a8907 Merge remote-tracking branch 'pp_net/zero-mega' into pp_main
FAP Build / ufbt: Build for Momentum dev (push) Successful in 1m0s
FAP Build / ufbt: Build for Momentum release (push) Successful in 1m0s
FAP Build / ufbt: Build for OFW dev channel (push) Successful in 54s
FAP Build / ufbt: Build for OFW release channel (push) Successful in 59s
FAP Build / ufbt: Build for Unleashed dev (push) Successful in 58s
FAP Build / ufbt: Build for Unleashed release (push) Successful in 58s
2026-06-04 18:52:32 +03:00
zero-mega 25be4e177b Add Honda V1 Protocol (Thanks Ash) 2026-06-04 12:43:59 +02:00
Myte d4ee2e59aa Move KIA V2 protocol from FM to AM (ASK/OOK) registry
KIA V2 uses Manchester encoding and was historically decoded successfully
under ASK presets. The recent AM/FM plugin split placed it in the FM
registry based on its flag, but real-world KIA V2 fobs operate on ASK.

Changes:
- protocols/kia_v2.c: SubGhzProtocolFlag_FM -> SubGhzProtocolFlag_AM
- protopirate_fm_plugin.c: remove kia_v2 include and registry entry
- protopirate_am_plugin.c: add kia_v2 include and registry entry
- application.fam: move kia_v2.c source from FM plugin to AM plugin
2026-06-03 23:30:28 +03:00
zero-mega 04937fb411 update readme and protocol flags 2026-06-01 15:38:35 +02:00
zero-mega 3fea523302 Add Emulate and PSA BF as plugins too 2026-05-22 17:52:55 +02:00
zero-mega cb5ea5ba05 fix Chrysler V0 compile error and encoder 2026-05-20 18:17:39 +02:00
zero-mega 1214f338dd Fix enable emulate 2026-05-19 18:30:11 +02:00
zero-mega 3919826ec4 Fix keystore for FM protocols plugin
Fix KIA V5 encoder and KIA V3/4 encoder (CRC bruteforce...)

Add support for Ford V1 different fobs (no decryption yet) (Jaguar, Landrover, Range Rover 2018)
Add Ford V3 decoder (no decryption yet) (Ford Focus/Ranger 2020)
Thanks to Ash for thoses last two :)
2026-05-19 18:27:48 +02:00
0mega 3612385fcc New AM/FM protocol registry plugin split
More shared helpers in protocols_commons
Storage and history improvements
Add Chrysler V0, Ford V2 (simple replay encoder), Land Rover V0
Fix Fiat V0, Subaru & Kia V5
2026-05-05 20:13:02 +02:00
MX 578abbffc7 fix unused func compile error 2026-04-24 21:11:59 +03:00
0mega 3ebe354b04 - Fix Honda Static (FM registry, compact decoder, checksum/layout)
- Defer radio init until first use
- Add shared radio helpers
- Reduce PROTOPIRATE_HISTORY_MAX to 10
- Lazy allocate scenes/widgets/receiver on enter
- Lint & format
2026-04-24 15:57:18 +02:00
0mega 1c1bce5242 Improve RAM management in receiver and history
- prune protocol registry based on user selected preset
- add OOM guard for history with RAM! low-memory state
- free TX on stop
- add long press right to delete signal in history
2026-04-22 11:37:02 +02:00
zero-mega 34a19337d6 Add Ford V1 protocol 2026-04-21 18:02:51 +02:00
zero-mega c13cdfd8e9 Clean Fiat V1 logs 2026-04-21 12:42:58 +02:00
zero-mega e24f2b3bee Fix Fiat V1
Add CRC check from ARF, remove retx path, add confirmed button mapping
2026-04-21 12:13:17 +02:00
0mega bca43b8912 fix ENABLE_EMULATE helpers
remove standalone suzuki
2026-04-17 12:20:51 +02:00
0mega f81a706735 Refactor Kia V0 to include shared logic for Suzuki V0 and Honda V0 2026-04-17 11:55:22 +02:00
0mega df90de255c Add Honda Static protocol 2026-04-16 21:15:43 +02:00
0mega 1e9446efd8 fix 2026-04-15 10:32:04 +02:00
0mega b5374d5187 Add Kia V7 decoder and encoder 2026-04-15 10:15:03 +02:00
0mega 6758a4e6e3 Fix Mazda V0 decoder and add encoder 2026-04-14 16:10:50 +02:00
Leeroy a0e1f07746 FORD: Refactor and Fix Panic = 0, Panic should = 1.
This removes the hacky code that fixed the Panic, and Sets the Button Codes to what they would actually be to Ford.

No button code should equal zero, that would mean NO button! It also fixes the overflow problem on the counter, so I think this is a better reference implementation.
2026-04-06 21:34:40 +10:00
Leeroy a3e2491044 FORD: Fix for CRC BAD.
The CRC is only wrong on valid captures because the high bit is sometimes not needing be be XORed with 0x80
This fix is technically not correct, but good for real world use.

We could still have a BAD CRC listed as OK, but this would be very unlikely to happen in the wild for a valid capture, amd only happen for 1/255 possible CRCs

I have made it so we only check the lower 7 bits of CRC, and return OK if they are all correct.
2026-04-06 21:31:23 +10:00
Leeroy 6fc8ed1346 FORD: Fix Panic Button Encode 2026-04-04 19:46:25 +11:00
cthuwu 8024ed3be6 kia_v0 extended preamble spacing
extended preamble so vehicle will recognise transmission 

fix to spacing to align correctly
2026-03-24 22:20:53 -04:00
cthuwu 647e454b46 kia_v0 extended preamble
extended preamble so vehicle will recognise transmission
2026-03-24 21:34:09 -04:00
MX b377cee471 Merge remote-tracking branch 'pp_net/zero-mega' into pp_main 2026-03-22 10:08:05 +03:00
MMX 4616c853b8 Merge branch 'main' into cthuwu-kia-v1-crc-fix 2026-03-22 02:44:58 -04:00
Leeroy 4ec678e34b Change BS to Checksum in Ford_V0 2026-03-22 09:05:40 +11:00
Leeroy 5b41b2ef52 FORD is FIXED, no B.S.! 2026-03-22 07:23:56 +11:00
cthuwu 4e1a9a65ba Fix Kia V1 "Wrong" CRC
fixes "Wrong" CRC issue with cnt_high vales between 1-5
2026-03-21 05:39:49 -04:00
0mega 9ac1ea4ce3 Add Fiat V1, Mazda V0, Mitsubishi V0 and Porsche/Touareg
Ported from ARF
Original implementation by @lupettohf
2026-03-20 17:16:12 +01:00
0mega d69fe91e38 some fixes 2026-03-11 06:52:54 +01:00
MX c28eaa3c2e Merge branch 'pp_main' into zero-mega 2026-03-07 19:25:28 +03:00
0mega d03567f09f Add Kia V6 Encoder 2026-03-04 17:24:42 +01:00
0mega a54b0ab4a0 PSA faster BF and GUI 2026-03-04 13:17:05 +01:00
MX 7325675e04 fix merge bugs
FAP Build / ufbt: Build for Momentum dev (push) Successful in 1m8s
FAP Build / ufbt: Build for Momentum release (push) Successful in 1m8s
FAP Build / ufbt: Build for OFW dev channel (push) Successful in 1m8s
FAP Build / ufbt: Build for OFW release channel (push) Successful in 1m7s
FAP Build / ufbt: Build for Unleashed dev (push) Successful in 1m6s
FAP Build / ufbt: Build for Unleashed release (push) Successful in 1m6s
2026-02-20 16:14:10 +03:00
MX 241ec6d75c fix 2026-02-20 16:06:39 +03:00
MX 2a04a6dd30 Merge remote-tracking branch 'pp_net/zero-mega' into gull-protocoles-parse 2026-02-20 16:02:40 +03:00
zero-mega 36c8dce72d Fix VAG decoder 2026-02-19 17:31:24 +01:00
gullradriel 8f00e382d9 typo on logged variable type 2026-02-17 16:45:00 +01:00
gullradriel a166eb6235 try-fix encoder 2026-02-15 22:14:20 +01:00
gullradriel 75f4283624 use files from file_decoder and not main, dumb me git status 2026-02-12 22:39:05 +01:00
gullradriel b49a964391 reapplied temp_str furi_string 2026-02-12 22:24:41 +01:00
gullradriel 784d106b8d restored from main, reapplied calloc instead of malloc and some furi_checks 2026-02-12 22:21:43 +01:00
gullradriel 66973cf6dc format and correct defines from main 2026-02-12 17:48:41 +01:00