I can see you have opted for a 12 MHz ceramic resonator instead of a crystal.
What type of resonator have you used and is it accurate enough according software timing requirements?
This is from bootloaderconfig.h
So it requires a precision of 2000 ppm which is the same as 0.2%. Many ceramic resonators doesn't offer this kind of accurancy (often they are 0.5%) and as a result you could run into timing issues while operating or bootloading the device.Code:#define USB_CFG_CLOCK_KHZ (F_CPU/1000) /* Clock rate of the AVR in MHz. Legal values are 12000, 12800, 15000, 16000, * 16500 and 20000. The 12.8 MHz and 16.5 MHz versions of the code require no * crystal, they tolerate +/- 1% deviation from the nominal frequency. All * other rates require a precision of 2000 ppm and thus a crystal! * Default if not specified: 12 MHz */
I think you should also consider using an LDO instead of diodes since you use the ADC and an unstable power supply could give wrong ADC readings. Fortunately the input doesn't have to be read with very high resolution since there's not that many steps on the resitor ladder for the switches. But each time you press a switch the current consumption increases which will result in a small voltage drop.
But of course a misreading of the input switches could just result in a volume up instead of volume down command. Not a major error, unless the music is turned up really loud.
The missing regulation may be problematic for analog circuitry or if you use the ADC. It depends on the power consumption of the device and the PC side voltage supply stability.
Unfortunately i cannot find the control schematic for the Focus however here is a pic of the control itself (it sits on the left hand side of the steering column).
If you can tell me how to get the info you need i'm more that happy to give it a go however my knowledge of these things is very limited.
There's an error in your new schematic. You have forgot to connect AVCC to any power source.
If you want to filter the analog suppply from the digital supply you should add a 10ÁH inductor from VCC to AVCC as suggested in Figure 23-9 at page 253 in the ATmega48PA/88PA datasheet to create a 2nd order low-pass filter. And connect the resitor ladder to AVCC instead of digital VCC too. The you will have a better filtered refrence voltage for your resitor ladder and ADC.
For this circuit I wouldn't use the internal 1.1V voltage reference for the ADC, but connect AREF to AVCC and remove C8 (you can connet AREF to AVCC internally by software). This way the ADC would use the same reference voltage as the resistor ladder. You wont add any accurancy by using the internal voltage reference in this case since the resistor ladder isn't connected to a reference voltage anyway, but directly to AVCC. By connecting AREF to AVCC, the ADC would use the same refrence as the resitor ladder. I can see you did this in your first PCB layout and I would go back to this way again.
Keep AGND and DGND seperate too and only connect at one point as described in AVR040/042 application notes.
And as I mentioned earlier you should also add some protection to the rest pin as descirbed in section 3 of AVR042, especially now when you add an ISP connector to access from external circuit to the reset pin.
What size SMD resistors and capacitors are you planning on using? 0805?
Actually all the cell phone manufactures just agreed this week to make Micro-USB a common standard interface for all chargers and data connections in the future as you can read here: http://www.dailytech.com/Most+GSM+Ph...ticle14308.htm
Micro-USBs will completely replace Mini-USBs in the coming years.
+ I compared the prices at Mouser for both a Type B Micro-USB and Type B Mini-USB SMD receptacles, both from Tyco. The Micro-USB receptacle was alsmot half the price of the Mini-USB receptacle: http://www.mouser.com/Search/Refine....741457+1323043
The newer Micro-USB receptacles are designed to allow up to 10,000 cycles of insertion and removal between the receptacle and plug, compared to 500 for the standard USB and Mini-USB receptacle. This is accomplished by adding a locking device and by moving the leaf-spring connector from the jack to the plug, so that the most-stressed part is on the cable side of the connection. This change was made so that the connector on the (relatively inexpensive) cable would bear the most wear instead of the micro-USB device.
http://www.usb.org/press/pressroom/2007_01_04_usbif.pdfMini and micro
The Micro-USB connector was announced by the USB-IF on January 4, 2007 and the Mini-USB connectors were withdrawn. As of February 2009[update], most available devices and cables still use Mini plugs, but the newer Micro connectors are becoming more widely adopted. The thinner Micro connectors are intended to replace the Mini plugs in new devices including smartphones and Personal digital assistants. The Micro plug design is rated for 10,000 connect-disconnect cycles. The Universal Serial Bus Micro-USB Cables and Connectors Specification details the mechanical characteristics of Micro-A plugs, Micro-AB receptacles, and Micro-B plugs and receptacles, along with a Standard-A receptacle to Micro-A plug adapter. The carrier led Open Mobile Terminal Platform (OMTP) group have recently endorsed micro-USB as the standard connector for data and power on mobile devices. These include various types of battery chargers, allowing Micro-USB to be the single external cable link needed by some devices.
The Micro-series are unique in that they feature a stainless steel shell, which yields more than 10,000 insertion cycles for longer life and higher durability, and passive latching mechanism for higher extraction forces.
"Different approaches can be used to connect the RESET pin so that unintentional reset of the AVR is avoided. External brown-out or supervisory circuit can be used to control the RESET pin. If an external brown-out circuit, like the ones described in application note AVR180, is applied one would not need to consider how to connect the RESET pin further. However, if the AVR device used in the application has built-in brown-out circuit, the external brown-out can be saved and a more simple solution can be chosen to control the state of the RESET pin."
and yeah, AVCC is connected to AREF, the 1.1V reference is (1) way too inaccurate, (2) not high enough
I'll also note that I'm just going to put in a standard 6-pin .100"pitch male isp header, since micromatch seems to be quite costly now..
I got the first multilock I connector from tyco today, unfortunately it is way too large and the pins are spaced too far apart =(. I think i'll learn to take the right measurements, although I don't have calipers
I'll also add that version 1 is working well, with one small software issue...:
Even though play/stop repeat rate is supposed to be controlled by the operating system, it does not for whatever reason... so i'll have to add repeat control for that button in hardware.
all other buttons (skip track/volume) are working fine with windows controlling the repeat.
er, I'll have source code posted after i fix that
the pins to connect to the pcb are you going to use just a pin connector or a screw on connector.