Root/TODO

Source at commit 762d33cf5dbc344926b91d736f3c4982ec7bea93 created 12 years 2 months ago.
By Werner Almesberger, Merge branch 'master' of projects.qi-hardware.com:ben-wpan
1Current stuff
2-------------
3
4- add spi_atben driver, for improved performance and to serve as an
5  example for spi_atusb
6
7  Resolution: done. Average frame buffer transfer speed increased from
8  about 0.82 Mbps to 4.2 Mbps. Things still pending:
9
10  - restore GPIOs in spi_atben
11  - update unbinding procedure
12
13- need to document fab workflow in makefiles/Makefile.kicad
14
15- boot.hex is now bigger than 4 kB. Need to split USB stack build into
16  "lean" and "fat" version.
17
18  Work-around: those wishing to build their boot loader should use
19  commit ce16a16.
20
21  Resolution: should work now (after the stack split). Still needs
22  testing.
23
24- atusb/fw/ design flaw: we can send an interrupt queued in EP1 after
25  a control transfer has happened that turns off the interrupt source
26
27  Work-around: seems that waiting for 10 ms gets it most of the time
28
29- atusb/fw/ should combine interrupts so that we don't have to read
30  IRQ_STATUS (this goal may conflict with the synchronization
31  requirement above, though)
32
33  Resolution: do less instead of more - we now don't even touch
34  IRQ_STATUS in the atusb firmware and just send a zero byte as an
35  indication that something has happened.
36
37- atusb/fw/: think of a better way to re-enable INT0 after ATUSB_GPIO
38
39- atusb/fw/: remove obsolete atusb requests
40
41- write GETTING-STARTED similar to what we had for gta02-core
42
43- find out why "make dfu" doesn't work on my u1010
44
45- make tools interruptible (^C) again when using atusb (the new
46  interrupt code removed the timeout and usb_bulk_read seems to simply
47  ignore signals)
48
49- update OpenWrt cross-toolchain and check build. Also check if
50  SDL_gfx is now available.
51
52*** EVERYTHING BELOW NEEDS UPDATING ***
53
54General
55=======
56
57Things not done yet
58-------------------
59
60- document directory hierarchy
61
62- make sure all files have a copyright header or are listed in AUTHORS
63
64- connect all the bits and pieces of the build system
65
66- combine io-parts.h generation
67
68- combine "standard" EP0 commands, such as *_ID and *_BUILD
69
70- implement return to DFU in application's EP0 protocol
71
72- consider removing *_ID and using bcdDevice instead
73
74
75Bugs to fix
76-----------
77
78- builds fail if .version isn't there yet
79
80
81
82atrf
83====
84
85AT86RF230-based IEEE 802.15.4 transceiver. Two variants: one to make a USB
86dongle for use with any Linux host, and one that connects with SPI directly
87inside a Ben.
88
89Update: following Rikard Lindstrom's revelation that we can use the uSD slot
90also just as general GPIOs, the variant that goes inside the Ben can wait a
91bit and the atben board for insertion into the uSD slot is being worked on
92first. We can verify most of the design of a fully integrated board with the
93atben board and the latter will be of greater immediate use.
94
95
96Things done
97-----------
98
99- verify that the Ben can output an a) 16 MHz clock, and b) with +/- 40 ppm
100
101  Done, see ecn/ecn0005.txt. Works fine.
102
103- replace discrete balun and filter with integrated solution, to reduce BOM
104  size, maybe cost, insertion loss, and PCB space (see ATRF/ECN0003)
105
106  Done for atben. At a first glamce, does not seem to affect performance.
107
108- check if we really need three DC blocking caps in the RF path
109
110  Reduced to two in atben without apparent ill effects.
111
112
113Things not done yet
114-------------------
115
116- examine spectrum around carrier frequency and first harmonic to look for
117  obvious distortions. Vary transmit power.
118
119- measure throughput as a function of placement/distance, carrier frequency,
120  and transmit power
121
122- atrf-txrx: suppport "extended mode" with IEEE 802.15.4 CSMA-CA for more
123  realistic throughput figures
124
125- measure full spectrum (ideally up to 25 GHz, but just 2nd and 3rd harmonic
126  will already tell most of the story) with calibrated antenna for FCC/ETSI
127  compliance assessment. Vary transmit power.
128
129- use IEEE 802.15.4 stack from linux-zigbee. The linux-zigbee kernel is
130  currently at 2.6.35. Once 2.6.36 is released, we should have Ben and
131  IEEE 802.15.4 support in the same kernel without further ado.
132
133- change layout of transceiver side of the board for placement inside Ben
134
135- define EMI filters for placement inside Ben
136
137- check USB standard for recommended USB dongle dimensions
138
139- change layout for straight USB dongle
140
141- generate proper BOM
142
143- implement sleep mode
144
145- (atben) verify SPI signal timing, particularly the data clock
146
147
148ccrf
149====
150
151Board similar to the atrf, but with the TI/Chipcon CC2520.
152
153Cancelled. The CC2520 falls under US export restrictions, apparently because
154it contains an AES engine.
155
156
157cntr
158====
159
160Simple USB-based counter to measure a clock's long-time accuracy with
161arbitrarily high precision, by comparing it to an NTP time reference.
162
163
164Things not done yet
165-------------------
166
167- measure duty cycle
168
169- use the LED to display activity on clock input and duty cycle
170
171- consider using a comparator and a DAC to allow for programmable logic levels
172
173- evaluate termination resistance
174
175- document circuit design
176
177- record beats between 16 bit counter polls and use them for the estimate
178  of lost cycles (2*1 is way too optimistic)
179
180- include system clock resolution in accuracy calculation
181
182- consider running shorter sliding windows to estimate drift
183
184- consider detecting unusual half-periods
185
186- consider using a reversed USB connector, to avoid having to cross D+/D- and,
187  worse, VBUS and GND
188
189- test input performance by counting a source that emits a known number of
190  cycles
191
192- consider using historical margins to sanity-check the current margin (if any
193  old.max < curr.min or old.min > curr.max, we have a problem) and to further
194  narrow the effective margin, thus achieving faster convergence. We would have
195  to consider temperature drift of the frequency source in this case.
196
197- find out why frequency measurements always seem to start high and then slowly
198  drop
199

Archive Download this file



interactive