ATTINY45 light display

I am building a low cost Arduino project that my students can take home for free. I have come up with a little 4LED display based on the ATTINY45. I have bread boarded this and it is working well, but i have never worked with the ATTINY before so if i could get some pointers on my schematic that would be great.

Google Doc
https://docs.google.com/open?id=0B4G1hbUR7lo-M2UxNzZhYmEtNWE1Yi00MDExLTg1MjQtMmE1YjU2NWEzMTJm

Thank you.

While it may not be necessary, you really should have a pull-up resistor from RESET to VCC. 10K ohm is a good choice.

Which ATtiny45 model are you using? The minimum voltage for the non-V model (0 – 10 MHz @ 2.7 - 5.5V, 0 - 20 MHz @ 4.5 - 5.5V) may give a short battery life / cause problems when running from a 3 volt battery.

I am using the non-v ATTINY. I think switching to a 3AA 4.5 Volt supply would help then. Would there be any benefit to using a mcp1702 voltage regulator and a 9 volt battery

nobikes:
I am using the non-v ATTINY. I think switching to a 3AA 4.5 Volt supply would help then.

For the alkaline batteries I use...

  3 * 1.65 = 4.95
  3 * 0.80 = 2.40

Almost perfect for the 0 – 10 MHz range.

For the application you're building, I would disable the BOD.

Would there be any benefit to using a mcp1702 voltage regulator and a 9 volt battery

None that come to my mind.

perfect.

I am a little confused about the BOD(Brown out detection). I read through the data sheet for the ATTINY45 and could find lots of info on how to enable the BOD, but nothing on how to disable it. How would i go about doing that?

Three fuse bits define the level. The "Brown-out detection disabled; [BODLEVEL=111]" value disables it.

Handy for determining fuses...
http://www.engbedded.com/fusecalc/

Which core are you using?

I am not sure exsaclly how tell what core it is. the chip is the ATTINY45-20PU-ND from Digi-key. Would the BODLEVEL=111 go in the scope of the Arduino sketch?

nobikes:
I am not sure exsaclly how tell what core it is

Where did you get the core?

Would the BODLEVEL=111 go in the scope of the Arduino sketch?

No. Changing the fuses is similar to uploading. If you are using the Tiny Core you can use "Burn Bootloader" to change the fuses. If not, you can use AVRDUDE from the command-line to change the fuses.

I am using the High-Low Tech (MIT) directions to program the ATTINY with an Arduino Duemilanove. So i am not sure how to burn the boot-loader, I am still very new to using the ATTINY.

Is the core is the software used to upload?

programming tutorial --> http://hlt.media.mit.edu/?p=1229

nobikes:
I am using the High-Low Tech (MIT) directions to program the ATTINY with an Arduino Duemilanove. So i am not sure how to burn the boot-loader,

You don't. With that core you will have to change the fuses using AVRDUDE (a command-line program) or a similar program.

Is the core is the software used to upload?

No. AVRDUDE is used to upload.

A "core" is essentially a C++ library the implements the Arduino API. A "core" can include amenities that make life easier for the user (you) like bootloaders, libraries, and examples. The Tiny Core includes an amenity not available in the MIT Core that simplifies changing the fuses.

Okay, I see. I found a Ladyada about it so i am going to spend some time and figure it out. AVR Tutorial - AVRDUDE

Thank you,