avrdude-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [avrdude-dev] PDI bit bang support over GPIO


From: Pink Boy
Subject: Re: [avrdude-dev] PDI bit bang support over GPIO
Date: Thu, 14 Nov 2013 15:47:31 -0800 (PST)

Anthony,

My company did something like that for a project that went no where. (I didn't 
do any of the work)

One thing I remember hearing as a pain is that the serial clock needs to be 
kept 

running continuously at 20khz or the XMEGA will drop out of program mode. I 
think
this makes debugging a royal pain because if you do any sort of break point, or 
if your
firmware has a hiccup, the the XMEGA just stops responding. 


As such I'd suggest starting with some sort ofexternally driven clock that you 
can gate 

on and off via a port pin.


Not sure, might be able to get you some source code, but might be more trouble 

than it's worth.

PS: I've noted that there are a ton of USB based programmers out there, but 
very 

few that use Ethernet to communicate with the programmer.


Matt

----- Original Message -----
From: Anthony Andriano <address@hidden>
To: address@hidden
Cc: 
Sent: Monday, November 11, 2013 3:35 PM
Subject: [avrdude-dev] PDI bit bang support over GPIO

Hi,

Summary: I'm interested in programming two Xmega microcontrollers with an
AT91SAM SoC using GPIOs in conjunction with the PDI protocol.

Details: I have a very custom AT91Bootstrap build and a moderately custom
emdebian kernel working very well on a prototype. I've been communicating
with two xmega8e5 microcontrollers using UARTs for the low level, real time
constraints required for the product to work correctly. The problem I'm
facing is how to get the bootloader on the xmegas in the first place. The
two main issues are as follows:

1) I have to use PDI to initially program my bootloader and set a few fuses.
2) I have to put two headers for PDI programming on my PCB because PDI
regrettably lacks daisy chain support.

Once I flash my bootloader to the xmegas, I can program them using the same
UARTs that are used during normal operation with AVRDUDE from the SoC.
However, I want to remove the PDI headers from the board because of area
constraints and the potential time savings during manufacturing.

I know PDI is possible using a UART, but I was actually considering making
this work via bit banging so any pair of GPIO pin would be able to
implement PDI. I'm either going to add this to AVRDUDE or write a driver
for AT91 SoCs, but I figured I would start here in case AVRDUDE could offer
a headstart. Any information would be greatly appreciated so I know what
roadblocks to expect before I get started.

Thanks,
Tony
_______________________________________________
avrdude-dev mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/avrdude-dev




reply via email to

[Prev in Thread] Current Thread [Next in Thread]