Using AVR Dragon to set fuse bits

Go To Last Post
10 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi,

 

I am new to AVR dragon and just got it a couple of days back. Today I installed USB drivers and connected it via USB. LED 2 is green and LED 1 (RGB LED) is Red. Reading the webdoc on atmel website and AVR Studio help, it states that both LED's should be Green which is not the case. Secondly, where can I check on AVR Studio that it says AVR dragon is connected?

 

Now, coming to my actual question, I got this dragon to enable reset (disabled to use it as normal IO Pin) on Attiny85. Is there a proper documentation which says how to set jumpers and reset the fuse bits? Any help is greatly appreciated.

 

Thanks,

Praveen

Robot building is all about sharing & learning
-----------------------------------
www.robotplatform.com

Last Edited: Wed. Oct 22, 2014 - 11:20 AM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Secondly, where can I check on AVR Studio that it says AVR dragon is connected?

When you come to setting the debugger target for the project it won't list Dragon (or any other physical debugger) if it cannot "see" it. So if you only see "Simulator" it means Studio has not seen the Dragon.

 

The Dragon manual has connection diagrams for all the variants of tiny/mega to show how to wire it up for high voltage serial programming. Obviously if you do disable reset you won't be able to use debugWire debugging though!

 

To be honest it's probably easier to develop using an AVR with more pins so you don't have to RSTDISBL it and then just port the code to tiny25/45/85 when you are done.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Quote:
The Dragon manual has connection diagrams for all the variants of tiny/mega to show how to wire it up for high voltage serial programming. Obviously if you do disable reset you won't be able to use debugWire debugging though!

Since I am not familiar with Dragon, I am little worried using the dragon. I have only one of this dragon and did not want to ruin it in any case.

 

Quote:
To be honest it's probably easier to develop using an AVR with more pins so you don't have to RSTDISBL it and then just port the code to tiny25/45/85 when you are done.

I am working on USBTinyISP based on Littlewire firmware and it necessarily needs reset pin to be set as IO pin and hence the struggle.

Robot building is all about sharing & learning
-----------------------------------
www.robotplatform.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I am working on USBTinyISP based on Littlewire firmware and it necessarily needs reset pin to be set as IO pin and hence the struggle.

Surely my point about porting to another AVR with more pins to make edvelopment easier is even more valid if the only thing the app does is wiggle GPIO lines?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

ok, trying to be more specific to see if I can convince you. Adding littlewire firmware does many things. One, it gives me a USBTinyISP programmer at a fraction of cost of USBAsp making programmer cost almost a dollar each. Secondly, the board I have developed is the size of my thumb nail (a medium sized thumb) and adding a tiny85 on the board makes it easier than using another one like tiny2313. If you are still not convinced, take it as a way of me spending time with Tiny AVR's. :)

 

Now the real test. I am setting another Attiny85 reset pin to GPIO. If I fail programming another board with this, I will go through the documentation of Dragon and see if I can understand something from that and reset the fuses.

 

Why doesn't Atmel write documentation like a cartoon story, full of pictures and explanation in detail... well, I know it is asking too much, but that is how I intend to write my tutorials :)

Robot building is all about sharing & learning
-----------------------------------
www.robotplatform.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

If you are still not convinced,

I fear you have missed my point. I'm not suggesting you change the CPU used in production. I am suggesting you change the CPU used in development as it will make that development easier. As one final step at the end of the development you then port the developed/tested code to the small, target CPU. But it's just an idea for an easy life - feel free to ignore it.

If I fail programming another board with this, I will go through the documentation of Dragon and see if I can understand something from that and reset the fuses.

http://www.atmel.com/webdoc/avrd...

Why doesn't Atmel write documentation like a cartoon story, full of pictures and explanation in detail..

Sorry but how could it really be any more "cartoony"/graphic than the link I just gave?? You just wire things up like in Figure 17 with flying wires connecting the pairs of coloured pins and then tell Studio to do HVSP programming.

Last Edited: Thu. Oct 23, 2014 - 09:36 AM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi,

 

I am fairly new to the Dragon. I got mine about 2 weeks ago. I have had a few bumps along the way but mostly nothing but success. The guys on this forum are a big help. My advice to you is you need to follow the documentation. Its pretty straight forward and not difficult at all.

 

My question to you is; why are you programming with a USBTinyISP when you have an AVR Dragon?

"When all else fails, read the directions"

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I would have thought that the sheer idea of multiple jumper wires on a Dragon is frightening enough.

 

You could develop most Tiny programs on a Tiny with multiple legs.

Once debugged,   you recompile for the wheelchair-bound Tiny.     Then TEST on the final target.

 

This strategy is very wise for a Mega.    e.g. develop on a mega1284 or mega2560.    Megas are very similar.

You can work with one dev board.

 

Tinys are deliberately stripped of features.    So you need to check that your 'bigger' Tiny has got all the peripherals you need in your target Tiny.     e.g. the tiny1634 will do most things (but not all)

 

David.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Quote:
I fear you have missed my point. I'm not suggesting you change the CPU used in production.
Yes, I had missed the point. I thought you are suggesting to change on the production board. I should have read it again before commenting.

 

Quote:
You just wire things up like in Figure 17 with flying wires connecting the pairs of coloured pins and then tell Studio to do HVSP programming.

This gives me a clear idea except for the high voltage requirement. Shouldn't there be 12V on reset pin? Would the 'F' mentioned in the image give 12V (one connecting to reset pin of tiny)? Since I have connected the Dragon to 5V USB, I am still not clear. Or should I connect an external power source to this?

 

Robot building is all about sharing & learning
-----------------------------------
www.robotplatform.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

No,   you just follow the instructions.

 

The Dragon generates its own 12V  (just like the STK500 and STK600)

I presume that the Dragon firmware will enable / disable the 12V as directed by the software.

 

My advice is:

 

1.   use a many-legged 'similar' Tiny AVR for development.

2.   only set the RSTDISBL fuse when your development is completed and you are testing your target Tiny.

3.   if you 'brick' a few chips with RSTDISBL,   mail them to a neighbour with a STK500.

 

Yes,   you can set up your Dragon to do (3).     It is not difficult for HVSP on the small Tinys.     Now look at HVPP on a big Mega ------ lots of wires!

 

David.