summaryrefslogtreecommitdiff
path: root/TODO
blob: 5bed089553ed0bfc50fbcb4202ac2eda046bd852 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
architecture:
- somehow have some more abstrcat handle type in order to enable the generic
  rfid_{get,set}opt() functions
- remove additional transceive_{acf,sf} functions from reader and asic structs,
  make the code reuse the existing transceive() function by using the frametype
  to differentiate different cases.

rc632:
- make timeout tolerance factor (TIMER_RELAX_FACTOR) user-specified
- try to use built-in timer for timing analysis, i.e. determine the exact time
  until a card response by reading the remaining timer ticks from the register
- make sure interrupt mode for timer wait works

cm5121:
- fix handling of TX or RX > 0x7f [buffer length in atmel chip?]

iso14443a:
[none]

iso14443b:
- implement 'option 2' frame markers
- test anticollission (need multiple tags)

iso15693:
[none]

mifare_clasic:
[none]

icode1:
- implement and test code (I only have ICode2 tags)

tcl:
- implement pps for asymmetric (rx/tx) speeds

openct:
- add ifdhandler driver for PC/SC support
- add various standardized PC/SC remappings for cards != tcl

other:
- implementation of code for various passive tags, ie. ITRX, I*Code1, I*Code2, Tag-it, ...
- documentation
- add notion of 'asic implementation' for specifying reader-specific
  initialization values such as mod_conductance
- abstract a read single block / read multiple block API where l2/proto
  layer can provide multi-block function (e.g. iso15693), which will be
  emulated in case there only is a single-block function
- switch over to use of rfid_buf structure, similar to linux skb.  upper
  layers have sufficient headroom in order to have lower layers add protocol
  headers in front of a packet
- implement software checksumming support.  The reader should be able to
  indicate whether it supports hardware checksum generation / verification.
- application software should be able to override hardware csumming on request
- implement some auto-calibration mode where the user is requested to leave a
  single PICC/VICC on the reader and the software iterates through various
  mod_conductance and bitphase values to see whether it can calibrate to a given
  [new] card. The resulting calibration values are printed by the program.
personal git repositories of Harald Welte. Your mileage may vary