Go Down

Topic: Bare Bones Datalogging (UPDATE) (Read 3889 times) previous topic - next topic

Seedler

Ok this is version two. 

This time I have routed the power wire instead of using a plane.  Both top and bottom are now ground planes.

I added a capacitor to Aref going straight to ground.  Is this correct?

I have attached a reset pin to microsd socket for ease of programming, but I left the reset pad on top of board just in case.

My one concern is the power lead running on the bottom layer under the RTC, But from the DS!££& datasheet I think I'm ok as long as it doesn't run under the crystal leads.  Do you think I'm ok here?

Is this looking better?

Cheers,

Damien.


Seedler

I don't see an attachment.  The Aref pin should not be connected to anything but a 0.1uf cap to ground unless you are actually using an external reference.  Do not connect to Vcc, that connection is done internally when using the default reference.
I'm still a bit curious about what to do with the Aref pin.  Retrolefty's comment on the below post says not to connect it unless using an external voltage ref.

http://forum.arduino.cc/index.php?topic=119578.0

So for my setup should I just leave it unconnected?  Or is connecting to a capacitor and ground like you suggested the equivalent of leaving it unconnected?  What does the capacitor do?

Cheers,

Damien.

groundFungus


My understanding is that when using the default analog reference, the Aref pin is connected internally to Vcc.  The cap further bypasses higher frequency noise that may be on the Vcc line to ground so the noise will not be on the Aref and therefore not affect the analog measuerment.  You do not want to connect Aref directly to Vcc like with a wire (if internal 1.1V ref is chosen with the Aref directly connected to Vcc bad things would happen), The cap is not a direct connection to Vcc.

Page 250 of the 328 data sheet
Quote
The internal
voltage reference may thus be decoupled by an external capacitor at the AREF pin to improve
noise immunity.
Here the keywords are may thus be decoupled.  The cap is not required, but to me is cheap insurance.
You will save everyone's time if you read and follow the forum guidelines.  https://forum.arduino.cc/index.php/topic,148850.0.html

Seedler

My understanding is that when using the default analog reference, the Aref pin is connected internally to Vcc.  The cap further bypasses higher frequency noise that may be on the Vcc line to ground so the noise will not be on the Aref and therefore not affect the analog measuerment.  You do not want to connect Aref directly to Vcc like with a wire (if internal 1.1V ref is chosen with the Aref directly connected to Vcc bad things would happen), The cap is not a direct connection to Vcc.

Page 250 of the 328 data sheet
Here the keywords are may thus be decoupled.  The cap is not required, but to me is cheap insurance.
Can I not just leave the Aref pin floating (not connected at all).  I understand what you mean about if it is internally connected, then decoupling it to ground sounds like a benefit, but I don't think my setup uses a voltage reference as my sensors are both I2C, or am I wrong about that?

Do you mean connecting it to ground through a capacitor will cover me both ways, weather my setup uses it or not?

Cheers,

Damien.

groundFungus

If you are not using the analog inputs the cap is certainly optional.
 
Quote
Do you mean connecting it to ground through a capacitor will cover me both ways, weather my setup uses it or not?
Yes, if 'it' is the reference voltage.  That is why i always put in the cap on my standalone 328 boards.  Like I said, cheap, but optional,  insurance.
You will save everyone's time if you read and follow the forum guidelines.  https://forum.arduino.cc/index.php/topic,148850.0.html

Seedler

If you are not using the analog inputs the cap is certainly optional.
 
Yes, if 'it' is the reference voltage.  That is why i always put in the cap on my standalone 328 boards.  Like I said, cheap, but optional,  insurance.

Thanks.  I'll stick it in.

I'll get everything ordered up and let you know how I get on.

Cheers for your help,

Damien

groundFungus

My pleasure.  I look forward to hearing of your success.
You will save everyone's time if you read and follow the forum guidelines.  https://forum.arduino.cc/index.php/topic,148850.0.html

Seedler

Hi folks,

Looking for a bit of help again  :).

I got a few boards made and most components soldered on.  The problem is I cannot turn the bootloader onto the atmega.

I have attached a few pictures.  Excuse the last one with the mangled pads.  I did that while trying to resolder everything, which I think was unnecessary.  Those pins are not used so it shouldn't make a difference.  Anyhow be assured that originally they all looked perfect.

I am using a usbasp programmer.  I used a pin on the end of a multimeter probe to check that all the pads on the chip were connected to the corresponding lines on the programmer, and everything checked out. 

In the first picture looking straight down on chip.  Reset is top middle pin.  VCC and ground pins 3 and 4 on left side.  Middle pin on right side is ground.  Below it is AREF and AVCC.  Last pin on right side is SCK.  Bottom side far right pin is MISO, and beside it is MOSI.

They are all connected and the connections check out, but when I try programming I get a check connections error.  I use this programmer to program the DIP chip on the breadboard no problem. 

This is the chip I am using https://www.digikey.co.uk/product-detail/en/ATMEGA328P-MMHR/ATMEGA328P-MMHRCT-ND/3440952

Is this variation supported by arduino IDE?

Is there any other program that verify that the chip is even working?

Hope someone can help.

Cheers,

Damien.

Seedler

Sorry forgot photos

there are a few more to come

Seedler

Last two pics

madmattd

#40
Nov 27, 2015, 09:28 pm Last Edit: Nov 27, 2015, 09:30 pm by madmattd
This is the chip I am using https://www.digikey.co.uk/product-detail/en/ATMEGA328P-MMHR/ATMEGA328P-MMHRCT-ND/3440952

Is this variation supported by arduino IDE?

It's a 328p. So yes, it is supported. The package type makes no difference.

If you are getting a connections error, your connections have issues, either the chip to the board or your programmer to the board. You should at least get a signature back if your wiring is OK. The upper right-hand side of your chip (pins 18-21ish) looks questionable. And did you solder the pad underneath the chip?

Seedler

It's a 328p. So yes, it is supported. The package type makes no difference.

If you are getting a connections error, your connections have issues, either the chip to the board or your programmer to the board. You should at least get a signature back if your wiring is OK. The upper right-hand side of your chip (pins 18-21ish) looks questionable. And did you solder the pad underneath the chip?
I have verified connections with a pin/needle on one end of multimeter to connections on programmer.  I used a pin/needle and microscope to make sure I was touching side of pad on chip and not just circuit board pad.  I messed up the upper right hand side while trying to work out what was going on,  they originally looked fine, but aren't needed anyhow so should be ok.  Yes the center pad is soldered.  I verified that by probing the tiny points at the corners of the chip to ground.

What signature do you mean?  Is that through the arduino IDE?

cheers,

Damien.

Seedler

This is the error message I get using the arduino uno as isp.

Code: [Select]
Arduino: 1.6.5 (Windows 7), Board: "ATmega328 on a breadboard (8 MHz internal clock)"

avrdude: Yikes!  Invalid device signature.

         Double check connections and try again, or use -F to override

         this check.



Error while burning bootloader.

  This report would have more information with
  "Show verbose output during compilation"
  enabled in File > Preferences.


and this is the message I get using my usbasp programmer.

Code: [Select]
Arduino: 1.6.5 (Windows 7), Board: "ATmega328 on a breadboard (8 MHz internal clock)"

avrdude: error: programm enable: target doesn't answer. 1

Error while burning bootloader.

avrdude: initialization failed, rc=-1

         Double check connections and try again, or use -F to override

         this check.

  This report would have more information with
  "Show verbose output during compilation"
  enabled in File > Preferences.


Does this mean there is something wrong with the chip?  I reflowed it with a hot air gun at 300 deg C.  Could I have melted something in it?

Cheers,

Damien.

madmattd

This is the error message I get using the arduino uno as isp.

Code: [Select]
Arduino: 1.6.5 (Windows 7), Board: "ATmega328 on a breadboard (8 MHz internal clock)"

avrdude: Yikes!  Invalid device signature.

         Double check connections and try again, or use -F to override

         this check.


and this is the message I get using my usbasp programmer.

Code: [Select]


avrdude: error: programm enable: target doesn't answer. 1

Error while burning bootloader.

avrdude: initialization failed, rc=-1

         Double check connections and try again, or use -F to override

         this check.



Does this mean there is something wrong with the chip?  I reflowed it with a hot air gun at 300 deg C.  Could I have melted something in it?

Cheers,

Damien.
Well, it sounds like there is an issue in communication somewhere. Again, either between the chip and board (which for the most part does look solid), or between the board and your programmer. Or yes, it is possible you killed the chip. But the 328p's are pretty darn hard to kill in my experience.

jboyton

I have verified connections with a pin/needle on one end of multimeter to connections on programmer.  I used a pin/needle and microscope to make sure I was touching side of pad on chip and not just circuit board pad.
Also check for shorts between adjacent pins.

Go Up