Go Down

Topic: Is bossac checking the CIDR of the arduino DUE (Read 1 time) previous topic - next topic

kingmail

Hello everyone,

I'm thinking of designing an arduino due compatible board, but with an atsam3x8c instead of the atsam3x8e (100pins instead of 144).
I discovered that the hw sam-ba bootloader has a neat command to check the microcontroller's Chip Identifier register (CIDR).
Obviously, the atsam3x8c has a different CIDR than the atsam3x8e... but is Arduino's bossac checking it?
The command line launching it has no parameters specifiying the platform used...

Thanks!

Palliser

#1
Aug 27, 2013, 07:00 pm Last Edit: Aug 27, 2013, 08:03 pm by Palliser Reason: 1
Hello kingmail,
Bossac is not only a boot-loader tool for the SAM3X8E but supports all of Atmel's known flash-based SAM devices. I believe bossac checks automatically the CIDR of the MCU. Just try:

Quote
bossac.exe --port=COM1 -U true -i


I used comm. port 1 as an example. Remember to change to your current COM port.
Also change to 'false' if your are connecting to the USB-to-TTL serial chip.

You should program your sam3x8c using bossac in the same way you do it for Arduino Due.
Anyway, I have a 3x8c system at home and I can try some tests tonight.

Regards!

EDIT:
<< Do not use the Arduino IDE to compile/program your SAM3X8C based board at least you have the variant files redefined for the 100-pin package of SAM3X8c. I am not sure about the uart interface settings but may be you will need to redefine them too.
I would recommend you to use Atmel Studio 6.1 where you can create bare minimum project templates for the SAM3X8C which will automatically generates the 100-in/out pins and other utily files. Just let me know where you are in your project (stage).
You can always count with the at91 Atmel tech support team after generate a ticket. >>

kingmail

Hello Palliser,

Unfortunately I don't have any board to test it on (that's why I'm asking here).... could you try for me?

Thanks!

duramaxhd

Hello kingmail,
Bossac is not only a boot-loader tool for the SAM3X8E but supports all of Atmel's known flash-based SAM devices. I believe bossac checks automatically the CIDR of the MCU. Just try:

I used comm. port 1 as an example. Remember to change to your current COM port.
Also change to 'false' if your are connecting to the USB-to-TTL serial chip.

You should program your sam3x8c using bossac in the same way you do it for Arduino Due.
Anyway, I have a 3x8c system at home and I can try some tests tonight.

Regards!

EDIT:
<< Do not use the Arduino IDE to compile/program your SAM3X8C based board at least you have the variant files redefined for the 100-pin package of SAM3X8c. I am not sure about the uart interface settings but may be you will need to redefine them too.
I would recommend you to use Atmel Studio 6.1 where you can create bare minimum project templates for the SAM3X8C which will automatically generates the 100-in/out pins and other utily files. Just let me know where you are in your project (stage).
You can always count with the at91 Atmel tech support team after generate a ticket. >>

I know its an old thread...but wondering how hard it is to update the variant files to work with a 100-pin SAM3X8C?


Palliser

Hello duramaxhd,

Can you elaborate a bit more your question? For example, will the variant files that you need work with a third-party board? or it is your own design?
Are you planning to have the variant files available into Arduino IDE? or another environment like Atmel Studio?

I am asking this because adding or updating variant files based on SAM3X8C is not a big deal but it will depend on your hardware and IDE.

In case you have a third-party board, you can generate generic variant files from Atmel Studio that work for it and customize them to the I/O pin definitions (LEDs, buttons, etc.) of the real board.

In case you have your own design, another option is to fork in github to introduce your board and present basic variant.h/cpp and pin_arduino.h files, so that others can help you on this.

Finally, a third option can be to contact directly Atmel SAM-based tech support team (I don't know if they are Microchip now). Good luck.

-p

duramaxhd

Hello duramaxhd,

Can you elaborate a bit more your question? For example, will the variant files that you need work with a third-party board? or it is your own design?
Are you planning to have the variant files available into Arduino IDE? or another environment like Atmel Studio?

I am asking this because adding or updating variant files based on SAM3X8C is not a big deal but it will depend on your hardware and IDE.

In case you have a third-party board, you can generate generic variant files from Atmel Studio that work for it and customize them to the I/O pin definitions (LEDs, buttons, etc.) of the real board.

In case you have your own design, another option is to fork in github to introduce your board and present basic variant.h/cpp and pin_arduino.h files, so that others can help you on this.

Finally, a third option can be to contact directly Atmel SAM-based tech support team (I don't know if they are Microchip now). Good luck.

-p

Im using my own custom designed hardware. But I designed my own hardware to work with the "standard" Due code, thats how it works right now. I basically now just want to redesign my (already working) custom board into something smaller...hopefully using the 100-pin SAM3X8C.

My current board is basically a Due "bare bones" setup (native USB only), with the CAN chips, and a few GP I/O's pinned out. Many of the I/O's arent used....I think Im only using about 20?


Theres actually 3 CAN busses on my current board design... two high speed 500k CAN using the Due's native CAN controllers and the CAN Due code that you made (awesome work, BTW, it works perfectly, and so easy to use!)....and then the third CAN bus on my board is a single-wire 33.3k CAN hooked up to the Due using SPI and an MCP2515.

Im only going to be working with the Arduino IDE for code tweaking/additions/revisions...I dont have Atmel Studio and never used it before unfortunately.

does Atmel studio produce variant files that work with the Arduino IDE?

Do I need to have the "debug" ports available to the Due to work with Atmel studio? My custom design PCB does not have the Due JTAG/debug ports.

Thanks again for the help...its too bad that Arduino never gave the option of selecting the smaller 100-pin "Due"...

Ben

Palliser

Hello Ben. All above sounds great. I have a question. Have you been able to run the blink example in your board? If not, I can provide a test .bin file with a blink example for SAM3X8C using AS6. I just need a digital pin (PA or PB) where you can connect an LED or that has already a built-in LED connected for this blink test. At the end of the day this is really a "shot-in-the-dark" that could help you to save some R&D time.

-p

Go Up
 


Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

Arduino
via Egeo 16
Torino, 10131
Italy