Pages: 1 [2] 3 4   Go Down
Author Topic: Tiny Core 2 + ATtiny861  (Read 7316 times)
0 Members and 1 Guest are viewing this topic.
Global Moderator
Italy
Online Online
Brattain Member
*****
Karma: 335
Posts: 23123
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Ok. I remembered myself to look at this thread too late... sorry  smiley-sweat

Just a couple of questions:
1) the Tiny 2 core is, at this stage, a complete replacement of the original Tiny core or not?
2) at this stage, is the Tiny 2 core supporting almost the most important features of the AttinyX61 family (I mean digital read/write, analog read, timers, interrupts)?

I'll try to add the support for the AttinyX61 MCUs in my libraries (swRTC, leOS/leOS2, looper and analogComp)  smiley-wink
Logged


Global Moderator
Dallas
Online Online
Shannon Member
*****
Karma: 212
Posts: 13078
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

I like the flexibilty of a library.

I wonder if it can be both...
Logged

Global Moderator
Dallas
Online Online
Shannon Member
*****
Karma: 212
Posts: 13078
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

1) the Tiny 2 core is, at this stage, a complete replacement of the original Tiny core or not?

No.

I'm working on a Google Spreadsheet that summarizes the status.

Quote
2) at this stage, is the Tiny 2 core supporting almost the most important features of the AttinyX61 family (I mean digital read/write, analog read, timers, interrupts)?

These should be working...
millis
digitalRead( constant )
digitalWrite( constant )
analogRead( constant )

Quote
I'll try to add the support for the AttinyX61 MCUs in my libraries (swRTC, leOS/leOS2, looper and analogComp)  smiley-wink

Excellent.  If you run into anything missing or anything you believe would be better placed in the core just let me know.
Logged

Global Moderator
Dallas
Online Online
Shannon Member
*****
Karma: 212
Posts: 13078
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

I like the flexibilty of a library.
I wonder if it can be both...

While it does work it creates a situation that has the potential to be a support nightmare.  So, TinyDebugKnockBang remains a library.
Logged

Denmark
Offline Offline
Edison Member
*
Karma: 37
Posts: 1096
Happy Hobbyist
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
So, TinyDebugKnockBang remains a library.

That's good news, thankyou.

I did an experiment with a Attin85 @ 8MHz and TinyTuner2

First I tuned it with the "old" TinyTuner, and then with TinyTuner2

Both gave the same OSCALL values, and the tuned frequence was approx. 8,02 MHz

Next I will try Attiny13, it is a tight fit, but deleting some of the debug text should do it.
Logged

Global Moderator
Dallas
Online Online
Shannon Member
*****
Karma: 212
Posts: 13078
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Both gave the same OSCALL values, and the tuned frequence was approx. 8,02 MHz

0,25%.  Excellent.

Differences between the two...

v1...

• Has a minor bug.  In rare circumstances it selects a value one-off.  The difference in calibration will be very small (typically less than 0.1%).

• Most processors have a split range: 0 through 127 is one range; 128 through 255 is the other.  The ranges overlap.  Calibration is only performed in the range of the factory OSCCAL value. 

• Because it requires sending 'x' characters by hand it can be tedious to tune a processor.

v2...

• Eliminates the bug; it should be a very tiny bit more accurate.

• Calibration is performed on both ranges.

• Is fully automatic.

Quote
Next I will try Attiny13, it is a tight fit, but deleting some of the debug text should do it.

Ultimately, it makes sense to store the calibration in EEPROM (which makes Tiny Tuner significantly smaller).  Eventually, Tiny Core 2 will (optionally) automatically load and use an OSCCAL value.  I even have an EEPROM address range in mind for configuration data.  If you're interested just let me know.
Logged

Global Moderator
Italy
Online Online
Brattain Member
*****
Karma: 335
Posts: 23123
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

My leOS2 works like a sharm, but I didn't have any doubt as it uses the watchdog as a timer.
BWT leOS1 doesn't. I'm finding some problems trying to do working my library with the new chip Attiny861 because my lib should use timer 0 but it is already used by Tiny 2 core.

Is there an option to move millis to timer 1, like on the actual Tiny core?
I only found an option to use WDT instead of timer 0.
Logged


Anaheim CA.
Offline Offline
Faraday Member
**
Karma: 48
Posts: 2935
...
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I think I missed something... what happens to the -015 tiny library. I really enjoy working with the tiny cores...  A 328, 644, 1284 or 2560 isn't a challenge to get something running.
And are there instructions for installation?

Doc
Logged

--> WA7EMS <--
“The solution of every problem is another problem.” -Johann Wolfgang von Goethe
I do answer technical questions PM'd to me with whatever is in my clipboard

Global Moderator
Dallas
Online Online
Shannon Member
*****
Karma: 212
Posts: 13078
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

I think I missed something... what happens to the -015 tiny library.

-0015 is still there.  You have to Search All Downloads for a blank.  (Nearly all the old versions are there.  The Google Code folks discourage removing downloads.)

However, version 1 has had two minor upgrades.  The download now has -0017 on the end.  The most recent version 1 is available from the Project Home tab... http://code.google.com/p/arduino-tiny/ ...click Download the latest version for Arduino 1.0 in the middle-top section.  The latest version(s) will always be available there.

This thread is about version 2; a work-in-progress.  If you decide to play with version 2 be prepared to run into trouble.  It is far from complete.

Going forward, the vast majority of my time will be on version 2 (but version 1 will always be available at Google Code).

Quote
I really enjoy working with the tiny cores...

Excellent!

Quote
And are there instructions for installation?

I try to keep the README file up-to-date with installation instructions... http://code.google.com/p/arduino-tiny/source/browse/README  The README file should also be available in the download.

Edit: I probably misunderstood the last question.  Are you asking if there are instructions for installing version 2?
« Last Edit: June 26, 2013, 02:13:08 am by Coding Badly » Logged

Global Moderator
Dallas
Online Online
Shannon Member
*****
Karma: 212
Posts: 13078
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

My leOS2 works like a sharm, but I didn't have any doubt as it uses the watchdog as a timer.

Excellent.

Quote
Is there an option to move millis to timer 1, like on the actual Tiny core?

There is an option but it will not work.  I have not coded the veneer for timer 1.  That's the first and only request so it's top priority.  I will let you know when the update is ready.
Logged

Denmark
Offline Offline
Edison Member
*
Karma: 37
Posts: 1096
Happy Hobbyist
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Using Tiny Tuner v2 on a ATTiny13 @1.2MHz

I deleted most of the debugging text which gives a sketch size: 986 bytes
The tuned frequence was 1.194 MHz !

Quote
I even have an EEPROM address range in mind for configuration data.  If you're interested just let me know.
I am interested

Besides the other improvements of TinyTuner you mention, I think the biggest advantage is that it can be used with TinyDebugKnockBang.
No more fidling with Serial/USB converter and wiring.

Once again Thankyou for maintaining and improving the Tiny core
Logged

Global Moderator
Italy
Online Online
Brattain Member
*****
Karma: 335
Posts: 23123
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

I will let you know when the update is ready.

Thanks  smiley-wink
Logged


Offline Offline
Jr. Member
**
Karma: 0
Posts: 52
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

i've installed the core into the hardware directory, made a boards.txt using the attiny85at8 option, and ran my previous-working sketch through the IDE and it came back with this lot:

Code:
tiny_rgb_fade.ino: In function ‘void doFade(int, int&, int&)’:
tiny_rgb_fade.ino:20:37: error: ‘analogWrite’ was not declared in this scope
tiny_rgb_fade.ino:21:17: error: ‘delay’ was not declared in this scope
tiny_rgb_fade.ino:26:37: error: ‘analogWrite’ was not declared in this scope
tiny_rgb_fade.ino:27:17: error: ‘delay’ was not declared in this scope
tiny_rgb_fade.ino:31:37: error: ‘analogWrite’ was not declared in this scope
tiny_rgb_fade.ino: In function ‘void setup()’:
tiny_rgb_fade.ino:39:29: error: ‘randomSeed’ was not declared in this scope

is the '85 support not ready or do i have to do something with one of the buildoptions header files?

P.S. will this core allow the third PWM pin like 0017 does? bloody marvellous feature that is BTW  smiley-mr-green

ah your sketch doesn't work for me either, perhaps its not been tested on linux with a recent gcc-avr that's the usual issue when its moans about consts/scope etc?

Code:
/home/simon/programming/c++/arduino/hardware/tiny-core2/cores/tiny/Print.h:12:2: warning: #warning BIN previously defined; probably in a processor specific header. [-Wcpp]
In file included from tiny2_test.ino:2:0:
/home/simon/programming/c++/arduino/libraries/tinytuner2/TinyTuner2.h:34:2: error: #error TC_XTAL2 must be defined for the selected processor. The definition goes in the processor specific header file. See tc_hardware_mapping_t861.h for an example.
In file included from tiny2_test.ino:2:0:
/home/simon/programming/c++/arduino/libraries/tinytuner2/TinyTuner2.h:254:53: error: macro "TC_PIN_Z" requires 4 arguments, but only 1 given
/home/simon/programming/c++/arduino/libraries/tinytuner2/TinyTuner2.h:255:24: error: macro "TC_DIO_BIT_Z" requires 4 arguments, but only 1 given
In file included from /home/simon/programming/c++/arduino/libraries/knockbang/TinyDebugKnockBang.h:28:0,
                 from tiny2_test.ino:1:
/home/simon/programming/c++/arduino/hardware/tiny-core2/cores/tiny/Arduino.h: In static member function ‘static uint16_t TinyTuner2Class::TimeOnePulse()’:
/home/simon/programming/c++/arduino/hardware/tiny-core2/cores/tiny/Arduino.h:485:22: error: ‘TC_PIN_Z’ was not declared in this scope
In file included from tiny2_test.ino:2:0:
/home/simon/programming/c++/arduino/libraries/tinytuner2/TinyTuner2.h:255:24: error: ‘TC_DIO_BIT_Z’ was not declared in this scope
« Last Edit: June 26, 2013, 10:25:01 am by sej7278 » Logged

Anaheim CA.
Offline Offline
Faraday Member
**
Karma: 48
Posts: 2935
...
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

No. I have ver .015 installed, I am unsure about how to proceed... I HATE to ask for hand holding type guidance but I LOVE the tiny cores and yours is the greatest... It's not only well supported but I learn something every time I use them...
Waaah.. I want to upgrade and I'm somewhat confused about the disposition of the 015 cores/ I really appreciate all that's been done and contributed to the use of the cores.

Doc
Logged

--> WA7EMS <--
“The solution of every problem is another problem.” -Johann Wolfgang von Goethe
I do answer technical questions PM'd to me with whatever is in my clipboard

Wahiawa, Hawaii
Online Online
God Member
*****
Karma: 34
Posts: 667
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

No. I have ver .015 installed, I am unsure about how to proceed... I HATE to ask for hand holding type guidance but I LOVE the tiny cores and yours is the greatest... It's not only well supported but I learn something every time I use them...
Waaah.. I want to upgrade and I'm somewhat confused about the disposition of the 015 cores/ I really appreciate all that's been done and contributed to the use of the cores.

Doc

The Tiny Core 2 is still under development so you should continue to use 015 unless you want to get involved with the development.

Logged

Pages: 1 [2] 3 4   Go Up
Jump to: