Go Down

Topic: bootloader and/in new boards (Read 616 times) previous topic - next topic

mischl

hello all

not sure if i found all the necessary informations, but : i saw a new board schematic... is it the new design? and if yes, is it probaply planned to add a switch on the board fix for bootloader. means that normally the atmel boots up immedeatly and only when this button is pressed the bootloader sequenz is activated. i think this would be a good feature to save time !
in general, are there any modified bootloader versions in use or just the original one?

cheers
i know it's only microcontrolling, but i like it!

David Cuartielles

Hej,

the bootloader is activated when the chip restarts, the button on board happens to be the reset pin, it plugs the Atmega off for as long as the button is pressed. So the actual way the bootloader works is to get active on reset or when plugging the board to power/USB.

The code is opensource, meaning you could rewrite your own bootloader based on our code. Our version is a modified one from a previous program by a different designer and we are keeping his very same license.

On the other hand, you could of course modify the bootlader to be getting active when there is a certain sequence on the serial port (e.g.) but this would force you to use interrupts.

Hasta pronto,

/David

CosineKitty

I had a similar thought before, which is that the bootloader could be modified to look at another digital pin, perhaps digital pin 2.  If the pin were LOW, it could do its usual thing of looking for new firmware being uploaded.  If it were HIGH, it would immediately start executing whatever sketch was already in flash memory.  Then the hardware could be modified to have either a pushbutton or a slider switch to select between these two modes.  The bad thing is that this would tie up an entire digital pin, unless the same switch/button could be overloaded to do something useful after the program started running.  But this would be ideal if you wanted to make a permanent version of a design, especially if you (a) wanted it to reboot very quickly, or (b) it had to talk to something else via the serial port without getting confused by the bootloader.

David Cuartielles

Well,

the way we wanted to do this is to use the existing RTS line in the serial port to force the reset. It is possible to do so ... it just requires a minimal change in the IDE, will allow to keep current functionality but reducing the bootloader's waiting time to be as short as 1 second!

/David

admin

#4
Dec 30, 2006, 12:31 pm Last Edit: Dec 30, 2006, 12:31 pm by admin Reason: 1
Hello


The current NG boards have been designed with this in mind... 2 of the relevand signals out of the serial port are going to the reset pin... i was testing this for a bit before releasing the board but there are some pieces of software that can't stop messing with DTR/CTS even when you tell them not to....

I decided not to have the resistors mounted because It would have generated too much support work in helping beginners to understand what was (not) wrong with their boards...

In a previous board I had designed the reset was automatic but certain pieces of software kept resetting it and I had to include a jumper to disable the automatic reset....



Massimo
we will include it in a future board/IDE once we have debugged it properly...



brainfart

Does that mean the current NG boards can be modified by soldering some pin headers/jumpers to the X3 area next to the USB port?

admin

no.... there are two missing resistors on the board... they connect DTR/CTS to Reset


massimo

Go Up