Just no time!

I hope to get to play with my arduino projects over the next week when I’m off for the holidays.

The first hardware version of Lizard Climate Control project is still faithfully running with no glitches. The only adjustments I ever make are to the RTC which can’t keep time to save its life.

The next LCC hardware version will include a more accurate, temperature compensated RTC so I shouldn’t have to mess with it. However when I last played with the code for it I ran out of RAM and program storage space on Arduino. Thus I will most likely be using an Arduino Mega for the next version.

Happy Holidays!

Decade Counter!

I wanted a way to have a “rotatable” counter to indicate that the LCC was still looping properly.  I finally found something! A decade counter (as noted in an earlier post)!

Now instead of pulsing one led I have a “spinner” type of effect. I don’t have to keep track of where the “count” is….I just pulse it. Coding this would have been a nightmare. Of course wiring 10 LEDs is a mess but it’s a cool one.

decade counter mess
decade counter mess

Code Updates

I haven’t worked on the Tri-Temp project in a while. I am going to go through and update the code a bit to lower the memory usage based on what I’ve learned for the LCC projects.

The original LCC code will have an update posted soon too. Mostly memory updates and a few control changes. I wasn’t sure if I wanted to bother but since the original LCC is still running my lizard’s climate I figured why not.

The Next Lizard Climate Control…

I’ve started on LCC 2nd Gen or LCC2 or LCC II. I don’t know what to call it. BUT I do know it’ll be killer.

This one is going to be everything LCC 1 was not.

So far I have:

  • Ethernet
  • 64 GPIOs
  • A better RTC
  • 2 OLED displays
  • The RTC can be updated via serial — no need to upload code to the Arduino, update the clock and then reupload the LCC code!
  • More cool factor….

So check this out- I2C rocks! The awesome Centipede Shield from macetech.com is HUGELY awesome. Via the I2C 2 wire interface you now have access to 64 Digital ports. In any combination of In or Out. This is the cornerstone of the new LCC hardware. Especially since the Ethernet takes a lot of digital ports. This thing is way cool. If you need more digital ports get one asap.

The OLED displays are really neat. I got 5 from a Kickstarter project and they’re now generally available from Sabernetics Tech. They’re tiny and bright! Since you now have 64 ports you can have as many of these displays as you want. Just put each on its own port to select which one to write to…If you don’t you’ll write to them all at once! Gotta love bus networks (I2C).

I hope to make the LCC’s ability to control lights and heat sources more generic. Since the IO is so plentiful I can make the code generic enough to handle fans, heat mats, uv lights etc in different combinations.

Keep checking the site as I post updates about this project!

LCC v5 is almost ready

Lots of code changes and some hardware. Here’s some of them:

  • Added ShiftBright RGB LED to pins D2, D12 and D13
  • Added code for ShiftBright
  • Updated DEBUG routines
  • Day overhead handling is updated to wait longer before turning off
  • Added yellow and red LED indications for day overhead conditions
  • Night cold conditions are mirrors of day as appropriate
  • Switch 1 is now only for UV lights
  • Switch 2 is only for heat- in my case the heat rock is on all the time and the heat lamp is switched
  • Cleaned some functions of unneeded statements

Version 5 should be released soon. It’s still not running live yet. If you want an advance copy let me know.

Using a Transistor to Control an LED or anything

For my LCC project I decided to use a 2N4401 NPN transistor to control status LEDs and AC Switches. I did this so that the power draw from the Arduino chip would be as low as possible.

Below is a diagram of how this works. I used a 2N4401 NPN transistor that “turns on” when the gate goes high or positive. This essentially allows it to switch the negative or ground leg of the circuit. I did this because the Arduino can’t turn a digital IO line to ground- just 0v or 5v. Continue reading “Using a Transistor to Control an LED or anything”