Foolproof Programmer

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

Has anyone come across a foolproof AVR programmer?

I need to supply something that will allow a non-technical operator to update an AVR based unit.

In an ideal world I see something that connects to a PC via USB; plugs into the target via a standard 10-pin ISP header; appears to the PC as a mass storage device; you copy a hex file over; press a button, and all goes well.

#1 This forum helps those that help themselves

#2 All grounds are not created equal

#3 How have you proved that your chip is running at xxMHz?

#4 "If you think you need floating point to solve the problem then you don't understand the problem. If you really do need floating point then you have a problem you do not understand." - Heater's ex-boss

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

Use this all the time:
http://www.npe-inc.com/products/...

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

Dean has a bootloader that works by that mechanism but you'd have to be using an AT90USB chip in the design to be able to use it.

One could presumably make a programmer using that - it could receive the image to it's own app flash section (assuming it was bigger than the target) then it could also use AVRISPmkII clone software (also found in LUFA) to do the further programming on to the target AVR.

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

Quote:
appears to the PC as a mass storage device;
It doesn't make much sense to do exactly that since it gives the impression that you can copy any file over to the AVR. It would be better to have a program that when run detects the connected programmer and allows you to select the .hex file to download. It should be easy to create such an application and have it communicate through AVRDude with the proper commands. The user need not know AVRDude commands or even that AVRDude is being used at all.

Regards,
Steve A.

The Board helps those that help themselves.

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

I wrote a shell in VC++ that runs AVRDude without a window. The hex file and fuse and lock settings were in a text ini file. The interface has one button and pressing it runs AVRDude then examines the return code. If programming was successful it turns the button green and if it fails the button turns red.

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

+1 for the NPE unit

I would rather attempt something great and fail, than attempt nothing and succeed - Fortune Cookie

 

"The critical shortage here is not stuff, but time." - Johan Ekdahl

 

"Step N is required before you can do step N+1!" - ka7ehk

 

"If you want a career with a known path - become an undertaker. Dead people don't sue!" - Kartman

"Why is there a "Highway to Hell" and only a "Stairway to Heaven"? A prediction of the expected traffic load?"  - Lee "theusch"

 

Speak sweetly. It makes your words easier to digest when at a later date you have to eat them ;-)  - Source Unknown

Please Read: Code-of-Conduct

Atmel Studio6.2/AS7, DipTrace, Quartus, MPLAB, RSLogix user

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

@kfaria and @Jim
I'm going to send NPE an email and check but their device list looks a bit sparse. No tiny4313 and, surprisingly, no mega 328.

@cliff
Sadly chip choice is already made for this design.

@Steve
Point taken. Copying over a .doc is likely to prove 'interesting'.

@eejay
Something like that might be the way to go. I could supply them with cheap cased USBasp clones and a 'copy all these files to that directory' installer with a simple avrdude front end.

#1 This forum helps those that help themselves

#2 All grounds are not created equal

#3 How have you proved that your chip is running at xxMHz?

#4 "If you think you need floating point to solve the problem then you don't understand the problem. If you really do need floating point then you have a problem you do not understand." - Heater's ex-boss

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

Perhaps contact NPE and ask about the missing chips?
They have been very helpful in the past.

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

Quote:

+1 for the NPE unit

We have also been using them for years.

Quote:

No tiny4313 and, surprisingly, no mega 328.

Hmmm--I guess I'd +1 also on "contact them".

Quote:

Dean has a bootloader that works by that mechanism but you'd have to be using an AT90USB chip in the design to be able to use it.


How soon we forget "ButtLoad"?!?
;)

You can put lipstick on a pig, but it is still a pig.

I've never met a pig I didn't like, as long as you have some salt and pepper.

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

USB seems quite robust. Everyone knows how to connect USB. You can prepare a desktop application that can make the whole update painless (something like FLIP but with less options and with some verification /compatibility checking).
With non-usb AVR that requires additional hardware. I would not use ISP but an UART bootloader. Or use an USB<->UART chip inside.

No RSTDISBL, no fun!

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

Brutte wrote:
I would not use ISP but an UART bootloader. Or use an USB<->UART chip inside.
Atmel AVR2054: Serial Bootloader User Guide was updated last month.

"Dare to be naïve." - Buckminster Fuller

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

Quote:

Has anyone come across a foolproof AVR programmer?

“Programmers are in a race with the Universe to create bigger and better idiot-proof programs, while the Universe is trying to create bigger and better idiots. So far the Universe is winning.” - Rich Cook.

Substituting "fool" for "idiot"...

“Programmers are in a race with the Universe to create bigger and better fool-proof programs, while the Universe is trying to create bigger and better fools. So far the Universe is winning.”

You can put lipstick on a pig, but it is still a pig.

I've never met a pig I didn't like, as long as you have some salt and pepper.

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

I've emailed NPE to see what the score is.

#1 This forum helps those that help themselves

#2 All grounds are not created equal

#3 How have you proved that your chip is running at xxMHz?

#4 "If you think you need floating point to solve the problem then you don't understand the problem. If you really do need floating point then you have a problem you do not understand." - Heater's ex-boss

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

In the past I used the Keyfob from Kanda. Great and practical, production had 2 of them so they could program twice as much in the same time.

I think the Kanda is nowadays an oldie which doesnt support new uPs but you can have a look at it, or the NPE link allready mentoined.

I also remember a keyfob-like programmer from PRIIO which accepted hexfiles and settings from an SD card. Dont think that one is active anymore.

For newer products I program them myself because we less sales and more custom settings per product including things like a unique serial number.

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

Paddy wrote:

In the past I used the Keyfob from Kanda.

Which is what I've just bought and it looks like exactly what I want.

Something to watch is that the device list on the website is out of date; I'll be emailing them later.

I like that fact that I can bundle up settings and data into a single file to email to people. They simply use that to upload everything to the keyfob - no danger of them bricking a chip with duff fuse settings.

#1 This forum helps those that help themselves

#2 All grounds are not created equal

#3 How have you proved that your chip is running at xxMHz?

#4 "If you think you need floating point to solve the problem then you don't understand the problem. If you really do need floating point then you have a problem you do not understand." - Heater's ex-boss