0

I'm pretty new in microcontroller programming. But i wounder, I'm designing a circuit with Atmel ATUC256L3U, the cicuit is going to be used to home automation. The microcontroller is going to be controlled over ethernet connection.

Is it possible to integrate a programmer and USB port onboard of the PCB, so don't have to take out the microcontroller out every time I want to re-program it?

Bence Kaulics
  • 6,353
  • 12
  • 33
  • 60
BufferOverflow
  • 677
  • 1
  • 8
  • 15
  • There's no need to remove the microcontroller, even without those. – Ignacio Vazquez-Abrams Dec 04 '15 at 11:47
  • 1
    I asked a similar question a couple of days ago - you can just provide some header pins to connect your programmer to whenever you need to reprogram: http://electronics.stackexchange.com/questions/203703/in-place-programming-of-attiny85 – MalphasWats Dec 04 '15 at 12:22

1 Answers1

2

You don't want to waste all those extra components, I'd think.

First of all, you can do what Malphas suggests: Add your in circuit programming header (most likely JTAG in this case) to your design for your development cycle. You can also use a system called "POGO Pins" to make a bed of nails, or buy a special pogo connector, so you only need a few tiny test pads for the JTAG, so you don't even need to waste space for the JTAG connector.

But second of all, your processor is BULKING with memories and what not, and I would not be surprised if Atmel actually included a ROM boot loader in it, but I'm too lazy to research that. You can use or write a boot loader, if you Google that, with your processor name or "AVR32" you should find plenty examples.

A boot loader will let you send new firmware to the device on the fly, even when it's already manufactured through any of the chip's on-board communication systems. I can't imagine your final purpose for this device doesn't include communication to somewhere else, seeing the huge amount of resources you are including.

If you want, though, you can also hook up an UART to an FTDI FT232 chip with a USB port, but that's throwing in many, many more items in your BOM that you should not need if you are going to put it into production.

Spending two days on firmware functions outweighs spending $10 extra per board if you will be making 100+ of them at some point.

Of course, I'm only inferring the production stuff from your wording and I may be wrong. In fact, from the "I'm new" bit, I'd advise you to first play around with a few designs before considering production, and maybe you were. Anyway. That ^^ is my advice.

Asmyldof
  • 18,299
  • 2
  • 33
  • 53
  • I'm not planing on making 100+ of these circuits, this is going to be used on a 12VDC installation that has 24 fuses and switches that is going to be replaced with this PCB board. What I ment with «I'm new», is that first time I build a circuit with AVR. I have earlier experience from PCB production, arduino and programming but never AVR. The programming part should not be a problem, because I work as a programmer. And have over 10 years of experiences with C and C++, in addition to some assebly knowledge. – BufferOverflow Dec 04 '15 at 21:51
  • @BufferOverflow I think most, if not all, of the advice I write applies. The cost/time balance is something entirely in your control, if your AVR has a factory bootloader, you can work with that and potentially need $0 extra in your design. If not, the next cheapest (assuming a JTAG programmer is written off on many future projects) is adding a $0.25 JTAG connector, etc etc – Asmyldof Dec 05 '15 at 14:39