Team 8: Nate Gimple Steven Tighe Amit Halevi Noah Husek Project Summary LED Cube! RGB LEDs 512 LEDs, 64 microcontrollers Massively networked (64 microcontrollers intercommunicating) Uses the Atmel ATxmega64A1 Uses the Altera Nios II softcore Noah Project Status Prototype boards ordered Almost all components acquired Microcontroller intercommunication via UART Currently slightly under budget! Familiarization with Nios II IDE Familiarization with Xmega IDE Noah Hierarchy / block diagram user input Nios II I2C super node 0 node 0 (LED) Amit node 1 super node 1 … module 0 … node 7 super node 7 sensor input super node 8 … super node 63 Addressing Fractal 1st digit = top or bottom 2nd digit = back or front 3rd digit = left or right 000 011 100 mod sup node This address indicates: 010 110 001 011 100 Top, back, left module Top, forward, right supernode Bottom, back, left node 3 bits of address: Eases writing generic code Amit 000 111 101 Communication Scheme Nios II Supernode Supernode Supernode Supernode Supernode Supernode I2C UART Amit ATxmega64A1 32 MHz 64 kB Flash memory 8 USARTs 4 I 2C SPI Integral timers 2 12 bit ADCs 128 bit crypto engine! Donated by Atmel Amit Altera + Nios II Master controller FPGA Processor implemented with logic synthesis Softcore capable of running C I2C will be implemented in hardware, with use of extension headers on board Noah TI TLC5947 LED Driver 24 channels 12 bit PWM Serial input Programmable constant current sink Up to 33 V on each channel QFN 32 Considered discrete MOSFET drivers Not enough ports on chip Footprint => 2 layer Donated by TI Noah RGB LED 4 lead, common anode Diffused epoxy 5 mm diameter 20 mA Using leads as structural member Surprisingly expensive to buy 500 Noah PCBs 3 kinds of PCBs Supernode 1.7” x 1.7” Row 0.3” x 2.0” Column 0.4” x 3.9” Need 64, 64, 96 respectively All 2 layer Supernode was originally 4 layer Changed to 2-layer for cost Use of QFN package LED driver allowed this Steven Supernodes: Schematic 1 Steven Supernodes: Schematic 2 Steven Supernodes: Layout Steven Rows and Columns Steven Power Supply Computer power supplies Highly regulated voltage 5 V, 3.3 V, 12 V available => 5 V used Internal soft start Nate inrush current is not a problem BOM and Budget Item Part # LED microcontroller ATxmega64A1 LDO ADP3338 LED driver TLC5947 i2c buffer LTC4300A-1CMS8#PBF-ND NTC thermistor 495-2116-1-ND photocell PDV-P9001-ND microphones BOB-08669 op amp AD8052 capacitor TPSE337 capacitor capacitor resistor 741X043103JPCT-ND resistor P2.55KHCT-ND connectors WM2701-ND connectors SAM1034-50-ND power supply solder paste KE1507-ND Kapton film 2271K2 PCBs Total Nate value RGB 3.3V 10 kΩ 330 µF 4.7 µF 0.1 µF 10 kΩ 2.55 kΩ 3 pin 100 pin 12" x 12" - Quantity 600 64 64 64 1 100 64 4 64 64 320 640 100 200 96 4 2 1 2 240 Cost ($) Ext. Cost ($) Description 0.3280 196.80 4 pin RGB common anode 5mm diffused LED 0.0000 0.00 Free! Donation from Atmel. 0.0000 0.00 3.3V LDO 0.0000 0.00 Free! 24 channel PWM LED driver from TI 3.5000 3.50 i2c hot-swappable driver/buffer 0.2470 24.70 temperature sensor 1.0200 65.28 light sensor 7.9500 31.80 sound sensor 0.0000 0.00 dual op amp to buffer sensors 0.0000 0.00 tantalum cap for 5V 0.0000 0.00 ceramic decoupling caps for 3.3V and 5V (LEDs) 0.0000 0.00 ceramic decoupling caps for µC 0.0110 1.10 pull-up for i2c 0.02255 4.51 sets IREF constant current 0.0000 0.00 headers to connect supernode PCBs laterally 4.1000 16.40 headers to connect supernode PCBs vertically 0.0000 0.00 old computer power supplies for +5V rail 30.6300 30.63 for SMD soldering 11.4900 22.98 for SMD stencil 600.00 supernodes, rows, columns 997.70 Schedule Nate Accomplishments by CDR A review Super-node hardware prototype Demo firmware (Kind of) 24 channel PWM Runs simple autonomous patterns/scripts on supernode All parts selected (sensors, LED drivers) Know how to program Nios II soft-core Nate What’s left? Physical assembly Kapton stencil + solder paste + pick and place = PCA Insert through-hole LEDs by hand Attach through-hole headers by hand Acrylic base for structure and æsthetic Coding Xmega and Nios II Basics are down, now we just need the specifics Nate Potential Problems/Concerns Noise on the board Fast switching LEDs – 20 mA @ 1 kHz Lots of serial communications everywhere Inductive kickback Relatively large current loops to LEDs Communication with LED driver SPI? Bit-banging? I2C capacitance Using I2C buffer/driver (LTC4300A) Time! Nate Milestone 1 PDR goals “Puppet” mode (FPGA direct control) More super-nodes (a full module = 8 super-nodes) Establish intercommunication Power supply (160 W @ 5V) New goals Build a supernode Amit Milestone 2 Full cube construction More complex super-node autonomous scripts Environmental input Simple algorithmic games (GOL) Be ready for expo Amit Questions?