Commit graph

161 commits

Author SHA1 Message Date
pwpiwi
867e10a5fd usb communication (device side) refactoring
* merge cmd.c into usb_cdc.c
* move back usb_cdc.[ch] to common/
* declare low level functions usb_read() and usb_write() and more functions as static
* use cmd_receive() in bootrom.c and appmain.c
* remove unused memory wasting csrTab[100] in usb_cdc.c
* replace more byte_t by uint8_t
* more whitespace fixes
2020-01-15 18:49:28 +01:00
pwpiwi
72622d6429 usb communication (device side) housekeeping
* move cmd.[ch] and usb_cdc.[ch] to armsrc
* sorting out #includes
* replace byte_t by uint8_t
* some reformatting
* whitespace fixes
* (no functional changes)
2020-01-15 18:46:09 +01:00
marshmellow42
817611f565 update em4x05 timing (#846)
See @mwalker33 issue #838
2019-07-11 20:31:51 +02:00
jmorsch
347efc1274 whitespace cleaning 2019-07-11 13:01:36 -04:00
mwalker33
bdc9779645 Update lfops.c
boundary length check
2019-07-07 05:00:08 +10:00
mwalker33
dcd936a1da Update lfops.c
Fixed lf t55 reset
2019-07-06 15:20:25 +10:00
mwalker33
d7569065cb Code tidy
removed commented code
2019-07-03 19:58:49 +10:00
mwalker33
28597bb6c7 Update lfops.c
moved wakeup and reset to call T55xx_SendCMD.  Small code improvements
2019-06-27 16:57:28 +10:00
mwalker33
7db36608a2 Code improved for less memory 2019-06-26 11:34:31 +10:00
mwalker33
5a9964829e Resolved Conflicts 2019-06-25 20:46:10 +10:00
mwalker33
50764caadc Update lfops.c 2019-06-25 19:28:06 +10:00
mwalker33
644493821c
Merge branch 'master' into master 2019-06-25 19:01:13 +10:00
mwalker33
e220fc63aa Update lfops.c 2019-06-25 18:56:32 +10:00
marshmellow42
2de26056ce add lf em 4x05protect plus lf config s option (#833)
* add "samples to skip" for lf config (mainly for lf snoop)
* add lf em 4x05protect command to write protection on em4x05 chips
* fix spacing
* and remove old comment git added back in..
* update changelog
* fix flags - only need 1 bit
2019-06-23 13:43:55 +02:00
mwalker33
4be71814b4 T55xx Downlink - Updates
Improved code.
2019-06-22 15:26:56 +10:00
mwalker33
6763dc17a3 Cleanup Code
Update downlink option from e to r
fixed long leading reference
added downling option to original bruteforce
2019-06-18 21:17:12 +10:00
mwalker33
dd8e451330 T55xx downlink Modes
Changes :
- Added t55xx downlink protocols (long leading reference, leading 0 and 1 of 4)
- Added function to all read to call differnet downlink functions (to match write)
- Update functions to support using differnet downlink modes.
- Added support for calling downlink modes for lf t55 read, write and detect
- Added new function lf t55 bruteforcedl to support downlink modes as well as try each mode
	for each password in password file.

for functions with downlink mode extenstion.

 e <mode>     - OPTIONAL downlink encoding '0' fixed-bit-length (default),
					   '1' Long Zero Reference,
					   '2' Leading Zero,
					   '3' 1 of 4
2019-06-16 15:35:10 +10:00
pwpiwi
fc52fbd42f
Add raw HF signal plotting (#786)
* Add raw HF signal plotting
* new fpga module hi_get_trace.v - store A/D converter output to circular buffer on FPGA
* new command 'hf plot' - pull data from FPGA and display it in Graph Window
2019-02-20 19:18:12 +01:00
☃ Stephen Shkardoon ☃
5f84531b82 Paradox clone functionality implemented (#747)
This involves a refactor to the arm HID code to allow for arbitrary
preambles (such as HID Proximity and Paradox).
The client also borrows from the HID code, but is not shared, so could
use a significant refactor in the future.
2019-01-05 09:48:59 +01:00
marshmellow42
161c40fb52
Merge branch 'master' into master 2018-09-18 22:12:11 -04:00
pwpiwi
6a5d4e17f4
rework iso14443b device functions including FPGA I/Q signal transfer (#669)
* rework iso14443b device functions
* hf_read_rx_xcorr.v: transfer i/q pair in one 16bit frame
* hi_read_tx.v: invert ssp_dout. When nothing is transferred (ssp_dout=0), this results in no modulation (carrier on)
* adjust arm sources accordingly
* iso14443b.c: switch off carrier after hf 14b sri512read and hf 14b srix4kread
* iso14443b.c: fix DMA circular buffer handling
2018-09-16 00:53:28 +02:00
grauerfuchs
fc7a78f2d1 Changes requested by @marshmellow42
Added CHANGELOG details for new lf hid commands
Restored basic ARM-side decoding of 26-bit and 35-bit cards
2018-09-13 21:05:11 -04:00
grauerfuchs
be59094de9 lf hid improvements - encoding and long tag simulation
**DEVICE FIRMWARE UPDATE**
The code changes needed to support long tag emulation required an update to the device firmware. As of this patch, devices running older firmware will not be able to read or emulate HID tags until the firmware is updated. Additionally, devices with the firmware from this update or newer will not properly read or encode HID tags with a prior version client.

The 'lf hid encode' command has been further refined, and is now entirely parameterized to support use of fields other than facility code and card number. The client help data has been updated to show the correct syntax.
2018-08-30 21:01:21 -04:00
pwpiwi
44964fd181
Code cleanup (#616)
* coverity fixes (including a real bug in cmdhftopaz.c)
* Typo fix
* replace TRUE/FALSE by stdbool true/false
2018-06-13 08:13:20 +02:00
marshmellow42
2896e490d9 update changelog
+fix a comment typo
+ move clear bigbuf after fpgadownloadandgo...
2018-02-14 15:41:39 -05:00
marshmellow42
779d9a0e90 reconfigure lf cmdread ...
to use lf config settings instead of it's own settings.  (now allows
full options of lf config...)

also it will now run `data samples` when the command completes making it
not necessary to run manually...

note: adjusted client wait message as it was confusing.
2018-02-10 17:30:32 -05:00
marshmellow42
61e96805ad add bitbang option to lf cmdread
by setting delay to 0 we can use cmd binary to bitbang the antenna.

note that the timing isn't perfect (especially on the off periods) but
is fairly close. worst i've seen it off is 8us on a large off period.
but i don't have the best test equipment...
2018-02-09 15:51:20 -05:00
marshmellow42
217cfb6b29 fix lf search bugs when no tag is on antenna
cotag read could enter endless loop, now cancels if the next bit doesn't
appear

em4x05 detection would loop due to a threshold never being met, now has
a dump out after 1000 samples tested.

fixed some indenting in hitag2 while i was reviewing that code for
potential endless loops...
2017-11-10 15:57:55 -05:00
marshmellow42
8c8317a5e9 fix lf sim fpga download overwrites sim buffer (#391)
* adjust LFSim to download lf fpga prior to setting emulation buffer to prevent buffer overwrite condition if you are coming from HF fpga.
* fix lf sim big buff overwrite with fpga download. Move fix to the buffer download cmd.
2017-09-11 19:18:32 +02:00
marshmellow42
1dae9811f2 Indala fixes - set accurate preamble and start of.. (#385)
.. data for both format types (64 bit and 224 bit)
also adjust 224 bit demod and clone to output and input in PSK2 instead
of PSK1 as this appears to be most common for this format.
2017-08-27 12:10:28 +02:00
marshmellow42
f2081c4356 adjust lf simulation - fix one bug + attempt... (#369)
... to speed up the loops waiting for carrier signal to go high or low
by only checking for a halt (button press or usbpol) every 1000th loop
iteration.
some users were experiencing modulating reactions to be too slow.
2017-08-08 21:08:59 +02:00
marshmellow42
1c70664ae7 finish FSK graph index changes 2017-04-15 16:18:54 -04:00
marshmellow42
b9957414a5 lf read adjustments
add parameter for # bits to read
auto get samples after lf read/snoop (don't need to do a `data samples`
anymore)
add safe function to get DemodBuffer
add some lf demod comments and apply new lf_read function instead of
read then get samples.
fixed output bug in lf t55xx config print
fixed small bug in lf t55xx detect during ST check
2017-04-07 17:28:12 -04:00
marshmellow42
bed24f53c2 no longer need doT55x7Acquisition... 2017-04-05 21:37:04 -04:00
marshmellow42
2229ee897e adjust t55x7 testmode write timing 2017-04-05 21:19:48 -04:00
marshmellow42
bf85d22f96 fix bug in st detect +
adjust nrz t55xx detection to reduce false positives on weak antennas
adjust t55xx read wait to get past initial startup wave.
2017-04-04 17:22:21 -04:00
marshmellow42
b97311b1bd lf improvements
fix noralsy demod bug (st should be true)
fix sprint_bin_break bug (didn't print last bit)
add a function to save/restore demodbuffer
remove redundant countFC call in PSKDemod
clean up pskclockdetect functions
fix indala26decode bug (end of data sometimes not correct)
improve PSK detection / demodulation
improve NRZ detection
improve t55xx commands & fix a few bugs
add t55xx page1 detection - added it to lf search
added experimental t55xx testmode write
2017-04-04 11:52:10 -04:00
marshmellow42
62a38cc883 adjust em4x05/em4x69 command timings to...
better conform to datasheet.
2017-02-28 13:18:52 -05:00
marshmellow42
40c6a02bc9 Add a retry loop to hf mf dump
helps get the data dumped even if positioning isn't 100% perfect.

also switched em4x05 commands to WaitUS instead of SpinDelayUs, per
@pwpiwi 's suggestion.
2017-02-28 11:09:42 -05:00
marshmellow42
33a1fe9636 small text adjustments plus...
small improvement to fsk clock detect + fixed a bug where it would
default to rf/16 when it couldn't find a valid one...
2017-02-22 10:41:40 -05:00
marshmellow42
34ff898553 fix false positive psk demod with fsk wave
also break out new find start of modulation routine.
2017-02-21 23:00:43 -05:00
marshmellow42
a37228c8c2 shorten em4x05 capture samples
add cap option for 4469
add sample size option for  DoAcquisition so i can limit how many
samples i want to collect.
use with DoPartialAcquisition
2017-02-20 17:39:39 -05:00
marshmellow42
893534d3b5 speed up the em4x05 cmds by only getting 6k...
samples back
2017-02-20 15:06:22 -05:00
marshmellow42
fa1e00cfbb add em4x05 info command
plus some minor adjustments
and added a quick em4x05 test:
bool EM4x05Block0Test(uint32_t *wordData)
if successful very likely the tag is an em4x05 or compatible...
2017-02-20 09:50:00 -05:00
marshmellow42
6980d66b05 add psk to em4x05 reads and tweak psk demod 2017-02-17 14:40:40 -05:00
marshmellow42
c85858f524 minor fixes for FSK demod
works better with EM4x03 and t55x7 tags (in theory)...
2017-02-17 12:59:35 -05:00
marshmellow42
e39a92bb1d em4x05 getting better
got the read/dump cmds working pretty well
some tweaking still left to do.
2017-02-17 01:33:27 -05:00
marshmellow42
7666f4608e update em4x05/em4x69 cmds
@iceman1001 s updates + some of my own.
still more to do:
-auto demod responses
-figure out config block
-figure out block 0 info / serial # in block 1
-figure out block 3 protection data
-add dump all blocks cmd
2017-02-12 23:59:44 -05:00
marshmellow42
e04475c421 Add @Iceman1001 s cotag read
also needed to include some of icemans timer additions.
2017-02-03 00:14:34 -05:00
marshmellow42
89696b8b24 fixed lf antenna left on bug && some iclass ...
output cleanup by @iceman1001
2016-12-19 09:45:23 -05:00