Proxmark3 community

Research, development and trades concerning the powerful Proxmark3 device.

Remember; sharing is caring. Bring something back to the community.


"Learn the tools of the trade the hard way." +Fravia

You are not logged in.

Announcement

Time changes and with it the technology
Proxmark3 @ discord

Users of this forum, please be aware that information stored on this site is not private.

#1 2009-07-01 01:04:03

adam@algroup.co.uk
Contributor
From: UK
Registered: 2009-05-01
Posts: 203
Website

More helpful help?

I had a go at tidying up the help (alphabetised), and also added the arguments if there are any:

> help

Available commands:
  askdemod      -- <samples per bit> <0|1> -- Attempt to demodulate simple ASK tags
  autocorr      -- <window length> -- Autocorrelation over window
  bitsamples    --     Get raw samples as bitstring
  dec           --     Decimate samples
  exit          --     Exit program
  flexdemod     --     Demodulate samples for FlexPass
  fpgaoff       --     Set FPGA off
  hexsamples    -- <blocks> -- Dump big buffer as hex bytes
  hi14alist     --     List ISO 14443a history
  hi14areader   --     Act like an ISO14443 Type A reader
  hi14asim      -- <UID> -- Fake ISO 14443a tag
  hi14asnoop    --     Eavesdrop ISO 14443 Type A
  hi14bdemod    --     Demodulate ISO14443 Type B from tag
  hi14list      --     List ISO 14443 history
  hi14read      --     Read HF tag (ISO 14443)
  hi14sim       --     Fake ISO 14443 tag
  hi14snoop     --     Eavesdrop ISO 14443
  hi15demod     --     Demodulate ISO15693 from tag
  hi15read      --     Read HF tag (ISO 15693)
  hi15reader    --     Act like an ISO15693 reader
  hi15sim       --     Fake an ISO15693 tag
  hiddemod      --     Demodulate HID Prox Card II (not optimal)
  hide          --     Hide graph window
  hidfskdemod   --     Realtime HID FSK demodulator
  hidsimtag     -- <ID> -- HID tag simulator
  higet         -- <samples> -- Get samples HF, 'analog'
  hisamples     --     Get raw samples for HF tag
  hisampless    -- <samples> -- Get signed raw samples, HF tag
  hisamplest    --     Get samples HF, for testing
  hisimlisten   --     Get HF samples as fake tag
  hpf           --     Remove DC offset from trace
  indalademod   -- ['224'] -- Demodulate samples for Indala
  lcd           -- <HEX command> <count> -- Send command/data to LCD
  lcdreset      --     Hardware reset LCD
  load          -- <filename> -- Load trace (to graph window
  loread        -- ['h'] -- Read 125/134 kHz LF ID-only tag (option 'h' for 134)
  losamples     -- [128 - 16000] -- Get raw samples for LF tag
  losim         --     Simulate LF tag
  ltrim         -- <samples> -- Trim samples from left of trace
  mandemod      -- <clock rate> -- Try a Manchester demodulation on a binary stream
  norm          --     Normalize max/min to +/-500
  plot          --     Show graph window
  quit          --     Quit program
  reset         --     Reset the Proxmark3
  save          -- <filename> -- Save trace (from graph window)
  scale         -- <int> -- Set cursor display scale
  setlfdivisor  -- <19 - 255> -- Drive LF antenna at 12Mhz/(divisor+1)
  sri512read    -- <int> -- Read contents of a SRI512 tag
  sweeplf       --     Sweep through LF freq range and store results in buffer
  tibits        --     Get raw bits for TI-type LF tag
  tidemod       --     Demodulate raw bits for TI-type LF tag
  tiread        --     Read a TI-type 134 kHz tag
  tune          --     Measure antenna tuning
  vchdemod      -- ['clone'] -- Demodulate samples for VeriChip
  zerocrossings --     Count time between zero-crossings

However, I'm not 100% sure I've got them all right as I've tried to work them out by looking at the code and some of it is a little obscure (see lcd for example), so I'd be grateful for some feedback before I commit the new code...

Offline

#2 2009-07-01 01:33:45

samy
Contributor
From: los angeles, california
Registered: 2009-06-18
Posts: 148
Website

Re: More helpful help?

Nice!

Honestly I think these need to be split up into sections, similar to the reference manual. E.g., when I'm looking to demodulate, I'd like to know what demod options I have without scanning the entire list...when looking at LF tags, just to look at a single section, etc

What do you think?

Offline

#3 2009-07-01 08:14:51

d18c7db
Contributor
Registered: 2008-08-19
Posts: 292

Re: More helpful help?

LCD commands are experimental as the PM3 doesn't really have an LCD, could be taken out as one would have to consult the datasheet to use them otherwise...

I agree with splitting the commands by section, ie HF commands, LF commands, DSP or "plot window" commands, misc, etc.

Offline

#4 2009-07-01 08:53:47

adam@algroup.co.uk
Contributor
From: UK
Registered: 2009-05-01
Posts: 203
Website

Re: More helpful help?

The problem with splitting it into sections is that to make it meaningful you'd really need to put some kind of header in there to tell you what the section was, but the way the help is generated doesn't allow for that as it's simply stepping through the command structure...

I was thinking of extending the help to allow per-command expansion - e.g. 'help lcd' would give you detailed help on the lcd command, and to do this will require a change in the way help is handled anyway, so I guess that we could do it like 'help demodulation' would list all the demod commands etc.?

Offline

#5 2009-07-12 13:54:58

adam@algroup.co.uk
Contributor
From: UK
Registered: 2009-05-01
Posts: 203
Website

Re: More helpful help?

I've made a start on the extended help:

proxmark3> help
> help

Available commands:
  askdemod      -- <samples per bit> <0|1> -- Attempt to demodulate simple ASK tags
  autocorr      -- <window length> -- Autocorrelation over window
  bitsamples    --     Get raw samples as bitstring
  bitstream     -- [clock rate] -- Convert waveform into a bitstream
  buffclear     --     Clear sample buffer and graph window
  dec           --     Decimate samples
  detectclock   --     Detect clock rate
  detectreader  -- ['l'|'h'] -- Detect external reader field (option 'l' or 'h' to limit to LF or HF)
  em410xsim     -- <UID> -- Simulate EM410x tag
  em410xread    -- [clock rate] -- Extract ID from EM410x tag
  em410xwatch   --     Watches for EM410x tags
  em4x50read    --     Extract data from EM4x50 tag
  exit          --     Exit program
  flexdemod     --     Demodulate samples for FlexPass
  fpgaoff       --     Set FPGA off
  hexsamples    -- <blocks> -- Dump big buffer as hex bytes
  hi14alist     --     List ISO 14443a history
  hi14areader   --     Act like an ISO14443 Type A reader
  hi14asim      -- <UID> -- Fake ISO 14443a tag
  hi14asnoop    --     Eavesdrop ISO 14443 Type A
  hi14bdemod    --     Demodulate ISO14443 Type B from tag
  hi14list      --     List ISO 14443 history
  hi14read      --     Read HF tag (ISO 14443)
  hi14sim       --     Fake ISO 14443 tag
  hi14snoop     --     Eavesdrop ISO 14443
  hi15demod     --     Demodulate ISO15693 from tag
  hi15read      --     Read HF tag (ISO 15693)
  hi15reader    --     Act like an ISO15693 reader
  hi15sim       --     Fake an ISO15693 tag
  hiddemod      --     Demodulate HID Prox Card II (not optimal)
  hide          --     Hide graph window
  hidfskdemod   --     Realtime HID FSK demodulator
  hidsimtag     -- <ID> -- HID tag simulator
  higet         -- <samples> -- Get samples HF, 'analog'
  hisamples     --     Get raw samples for HF tag
  hisampless    -- <samples> -- Get signed raw samples, HF tag
  hisamplest    --     Get samples HF, for testing
  hisimlisten   --     Get HF samples as fake tag
  hpf           --     Remove DC offset from trace
  indalademod   -- ['224'] -- Demodulate samples for Indala 64 bit UID (option '224' for 224 bit)
  lcd           -- <HEX command> <count> -- Send command/data to LCD
  lcdreset      --     Hardware reset LCD
  load          -- <filename> -- Load trace (to graph window
  locomread     -- <off period> <'0' period> <'1' period> <command> ['h'] -- Modulate LF reader field to send command before read (all periods in microseconds) (option 'h' for 134)
  loread        -- ['h'] -- Read 125/134 kHz LF ID-only tag (option 'h' for 134)
  losamples     -- [128 - 16000] -- Get raw samples for LF tag
  losim         --     Simulate LF tag
  ltrim         -- <samples> -- Trim samples from left of trace
  mandemod      -- [ i ] [clock rate] -- Manchester demodulate binary stream (option 'i' to invert output)
  manmod        -- [clock rate] -- Manchester modulate a binary stream
  norm          --     Normalize max/min to +/-500
  plot          --     Show graph window
  quit          --     Quit program
  reset         --     Reset the Proxmark3
  save          -- <filename> -- Save trace (from graph window)
  scale         -- <int> -- Set cursor display scale
  setlfdivisor  -- <19 - 255> -- Drive LF antenna at 12Mhz/(divisor+1)
  sri512read    -- <int> -- Read contents of a SRI512 tag
  sweeplf       --     Sweep through LF freq range and store results in buffer
  tibits        --     Get raw bits for TI-type LF tag
  tidemod       --     Demodulate raw bits for TI-type LF tag
  tiread        --     Read a TI-type 134 kHz tag
  tune          --     Measure antenna tuning
  vchdemod      -- ['clone'] -- Demodulate samples for VeriChip
  zerocrossings --     Count time between zero-crossings

'help <command>' for extended help on that command
proxmark3> help detectreader
> help detectreader

Extended help for 'detectreader':

Args: 'l'|'h'    - 'l' specifies LF antenna scan only, 'h' specifies HF antenna scan only.

Monitor antenna for changes in voltage. Output is in three fields: CHANGED, CURRENT, PERIOD,
where CHANGED is the value just changed from, CURRENT is the current value and PERIOD is the
number of program loops since the last change.

The RED LED indicates LF field detected, and the GREEN LED indicates HF field detected.

proxmark3>

Authors of commands please feel free to add extended help for your modules! Thanks!!! smile

Offline

#6 2009-07-12 18:58:22

szymonunion
Contributor
Registered: 2009-07-05
Posts: 46

Re: More helpful help?

Adam,

brilliant! Thx m8! Would be very useful for begginers, but not only of coz.

PS.
I wanna have working device, but I still do not have it - no one has it to sell now... sad

Offline

#7 2009-07-21 02:20:53

d18c7db
Contributor
Registered: 2008-08-19
Posts: 292

Re: More helpful help?

I've taken a stab at an initial attempt to place the PM3 manual on the google code wiki page. This way other contributors can update it so that Ed doesn't have to always do it himself. I don't see an easy way to update it via the web so it seems the only way is to use the SVN repository, check out a copy as you do with code, edit the source then check it back in.

Offline

#8 2009-07-21 02:33:34

samy
Contributor
From: los angeles, california
Registered: 2009-06-18
Posts: 148
Website

Re: More helpful help?

d18, cool. Does it allow formatting and images?

Offline

#9 2009-07-21 03:04:07

d18c7db
Contributor
Registered: 2008-08-19
Posts: 292

Re: More helpful help?

Heh sort of. Follow the link and you'll see. The formatting is limited as explained on the wiki syntax help page. Once you get used to it, it's not that bad. I really have to find a better way to preview the results other than "change source", "commit", "view page", "go d'oh!", "repeat"

Offline

Board footer

Powered by FluxBB