ProPOV Day 1

16 May 2011

About a 3-minute read

Today was day 1 of capstone week and the ProPOV build! It was my designated day for schematic capture. I completed the schematics to the best of my ability, and I will elaborate on them in this post.

The Bill of Materials

I chose to base my ProPOV off of the Arduino, so I could leverage the powerful development environment it offers. Accordingly, the whole clock runs on an Atmel ATmega328P-AU (the 8-bit microcontroller with 32KB of program flash and 8 DACs). The real-time portion of the clock uses a Maxim/Dallas DS1307 RTC with I2C interface.

Keeping things compact is important, so the backup cell for the RTC is an Energizer CR1632 3V coin cell. I found a surface-mount battery holder for 1632s on DigiKey, so it will be easy to install one.

Below is a tentative list of materials for the project; I will nail down the quantities once I’ve built the thing.

**Index****Quantity****Part Number****Description****Ind. Price****Tot. Price****Supplier****Datasheet URL****Notes**
11ATMEGA328P-AUMCU AVR 32K FLASH 32TQFP$4.87$4.87[Digi-Key](http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=ATMEGA328P-AU-ND)[Atmel](http://www.atmel.com/dyn/resources/prod_documents/8271S.pdf)
21XC1282CT-NDCRYSTAL 16.00MHZ 20PF SMD$0.56$0.56[Digi-Key](http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=XC1282TR-ND)[ECS Crystal](http://www.ecsxtal.com/store/pdf/csm-7x.pdf)
310PCE3915CT-NDCAP ELECT 10UF 50V VS SMD$0.44$4.40[Digi-Key](http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=PCE3915TR-ND)[Panasonic](http://industrial.panasonic.com/www-cgi/jvcr13pz.cgi?E+PZ+3+ABA0002+EEE1HA100WR+7+WW)
410PCE3912CT-NDCAP ELECT 1UF 50V VS SMD$0.45$4.50[Digi-Key](http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=PCE3912CT-ND)[Panasonic](http://industrial.panasonic.com/www-cgi/jvcr13pz.cgi?E+PZ+3+ABA0002+EEE1HA010SR+7+WW)
51AP1084D50LDICT-NDIC REG LDO 5A 5.0V TO-252$1.52$1.52[Digi-Key](http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=AP1084D50LDITR-ND)[Diodes, Inc.](http://www.diodes.com/datasheets/AP1084.pdf)
64568-1483-1-NDIC SHIFT REGISTER 8BIT 16SOIC$0.31$1.24[Digi-Key](http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=568-1483-2-ND)[NXP](http://www.nxp.com/documents/data_sheet/74HC_HCT595.pdf)
710RHM10KKCT-NDRES 10K OHM 1/4W 5% 0805 SMD$0.14$1.42[Digi-Key](http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=RHM10KKCT-ND)[Rohm Semiconductor](http://www.rohm.com/products/databook/r/pdf/esr10.pdf)
810RHM220AECT-NDRES 220 OHM 1/4W 1% 0805 SMD$0.23$2.29[Digi-Key](http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=RHM220AECT-ND)[Rohm Semiconductor](http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=RHM220AECT-ND)
92P12932SCT-NDSWITCH LT 6MM 50GF H=3.1MM SMD$0.30$0.60[Digi-Key](http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=P12932SCT-ND)[Panasonic](http://industrial.panasonic.com/www-data/pdf/ATK0000/ATK0000CE28.pdf)
1010478-1268-1-NDCAP CERM 22PF 5% 200V NP0 0805$0.22$2.20[Digi-Key](http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=478-1268-1-ND)[AVX](http://www.avx.com/docs/Catalogs/ccog.pdf)
111CR1632Energizer Lithium 3V coin cell$4.49$4.49[Walgreens](http://www.walgreens.com/store/c/energizer-watch/electronic-lithium-battery/ID=prod6047410-product)
121728-1003-1-NDCRYSTAL 32.768KHZ 12.5PF SMD$1.05$1.05[Digi-Key](http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=728-1003-1-ND)[Digi-Key](http://media.digikey.com/pdf/Data%20Sheets/Seiko%20Instruments%20PDFs/SSPT7F-12.5PF20PPM.pdf)
131BU1632SM-JJ-GCT-NDHOLDER COIN CELL 1632 GOLD SMD$0.65$0.65[Digi-Key](http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=BU1632SM-JJ-GCT-ND)[MPD](http://www.batteryholders.com/bu1632sm-jj-gtr.pdf)Choose one of the battery holders.
141BH600SM-G-NDHOLDER COIN CELL 16MM SMD$1.19$1.19[Digi-Key](http://search.digikey.com/scripts/DkSearch/dksus.dll?WT.z_header=search_go&lang=en&site=us&keywords=BH600SM-G-ND&x=0&y=0)[MPD](http://www.batteryholders.com/bh600sm-g.pdf)
151620-1021-1-NDIC SENSOR HALL EFFECT SOT23W$1.58$1.58[Digi-Key](http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=620-1021-1-ND)[Allegro Microsystems](http://www.allegromicro.com/en/Products/Part_Numbers/1301/1301.pdf)
161469-1004-NDMAGNET 1/4"DIA X 1/8"THICK$0.30$0.30[Digi-Key](http://search.digikey.com/scripts/DkSearch/dksus.dll?WT.z_header=search_go&lang=en&site=us&keywords=469-1004-ND&x=0&y=0)Photo: [Digi-Key](http://media.digikey.com/photos/Radial%20Magnet%20Inc%20Photos/469-1004.jpg)
171DS1307Z+-NDIC RTC SERIAL 512K 8-SOIC$3.72$3.72[Digi-Key](http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=DS1307Z+-ND)[Maxim IC](http://datasheets.maxim-ic.com/en/ds/DS1307.pdf)
181???100PCS,0603 Ultra Bright SMD, White LEDs, 500mcd$9.39$9.39[eBay](http://cgi.ebay.com/100PCS-0603-Ultra-Bright-SMD-White-LEDs-500mcd-/260779857903?pt=LH_DefaultDomain_0&hash=item3cb7b0d7ef)
191???100 pcs SMD Chip Surface Mount 0805 Resistor 100 ohm$3.50$3.50[eBay](http://cgi.ebay.com/100-pcs-SMD-Chip-Surface-Mount-0805-Resistor-100-ohm-/110550216380?pt=LH_DefaultDomain_0&hash=item19bd4e6ebc)
**Total**$49.47

The circuit is conceptually simple, but its constricted form factor complicates the design quite a bit.

The Schematics

So far, I have four schematic modules:

  1. The CPU, including the AVR, the programming headers, and some supporting passives
  2. The LEDs, including all the LEDs and shift registers, resistors, and capacitors to support them
  3. The Peripherals, including the Hall effect sensor, IR phototransistor, and real-time clock
  4. The Power, including the regulator and capacitors

Each of these modules is logically isolated, and they all connect via nets with overlapping names.

The CPU Module

The CPU Module revolves around some core requirements:

  • Must be compatible with Arduino
  • Must be fast enough to write to all the LEDs enough times during each revolution
  • Must be surface-mount

For these requirements I chose the ATmega328, in a TQFP32 (Thin Quad Flat Pack, 32-lead) package. I’m clocking it (get it? eh? because it’s a clock) at 16 MHz with a standard HC49/US crystal in surface-mount style. I’ve included headers for both ICSP (bootloader burning) and FTDI (serial programming through the bootloader). There’s also a reset switch, which pulls the RST line low (it’s active-low) from it’s high-floating normal state.

ProPOV CPU Module v1

The LED Module

The LED module comprises 32 0603 LEDs that I found on eBay for a good price. I didn’t order these from a parts distributor, because they get pretty pricey. You can always find some good sales of factory leftover on eBay, perfect for small-scale hobbyists.

Driving the LEDs are 4 74HC595 Serial-in, Parallel-out (SIPO) shift registers. These registers take a serial input of 8 bits, and when signalled to do so, they expose all 8 stores bits simultaneously on individual output pins. So, you get 8 outputs for every single input line, which is great for saving microcontroller pins.

The 74HC595s are rates just high enough to handle the 20mA per pin each LED requires. To scale the voltage and avoid damaging those LEDs, each one has its own resistor. Because the LEDs are asynchronously on and off, they cannot share resistors; the changing load current would create unsteady voltages.

Each register also had two capacitors, one on its power line and one on the serial line. These decouple the registers from the rest of the circuit and help smooth those pesky voltage spikes.

ProPOV LED Module v1

The Peripheral Module

The clock is of course incomplete without some valid way of keeping time! I chose to use the hobbyist-friendly DS1307 from Dallas/Maxim. It uses a standard 32.768 kHz watch crystal as its reference frequency generator, and communicates with the CPU with I2C (Inter-Integrated Circuits).

I also included a liner/ratiometric Hall effect sensor. This sensor can detect a magnetic field and generates a linear voltage based on the field strength. It will tell the clock when it passes over a calibration magnet attached to the mounting bracket, so the CPU can determine the frequency of revolution and thus how quickly to draw.

Finally, there’s an infrared phototransistor in there. I included it just in case I want to use a TV remote to control the thing later on.

ProPOV Peripheral Module v1

The Power Module

The power module is all based on the AP1084 from Diodes, Inc. The AP1084 is a low-dropout linear voltage regulator (LDO) capable of supplying the necessary current. It can vary its output voltage but I use it in fixed +5V mode. Some big aluminium filter capacitors keep the input clean.

ProPOV Power Module v1

The next step is PCB layout, starting on day 2!

Comments