Go Down

Topic: Tiny Core 2 + ATtiny861 (Read 8683 times) previous topic - next topic

leo72

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)  ;)

Coding Badly

I like the flexibilty of a library.


I wonder if it can be both...

Coding Badly

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)  ;)


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

Coding Badly


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.

Erni

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.

Coding Badly

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.

leo72

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.

Docedison

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
--> 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

Coding Badly

#23
Jun 26, 2013, 09:10 am Last Edit: Jun 26, 2013, 09:13 am by Coding Badly Reason: 1
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?

Coding Badly

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.

Erni

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

leo72


sej7278

#27
Jun 26, 2013, 04:30 pm Last Edit: Jun 26, 2013, 05:25 pm by sej7278 Reason: 1
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: [Select]
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: [Select]
/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

Docedison

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
--> 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

hiduino


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.


Go Up