pub/USBaspLoader.git
11 years agoBUGfix: Abort timeout when bootLoaderConditionSimple()
Stephan Baerwolf [Thu, 12 Sep 2013 17:39:18 +0000 (19:39 +0200)]
BUGfix: Abort timeout when bootLoaderConditionSimple()

When CONFIG_HAVE__BOOTLOADER_ABORTTIMEOUTONACT is enabled, then
timeout must be aborted when entering the bootloader via
bootLoaderConditionSimple().

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agoBUGfix and cleanup Makefiles
Stephan Baerwolf [Thu, 12 Sep 2013 14:16:26 +0000 (16:16 +0200)]
BUGfix and cleanup Makefiles

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agoput some extra (pre-)configuration into Makefile.inc
Stephan Baerwolf [Thu, 12 Sep 2013 13:47:15 +0000 (15:47 +0200)]
put some extra (pre-)configuration into Makefile.inc

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agoBUGfix: enable "CONFIG_HAVE__BOOTLOADER_ALWAYSENTERPROGRAMMODE" not always
Stephan Baerwolf [Thu, 12 Sep 2013 13:37:45 +0000 (15:37 +0200)]
BUGfix: enable "CONFIG_HAVE__BOOTLOADER_ALWAYSENTERPROGRAMMODE" not always

The feature "CONFIG_HAVE__BOOTLOADER_ALWAYSENTERPROGRAMMODE" may be dangerous,
since bootloader may never exit ("CONFIG_NO__BOOTLOADER_CAN_EXIT").

So the feature only is enabled, if "CONFIG_NO__BOOTLOADER_CAN_EXIT" is disabled.

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agofix: rename BOOTLOADER_LOOPCYCLES_TIMEOUT
Stephan Baerwolf [Thu, 12 Sep 2013 13:31:10 +0000 (15:31 +0200)]
fix: rename BOOTLOADER_LOOPCYCLES_TIMEOUT

All config-options need to be calles "CONFIG_*"

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agointroduce new feature: BOOTLOADER_IGNOREPROGBUTTON
Stephan Baerwolf [Thu, 12 Sep 2013 13:24:18 +0000 (15:24 +0200)]
introduce new feature: BOOTLOADER_IGNOREPROGBUTTON

"CONFIG_HAVE__BOOTLOADER_IGNOREPROGBUTTON" generates an USBaspLoader
without using the PROGBUTTON.
It can be used to reduce the required PINcount for USBaspLoader on the MCU.

However this feature is very dangerous, so it becomes only enabled, if
"CONFIG_HAVE__BOOTLOADER_ALWAYSENTERPROGRAMMODE" is enabled and
"CONFIG_NO__BOOTLOADER_CAN_EXIT" is disabled, too.

Additionally "BOOTLOADER_LOOPCYCLES_TIMEOUT" must be greater or equal
than 8 (In order to give user enough time to program).

When active, "JUMPER_PORT" and "JUMPER_BIT" are ignored and can be soldered
otherwise.

Default if off. But the Option can be enabled by adding
"-DCONFIG_HAVE__BOOTLOADER_IGNOREPROGBUTTON" to the DEFINES variable of
Makefile.inc

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agointroduce new feature: BOOTLOADER_ABORTTIMEOUTONACT
Stephan Baerwolf [Wed, 11 Sep 2013 23:03:34 +0000 (01:03 +0200)]
introduce new feature: BOOTLOADER_ABORTTIMEOUTONACT

When defined, the bootloader will abort the timeout when
it sees some activity (bootLoaderConditionSimple() or programming).
After aborting timeout, the bootloader falls back to conventional
exitting.

By default this feature is deactivated.
Activate it via the "DEFINES" varibale within Makefile.inc.
There add: -DCONFIG_HAVE__BOOTLOADER_ABORTTIMEOUTONACT

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agoBUGfix: fix race condition between TIMEOUT and HIDDENEXIT
Stephan Baerwolf [Wed, 11 Sep 2013 21:34:33 +0000 (23:34 +0200)]
BUGfix: fix race condition between TIMEOUT and HIDDENEXIT

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agointroduce new feature: BOOTLOADER_ALWAYSENTERPROGRAMMODE
Stephan Baerwolf [Wed, 11 Sep 2013 20:21:37 +0000 (22:21 +0200)]
introduce new feature: BOOTLOADER_ALWAYSENTERPROGRAMMODE

Enabling "BOOTLOADER_ALWAYSENTERPROGRAMMODE" ignores bootLoaderCondition()
(BUT NOT bootLoaderConditionSimple()) and always enter the program-mode.

This is helpful to emulate behaviour of Arduino bootloaders

Use "-DCONFIG_HAVE__BOOTLOADER_ALWAYSENTERPROGRAMMODE" within
DEFINES variable of Makefile.inc to enable this feature.

Otherwise default is off.

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agointroduce new feature: BOOTLOADER_LOOPCYCLES_TIMEOUT
Stephan Baerwolf [Wed, 11 Sep 2013 19:07:20 +0000 (21:07 +0200)]
introduce new feature: BOOTLOADER_LOOPCYCLES_TIMEOUT

This feature must be explicitly defined (Makefile.inc)

When greater than "0", "BOOTLOADER_LOOPCYCLES_TIMEOUT" defines how
many 16bit loopcycles can be cycled, before bootloader times out
and starts user firmware. Of course "BOOTLOADER_CAN_EXIT" must be
enabled.

Even if this value is too small, bootloader  will not exit as
long as bootLoaderConditionSimple() stays true.

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agoBUGfix: "HAVE_BOOTLOADER_HIDDENEXITCOMMAND" depends on "BOOTLOADER_CAN_EXIT"
Stephan Baerwolf [Tue, 10 Sep 2013 20:44:26 +0000 (22:44 +0200)]
BUGfix: "HAVE_BOOTLOADER_HIDDENEXITCOMMAND" depends on "BOOTLOADER_CAN_EXIT"

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agofurther trick to optimize code size
Stephan Baerwolf [Tue, 10 Sep 2013 19:34:44 +0000 (21:34 +0200)]
further trick to optimize code size

This is a very dangerous path to go, but it is worth it.

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agointroduce new feature: BOOTLOADER_HIDDENEXITCOMMAND
Stephan Baerwolf [Tue, 10 Sep 2013 18:55:21 +0000 (20:55 +0200)]
introduce new feature: BOOTLOADER_HIDDENEXITCOMMAND

With this "BOOTLOADER_HIDDENEXITCOMMAND" feature, sending the RAW-ISP
command "11111111 xxxxxxxx xxxxxxxx xxxxxxxx" will cause the bootloader
to start the firmware as soon as the programming software disconnects.

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agoWORKfix: Change condition when to evaluate RAMEND
Stephan Baerwolf [Tue, 10 Sep 2013 16:03:34 +0000 (18:03 +0200)]
WORKfix: Change condition when to evaluate RAMEND

In cases users do not want to wait for a watchdog to time out,
they can ijmp to bootloaders reset-vector.
However they need to clear MCUCSR.

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agoBUGfix: Only clear MCUCSR register when bootLoaderCondition()
Stephan Baerwolf [Tue, 10 Sep 2013 13:49:29 +0000 (15:49 +0200)]
BUGfix: Only clear MCUCSR register when bootLoaderCondition()

If bootLoaderCondition() is false, the users firmware must
be started transparently - so leave the register for it to read!

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agointroduce new feature: BOOTLOADERENTRY_FROMSOFTWARE
Stephan Baerwolf [Tue, 10 Sep 2013 13:35:11 +0000 (15:35 +0200)]
introduce new feature: BOOTLOADERENTRY_FROMSOFTWARE

An USBaspLoader supporting this feature is able to be called
(and bootLoaderConditioned) from user firmware.
You can check MCUCSR watchdog-flag to check for success.
(If USBaspLoader starts up, all MCUCSR are removed...)

You can use something like this code to switch to the
bootloader:

  #define BOOTLOADER_WORDADDRESS (BOOTLOADER_ADDRESS>>1)
  wdt_enable(WDTO_15MS);
  asm volatile (
    "ldi r29 , %[ramendhi] \n\t"
    "ldi r28 , %[ramendlo] \n\t"
    "ldi r16 , %[boothi] \n\t"
    "st Y+ , r16 \n\t"
    "ldi r16 , %[bootme] \n\t"
    "st Y+ , r16 \n\t"
    "ldi r16 , %[bootlo] \n\t"
    "st Y+ , r16 \n\t"
    "resetloop%=: \n\t"
    "rjmp resetloop%= \n\t"
    :
    : [ramendhi] "M" (((RAMEND - 2) >> 8) & 0xff),
      [ramendlo] "M" (((RAMEND - 2) >> 0) & 0xff),
      [boothi] "M" (((BOOTLOADER_WORDADDRESS) >>16) & 0xff),
      [bootme] "M" (((BOOTLOADER_WORDADDRESS) >> 8) & 0xff),
      [bootlo] "M" (((BOOTLOADER_WORDADDRESS) >> 0) & 0xff)
  );

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agocleanup and extend Makefiles
Stephan Baerwolf [Mon, 26 Aug 2013 18:04:29 +0000 (20:04 +0200)]
cleanup and extend Makefiles

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agoupdater: fix flash addressing BUG possibly reading wring data
Stephan Baerwolf [Mon, 26 Aug 2013 17:46:16 +0000 (19:46 +0200)]
updater: fix flash addressing BUG possibly reading wring data

Fix Updater-bug, when linked to position in flash space
(FLASHADDRESS > 64K - SIZEOF_new_firmware - "a little more")

void* always is 16Bit - for real addresses take FLASADDRESS
into account in order to find upper address bit:
(http://www.mikrocontroller.net/topic/298174#3186932)

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agospminterface.h: cleanup some comments about the achievable size
Stephan Baerwolf [Mon, 26 Aug 2013 16:53:07 +0000 (18:53 +0200)]
spminterface.h: cleanup some comments about the achievable size

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agoRemove precompiled hexfiles - use demoboard for testing
Stephan Baerwolf [Mon, 26 Aug 2013 16:44:28 +0000 (18:44 +0200)]
Remove precompiled hexfiles - use demoboard for testing

Because users often are confused by the provide hexfiles and
the firmware from tinyUSBboard, remove the hexfile from further
repositories and therefore put a remark instead

If you want to try out USBaspLoader, use tinyUSBboard:

http://matrixstorm.com/avr/tinyusbboard/

However, for most recent version, you may need to compile your
own firmware.

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agoadd support for ATmega8535
Stephan Baerwolf [Mon, 10 Jun 2013 09:46:34 +0000 (11:46 +0200)]
add support for ATmega8535

Thanks to Jony Smith reporting this missing MCU.

Reported-by: Jony Smith <jony.nambela@gmail.com>
Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agoUSBaspLoader v0.96.4 special release v0.96.4
Stephan Baerwolf [Mon, 6 May 2013 10:33:22 +0000 (12:33 +0200)]
USBaspLoader v0.96.4 special release

  - fix an error-checking issue in spminterface.h

Precompiled bootloader v0.96.4 for atmega8 (Rev.3),
default (Rev.3) schematics clocked with 16 MHz
(not all AVRs are tested, yet! But please report!)

sha1sums are (no change since v0.96.1 for default settings):

d3fd9ccfaff95f5c0001bbb38139ee313341f041        "raw bytecode usbasp"
b09a10d91e46a80ed1052f24a78615780b51130c        "raw bytecode update"

c35e94466980d291e85c9be7156bde55e2594c6d        "elf firmware usbasp"
40a23c1869e2be3c64cdbbb02912eff837336416        "elf firmware update"

897d1086adc0f1dfd64525034104fc75d74dee68        firmware_usbasploader.hex
59ec7ab84431119d5ac3c137c71f6e52e34bcec8        update_usbasploader.hex

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agoUSBaspLoader v0.96.3 special release v0.96.3
Stephan Baerwolf [Mon, 6 May 2013 10:33:22 +0000 (12:33 +0200)]
USBaspLoader v0.96.3 special release

  - generalize MACROS in spminterface.h

Precompiled bootloader v0.96.3 for atmega8 (Rev.3),
default (Rev.3) schematics clocked with 16 MHz
(not all AVRs are tested, yet! But please report!)

sha1sums are (no change since v0.96.1 for default settings):

d3fd9ccfaff95f5c0001bbb38139ee313341f041        "raw bytecode usbasp"
b09a10d91e46a80ed1052f24a78615780b51130c        "raw bytecode update"

c35e94466980d291e85c9be7156bde55e2594c6d        "elf firmware usbasp"
40a23c1869e2be3c64cdbbb02912eff837336416        "elf firmware update"

897d1086adc0f1dfd64525034104fc75d74dee68        firmware_usbasploader.hex
59ec7ab84431119d5ac3c137c71f6e52e34bcec8        update_usbasploader.hex

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agoUSBaspLoader v0.96.2 special fixing release v0.96.2
Stephan Baerwolf [Mon, 6 May 2013 10:33:22 +0000 (12:33 +0200)]
USBaspLoader v0.96.2 special fixing release

  - fix Readme.txt (again!)
  - fix leaveBootloader()

Precompiled bootloader v0.96.2 for atmega8 (Rev.3),
default (Rev.3) schematics clocked with 16 MHz
(not all AVRs are tested, yet! But please report!)

sha1sums are (no change since v0.96.1 for default settings):

d3fd9ccfaff95f5c0001bbb38139ee313341f041        "raw bytecode usbasp"
b09a10d91e46a80ed1052f24a78615780b51130c        "raw bytecode update"

c35e94466980d291e85c9be7156bde55e2594c6d        "elf firmware usbasp"
40a23c1869e2be3c64cdbbb02912eff837336416        "elf firmware update"

897d1086adc0f1dfd64525034104fc75d74dee68        firmware_usbasploader.hex
59ec7ab84431119d5ac3c137c71f6e52e34bcec8        update_usbasploader.hex

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agofix: typos within Readme.txt - further extend the list of files
Stephan Baerwolf [Mon, 6 May 2013 10:21:45 +0000 (12:21 +0200)]
fix: typos within Readme.txt - further extend the list of files

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agofix: WARNING and probably dangerous naked function leaveBootloader()
Stephan Baerwolf [Mon, 6 May 2013 10:21:31 +0000 (12:21 +0200)]
fix: WARNING and probably dangerous naked function leaveBootloader()

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agoUSBaspLoader v0.96.1 special fixing release v0.96.1
Stephan Baerwolf [Sun, 5 May 2013 20:26:24 +0000 (22:26 +0200)]
USBaspLoader v0.96.1 special fixing release

  - fix _clearram build error
  - new usbdrv API
  - fix "bootloader__do_spm" error
  - remove Changelog.txt
  - fix Readme.txt
  - optimize codesize

Precompiled bootloader v0.96.1 for atmega8 (Rev.3),
default (Rev.3) schematics clocked with 16 MHz
(not all AVRs are tested, yet! But please report!)

sha1sums are:

d3fd9ccfaff95f5c0001bbb38139ee313341f041 "raw bytecode usbasp"
b09a10d91e46a80ed1052f24a78615780b51130c "raw bytecode update"

c35e94466980d291e85c9be7156bde55e2594c6d "elf firmware usbasp"
40a23c1869e2be3c64cdbbb02912eff837336416 "elf firmware update"

897d1086adc0f1dfd64525034104fc75d74dee68 firmware_usbasploader.hex
59ec7ab84431119d5ac3c137c71f6e52e34bcec8 update_usbasploader.hex

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agofurther optimize codesize
Stephan Baerwolf [Sun, 5 May 2013 20:05:22 +0000 (22:05 +0200)]
further optimize codesize

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agofix: complete "BUILDING AND INSTALLING" section of Readme.txt
Stephan Baerwolf [Sun, 5 May 2013 19:33:18 +0000 (21:33 +0200)]
fix: complete "BUILDING AND INSTALLING" section of Readme.txt

It was still the old description of the preSPM-days!!

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agoremove Changelog.txt, since it is git tracks changes now
Stephan Baerwolf [Sun, 5 May 2013 18:55:18 +0000 (20:55 +0200)]
remove Changelog.txt, since it is git tracks changes now

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agofix: "bootloader__do_spm is not located after interrupts" for ATmega2561 and ATmega1281
Stephan Baerwolf [Sun, 5 May 2013 18:47:19 +0000 (20:47 +0200)]
fix: "bootloader__do_spm is not located after interrupts" for ATmega2561 and ATmega1281

Since the datasheet is the same as for ATmega1284 and ATmega2560 the depicted
table of interrupt seems to be the same, too.
But on the second impression there are small "*" at some interrupts not
implemented in the affected devices.

So adapt the bootloader__do_spm addresses - thank you oh you dear fail safe.

Without following code added last time, I never would have found it before some
critical fail!

    #if defined(_VECTORS_SIZE)
      #if (funcaddr___bootloader__do_spm != (BOOTLOADER_ADDRESS+_VECTORS_SIZE))
#error "bootloader__do_spm is not located after interrupts - sth. is very wrong here!"
      #endif
    #endif

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agostep-by-step migrate to new usbdrv API (allow USB_CFG_LONG_TRANSFERS)
Stephan Baerwolf [Sun, 5 May 2013 18:35:45 +0000 (20:35 +0200)]
step-by-step migrate to new usbdrv API (allow USB_CFG_LONG_TRANSFERS)

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
11 years agofix: firmware/main.c using douplicated symbol "__clearram"
Stephan Baerwolf [Sun, 5 May 2013 18:23:27 +0000 (20:23 +0200)]
fix: firmware/main.c using douplicated symbol "__clearram"

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoUSBaspLoader v0.96 release v0.96
Stephan Baerwolf [Sun, 31 Mar 2013 22:33:55 +0000 (00:33 +0200)]
USBaspLoader v0.96 release

 - full tested support of ATmega2560
 - improved layout for testboard (Rev.3)

 - improved build process
 - fixed issue 6 to really disable watchdog timer
 - additional support for ATmega640, ATmega1280, ATmega1281, ATmega2560 and ATmega2561
 - additional support for ATmega16
 - additional safety checkings
 - new feature: "BOOTUP_CLEARRAM"
 - new usbdrv recent release 20121206

Precompiled bootloader v0.96 for atmega8 (Rev.3),
default (Rev.3) schematics clocked with 16 MHz
(not all AVRs are tested, yet! But please report!)

sha1sums are:

bd3dd35e8ca43eae88e7e73d4e846fed62c5b5c1        "raw bytecode usbasp"
4f236bf72f6e9ce5737c2b16c0eb7169234c6b20        "raw bytecode update"

cd0184257ffd0d8be400fdeafe398ee1e4290304        "elf firmware usbasp"
c72d1742f1ec785c6265cc8da9bc86538e224c7a        "elf firmware update"

4ee602ad24f467a531142e4a23b2b7c12b4c291d        firmware_usbasploader.hex
cfcbd7ab283768d21c097ac0755dc437022f487b        update_usbasploader.hex

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoATmega2560 passed extensive testing (20MHz)
Stephan Baerwolf [Sun, 31 Mar 2013 22:35:24 +0000 (00:35 +0200)]
ATmega2560 passed extensive testing (20MHz)

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agofinal preparations for upcoming version 0.96
Stephan Baerwolf [Sun, 31 Mar 2013 22:18:00 +0000 (00:18 +0200)]
final preparations for upcoming version 0.96

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoBUGFIX: spminterface: use eicall to call "___bootloader__do_spm__ptr" if flash>128kib
Stephan Baerwolf [Sun, 31 Mar 2013 22:17:32 +0000 (00:17 +0200)]
BUGFIX: spminterface: use eicall to call "___bootloader__do_spm__ptr" if flash>128kib

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoWorkaround "eicall" compiler bug
Stephan Baerwolf [Sun, 31 Mar 2013 20:54:02 +0000 (22:54 +0200)]
Workaround "eicall" compiler bug

There seems to be another funny compiler Bug.
When gcc is using "eicall" opcode it forgets to modify EIND.
On devices with large flash memory there are some target address bits
missing.

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoimprove build process by adding new features to Makefiles
Stephan Baerwolf [Sun, 31 Mar 2013 19:40:08 +0000 (21:40 +0200)]
improve build process by adding new features to Makefiles

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agofix minor compiler warning issue
Stephan Baerwolf [Sun, 31 Mar 2013 17:44:02 +0000 (19:44 +0200)]
fix minor compiler warning issue

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoBUGFIX: fix issue 6 to really disable watchdog timer
Stephan Baerwolf [Sun, 31 Mar 2013 17:31:23 +0000 (19:31 +0200)]
BUGFIX: fix issue 6 to really disable watchdog timer

On "https://github.com/baerwolf/USBaspLoader/issues/6" coldtobi
reported an issue of disabling the watchdog timer in a wrong way.
(At least on some newer devices.)
This can lead to unexpected reboots within bootloader mode,
and result in data losses / broken firmwares.

The original report:
====================

At least on the ATMega644, the MCUSR bit WDRF in the MCUSR needs to be cleared first, otherwise it is not possible to disable the watchdog. (See http://www.atmel.com/Images/doc2593.pdf, p.53)

    ? Bit 3 - WDE: Watchdog System Reset Enable
    WDE is overridden by WDRF in MCUSR. This means that WDE is always set when
    WDRF is set. To clear WDE, WDRF must be cleared first. This feature ensures
    multiple resets during conditions causing failure, and a safe start-up after the failure.

    Otherwise the software cannot disable the wdt.

This line just before wdt_disable will fix this

MCUCSR = ~(1<<WDRF);
wdt_disable(); /* main app may have enabled watchdog */

Reported-by: coldtobi <https://github.com/coldtobi>
Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoadd support for ATmega640, ATmega1280, ATmega1281, ATmega2560 and ATmega2561
Stephan Baerwolf [Sun, 31 Mar 2013 17:11:12 +0000 (19:11 +0200)]
add support for ATmega640, ATmega1280, ATmega1281, ATmega2560 and ATmega2561

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoadd support for ATmega16
Stephan Baerwolf [Sun, 31 Mar 2013 15:18:53 +0000 (17:18 +0200)]
add support for ATmega16

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoupdate list of tested devices
Stephan Baerwolf [Sun, 31 Mar 2013 14:54:50 +0000 (16:54 +0200)]
update list of tested devices

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoadd additional "funcaddr___bootloader__do_spm"-checking into spminterface
Stephan Baerwolf [Sun, 31 Mar 2013 14:26:21 +0000 (16:26 +0200)]
add additional "funcaddr___bootloader__do_spm"-checking into spminterface

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoadd new feature: "BOOTUP_CLEARRAM"
Stephan Baerwolf [Sun, 31 Mar 2013 14:11:35 +0000 (16:11 +0200)]
add new feature: "BOOTUP_CLEARRAM"

Under normal circumstances, RESET will not clear contents of RAM.
As always, if you want it done - do it yourself...

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoupdate usbdrv to recent release 20121206
Stephan Baerwolf [Sun, 31 Mar 2013 13:44:47 +0000 (15:44 +0200)]
update usbdrv to recent release 20121206

taken from repository: https://github.com/obdev/v-usb.git
HEAD: f1311e1cd5a841906fb9f26a49e49d97efe21b51

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoUSBaspLoader ninth and a half stable release v0.95 v0.95
Stephan Baerwolf [Mon, 19 Nov 2012 15:13:46 +0000 (16:13 +0100)]
USBaspLoader ninth and a half stable release v0.95

-full tested support of ATmega1284p
-assembler optimized version

Precompiled bootloader v0.95 for atmega8,
default schematics clocked with 16 MHz
(other AVRs are not tested, yet! But please report!)

sha1sums are:

f8879f9c19207582d6a2a769f5040366e8d19094 "raw bytecode usbasp"
b13b642c715e99d88e5291aba946bbfbbd342bf9 "raw bytecode update"

886e2066df89a199ebae3e68e0427f9fcbc47088 "elf firmware usbasp"
195e568cb1059be3f5e7069bd26ccaa1a0399a76 "elf firmware update"

ee0409d1e26a4e3185c48a993dc31a5076031588 firmware_usbasploader.hex
7accf4f3c2cd37ec78a6aba93e7df0b51768fcea update_usbasploader.hex

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoadapt feature autotselect to new features - mark atmega1284p as tested
Stephan Baerwolf [Mon, 19 Nov 2012 14:58:46 +0000 (15:58 +0100)]
adapt feature autotselect to new features - mark atmega1284p as tested

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoadd missing selection macro of ATmega164PA signature
Stephan Baerwolf [Mon, 19 Nov 2012 14:50:00 +0000 (15:50 +0100)]
add missing selection macro of ATmega164PA signature

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoBUG: fix: limit some excessive assembler to spezific devices only
Stephan Baerwolf [Mon, 19 Nov 2012 14:29:41 +0000 (15:29 +0100)]
BUG: fix: limit some excessive assembler to spezific devices only

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoBUG: fix updater.c to cope with more than 64k flash memory
Stephan Baerwolf [Mon, 19 Nov 2012 13:33:58 +0000 (14:33 +0100)]
BUG: fix updater.c to cope with more than 64k flash memory

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agomake the updater firmware more dynamic for different devices
Stephan Baerwolf [Mon, 19 Nov 2012 11:21:16 +0000 (12:21 +0100)]
make the updater firmware more dynamic for different devices

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoMANIAC: optimize whole code via new feature "USE_EXCESSIVE_ASSEMBLER"
Stephan Baerwolf [Mon, 19 Nov 2012 11:14:02 +0000 (12:14 +0100)]
MANIAC: optimize whole code via new feature "USE_EXCESSIVE_ASSEMBLER"

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoprepare further optimization via introduction of "usbFunctionSetup_USBASP_FUNC_TRANSMIT"
Stephan Baerwolf [Sun, 18 Nov 2012 13:06:37 +0000 (14:06 +0100)]
prepare further optimization via introduction of "usbFunctionSetup_USBASP_FUNC_TRANSMIT"

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agooptimize code to save some bytes
Stephan Baerwolf [Sun, 18 Nov 2012 12:11:39 +0000 (13:11 +0100)]
optimize code to save some bytes

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoimprove feature autoselection and make it more granular
Stephan Baerwolf [Sun, 18 Nov 2012 11:10:40 +0000 (12:10 +0100)]
improve feature autoselection and make it more granular

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agonew feature "HAVE_FLASH_BYTE_READACCESS" to fix read bug in avrdude terminal
Stephan Baerwolf [Sat, 17 Nov 2012 23:29:26 +0000 (00:29 +0100)]
new feature "HAVE_FLASH_BYTE_READACCESS" to fix read bug in avrdude terminal

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoBUG: fix way accessing flash-memory, esp. on devices >64k
Stephan Baerwolf [Sat, 17 Nov 2012 19:44:54 +0000 (20:44 +0100)]
BUG: fix way accessing flash-memory, esp. on devices >64k

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoBUG: fix bogous "HAVE_EEPROM_BYTE_ACCESS" feature which may corrupt bootloader
Stephan Baerwolf [Sat, 17 Nov 2012 18:39:59 +0000 (19:39 +0100)]
BUG: fix bogous "HAVE_EEPROM_BYTE_ACCESS" feature which may corrupt bootloader

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoBUG: fix flash read error on atmegas with more than 64k memory
Stephan Baerwolf [Fri, 16 Nov 2012 20:13:54 +0000 (21:13 +0100)]
BUG: fix flash read error on atmegas with more than 64k memory

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoRevert "save some more memory in case "BOOTLOADER_CAN_EXIT" is deactivated" v0.9.1
Stephan Baerwolf [Wed, 14 Nov 2012 23:21:05 +0000 (23:21 +0000)]
Revert "save some more memory in case "BOOTLOADER_CAN_EXIT" is deactivated"

This patch make the bootloader unable to execute any user-flashed firmware.
Because "BOOTLOADER_CAN_EXIT" is an essential feature for smaller MCUs,
this patch will be reverted instantly.

New version is v0.9.1 - checksums of precompiles stay the same

Sorry for the inconvenience,

Stephan Baerwolf (stephan.baerwolf@tu-ilmenau.de)

This reverts commit 2ca9a19cd19c152ec45d920994a4c64c94d4b3f5.

12 years agoUSBaspLoader ninth stable release v0.9 v0.9
Stephan Baerwolf [Wed, 14 Nov 2012 20:49:06 +0000 (21:49 +0100)]
USBaspLoader ninth stable release v0.9

Precompiled bootloader v0.9 for atmega8,
default schematics clocked with 16 MHz
(other AVRs are not tested, yet! But please report!)

sha1sums are:

8ef75381260d96e293459928672ae7c91d72e4d8 "raw bytecode usbasp"
bc474208902fa2e7990ac3caeb63c8a110af9908 "raw bytecode update"

4551457aca286497570a3f4e4834cb066331106c "elf firmware usbasp"
932654a06a6365c5e70c0c8e13acf0fb02a7bfee "elf firmware update"

621512d5de6cc958f0e2ca14a5718cbcb184ea34 firmware_usbasploader.hex
5a4f75bb7859e6e1e023d6409b9e4117f93d8973 update_usbasploader.hex

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agonew feature: HAVE_SPMINTEREFACE_NORETMAGIC
Stephan Baerwolf [Wed, 14 Nov 2012 20:40:25 +0000 (21:40 +0100)]
new feature: HAVE_SPMINTEREFACE_NORETMAGIC

If sth. went wrong within "bootloader__do_spm" and this macro is ACTIVATED,
then "bootloader__do_spm" will not return the call and loop infinity instead.

This feature prevents old updaters to do sth. undefined on wrong magic.

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoadd and extend fuse-bit settings
Stephan Baerwolf [Wed, 14 Nov 2012 20:00:16 +0000 (21:00 +0100)]
add and extend fuse-bit settings

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agomodify main.c for adding "atmega324pa" support
Stephan Baerwolf [Wed, 14 Nov 2012 17:54:59 +0000 (18:54 +0100)]
modify main.c for adding "atmega324pa" support

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agointroduce new feature "HAVE_SPMINTEREFACE_MAGICVALUE" - adapt all asm-funcs
Stephan Baerwolf [Wed, 14 Nov 2012 14:56:44 +0000 (15:56 +0100)]
introduce new feature "HAVE_SPMINTEREFACE_MAGICVALUE" - adapt all asm-funcs

If this feature is enabled (value != 0), the configured 32bit value is
used as a magic value within spminterface. "bootloader__do_spm" will check
additional four (4) registers for this value and only proceed, if they contain
the right value. With this feature you can identify your board and avoid
updating the wrong bootloader to the wrong board!

Not all values are possible - "SPMINTEREFACE_MAGICVALUE" must be very sparse!
To avoid collisions, magic-values will be organized centrally by Stephan
Following values are definitly blocked or reserved and must not be used:
0x00000000, 0x12345678,
0x00a500a5, 0x00a5a500, 0xa50000a5, 0xa500a500,
0x005a005a, 0x005a5a00, 0x5a00005a, 0x5a005a00,
0x5aa55aa5, 0x5aa5a55a, 0xa55a5aa5, 0xa55aa55a,
0x5a5a5a5a, 0xa5a5a5a5,
0xffa5ffa5, 0xffa5a5ff, 0xa5ffffa5, 0xa5ffa5ff,
0xff5aff5a, 0xff5a5aff, 0x5affff5a, 0x5aff5aff,
0x00ff00ff, 0x00ffff00, 0xff0000ff, 0xff00ff00,
0xffffffff

To request your own magic, please send at least following information
about yourself and your board together within an informal request to:
stephan@matrixstorm.com / matrixstorm@gmx.de / stephan.baerwolf@tu-ilmenau.de
  - your name
  - your e-mail
  - your project (maybe an url?)
  - your type of MCU used
--> your used "BOOTLOADER_ADDRESS" (since same magics can be reused for different "BOOTLOADER_ADDRESS")

There may be no garanty for it, but Stephan will then send you an
response with a "SPMINTEREFACE_MAGICVALUE" just for your board/project...
WITH REQUESTING A MAGIC YOU AGREE TO PUBLISHED YOUR DATA SEND WITHIN THE REQUEST

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agooptimize and extend updater.c
Stephan Baerwolf [Wed, 14 Nov 2012 00:04:02 +0000 (01:04 +0100)]
optimize and extend updater.c

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agonew feature "HAVE_UNPRECISEWAIT" for save some flash
Stephan Baerwolf [Tue, 13 Nov 2012 17:25:48 +0000 (18:25 +0100)]
new feature "HAVE_UNPRECISEWAIT" for save some flash

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agooptimize initForUsbConnectivity
Stephan Baerwolf [Tue, 13 Nov 2012 17:10:10 +0000 (18:10 +0100)]
optimize initForUsbConnectivity

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agosave some more memory in case "BOOTLOADER_CAN_EXIT" is deactivated
Stephan Baerwolf [Tue, 13 Nov 2012 17:07:03 +0000 (18:07 +0100)]
save some more memory in case "BOOTLOADER_CAN_EXIT" is deactivated

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoBUG: fix updater Makefile (rulde "usbasploader.raw:")
Stephan Baerwolf [Tue, 13 Nov 2012 17:00:24 +0000 (18:00 +0100)]
BUG: fix updater Makefile (rulde "usbasploader.raw:")

objectcopy (OBC) from raw to object needs command line parameter "-B <avr-architecture>"
In case of atmega1284p this arch is avr51 and not avr4X so it will crash in version v0.85.

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoBUG: fix __do_spm_Ex (spminterface.h) on architecture avr51 (atmega1284p)
Stephan Baerwolf [Tue, 13 Nov 2012 16:58:25 +0000 (17:58 +0100)]
BUG: fix __do_spm_Ex (spminterface.h) on architecture avr51 (atmega1284p)

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoUSBaspLoader eigth and a half stable release v0.85 v0.85
Stephan Baerwolf [Sat, 10 Nov 2012 11:17:08 +0000 (12:17 +0100)]
USBaspLoader eigth and a half stable release v0.85

Precompiled bootloader v0.85 for atmega8
(tinyUSBboard - http://matrixstorm.com/avr/tinyusbboard/),
default schematics clocked with 16 MHz
(other AVRs are not tested, yet! But please report!)

sha1sums are:

ad3cb7c0a594d31e4abe5d812f86b23ad7880ff4 "raw bytecode usbasp"
043ac00cb3d46879b8155638b1e8413e65628d7c "raw bytecode update"

b54c99379b0fc7296664025926ed021e856c5216 "elf firmware usbasp"
483a69e4797ea8f1eb7f7b1d8cefabbe020e137c "elf firmware update"

51f5dd636f5f39b59aa6f2b23ef43eb8b2bbc3ff firmware_usbasploader.hex
d1e224b0b766ee22c92871f813f2bcd2fc5dfa97 update_usbasploader.hex

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agominimize code and improve autoselection
Stephan Baerwolf [Sat, 10 Nov 2012 10:55:06 +0000 (11:55 +0100)]
minimize code and improve autoselection

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agohave updater check HAVE_SPMINTEREFACE and raise error if not supported
Stephan Baerwolf [Sat, 10 Nov 2012 10:15:21 +0000 (11:15 +0100)]
have updater check HAVE_SPMINTEREFACE and raise error if not supported

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoClean up and add new features
Stephan Baerwolf [Sat, 10 Nov 2012 09:59:11 +0000 (10:59 +0100)]
Clean up and add new features

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agofix some reported issues by improving Makefile
Stephan Baerwolf [Sat, 10 Nov 2012 09:08:16 +0000 (10:08 +0100)]
fix some reported issues by improving Makefile

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoremove "hexfiles"-residuals in firmware/Makefile
Stephan Baerwolf [Sat, 10 Nov 2012 08:26:31 +0000 (09:26 +0100)]
remove "hexfiles"-residuals in firmware/Makefile

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoFix typo and add tinyUSBboard webpage to Readme
Stephan Baerwolf [Sat, 10 Nov 2012 08:23:13 +0000 (09:23 +0100)]
Fix typo and add tinyUSBboard webpage to Readme

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoUSBaspLoader eigth stable release v0.8 v0.8
Stephan Baerwolf [Tue, 2 Oct 2012 21:49:21 +0000 (23:49 +0200)]
USBaspLoader eigth stable release v0.8

    Precompiled bootloader v0.8 for atmega8 (tinyUSBboard),
    default schematics clocked with 16 MHz
    (other AVRs are not tested, yet! But please report!)

    sha1sums are:

f13ec61258c3a11d7e8a129875dbe3f48546579a        "raw bytecode usbasp"
f7a2524e959d606bffb3e1de73e4b099dfe04f79        "raw bytecode update"

4df83112116c07001573449cb608ca0b1c0ea30e        "elf firmware usbasp"
0dea0844baf020e8fb731bfdcb50e1a52d480e3b        "elf firmware update"

87746dc787761b5b904490229ef9a6b406c303cb        firmware_usbasploader.hex
8fa38659559525fc171c147808404a5d8d3afb03        update_usbasploader.hex

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoIt is high time to do some changes to the "Readme.txt"-file
Stephan Baerwolf [Tue, 2 Oct 2012 21:37:00 +0000 (23:37 +0200)]
It is high time to do some changes to the "Readme.txt"-file

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoadd automatic "BOOTLOADER_ADDRESS" selection to Makefile.inc
Stephan Baerwolf [Tue, 2 Oct 2012 21:22:54 +0000 (23:22 +0200)]
add automatic "BOOTLOADER_ADDRESS" selection to Makefile.inc

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agocleanup and beautify Makefile.inc plus additional fusebit-selection-automatic
Stephan Baerwolf [Tue, 2 Oct 2012 21:06:51 +0000 (23:06 +0200)]
cleanup and beautify Makefile.inc plus additional fusebit-selection-automatic

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoextend "spminterface.h" for support of ATmega128
Stephan Baerwolf [Tue, 2 Oct 2012 20:33:34 +0000 (22:33 +0200)]
extend "spminterface.h" for support of ATmega128

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoextend "spminterface.h" for support of ATmega328 and ATmega328p
Stephan Baerwolf [Tue, 2 Oct 2012 19:20:36 +0000 (21:20 +0200)]
extend "spminterface.h" for support of ATmega328 and ATmega328p

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agomark ATmega48 as unsupported
Stephan Baerwolf [Tue, 2 Oct 2012 19:07:34 +0000 (21:07 +0200)]
mark ATmega48 as unsupported

Since ATmega48 (as also ATmega48A, ATmega48P and ATmega48PA) only has
4kb of FLASH and does not support bootloader by hardware, it is
improper for USBaspLoader and marked as unsopported.
While the sourcecode remains with parts for ATmega48 (in case there are
some know hacks to make it work), main.c will raise compiler-error in
case of usage.

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoextend "spminterface.h" for support of multiple ATmegas
Stephan Baerwolf [Tue, 2 Oct 2012 19:03:46 +0000 (21:03 +0200)]
extend "spminterface.h" for support of multiple ATmegas

devices are:
ATmega164A, ATmega164P, ATmega164PA,
ATmega324A, ATmega324P, ATmega324PA,
ATmega644,  ATmega644A, ATmega644P, ATmega644PA,
ATmega1284, ATmega1284P

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoextend "spminterface.h" for support of atmega88 and atmega168
Stephan Baerwolf [Tue, 2 Oct 2012 17:18:49 +0000 (19:18 +0200)]
extend "spminterface.h" for support of atmega88 and atmega168

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoextend "spminterface.h" for support of atmega32
Stephan Baerwolf [Tue, 2 Oct 2012 16:11:29 +0000 (18:11 +0200)]
extend "spminterface.h" for support of atmega32

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoextend "spminterface.h" to additional checks on "BOOTLOADER_ADDRESS" (atmega8)
Stephan Baerwolf [Tue, 2 Oct 2012 15:51:13 +0000 (17:51 +0200)]
extend "spminterface.h" to additional checks on "BOOTLOADER_ADDRESS" (atmega8)

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoextend support of "HAVE_READ_LOCK_FUSE" to more devices
Stephan Baerwolf [Tue, 2 Oct 2012 15:39:09 +0000 (17:39 +0200)]
extend support of "HAVE_READ_LOCK_FUSE" to more devices

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoadd new device-signatures to main.c
Stephan Baerwolf [Tue, 2 Oct 2012 15:05:46 +0000 (17:05 +0200)]
add new device-signatures to main.c

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agofix incorrect definition within header-file
Stephan Baerwolf [Tue, 2 Oct 2012 14:00:57 +0000 (16:00 +0200)]
fix incorrect definition within header-file

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agodeactivate include of <avr/cpufunc.h> for toolchain compatibility
Stephan Baerwolf [Sun, 30 Sep 2012 10:15:45 +0000 (12:15 +0200)]
deactivate include of <avr/cpufunc.h> for toolchain compatibility

Since cpufunc.h is not needed in the context of primary firmware
and since it is not available in all toolchains, the include
of <avr/cpufunc.h> becomes deactivated by github issue-report.
(In case of trouble it remains in sourcecode for reactivation.)

The autor would like to thank Lena-M for reporting this
issue (https://github.com/baerwolf/USBaspLoader/issues/1).

Reported-by: Lena-M
Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoUSBaspLoader seventh stable release v0.7 v0.7
Stephan Baerwolf [Mon, 17 Sep 2012 23:28:16 +0000 (01:28 +0200)]
USBaspLoader seventh stable release v0.7

Precompiled bootloader v0.7 for atmega8,
default schematics clocked with 16 MHz
(other AVRs are not tested, yet!)

sha1sums are:

0dfaf6ce84b8b5689f82fcb2e80e454242b3c31a        "raw bytecode usbasp"
c4628ccdc95915a9086ac582dfe359e38e94edc8        "raw bytecode update"

6f23f7d22729c52bd98ca7536bcec573cbb3ea96        "elf firmware usbasp"
847ff96ddfab1d03e400c021fe7bbaf995052eee        "elf firmware update"

b2c619f607e442599d2980c0a81c88c1165a48a2 firmware_usbasploader.hex
e063c01ca98677d39a64130e9ab1fc19c43a5b77 update_usbasploader.hex

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoSince build process has changed, there is no need for firmware_gen anymore
Stephan Baerwolf [Mon, 17 Sep 2012 21:47:38 +0000 (23:47 +0200)]
Since build process has changed, there is no need for firmware_gen anymore

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agochange the build-process of the updater (do some linker magic)
Stephan Baerwolf [Mon, 17 Sep 2012 21:44:37 +0000 (23:44 +0200)]
change the build-process of the updater (do some linker magic)

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoChange the activity of different code-snipeds and macros
Stephan Baerwolf [Mon, 17 Sep 2012 21:39:28 +0000 (23:39 +0200)]
Change the activity of different code-snipeds and macros

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>
12 years agoFinally a correct and translated schematics recommendation
Stephan Baerwolf [Mon, 17 Sep 2012 17:53:22 +0000 (17:53 +0000)]
Finally a correct and translated schematics recommendation

Signed-off-by: Stephan Baerwolf <stephan.baerwolf@tu-ilmenau.de>