I wanted to give you folks a progress report on how far I've come with the project, and what I've got planned for the next few drops. I've made a ton of progress in the last 15 days - fueled by a ton of motivation and (unhealthy amounts of?) caffeine.
Here's a log of our progress. For every instance, I've made an effort to comment on my efforts, both in entries and inside the code (I attempted to overcomment, so please let me know if it helped.)
For many hardware decisions, I have detailed them in last year's logs. For the complete picture (video?), you may want to take a look.
- 640x480 VGA at 8 bit color
- 2.5V, 3.3V, 5V tolerant SPI
- Raspberry Pi 2 Model B (at 25 Frames Per Second), Linux
- Arduino Uno (at 3.25 Frames Per Second), Bare Metal
- Intel Edison in Arduino Mode (at 10 Frames Per Second), "Bare Metal"
2015 Completed Goals:
- Allow hardware assisted lower resolutions. Complete!
- 80x60 (Yes, XServer accepts it and launches!)
- Allow hardware assisted lower bit depths. Complete!
- 4bpp (16 Colors VGA/CGA Standard)
- 2bpp (Black, Dark Grey, Light Grey, White)
- 1bpp (Black, White)
- Allow hardware 'acceleration' to minimize serial writes. Complete!
Hardware Support (in order completed) (see Github):
- Arduino Uno (and a Nano!)
- Intel Edison in Arduino Mode
- Raspberry Pi 2 Model B at 62.5 MHz SPI
- Intel Edison at 100 kHz bitbang SPI (will revisit)
- Odroid C1 at 32 MHz SPI
I will post a roadmap in a few minutes.