Today I had a great day! I did it! I soldered a development board for my Mega2560. A little corrected code and ... voila! Wiring diagram:
(SD while not tested, but I think it works)
- rtc sqw (1hz) - pin 2
- menu key - pin 3
- set key - pin 4
- plus key - pin 5
- speaker - pin 6
- speaker - pin 7
- HT1632_WRCLK - pin 10
- HT1632_CS - pin 11
- HT1632_DATA - pin 12
- HT1632_CLK - pin 13
- rtc sda - pin 20
- rtc scl - pin 21
- sd miso - pin 50
- sd mosi - pin 51
- sd sck - pin 52
- sd cs - pin 53
NelsonC built his own hand-wired version of WiFiChron and it looks awesome:
MikeM sent in (thanks Mike!) his latest WiFiChron code (available here).
The enclosed zip file compiles under Arduino 1.6.8, though it generates a warning I haven't figured out how to eliminate.
Ray ran into a problem with data overruns. When data in an RSS feed was split between multiple packets, sometimes the last few bytes of a packet were dropped from the RSS buffer. I didn't see that problem with my clock when I was developing the code, nor did I see it on the WiseClock4. I've re-built the RSS state machine to be more CPU efficient, and now the packets are processed without drops. We probably don't need to change the RSS code on the WiseClock4 as it runs at 16 MHz and not 8 MHz like the WiFiChron.
I also changed the PROGMEM statements to fit the 1.6.8 standard.
And finally, I got the PCBs for the 1284-equipped versions of WiFiChron and bGeigie nano.
For both I relied on internal (software-driven) pull-ups (basically I eliminated the pull-up resistors), without checking first if that would work. Unfortunately, the current sanguino library does not implement correctly the function pinMode(x,INPUT_PULLUP). So I had to resort to resistors soldered on the back of the board. That, plus missing a necessary decoupling capacitor, plus also missing some connections on the bGeigie board, made for a "fun-filled", but in the end successful, testing. More on these in a future post.