From Trammell Hudson's Projects
I've converted the SolderTime Desk Clock to use a SparkCore in place of the ATMega328. This gives it network time sync and the ability to set the alarm via WiFi. Still a work in progress, but mostly functional: github/osresearch/sparktime.
The wiring is ledmatrix.ino and maps the ARM gpio pin to AVR pins as:
#define ROW0 A6 // gpio b0, pin 14 #define ROW1 A7 // gpio b1, pin 15 #define ROW2 D4 // gpio b3, pin 16 #define ROW3 D3 // gpio b4, pin 17 #define ROW4 D2 // gpio b5, pin 18 #define ROW5 D1 // gpio b6, pin 19 #define ROW6 D0 // gpio b7, pin 9 #define COL0 D7 // gpio a13, pin 6 #define COL1 D6 // gpio a14, pin 11 #define COL2 D5 // gpio a15, pin 12 #define SEL0 A0 // gpio a0, pin 25 #define SEL1 A1 // gpio a1, pin 26
The two buttons and piezo are connected to A4 and A5. Note that there is a pullup resistor on the SolderTime board that must be removed since the analog pins on the SparkCore are not 5V tolerant (and all of the digital pins are consumed by the LED matrix driver).
#define BUTTON0 A4 // pin 5, also piezo buzzer #define BUTTON1 A5 // pin 4, must remove pullup R6!
I mounted it all on an Adafruit Permaprotoboard; it would also be a fairly simple PCB to design in Eagle if anyone else is interested. The RTC is not necessary since the SparkCore gets its time from the network.