emonGLCD not programmable

Hi there,

Just about to finish the first component from the Home Energy Monitor kit, the emonGLCD. The problem is that I am unable to upload any sketch to it using the USB to UART loader from the OpenEnergyMonitor shop. The SILabs driver is installed. To isolate the problem as much as possible I did the following:

- used the minimal sketch possible, with just to empty void loop and setup functions.

- IDE is functional (1.0.1), uploading it to a duemilanove board I had lying around works correctly

- problem is reproducable on both my Mac OSX Mountain Lion and Windows 7. Both report the USB programmer driver is loaded succesfully.

 

- the soldering and components are triple checked. I did get that 3.3v measuring on the JeePort. The C13/C14 rotation is done as per instruction.

When I try to upload the sketch using the IDE and put it to verbose I get the following output:

Binary sketch size: 466 bytes (of a 32,256 byte maximum)
/Applications/Arduino.app/Contents/Resources/Java/hardware/tools/avr/bin/avrdude -C/Applications/Arduino.app/Contents/Resources/Java/hardware/tools/avr/etc/avrdude.conf -v -v -v -v -patmega328p -carduino -P/dev/tty.SLAB_USBtoUART -b115200 -D -Uflash:w:/var/folders/5w/nv57j_052v3_mcjbsf3x062w0000gn/T/build4219918415764378418.tmp/sketch_aug11a.cpp.hex:i 

avrdude: Version 5.11, compiled on Sep  2 2011 at 18:52:52
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2009 Joerg Wunsch

         System wide configuration file is "/Applications/Arduino.app/Contents/Resources/Java/hardware/tools/avr/etc/avrdude.conf"
         User configuration file is "/Users/arne/.avrduderc"
         User configuration file does not exist or is not a regular file, skipping

         Using Port                    : /dev/tty.SLAB_USBtoUART
         Using Programmer              : arduino
         Overriding Baud Rate          : 115200
avrdude: Send: 0 [30]   [20] 
avrdude: Send: 0 [30]   [20] 
avrdude: Send: 0 [30]   [20] 
avrdude: ser_recv(): programmer is not responding
avrdude: stk500_recv(): programmer is not responding

avrdude done.  Thank you.

 

Is there anyway to investigate this problem any further? 

adebree's picture

Re: emonGLCD not programmable

 Just finished the emonTX and having the exact same results with that component. This makes the USB to UART component (or it's driver) the prime suspect. Is there anyway to verify it's correct (or incorrect) functioning?

adebree's picture

Re: emonGLCD not programmable

Since the Duemilanove uses the same ATMEGA328 as the emonGLCD I figured, why not use the Arduino to program the chip and than put in into the emonGLCD. So uploaded the test sketch to a chip using the Arduino and installed that on the emonGLCD which worked.

I guess it is indeed an issue with the USB to UART loader. Dmesg on my mac says when inserting it:

com_silabs_driver_CP210xVCPDriver: init
com_silabs_driver_CP210xVCPDriver64(0xffffff80313f5000)::attach
com_silabs_driver_CP210xVCPDriver64(0xffffff80313f5000)::probe
com_silabs_driver_CP210xVCPDriver64(0xffffff80313f5000)::detach
com_silabs_driver_CP210xVCPDriver64(0xffffff80313f5000)::attach
com_silabs_driver_CP210xVCPDriver64(0xffffff80313f5000)::start - Registered for Power Management
com_silabs_driver_CP210xVCPDriver64(0xffffff80313f5000)::start!
com_silabs_driver_CP210xVCPDriver64(0xffffff80313f5000)::start - Found device at interface 0
com_silabs_driver_CP210xVCPDriver64(0xffffff80313f5000)::SelectInterfaces - BulkInput Pipe is 0xffffff802b0bc780 on EP1
com_silabs_driver_CP210xVCPDriver64(0xffffff80313f5000)::SelectInterfaces - BulkOutput Pipe is 0xffffff803fc5ab80 on EP1
com_silabs_driver_CP210xVCPDriver64(0xffffff80313f5000)::setPowerState - Waking up
com_silabs_driver_CP210xVCPDriver64(0xffffff80313f5000)::GetCP210xInfo - Part Number Found: 0x02
com_silabs_driver_CP210xVCPDriver64(0xffffff80313f5000)::GetCP210xInfo - UsbConfigurationDescriptor - 
com_silabs_driver_CP210xVCPDriver64(0xffffff80313f5000)::GetCP210xInfo     .bLength = 9 
com_silabs_driver_CP210xVCPDriver64(0xffffff80313f5000)::GetCP210xInfo     .bDescriptorType = 0x02 
com_silabs_driver_CP210xVCPDriver64(0xffffff80313f5000)::GetCP210xInfo     .wTotalLength = 32 
com_silabs_driver_CP210xVCPDriver64(0xffffff80313f5000)::GetCP210xInfo     .bNumInterfaces = 1 
com_silabs_driver_CP210xVCPDriver64(0xffffff80313f5000)::GetCP210xInfo     .bConfigurationValue = 1 
com_silabs_driver_CP210xVCPDriver64(0xffffff80313f5000)::GetCP210xInfo     .iConfiguration = 0 
com_silabs_driver_CP210xVCPDriver64(0xffffff80313f5000)::GetCP210xInfo     .bmAttributes = 0x80 
com_silabs_driver_CP210xVCPDriver64(0xffffff80313f5000)::GetCP210xInfo     .MaxPower = 50 
com_silabs_driver_CP210xVCPDriver64(0xffffff80313f5000)::start - Sucessfully loaded the driver
com_silabs_driver_CP210xVCPDriver64::setPowerState(0xffffff80313f5000, 0 -> 1) timed out after 10159 ms

Where especially that last line wories me. Does that mean the loader itself is having a problem?

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.