root/todo.txt

Revision 0:e6c45a1aa571, 9.2 KB (checked in by sgk@…, 6 months ago)

Arduino 0018 from  http://code.google.com/p/arduino/

Line 
10018 arduino
2
3Fix Linux make.sh, etc. scripts
4Test on Linux.
5
6AVR
7
8Ethernet library:
9 - integrate DHCP support
10 - client.connect() returns 0 when connection is successful?  http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1238295170
11 - call Server.begin() from Ethernet.begin() instead of in user's sketch?
12 - add method for receiving notification of new client connections to a server
13 - add method for receiving notification of data written to a client
14 - add method for receiving notification of client disconnections
15Incorporate mikalhart's new SoftwareSerial library.
16Consider making abs() not a macro.  See: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1234908504
17Improve shiftOut() performance: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1216659239/0
18Add String library.
19Add Encoder library.
20Bootloader:
21 - disable watch dog timer
22 - fix eeprom writing: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1202157667/15
23Support pin change interrupts.
24Switch pwm output on pins 5 and 6 to phase-correct mode, if possible.
25Add parameter to shiftOut() for specifying a number of bits.
26Add parameter to Serial.print[ln](x, BIN) for specifying number of bits.
27Support PROGMEM strings in Serial.print(): http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1227919972
28Should Serial.print(b) send the ASCII digits of the byte?
29Add weak attribute to signal handlers: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1203798214
30Floating point support in the map() function.
31Fix delayMicroseconds(0).
32Add sleep function(s).
33Add SPI library.
34Add OneWire library.
35Add pulseOut(), etc. functions from Wiring.
36Switch to ServoTimer2 library?  http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1222201226/0#5
37Add ContinuousServo class that inherits from Servo?
38LiquidCrystal library:
39 - support going to the next line with println().
40Supporting EEMEM directive by changing compiler command line: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1202157667
41Include Arduino as AVR-ISP sketch in hardware/firmwares.
42Move type definitions into WConstants.h.
43Change core and libraries to use Arduino types (e.g. byte, boolean).
44
45COMPUTER
46
47Clear serial monitor button when the serial monitor opens.
48Disable checking for updates.
49Test the upload.using parameter to upload with a programmer.
50Add keyboard shortcut for opening the serial monitor.
51Escape characters with copy as html.
52Support libraries in the SKETCH/code folder?
53Test bootloader burning w/ an AVRISP.
54Enable verbose output if shift (or alt?) is held down when pressing run or upload.
55Add support for third-party boards in the user's sketchbook folder.
56Add support for third-party cores in the user's sketchbook folder.
57Re-enable (and fix) the Commander.
58Move selection of Linux look and feel from Base.java to arduino.sh script.
59Check RAM usage of sketches: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1224729260/0#0
60Improve preprocessing of sketches:
61 - Better determine which header files are included (not commented out).
62 - Remember the original locations of function prototypes to highlight the correct line on error.
63Multiple sketch windows.
64Avoid library conflicts by only linking in the library whose name matches that of the #included header file.
65Easier library discovery and installation ("Add library..." menu item).
66Easier board installation ("Add board..." menu item)
67Comprehensive board management:
68 - Enabled and disabled boards.
69 - Dialog for enabling, disabling, adding, deleting, and possibly editing boards.
70 - Board descriptions (e.g. explaining differences between boards).
71Allow for libraries in <SKETCHBOOK>/libraries.
72Allow for boards in <SKETCHBOOK>/boards.
73Divide boards.txt into multiple text files.
74Allow for core in <SKETCHBOOK>/cores.
75Clean up Library and LibraryManager.
76Compile libraries dynamically (with compilation of sketch and core files).
77Library builds should respect build.verbose.
78Detect dependencies between libraries.
79Byte-based serial monitor.
80Line termination options in the serial monitor.
81Clear character should clear serial monitor.
82Incorporate serial-net proxy.
83Changing font size should change serial monitor font size.
84Deal with shorter screens (e.g. ASUS EEPC).
85Investigate method for auto-detecting serial port on Windows (javax.usb?)
86 - http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1225226642
87Guess serial port on the Mac and Linux.
88Automatic detection of baud rate for serial monitor (based on the call to Serial.begin() in the current sketch).
89Improve, generally, the upload experience (e.g. faster program start after upload, keep-alive messages to bootloader from IDE, shorter bootloader timeout if possible, progress bar)
90Allow uploading of .hex files.
91Allow for arbitrary compilation command line arguments.
92Find in reference should give same message for missing page as for missing page association.
93Test find in reference on libraries.
94Change background color while using external editor: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1229567785
95
96Compiler.java
97 - Eliminate the need to pass a Target into the compiler by having the Compiler determine the current target (by checking the preferences directly)?
98 - Delete the unneeded static functions (for classpath translation, etc.) from the bottom of the file.
99
100Sketch.java
101 - add system-wide include path in preprocess()?
102 - should find libraries in the code/ sub-folder of the sketch folder
103 - do sketches really need to get built in the applet/ sub-folder when uploading?
104
105PreProcessor.java
106 - split write() into writeHeader() and write() as in Processing?
107 - add getExtraImports() function instead of having Sketch grab them directly.
108 - don't use oro.jar
109
110Base.java
111 - add keywords from libraries to the syntax coloring
112
113Editor.java
114 - allow the Board and Serial port to differ across editor windows.  This will require creating a separate instance of the menu for each window, and passing the selections into the sketch when compiling or uploading.
115 - send the current board and serial port selections to the sketch (which will forward them to the compiler) when compiling or uploading (this should eliminate the need for the Target class, since the compiler will be able to find the target path and its source files itself)
116 - remove references to the Runner and runtime
117
118DEVELOPMENT
119
120Revise the icon.
121Don't recompile the Processing core if the work/ directory exists.
122RXTX version patched to not hang with bluetooth serial ports: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1237179908
123Add licenses for included open source libraries: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1234595391
124Make run.bat not open a command line window: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1223883872
125Update version of the FTDI drivers (Windows).
126Remove AVR ISP and giveio drivers (Windows).
127Include the executable installer for the FTDI drivers (Windows).
128Revise fetch.sh to look for version specific pages (names suffixed with, e.g., "-0007")
129Move to ant for build process.
130
131DOCUMENTATION / SITE CONFIGURATION
132
133Multi-language plugin.
134Work on opening up website to public editing.
135Create form for submitting workshops.
136Create form for submitting projects.
137
138DOCUMENTATION / META
139
140Create community section of site.
141List of examples we'd like to have.
142Style guide for examples, references, and foundations.
143Add a Nordic board to the forum.
144Add a German board to the forum.
145
146DOCUMENTATION / NAVIGATION
147
148Create About section.
149Remove Board page.
150Move Environment into the Reference section (which should be renamed Programming).
151
152DOCUMENTATION / FOUNDATIONS
153
154Better documentation of the Arduino BT.
155Tutorial about serial communication.
156
157DOCUMENTATION / REFERENCE
158
159Remove parameters from the function links on the reference page.
160Document Matrix and Sprite libraries on the Arduino site.
161Document Wire.endTransmission() return values: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1228240199
162
163DOCUMENTATION / EXAMPLES
164
165Photos:
166 - Loop
167 - Analog Input (potentiometer and LDR on analog input 0)
168Consistency:
169 - ledpin vs. ledPin
170 - value vs. val
171Add a Brightness example where an analog input controls the analog output.
172Graph example should use an intermediate variable.
173Button example says pin 7 but uses pin 2.
174Split Loop example in two (one that does loops, another that does arrays).
175Add LiquidCrystal library examples.
176Add Ethernet library examples.
177Add Wire library examples.
178Add examples using specific hardware (simple analog sensors, optocouplers, etc.)
179Examples should demonstrate use of functions.
180Add I2C EEPROM example using Wire library.
181Update pictures to use Arduino Diecimila.
182Create diagrams and schematics for the examples.
183
184DOCUMENTATION / GETTING STARTED
185
186Arduino feature list (in Getting Started > Introduction).
187Main "getting started" link should automatically load page for the user's operating system.
188Consider deleting many of the pictures in the howto's as they just make it harder to see the instructions without adding much (e.g. the pictures of files in folders).
189Tell people not to put the board on a Powerbook.
190People don't know what a jumper is.
191Add picture of the RX/TX LEDs flashing.
192Show a picture of the LED flashing.
193
194DOCUMENTATION / TROUBLESHOOTING
195
196Add explanation of how to work around auto-reset.
197
198DOCUMENTATION / HACKING
199
200Burning bootloader without an AVRISP: http://www.geocities.jp/arduino_diecimila/bootloader/index_en.html
201Documentation for moving from Arduino to custom PCBs.
202Write advanced library tutorial.
Note: See TracBrowser for help on using the browser.