Skip to content

1.1.6 - Timer improvements, Logic library and more

Compare
Choose a tag to compare
@SpenceKonde SpenceKonde released this 18 Mar 14:36
96d525e

This change introduces some enhancements relating to things that use TCB0 or TCB1. Specifically, with the exception of Servo, everything included with the core that uses a type B timer does not depend on the TCA0 prescaler being set to any particular value, so you are free to use one of these for timekeeping and "take over" TCA0 and reconfigure it as you please. Note that many of the registers are set by the core initialization to set up PWM via analogWrite() - If you are going to reconfigure it, be sure to reset all of them to your desired settings - do not trust that they will be set to the default values from the datasheet.

When using Optiboot, you can choose to set the UPDI pin as an I/O pin - like setting it to act as reset, this prevents further UPDI programming, Since you cannot reset into the bootloader that way, the bootloader image used will run for 8 seconds after power is applied (and after a software reset), like when Optiboot is used with that pin set as UPDI.. Additionally, the long-broken Logic library, a wrapper around the CCL peripherals, is now properly supported. There are also some other lesser bug fixes: Serial will no longer output gibberish if data is sent just after Serial.begin(). The issues with disabling the DAC via the menu for 14-pin and 20-pin parts have been fixed. Oh, and pulseIn() now honors the timeout value when no pulse is detected (previously in all versions, including official AVR boards,, this expired in 11/16ths of the specified time, though pulse times were correct).

This is a big change - start playing with it, and let me know what I broke!

This is the version for board manager installation.