Root/TODO

Source at commit c705bf0939c6be4faff36967ea4be587ecc79096 created 9 years 2 months ago.
By Werner Almesberger, xxx
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- properly report EPERM if not running as root
44
45*** EVERYTHING BELOW NEEDS UPDATING ***
46
47General
48=======
49
50Things not done yet
51-------------------
52
53- document directory hierarchy
54
55- make sure all files have a copyright header or are listed in AUTHORS
56
57- connect all the bits and pieces of the build system
58
59- combine io-parts.h generation
60
61- combine "standard" EP0 commands, such as *_ID and *_BUILD
62
63- implement return to DFU in application's EP0 protocol
64
65- consider removing *_ID and using bcdDevice instead
66
67
68Bugs to fix
69-----------
70
71- builds fail if .version isn't there yet
72
73
74
75atrf
76====
77
78AT86RF230-based IEEE 802.15.4 transceiver. Two variants: one to make a USB
79dongle for use with any Linux host, and one that connects with SPI directly
80inside a Ben.
81
82Update: following Rikard Lindstrom's revelation that we can use the uSD slot
83also just as general GPIOs, the variant that goes inside the Ben can wait a
84bit and the atben board for insertion into the uSD slot is being worked on
85first. We can verify most of the design of a fully integrated board with the
86atben board and the latter will be of greater immediate use.
87
88
89Things done
90-----------
91
92- verify that the Ben can output an a) 16 MHz clock, and b) with +/- 40 ppm
93
94  Done, see ecn/ecn0005.txt. Works fine.
95
96- replace discrete balun and filter with integrated solution, to reduce BOM
97  size, maybe cost, insertion loss, and PCB space (see ATRF/ECN0003)
98
99  Done for atben. At a first glamce, does not seem to affect performance.
100
101- check if we really need three DC blocking caps in the RF path
102
103  Reduced to two in atben without apparent ill effects.
104
105
106Things not done yet
107-------------------
108
109- examine spectrum around carrier frequency and first harmonic to look for
110  obvious distortions. Vary transmit power.
111
112- measure throughput as a function of placement/distance, carrier frequency,
113  and transmit power
114
115- atrf-txrx: suppport "extended mode" with IEEE 802.15.4 CSMA-CA for more
116  realistic throughput figures
117
118- measure full spectrum (ideally up to 25 GHz, but just 2nd and 3rd harmonic
119  will already tell most of the story) with calibrated antenna for FCC/ETSI
120  compliance assessment. Vary transmit power.
121
122- use IEEE 802.15.4 stack from linux-zigbee. The linux-zigbee kernel is
123  currently at 2.6.35. Once 2.6.36 is released, we should have Ben and
124  IEEE 802.15.4 support in the same kernel without further ado.
125
126- change layout of transceiver side of the board for placement inside Ben
127
128- define EMI filters for placement inside Ben
129
130- check USB standard for recommended USB dongle dimensions
131
132- change layout for straight USB dongle
133
134- generate proper BOM
135
136- implement sleep mode
137
138- (atben) verify SPI signal timing, particularly the data clock
139
140
141ccrf
142====
143
144Board similar to the atrf, but with the TI/Chipcon CC2520.
145
146Cancelled. The CC2520 falls under US export restrictions, apparently because
147it contains an AES engine.
148
149
150cntr
151====
152
153Simple USB-based counter to measure a clock's long-time accuracy with
154arbitrarily high precision, by comparing it to an NTP time reference.
155
156
157Things not done yet
158-------------------
159
160- measure duty cycle
161
162- use the LED to display activity on clock input and duty cycle
163
164- consider using a comparator and a DAC to allow for programmable logic levels
165
166- evaluate termination resistance
167
168- document circuit design
169
170- record beats between 16 bit counter polls and use them for the estimate
171  of lost cycles (2*1 is way too optimistic)
172
173- include system clock resolution in accuracy calculation
174
175- consider running shorter sliding windows to estimate drift
176
177- consider detecting unusual half-periods
178
179- consider using a reversed USB connector, to avoid having to cross D+/D- and,
180  worse, VBUS and GND
181
182- test input performance by counting a source that emits a known number of
183  cycles
184
185- consider using historical margins to sanity-check the current margin (if any
186  old.max < curr.min or old.min > curr.max, we have a problem) and to further
187  narrow the effective margin, thus achieving faster convergence. We would have
188  to consider temperature drift of the frequency source in this case.
189
190- find out why frequency measurements always seem to start high and then slowly
191  drop
192

Archive Download this file



interactive