OK, I'm not trying to throw stones here.
This has been a lot of fun to build and develop. It gets really frustrating when there's a problem with no seeming solution.
der_wille_zur_macht Here is the part of the code for the Typhon that I think has the date setup.
// Sets date and time, starts the clock
void setDate(byte second, // 0-59
byte minute, // 0-59
byte hour, // 1-23
byte dayOfWeek, // 1-7
byte dayOfMonth, // 1-31
byte month, // 1-12
byte year) // 0-99
{
Wire.beginTransmission(DS1307_I2C_ADDRESS);
Wire.send(0);
Wire.send(decToBcd(second));
Wire.send(decToBcd(minute));
Wire.send(decToBcd(hour));
Wire.send(decToBcd(dayOfWeek));
Wire.send(decToBcd(dayOfMonth));
Wire.send(decToBcd(month));
Wire.send(decToBcd(year));
Wire.endTransmission();
}
// Gets the date and time
void getDate(byte *second,
byte *minute,
byte *hour,
byte *dayOfWeek,
byte *dayOfMonth,
byte *month,
byte *year)
{
I don't have the knowledge to know if it does this or not. I'm guessing.
The Typhon doesn't seem to know what day, month, or year it is.
If the date function worked then variables could be introduced into the program allowing the light simulation to change from day to day.
XSiVE
Random clouds in the Arduino Sketches forum, post #388 kind of kicks it off.
One other problem I have is that I bought REC-24-1.00/W/X3 drivers. They are buck/boost drivers so my PWM outputs from +5v-0v instead of 0v-+5v
So I have to tell the lights to go off instead of come on to make them work.
I have tried to change the sequence and can make the lights right if I turn all the channels on at once but if I try to control them individually they do not work.
Here is the part of the code I've changed.
analogWrite(ledPin, map(val, 0, 100, 0, 255));
changed this to
analogWrite(ledPin, map(val, 0, 100, 255, 0));
and
analogWrite(channel[0].Led, map(pct,0,100,255,0));
analogWrite(channel[1].Led, map(pct,0,100,255,0));
analogWrite(channel[2].Led, map(pct,0,100,255,0));
analogWrite(channel[3].Led, map(pct,0,100,255,0));
changed this to.
analogWrite(channel[0].Led, map(pct,0,100,0,255));
analogWrite(channel[1].Led, map(pct,0,100,0,255));
analogWrite(channel[2].Led, map(pct,0,100,0,255));
analogWrite(channel[3].Led, map(pct,0,100,0,255));
I should have bought or built different drivers so this wouldn't be a problem. I like the drivers and thought I could fix this with little effort.
This is a good project for the application. I do value the hardware and software. I'm aware of the time and effort that the community puts into these builds.
Again, thanks for letting me be a part of this. The DIY projects are always great.