Home
Goldilocks User Manual
Contents
1. Rx Tx Disconnect The Rx Tx Disconnect option is provided for occasions vvhere the user vvishes to have all three USART interfaces on both ATmega1284p and ATmega32U2 available separately This might be useful where one MCU is controlling a serial interface radio Zigbee or otherwise and the other MCU is driving sensors or actuators Communication between the two MCU can then be done via the SPI bridge noted above The Rx Tx bridge is located on the front of the Goldilocks and is normally equipped with resistors These resistors need to be REMOVED to disconnect the USART interfaces on each MCU ATmega32U2 Rx Tx LED Disconnect Where the Atmega32U2 is being used as an ancillary MCU and the Digital I O is in action it may be necessary to disable the Rx and Tx LEDs if they cause loading on the lines The Rx Tx disconnect option is located on the rear of the Goldilocks and is provided to enable a reversible option for this situation Phillip Stevens 18 August 2013 Goldilocks User Manual ATmega32U2 HVVB DFU Bootloader amp ATmega1284p RESET Disconnect These Arduino standard jumpers on the front of the PCB provide the functionality to put the ATmega32U2 into its DEU bootloader state to enable programming of the ATmega32U2 The RESET EN separates the ATmega1284p from control of the ATmega32U2 This is useful in the situation where it is NOT desirable that re plugging the USB port of the Goldilocks should RESET the ATmega1284p Wh
2. Phillip Stevens 18 August 2013 Goldilocks User Manual Goldilocks Hardvvare ATmega1284p Features The ATmega1284P provides the following features 128 kBytes of In System Programmable Flash with Read While Write capabilities 4 kBytes EEPROM 16 kBytes SRAM Real Time Counter RTC three flexible Timer Counters with compare modes and PWM 2 USARTS one byte oriented 2 wire Serial Interface an 8 channel 10 bit ADC with optional differential input stage with programmable gain one SPI serial port IEEE std 1149 1 compliant JTAG test interface also used for accessing the On chip Debug system and programming and six software selectable power saving modes ATmega32U2 Features The ATmega32U2 provides the following features 32 kBytes of In System Programmable Flash with Read While Write capabilities 1 kByte EEPROM 1 kByte SRAM two flexible Timer Counters with compare modes and PWM one USART one SPI serial port debugWIRE interface also used for accessing the On chip Debug system and programming and five software selectable power saving modes Phillip Stevens 18 August 2013 Goldilocks User Manual Layout Header Pins The below table identifies the layout of the Goldilocks PCB pins with respect to the Arduino Uno R3 board including a comparison of relevant features and provides commentary where relevant Solder bridge to PC1 SDA DC Solder bridge to PCO SCL I2C Analog 6 amp Through Hole Analog 7 amp Through Hol
3. RINO PB3 PCINT11 0C A RIN1 PBA4KPCINT12 0COB 5S PBSKCPCINT13 ICP3 MOSD AREF PB CXPCINT14 OC3R 150 PB7 PCINT15 0C3B SCK oko pu pg m aa m PCOCSCL PCINT16 PCA1CGSDA PCINT17 2 1 18 PC3CTHS PCINT1S5 PC 4 TDO PCINT2 gt PC5CTDI PCINT21 PC CTOSC1 1 22 5 2 1 23 PDECPCINT24 RXD8 T3 1 1 25 PD2CPCINT26 RXD1 INTO DND PD3CPCINT27 TXD 1 1NT1 GND PD 4 PCINT28 XCK1 0C1BE GND PDS lt PCINT29 0C1A GND PD6 lt PCINT3 0C2B ICP TGND PD7 lt OC2A PCINT341 PT te J HN D Ov en e t N s ko 1 ea aia 01 ATmega32U2 Microc 18k 8402 122 M 0402 XTALL mn oe i 5 2 5 1 SS PBOB 8 JTAG2NM SWL TAC SWITCH 1TAB TT 2 15pF 0402 9 C1 C11 15pF 0402 GND ontroller PB PBe PBS PB4 7 PC PCS PC4 PC2 CTS PD RTS PD OCI PD5 PD4 TXD215PD3 RXD1 PD2 Linked C8 5 1 1880nF 848 1 4 2 1 2 UBOOT RESET EN LED4 PHR BLUE H13 R18 Digital 8 13B H12 I 69 n 0s u o0 32U2 P w JB cn o Fale Digital 8 7B 1K 8402 I ho 69 n s u oo B 32U2 PD Freetronics Goldilocks PD1 PDO 1K 80402 BU LED3 D13 RED C4 188nF 8482 R 1K 80102 GND GND at o GND E R3 SKU GOLDILOCKG U1 0 2013 05 03 uuu freetronics com
4. bootloader to respond once the MCU is reset But both JTAG enable JTAGEN and on chip debug OCDEN are turned off as they are advanced features that should be enabled on a case by case basis ATmega1284P Fuse settings BODLEVEL Brown out Detector trigger level EESAVE Preserve EEPROM through the Chip Erase cycle Brovvn out detection disabled BODLEVEL 111 Yes No Brown out detection at VCC 1 8 V Brown out detection at VCC 2 7 V JTAGEN JTAG Interface Enabled 6 Brown out detection at VCC 4 3 V Yes 9 No BOOTRST Boot Reset vector Enabled ves No OCDEN On Chip Debug Enabled Yes No BOOTSZ Select Boot Size Boot Flash size 512 words Boot start address SFEO0 SPIEN Serial program downloading SPI enabled Boot Flash size 1024 words Boot address FCO0 6 Yes No Boot Flash size 2048 words Boot address SF800 amp Boot Flash size 4096 words Boot address SF000 SUT CKSEL Select Clock Source CKDIVS Divide clock by 8 internally Full Swing Oscillator Start up time 16K CK ms Crystal Osc BOD enabled Yes No VVDTON Watchdog timer always on CKOUT Clock output on PORTB1 Yes 8 No Yes No For the ATmega32U2 the BOOTRST vector is disabled as we don t need the MCU to enter the DFU bootloader unless we activate the hardware boot pin This hardware boot enable is set by the hardware boot enable HWBE fuse Phillip Stevens 18 August 2013 Goldilocks User Manual ATmega32U2 Fuse settings BODL
5. to provide 5V directly to the Vcc supply rail Care must be taken not to exceed the maximum voltage rating of the ATmega1284p and ATmega32U2 in this case otherwise the Goldilocks PCB will be dead Because both the ATmega1284p and the ATmega32U2 are operated at the maximum system clock frequency specified their respective brown out fuses are set to ensure that the MCU will not operate until a sufficient supply voltage 4 3V is available Phillip Stevens 18 August 2013 Goldilocks User Manual Arduino Compatibility The Goldilocks was designed to be fully compatible with the Arduino R3 standard In the last year with the release of ARM platform Arduino boards the meaning of being fully compatible has become a little greyer and more complex Hopefully the Goldilocks reaches the level where it can be considered fully compatible and possibly being even more compatible with the Arduino legacy than the Arduino Due Features The standard Arduino IDE used The Arduino IDE v1 0 5 was used in development Prior versions of the IDE provide older versions of the avr libc that contains some significant bugs Compatible bootloaders are used in both ATmega1284p and ATmega32U2 Compatible pin mappings are used to ensure that Arduino Uno R3 shields should work as intended and with some adjustments to the solder jumpers Pre R3 Uno shields will work too Software development was done on using avr gcc GCC 4 7 2 2 amp avr libc 1 8 0 3 from Debia
6. 6 6 ifere 7 34 8 ER 9 32 E a GE 30 121 29 28 14 Ee SCH 26 161 PAS qlar 24 181 Ke 129 Z 41 1 21 Rp PAO DAT DA DA PA4 PA5 PA6 PA7 AREF GND AVCC PC PGO EC PG4 PCS POZ PCT PCO EI NN A A A AM JD H D D gt D gs gs gs og d H HH H Hi H H D23 D22 Do D20 DL D18 D17 D16 TOSCn RTC Crystal pinout not otherwise available TOR TMSJ TDO TDE JPAG Pinout Phillip Stevens 1 OY OT vs Co bi 7 PCINTO POCTLNTI PCLUNT2 POINTS PUINT4 POINTS PCINTO PEINT T Z CC se OR TOSC2 PCINT23 TOSCT ECINT22 EE POINT TDO PCINT20 TMS PCINT19 TCK PCINT18 SDA PCINT17 SCL PCINT16 OC2A PCINT31 not otherwise available 18 August 2013 Goldilocks User Manual ft if fr ff ff fi fi ff fr ff fi fi ff f ff fi ff f ff ft fi ff ff fi fi f ff ff ff fi ff ff ff ff f ff ff d RT fr ff fi ff fi ff ff if TT tt ADD THESE ENTRIES TO YOUR FILE BOARDS TXT T fk ff fr ff ff fi fl ff fr ff fi fi fi ff f ff fi ff ff f ff ft ff ff ff ft fi ff ff ff ff f ff ff fi ff ff ff d ff ff fi ff ff ff fi ff ff fi ff fi ff ff if Tr goldilocks 20MHz name Goldilocks 20MHz Goldilocks 20MHzZ upload protocol wiroing goldilocks Z20MHz upload maximum Size 122678 goldilocks 20MHz upload speed 38400 goldr locks 20MHZ DoOOLtloSder 9 uses o0xde goldilocks 20Miz bootloader pathestk500v2 goldilocks 20MHZ4DOOLLOQO0e
7. 7060 G t re we Phillip Stevens 18 August 2013 Goldilocks User Manual ATmega32U2 Firmvvare ATmega32U2 firmware was extracted directly from a snapshot from the 130313 release of the LUFA repository The snapshot was taken on May 20th but it differs negligibly from the standard release The choice to use standard LUFA code with a minimum of divergence was taken to ensure that the Goldilocks platform would continue to benefit from Dean Camera s code development efforts and bug fixes The current Arduino releases of xxU2 code were forked from LUFA in 2010 and haven t been significantly maintained since then LUFA DFU Bootloader The DFU bootloader used in the ATmega32U2 is unchanged from the standard maintained by LUFA Information relating to this code can be found on the LUFA repository LUFA Benito U2duino Serial Interface The LUFA project Benito was used as the basis for the USB to Serial interface for the Goldilocks The code has been renamed U2duino and slightly modified to support the wiring or arduino bootloader DTR reset functionality The project name U2duino was chosen because the code is for xxU2 on the xxduino board or alternatively the project does USB 2 Arduino The key difference from Benito is the pin driving the ATmega1284p RESET line is toggled OUT HIGH to OUT LOW rather than TRISTATE to OUT LOW This ensures that a clear negative edge is generated via a serial capacitor on the DTR signal which pro
8. EVEL Brown out Detector trigger level Brown out detection level at VCC 4 3 V 2 BOOTRST Boot Reset vector Enabled 7 Yes No BOOTSZ Select Boot Size Boot Flash size 256 words start address 3F00 7 Boot Flash size 512 words start address 3E00 Boot Flash size 1024 words start address 3C00 Boot Flash size 2048 words start address 3800 CKDIVS8 Divide clock by 8 internally 7 Yes 8 No CKOUT Clock output on PORTC7 Yes 8 No DVVEN Debug wire enable 7 Yes No Phillip Stevens EESAVE Preserve EEPROM through the Chip Erase cycle 7 Yes HVVBE Hardvvare Boot Enable Yes No RSTDISBL Reset Disabled Enable PC6 as i o pin D Yes 8 No SPIEN Serial program downloading SPI enabled Yes No SUT CKSEL Select Clock Source Ext Crystal Osc 8 0 MHz Start up time 16K CK 0 ms WDTON Watchdog timer always on 7 Yes 18 August 2013 Goldilocks User Manual Povver Configuration Goldilocks can be powered by a variety of options to provide a 5V supply to the main power Additionally a 3 3V regulator provides supply for the on board uSD card and for external shield usage By default the Goldilocks is powered via 5V USB with the maximum input current limited to 500mA By moving the POWER jumper to DC the Goldilocks can be powered from a high current 5V 2A Switch Mode Power Supply via the 2 1mm ve centre barrel connector Another option is
9. Goldilocks User Manual Goldilocks User Manual 18 August 2013 Introduction Arduino Installation Goldilocks Hardware ATmega1284p Features ATmega32U2 Features Layout Header Pins Solder Bridge Descriptions I2C Arduino Pre R3 Support SPI Interconnect Rx Tx Disconnect ATmega32U2 Rx Tx LED Disconnect ATmega32U2 HWB DFU Bootloader amp ATmega1284p RESET Disconnect Selected Feature Descriptions Prototyping space USD Card ATmega1284p JTAG Header 32 68kHz Crystal RESET buttons 32U2 Port Header AVR Fuses Power Configuration Arduino Compatibility Features Details Known Arduino R3 Incompatibilities ATmega1284p Firmware Wiring stk500v2 ATmega1284p Bootloader ATmega32U2 Firmware LUFA DFU Bootloader LUFA Benito U2duino Serial Interface Schematic Errata Support Contact Information Support Information Precautions Legal Copyright Notices software Warranty Disclaimer Phillip Stevens 18 August 2013 Goldilocks User Manual Hardware Disclaimer Trademarks Acknowledgments Phillip Stevens 18 August 2013 Goldilocks User Manual Introduction The Goldilocks is an advanced AVR development PCB loaded with both the ATmega1284p microcontroller and the ATmega32U2 USB microcontroller Goldilocks is intended to conform to the Arduino Uno or Leonardo physical format and interface standards bringing significant improvements and longevity into the existing Arduino AVR platform whilst providing full compa
10. atch the baud rate of your attached terminal programme Alternatively the best solution is to operate the ATmega1284p at a USART friendly system clock of 22 1184 MHz 18 432 MHz or lower Because of the issues with serial communications and the inability of the 16 MHz ATmega32U2 to generate an accurate USART baud rate at either 115 200 or 57 600 the stk500v2 bootloader on the ATmega1284p has been set to operate at 38 400 baud This does not reduce the actual programming speed for sketches or programmes but it does allow the total mismatch in baud rates between the two MCU to remain less than 1 Phillip Stevens 18 August 2013 Goldilocks User Manual ATmesga1284p Firmware Wiring stk500v2 ATmega1284p Bootloader To access the ATmega1284p bootloader monitor open up a serial port at 38 400 baud and type I within 3 seconds of RESET The ATmega1284p then enters the stk500v2 Bootloader prompt which is a useful sekret feature If you want to see what is actually programmed into the Goldilocks then this feature allows you to examine the Flash and EEPROM It also allows you to see which Vectors have been programmed and to test the hardware by blinking ports The bootloader commands are Reset address RAM EEPROM FLASH counters to zero CPU stats EEPROM test Blink LED Dump EEPROM Dump FLASH Help List available I O Ports Quit and jump to user program Dump RAM show interrupt Vectors Port blink o 277755
11. d all appropriate precautions with regard to electrostatic Phillip Stevens 18 August 2013 Goldilocks User Manual discharge and any other technical or legal concerns The product described in this document is subject to continuous development and improvements All particulars of the product and its use contained in this document are given by me in good faith However all warranties implied or expressed including but not limited to implied warranties of merchantability or fitness for particular purpose are excluded This document is intended only to assist the reader in the use of the product 1 Phillip Stevens shall not be liable for any loss or damage arising from the use of any information in this document or any error or omission in such information or any incorrect use of the product Trademarks AVRO is a registered trademark of Atmel Corporation All other trademarks are the property of their respective owners Acknowledgments Thanks to Dean Camera http www fourwalledcubicle com for his excellent LUFA library and DFU bootloader which are used in the Goldilocks firmware Thanks to Pozible for providing their crowdfunding platform Thanks to those who have previously used the ATmega1284p or ATmega644 in Arduino projects and have smoothed the way for incorporating my Goldilocks into the Arduino family of options Finally thanks to Jon Oxer for helping me realise this Goldilocks project and graciously accommodating my
12. dilocks platform that use the ATmega32U2 to drive a serial device radio gps or gsm for example whilst the ATmega1284p manages a complex analogue data acquisition or communications task for example AVR Fuses The fuses are set slightly differently to the normal Arduino practice This describes the actual settings on the Goldilocks PCB for each of the MCU Both the ATmega1284p and the ATmega32U2 are being operated at their maximum specified system clock The clock divide by 8 CKDIV8 on both MCU is set to off so that they can operate at Phillip Stevens 18 August 2013 Goldilocks User Manual this rate Because of the system clock rate both MCU require greater than 4 3V for reliable operation To ensure that the MCU stay in RESET state until their Vcc is adequate the brovvn out detection level BODLEVEL on both MCU is set to 4 3V Setting the BODLEVEL correctly ensures that the MCU will start immediately once it is released from RESET This allows us to reduce the startup time for each MCU to 16k CLK without risk of instability or need for further delay Both MCU are driven from Full Swing Oscillators to further ensure stable operation as specified by their respective data sheets In both cases the EESAVE is set to clear the EEPROM each time the MCU is erased and the system watchdog timer is turned off by setting WDTON off For the ATmega1284p the boot reset BOOTRST vector is enabled as we would like the Wiring stK500v2
13. e Separate RESET Pin Reset Reset PC6 RESET Digital 2 INTO PD2 INTO RX1 Digital 3 INT1 PD3 PD3 INT1 TX1 PWM2 2 m o CD O m U O oO U gt On 2 Additional USART1 Rx Additional USART1 Tx 16 bit PWM clear of SPI pins SEE ERRATA Digital 4 oom PD4 PWM Digital 5 PWMO PD5 Digital 6 PWMO mme PVVM2 Phillip Stevens 18 August 2013 PVVM1 16 bit PWM clear of SPI pins Goldilocks User Manual Digital 6 eB PB2 INT2 Additional External Interrupt Digital 10 SS PB2 PB4 SS PVVMO SPI PVVM1 Digital 11 MOSI PB3 PB5 MOSI SPI PWM2 Digital 12 MISO PB6 MISO Digital 13 SCK PB5 PB7 SCK SP o a uSD Card SPI SS amp Through Hole SEE ERRATA uSD Card Card Sense amp Through Hole m E U 2 2 JTAG port 0 2 SCL Lk PCO SCL Separate I2C XTAL1 PB6 PC6 TOSC1 XTAL2 PB7 PC7 TOSC2 32 68 kHz RTC Crystal 32 68 kHz RTC Crystal Phillip Stevens 18 August 2013 Goldilocks User Manual Solder Bridge Descriptions Goldilocks has a number of solder bridge options that are designed to significantly increase the flexibility of the PCB and the use of the two available MCU and to improve compatibility with existing Arduino shields I2C Arduino Pre R3 Support OPEN solder bridges on the rear of the PCB are used to connect the ATmega1284p PCO PC1 to 4 respectively This for compatibility with Arduino Un
14. en this RESET EN solder bridge is separated it is necessary to press the ATmega1284p RESET button each time it is desired to enter its Wiring stk500v2 bootloader for reprogramming Selected Feature Descriptions Prototyping space Prototyping space is provided in one extended section in the upper right of the Goldilocks PCB On the upper right hand corner a stitched dual row of pins is provided to allow vertically orientated modules to be mounted outside the profile of a standard Arduino Uno sized shield This space can also be used for conveniently taking signals off the PCB without impacting shield usage In the centre section six rows of holes are alternately stitched to allow components or small modules to be mounted onto the PCB Specifically I2C prototyping modules are supported by the provision of the GND 5V SCL and SDA pins along the lower edge of the space Phillip Stevens 18 August 2013 Goldilocks User Manual uSD Card The micro SD card cage is provided with 3 3V power and level shifted signals to properly support uSD Cards The SPI Slave Select line is connected to PBO which is not allocated to the standard Arduino pinouts to ensure that full shield flexibility is not compromised The Card Sense line is connected to PB1 If the standard Arduino SD card library or sketches are used then the SS pin assignment must be changed to Arduino Digital 14 PLEASE REFER TO ERRATA ATmega1284p JTAG Header The IEEE Standa
15. ge https sourceforge net projects avrfreertos Support Information If you have received a Goldilocks because you made pledge on Pozible please contact me as above or via a message on the Goldilocks Pozible Project If you purchased a Goldilocks from Freetronics or from any distributor reselling the Goldilocks please contact Freetronics via their support forum Precautions Care must be taken when configuring the solder jumpers t is possible to cause permanent damage to the device or the power supply by improperly setting the jumpers Do not change any jumpers while the unit is powered When using the on board SMPS regulator to power the Goldilocks be sure not to exceed the specified maximum current output Phillip Stevens 18 August 2013 Goldilocks User Manual The Goldilocks PCB contains static sensitive components Use the usual ESD procedures when handling Improper fuse settings may result in an unusable Goldilocks PCB Be certain that you know the effects of changing the fuses that you understand the convention used for describing the state of the fuses programmed 0 and that you are using an appropriate programming speed before attempting to change fuse settings Legal Copyright Notices This code uses the LUFA USB library Copyright C 2013 Dean Camera www fourwalledcubicle com and distributed under a modified MIT license see files The Benito Project and DFU bootloader are modified version
16. goldilocks C 2013 Freetronics Pty Ltd uuu freetronics com Q Released under the TAPR Open Hardware License uuu tapr org ohl 18 August 2013 Goldilocks User Manual Errata AImega1284p if the serial port Tx in use the serial bootloader won t function because avrdude stk500v2 protocol doesn t see the response bytes it expects and you may be using it at a different rate An inherent serial bootloader issue AlTmega32u2 used Atmel USB descriptors rather than Freetronics But Atmel descriptors have a standard CDC INF file for Windows uSD card frame Slave Select 55 is not connected to PBO Digital 14 as per design but rather to the normal Arduino Digital 4 PDA This impacts the use of 16bit PWM found on PD4 and PD5 when the SD card is in use This also impacts the use of multiple SD cards as the Goldilocks SD card SS line is now shared with the standard Arduino layout uSD card detect line is connected to a through hole close to the rear of the uSD card cage t is not otherwise connected to any pin as it is not normally used If it is required then jumper from the through hole to a digital pin of your choice e The JTAG VREF pin is not connected t should nominally be connected to the MCU supply reference voltage of 5V This should not affect the use of the JTAG connector Support Contact Information can be contacted via twitter li pu blog feilipu me sourcefor
17. harping and feature creep over the four months of project realisation Phillip Stevens 18 August 2013
18. ilocks separately from your existing Arduino 1 0 x installations until you re sure everything is working as expected 1 Download and install Arduino version 1 0 5 or greater from http arduino cc en Main Software Download the Goldilocks file from Goldilocks 20130818 also see Freetronics Goldilocks product page for future support and firmware Unzip this file into a user directory ie My Documents Arduino You may need to create this folder Do not unzip into the arduino system directory from Step 1 Inside there is a directory arduino_goldilocks which contains a hardware directory This directory can be placed into the Arduino installation folder you prepared previously It will ask if you want to replace the boards txt file and programmers txt file which you should accept Other files should all be new and will be stored quietly Start the Arduino IDE and note that the Goldilocks 20 MHz can be selected in the Board selection menu Arduino version 1 0 5 supports the addition of the boards txt and other files directly into your sketch folder Please refer to the quick start instructions accompanying the Goldilocks packaging for instruction on this method of adding the necessary files If you are using Windows you will need obtain a INF file for the USB Serial interface As the standard LUFA USB nonclamenture is used the LUFA U2duino INF found in the production_ firmware folder of the Goldilocks 20130818 file should be installed
19. n oid repositories on a Ubuntu 12 04 platform If you are motivated get a modern avr gcc compiler such as the gcc 4 7 x branch The avr gcc 4 3 2 version included with Arduino IDE v1 0 5 and earlier is over 5 years old and contains many issues Support for the ATmegaxxU2 was only added in gcc 4 5 x for example Details Over the past years much work in the core of the avr libc has been done to support the ATmega1284p Also within the Arduino community there has been a push to incorporate the ATmega1284p into standard cores This means that the Goldilocks can be operated in the Arduino IDE environment with minimal additional information Purely the boards txt file is needed to configure the IDE and also then pins arduino h file contained in the variants goldilocks directory is needed to make sure that the pins are mapped to known Arduino standards Phillip Stevens 18 August 2013 Goldilocks User Manual ATMEL ATMEGA1284P on Goldilocks Actual implementat on vith VQFN PCINT8 D14 PBO PCINT9 D15 PBI PCINT10 INT2 D 8 PB2 PCINT11 OCOA D 9 PB3 PCINTI2 0COB PSS DID PBA PCINT13 MOSI D11 PB5 PCINT14 0C3A MISO D12 PB6 EE RE EES EE RST VCC GND X TAL XTALI PCINT24 RXO D 0 PDO PCINT25 TXO D 1 PD1 PEINDTZOJPBNTOZBAXL XD PD PCINT2TIINTIZTEXL 5 2 PDS PCINT28 0C1B D 4 PD4 PCINT29 0C1A D 5 PD5 PCINT30 0C2B D 6 PD6 PWM capable pin 1 40 4 39 Sc I 38 41 B 54 3
20. o R3 which does not link the I2C SDA SCL pins with the Analogue 4 and 5 pins Older Pre R3 shields that have I2C pins on Analogue 4 and 5 are supported by closing the solder bridges 1284p SCL SDA 1284p 4 PC1 d b O PA4 SPI Interconnect The SCK MISO MOSI pins on the rear of the PCB are connectable with OPEN solder bridges on the rear of the PCB to connect the ATmega1284p with the ATmega32U2 Atmel documents AVR151 and AVR910 refer to 1 k ohm to 10 k ohm in series resistors to prevent SPI bus lock up but parasitic capacitance effects can limit throughput to allow an ICSP to function despite the device being in circuit whilst being programmed Goldilocks is implemented with 1 kOhm resistors in series with the SPI lines to provide this decoupling 32u2 1284p PB3 MISO q PB6 MISO PB2 MOSI q D PBS MOSI PB1 SCK q D PB SCK The ATmega32u2 PBO SS PD6 INT4 pins and the ATmega1284p PB4 SS PB2 INT2 pins are brought to a row of solder pads on rear of board The SS lines are aligned to be directly connected Or alternatively SS to INTx or left unconnected respectively if direct access to either Phillip Stevens 18 August 2013 Goldilocks User Manual SPI Master SS is not desired but Interrupt signalling the SPI Master is desired Also ATmega1284p RESET is provided to allow the optional use of LUFA AVR ISP software 32u2 1284p PD6 INTA E PBO SS PB4 SS m PB2 INT2 m RESET
21. perly resets the ATmega1284p Another key difference is to modify the calculation for USART baud rate to be the same as in the avr libc file util set baud h file This calculation method is more correct than the calculation method used in the AVR datasheet Phillip Stevens 18 August 2013 Goldilocks User Manual Schematic TX RX LED Isolation SJ12 1 2 SJ13 1 2 12C 84 5 Cross Link SJ1 501 1 AS H 5 15 1 2 i am Si el ma a D1 Shield Headers 1880nF 0402 Hi eo u 0s cn c t Phillip Stevens I l co 5 o Os 00 Digital 8 7 1K 0202 DU SS RESET 27 Link J3 2 PD amp ig 2 EEN A 2 108nF 0402 5 35 L END SJ36 4 2 OI GO ioo o1 0805 INDUCTOR C21 188nF 80402 XTL1 20HHz N WI R 22pF 848225 1m oe C3 GND 22pF 8402 H16 AREF DU 1K 0402 RX GRN 1K 0402 22pF 0402 R12 CL 4 XTL 2 16 2 XTAL2 C13 22pF 0402 m PTC 181 4 32 2 Breakouts 1uF 0402 47uF 25U GND GND 1284 Microcontroller Ici 1284 PA1CADC1 PCINT1 PA 2CADC2 PCINT2 PA 3CADC3 PCINT3 gt PA 4CADC4 PCINT4 PASCADCS PCINTS 6 6 1 RESET PA7CGDC PCINT7 D p Dp D D D D 8 XCKO T XTRL2 PB1CPCINT8 CLK0 T1 XTAL 1 PB2 PCINT18 INT2
22. prototyping space I2C interconnect option for Pre R3 shield compatibility LED indicators located on end outside standard shield profile for unimpeded visibility ATmega1284p clocked at 20 MHz using precision crystal with option of 22 1184 MHz 32 68 kHz clock crystal for accurate real time clock timekeeping Independent Analogue ADC Platform with filtered AVcc supply AREF replicated near Analogue pins for easy off board usage Access to 3x programmable USART 2x ATmega1284p amp 1x ATmega32U2 Serial USART disconnect option Independent MCU reset buttons ATmega1284p and ATmega32U2 JTAG IEEE std 1149 1 compliant SEE ERRATA Improved PWM pin access SPI interconnect option between ATmega1284p and ATmega32U2 with decoupling Micro SD Card cage using additional SPI Slave Select and Card Detect I O pins to ensure no impact on existing shield compatibility SEE ERRATA High capacity 7V to 28V Switch Mode Power Supply specified for 5V 2A 4 layer PCB with industrial grade ground plane and power supply decoupling practices The 4 layer PCB is high quality with ENIG gold plated finish a gold solder mask and black screenprinting The Goldilocks can be powered at 7V to 28V via the 2 1mm barrel connector or at 5V via USB depending on the position of the POWER Jumper Phillip Stevens 18 August 2013 Goldilocks User Manual Arduino Installation Unless you are certain of what you are doing it is recommended to install the Gold
23. r goldilocks 20MHz bootloader goldrlocks Z MHuz bootloader vunrocE bu ros oxor goldilocks Z MHz bootloader goldilocks 20MHz bootloader low fuses 0xd7 extended ruses UxXxELc irleecstk500boot v2 goldrlocks hex lock bi ts 0x0F goldilocks 20MHz build mcu atmegal284p goldilocks Z MHz build f cpu 20000000L goldilocks 20MHz burld core arduino goldilocks 0MHz urld var ant dgoldilocke ti ft ff dd if fk f ff f ff f ff fk ff ff f ff ff ff ff f ff TE ff ff ff ff fi if ff f ff f ff ff fi f ff f ff f ff ff f ff E fi E ff ff A if fi goldilocks 22MHz name Goldilocks 22 1184MHz golailocks 22MHz upload protocol wituing goldrloeks 22MHz upload maxmamum S12e 122978 goldilocks 22MHz upload speed 38400 goldilocks 22MHz bootloader high fuses O0xdes goldilocks 22MHz bootloader pathestk500v2 qgold loeks ZZMHZ bootroader goldilocks ZZMHz boculoader Goldilocks 22Miz bootloader unLlock D teoxorv Goldilocks 22MLHz bootroader Goldilocks 22MHz bootloader low fuses 0xd7 extended fuses xfc Lile StkoDUDOOLt v2 goldilocks 22 B86X lock Dits OxO0b goldilocks 22MHz build mcu atmegal284p Goldilocks 22MHZ D rld r cpu 22119400L goldsloeks 22MB24 D Umldj6ore arduino goldilocks 22MHz buxzid varxant goldilocks Phillip Stevens 18 August 2013 Goldilocks User Manual Known Arduino R3 Incompatibilities Mounting holes are set to be 2mm in diameter M2 The Arduino standa
24. rd 1149 1 compliant JTAG header is populated according to the AVR recommendations JTAG is not enabled by default in the AVR fuse configuration for Goldilocks AVR JTAG header pinout other circuitry TCK TDO TMS TDI VTref GND nSRST nTRST JTAGICE mkil probe Target AVR 32 768kHz Crystal The ATmega1284p supports Timer2 being driven by an external 32 768 2 watch crystal Using Phillip Stevens 18 August 2013 Goldilocks User Manual this Timer together vvith the avr libc provided functions in the time h library allovvs the creation of an accurate real time clock capability for the Goldilocks PCB RESET buttons Two separate RESET buttons are provided for the Goldilocks The ATmega1284p RESET located on the lower edge of the PCB is the normal Arduino RESET and is connected to the RESET pin out The ATmega32U2 RESET located on the upper left corner of the PCB enables the Goldilocks to reset its serial interface without power cycling or resetting the ATmega1284p 32U2 Port Header To make the ATmega32U2 more useful as a coprocessor to the ATmega1284p two complete port pinouts PB and PD are provided These two ports make the SPI bus the USART and external interrupt pins available The ATmega32U2 having 32 kBytes of Flash and 1 kByte SRAM is nearly as resource rich as the Arduino Uno s ATmega328p or the Leonardo s ATmega32U4 It will be possible to develop multi MCU solutions based on the Gol
25. rd is 3mm M3 The hole size needed to be reduced to allow Port A pins to be continuous PWM supported pins on the ATmega1284p are different to the Arduino Uno A Tmega32 p This means that shields requiring the use of PWM such as motor H bridge shields may need to have the pins rerouted either on the Goldilocks using the provided pin out options or on the shield itself This issue also affects the Arduino Leonardo ATmega32UA The actual PWM support is better than in the Arduino Uno as the important 16 bit Timer pins that can generate correct servo timing pulses are not located on the SPI pins Also the ATmega1284p has an extra 16bit timer Timer3 that can also be used for PWM servo control too allowing 4 servos to be directly controlled USART serial port speed accuracy and mismatch remains a concern An acceptable compromise has been provided by implementing the correct calculation for serial baud rate contained in avr libc util setbaud h However the total error in serial rate between the AVR MCU at 16 MHz ATmega32U2 and at 20 MHz ATmega1284p unfortunately remains quite high The Wormfood AVR Serial Rate Calculator indicates the issue with getting an accurate baud rate from a 16 MHz ATmega MCU If serial communications proves an issue for you the easy answer is to reduce the ATmega1284p USART to 38 400 baud which provides the lowest differential error at a reasonably fast communication rate The ATmega32U2 will auto configure to m
26. s from LUFA 130313 Portions of this code are copyright 2003 2013 Atmel Corporation http www atmel com Software Warranty Disclaimer The author disclaim all warranties with regard to this software including all implied warranties of merchantability and fitness In no event shall the author be liable for any special indirect or consequential damages or any damages whatsoever resulting from loss of use data or profits whether in an action of contract negligence or other tortious action arising out of or in connection with the use or performance of this software Hardware Disclaimer This development board is intended for use for FURTHER ENGINEERING DEVELOPMENT DEMONSTRATION OR EVALUATION PURPOSES ONLY It is not a finished product and may not yet comply with some or any technical or legal requirements that are applicable to finished products including without limitation directives regarding electromagnetic compatibility recycling WEEE FCC CE or UL except as may be otherwise noted on the board l Phillip Stevens have supplied this board AS IS without any warranties with all faults at the buyer s and further users sole risk The user assumes all responsibility and liability for proper and safe handling of the goods Further the user indemnifies me Phillip Stevens from all claims arising from the handling or use of the goods Due to the open construction of the product it is the user s responsibility to take any an
27. tibility with both R3 and pre R3 Arduino Shields Whilst the Goldilocks is easy to use and is designed and built with care it is not intended to be an entry point into the world of Arduino and microcontrollers in general The easiest entry point remains the standard Arduino Uno R3 or cloned device When you find you are being constrained by what your Arduino can do you should come back to love the Goldilocks d d l 35 4 E K ZUM MS f Ss p E Sa M rr 20 WE BET m Sait 1 A Lu onics com goldilocks Phillip Stevens 18 August 2013 Goldilocks User Manual The Goldilocks implements many features intended to increase the flexibility of the Arduino platform allowing advanced projects to be completed but retaining full compatibility for Arduino Shields to give users access to the full portfolio of options developed for the Arduino Uno and its peers and clones These features listed below will be covered in detail in later sections of this manual Through hole connectors for all I O pins aligned to 0 1 pitch for breadboard or ribbon cable compatibility Prototyping space with stitched cross connections aligned to 0 1 pitch and extended outside standard Arduino Uno shield profile Both ATmega1284p and ATmega32U2 ports pinout available in pin logical order Extra 2 x Analogue and 2 x Digital I O pins I2C pins replicated near to the
Download Pdf Manuals
Related Search
Related Contents
PCI-6881 User`s Manual Notice utilisateur 安全のために必ずお守りください 大型歯車テンプレート 取扱説明書 り正しくお使いいただくために、 この取扱説明書をよくお読みください〟 國 Build Your Own Waterless Composting Toilet Maxxum Big-Flo 6" Submersible Pump - veeder M50 モノクロメータ Sony Ericsson W200C Telephone User Manual Copyright © All rights reserved.
Failed to retrieve file