Skip to content
rhn edited this page Aug 31, 2011 · 34 revisions
  1. Extension before release
  • modules respect stopping/starting [DONE]
  • combined modules reset [DONE]
  • speed vs time plot [DONE]
  • global module flags bitfield (sizespeed & power optimziation) [DONE]
  • increase timer resolution [DONE]
  1. Cleanup before release
  • define module convenience functions API (null select action) [DONE]
  • calibrate timer [DONE]
  • global module screen erase [DONE]
  • module list redraw on start [INVALID]
  • clean up speed builtin & rationalize references to pulse_table [DONE]
    * replace pulse_index detection with module stop/start and global stopped flag [INVALID]
  • create global builtins flags (stopped, module switched) [DONE]
  • separate signals from the rest of the code [DONE]
  • disentangle timers [DONE]
  • move all device-specific code to either /avr or /display [DONE]
  1. Preparation before release
  • hw design docs [DONE]
  • hacking guide [DONE]
  • define module API [DONE]
  1. Pre-release [DONE] (out of order)
  2. Release
  • assembly tutorial [IN PROGRESS] & vid [DONE]
  • examples walkthrough [DONE]
  • runtime wheel setting module [DONE]
  • move signals out from /modules [DONE]
  • move plots & others to /lib [DONE]
  • display decimal point [DONE]
  • create header files for files to be used by modules [IN PROGRESS]
  • separate builtin loggers from displayers in the FS [DONE]
  • separate speed display from speed_factor persistence [DEFERRED]
  • upload eagle files [DONE]
  1. Next release
  • make modules/base.c a normal builtin
  • expose SPI bus
  • dedicated buttons
  • dedicated pulse sensors
  1. Future
  • redesigned board
  • size optimization (asm)
  • memory optimization (programspace)
  • prettifying
  • plots merge idling pulses into one blank space
  • crank rotation [DONE]
  • µSD logging (SPI, FAT, file format)
  • sleep mode (stop timers, blank screen), decrease frequency
  • replace macros with bitfields in drawing procedures
  • plot scaling & labelling [EXAMPLE IMPLEMENTED]
  • separate code specific to AVR models from /avr/avr.c [DONE]
  • precise external timer
  • programmable timers (rewrite stopwatch, svtplot) [DONE]
  • GPS/compass
  • screen API for different screens
  • redesign of number printing API (dec. point, number format, position)
  • EEPROM/SD persistence builtin
  • total distance module
  • example for timer calibration
  • clock

Clone this wiki locally