Go Down

Topic: Support for lots of Atmega chips including 2560 (Read 2925 times) previous topic - next topic

Mark S

I have been working on modifiing the v0019 core to include LOTS of Atmega variations. 49 different boards and 32 unique Atmega cpus all with one set of core files.

Check out http://www.arduino-avr.com/

Mark

Jeff K

Thanks for all the hard work!  Love the new URL!
Jeff K - JKDevices.com - home of the MegaMini

FrankRadio

Opsss.. i migrated too my 0019 version to a Mega 32.

I didn't test the bootloader file but for now the HEX file looks great and it's compiled so... :o

I'm using virtualwite at it, so i think that is no erros it may be work great!



Best Regards
Frank

pharaohamps

On the "Alternate CORE files for Arduino" page, I read that the HardwareSerial library is disabled for ATTiny's and other MCU's that don't have an USART.  Is NewSoftSerial supported on these MCU's?  I can think of some uses for ATTiny's that would involve limited serial communication (sending only...)


Mark S

pharaohamps

NewSoftSerial should work, it is a library and not part of the core so it has not been in any of my testing.  There is no reason why it should not work.

You do make a good suggestion though, incorporate a version of newsoftserial that "replaces" Hardware serial if the uarts do not exist


Eventually I want to write some code to support the usi ports utilizing the Atmel ap notes but this is low on my priority list.

Mark

Coding Badly

@Mark S:

In analogWrite (wiring_analog.c) I suggest clamping val to zero and 255...

Code: [Select]
 if (val [glow]<[/glow]= 0)
 {
   digitalWrite(pin, LOW);
 }
 else if (val [glow]>[/glow]= 255)
 {
   digitalWrite(pin, HIGH);
 }
 else
 {


This deviates from the original core but it makes digitalWrite a bit "friendlier" at no cost.

Chicco Gold

@Mark S:

Thank you very, very much for this kind support - that´s exacltly what I´ve been searching for such a long time!

Most people use a buyable ARDUINO - board and have their fun by writing their own software for it...
... but what´s thrilling me, is to modify the basic hardware concept, to design new PCBs for special purposes (e. g. a DALI bus and a DMX interface with X-Bee formfactor or maybe take a look at my small ARDUINO DMN with built in ETHERNET @ meduino.net)

So your work will really increase my possibillities - now I can choose the MC that fitts best.  :)

Maybe two things that I´m still missing:
- A sort of cross - reference table showing the restrictions to the standard ARDUINO language (guess a ATtiny23 will not provide e.g. millis()) for each MC
-  :'( The implementation of ATMEGA48... I´m so much looking foreward to use this MC  :-?

Mark S

Chicco

I have added the atmega48 to my testing and it compiles fine. I currently do not have one but I will get one and test it.

It compiles just fine and should work.  I have updated the corefiles to include the boards.txt that includes the atmega48

The cross reference table is a good idea. I will see what I can do.

Mark

Jeff K

Quote
The cross reference table is a good idea. I will see what I can do.


I'd be happy to build something out in PHP/MySQL that would make this very simple.

I've actually been thinking about making a shared database system that would supply a lot of info for Arduino users.  There are so many threads or wiki posts out there that should be in a database form and easily available to all.  I guess long term idea would be to create a database that has widgets available for anyone to add access to this information to their website.
Jeff K - JKDevices.com - home of the MegaMini

Mark S

Jeff

That would work well but what I am doing is generated from my test scripts. This way I can document the actual testing and what is working and what is not. I am working with some others to develop some official testing procedures. Its a big task but we have a defined direction.

Mark

Chicco Gold

@ Mark S

Wow - that was fast!

Two things I´m not sure about:
- A.f.a.I.k. the Atmega48 does not have a dedicated bootloader area, so maybe we need a line like this in "boards.txt":
atmega48.upload.using=usbtinyisp
- Some of my specially designed PCBs do not work with X-Tals but with ceramic resonators and with "strange" clock - frequencies like 12MHz (thus this is the maximum speed of an e.g. ATMega328 @ 3.3V). Is it sufficent to change the atmega48.build.f_cpu=16000000L entry and the according fuse bits for the different oscillator mode in the "boards.txt" or do I also have to make changes in other files?

THX again for your help.

Mark S

Chicco

You are correct, the 48 does not support a bootloader so the changes to boards.txt that you mention need to be done. At present I dont have a 48 to test but I know where I can get one and I will plug it into my stk500 and get it working. Probably wont happen until next week.

Mark

Chicco Gold

@ Mark S

Sounds good... looking foreward to next week.

But how about my second Question (modify "boards.txt" only)?

Regards,
     Chicco

Mark S

Quote
But how about my second Question (modify "boards.txt" only)?



What board do you have the atmega48 in? If it not in an Arduino board, then I have pins_arduino.c to automatically pick a default configuration which may or may not be right for your board.

Provided that the pin configuration I chose is correct, then yes, it will just work.


Mark

Sebastian Pelan

#14
Sep 23, 2010, 06:03 pm Last Edit: Sep 23, 2010, 06:04 pm by sebpelan Reason: 1
Quick question - what would it take (besides designing the PCB, soldering it, etc...) to get a 128 working with the Arduino IDE? Would it be possible to burn the bootloader on the chip without expensive programmers (say, using that very simple parallel port programmer)? Basically, that would make it a Wiring board, right?

I love Arduino, I love the language, but I'd really like to take the "next step". I have a few final products in my mind, so sticking a complete Arduino board inside doesn't look to "professional". I'd really like to learn more about the process of using the Arduino IDE and language outside the regular boards. And yes, I love the 128 :D

Cheers,

Seb

Go Up