summaryrefslogtreecommitdiff
path: root/TODO
blob: 716310170a75b09a98a598cb5ff9b0005637d831 (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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
Background
==========

- Priority scale: High, Medium and Low

- Complexity scale: C1, C2, C4 and C8.
   The complexity scale is exponential, with complexity 1 being the
   lowest complexity. Complexity is a function of both task 'complexity'
   and task 'scope'.

Core
====

- Card Emulation Mode

  Priority: Low
  Complexity: C8
  Dependencies: Core:NDEF building library
  Owner: Samuel Ortiz <sameo@linux.intel.com>

  In card emulation mode, the NFC adapter is in passive mode, and gets
  activated by an initiator mode device. Then the initiator sends command
  that the target is supposed to interpret and respond to. Most of the
  commands are tag specific.
  For a proper card emulation mode support, the NFC adapter must enter the
  polling loop and not only initiate the RF field, but then wait for intiator
  to activate it. Once activated, the NFC socket should enter the accept
  state, and dispatch the various commands to the right plugins (one per
  protocol, a.k.a. tags).

- WiFi handover

  Priority: Medium
  Complexity: C4
  Owner: Samuel Ortiz <sameo@linux.intel.com>

  We should extend the handover API for support Wi-Fi as well, and implement
  the neard Wi-Fi handover agent from network manager components
  (e.g. ConnMan).

- Unit tests

  Priority: Medium
  Complexity: C2
  Owner: Samuel Ortiz <sameo@linux.intel.com>

- Packaging

  Priority: Medium
  Complexity: C2
  Owner: Samuel Ortiz <sameo@linux.intel.com>

  Packaging for both RPM and Debian packages based distributions should
  be done in order to push neard into the mainstream Linux distributions.

- OBEX over LLCP

  Priority: Medium
  Complexity: C4
  Owner: Samuel Ortiz <sameo@linux.intel.com>

- Split NDEF code

  NDEF code (Handover related in particular) should be splitted into parsing and
  acting part. This would make code easier to follow and would also allow to
  run unit tests on parsing part.

  Priority: Low
  Complexity: C4
  Owner:


Reader mode
===========


Writer mode
===========

- MIFARE writer mode support

  Priority: Low
  Complexity: C2
  Owner: Dorota Moskal <dorota.moskal@tieto.com>


p2p mode
========

- Bluetooth Handover integration

  Priority: Medium
  Complexity: C4
  Dependencies: Core:Handover Agent API
  Owner: Olivier Guiter <olivier.guiter@linux.intel.com>

  The handover integration has to be done between bluetoothd, obexd and
  neard. Obexd or BlueZ should be able to call a handover requester
  org.neard.Manager method to send an Hr to a remote peer. This asynchronous
  method will return upon reception of an Hs record. This is when BlueZ
  will be able to initiate the pairing.
  On the other hand, neard should be able to get the appropriate OOB data
  from BlueZ through the handover agent API, and build an Hs to send to
  the handover requester. The latter will then initiate the pairing.

- SNEP and LLCP validation tests

  Priority: Medium
  Complexity: C4
  Owner: Ravi kumar Veeramally <ravikumar.veeramally@linux.intel.com>

  Implement SNEP validation test cases as an optional neard plugin, and
  LLCP ones as a set of tools/ binaries.

- Microsoft handover

  Priority: Low
  Complexity: C4
  Owner: Samuel Ortiz <sameo@linux.intel.com>

  Microsoft handover implementation does not follow the NFC Forum specs.
  It is specified here:

     http://msdn.microsoft.com/en-us/library/ee941641

  In order to support this handover implementation, a specific plugin
  should be implemented as there is no overlap between it and the NFC
  Forum handover.

- PHDC service

  Priority: Medium
  Complexity: C4
  Owner: Samuel Ortiz <sameo@linux.intel.com>

  PHDC (Personal Health Device Communication) is a protocol on top of LLCP
  for exchanging ISO/IEEE 11073 PDUs. It has its own LLCP service name and
  as such could be implemented as a p2p plugin.
  The PHDC plugin would define its own D-Bus interface for both the PHDC
  Manager and Agent roles.