MultiChron for MonoChron!

For RTC breakouts, etc., use the Other Products from Adafruit forum

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
User avatar
dataman
 
Posts: 98
Joined: Wed May 20, 2009 7:03 pm

MultiChron for MonoChron!

Post by dataman »

Ok, I did it!
I slogged through code last night,
And I made progress on MultiChron.
2 out of 4 branches merged.
2 down 2 to go!
Late Night Merging Code
Late Night Merging Code
MultiChron.jpg (68.35 KiB) Viewed 5536 times
This is a work in progress, and this is experimental code.
I'm doing this locally right now, will post to git hub when I'm done later this weekend.

This is a preliminary hex.
Just flash directly to your monochon using the ISP cable
Attachments
MultiChron-Beta-0-1.zip
(19.91 KiB) Downloaded 207 times

adafruit
 
Posts: 12151
Joined: Thu Apr 06, 2006 4:21 pm

Re: MultiChron for MonoChron!

Post by adafruit »

ooooh neat. yes please fork on github we will blog it when you feel comfortable :)

User avatar
dataman
 
Posts: 98
Joined: Wed May 20, 2009 7:03 pm

Re: MultiChron for MonoChron!

Post by dataman »

Ah, we're not talking a fork anymore...
We're talking a complete take over and merge of the master branch and 3 sub-branches!
Wohoo!!!!

User avatar
dataman
 
Posts: 98
Joined: Wed May 20, 2009 7:03 pm

Re: MultiChron for MonoChron!

Post by dataman »

Whew.
All 4 code branches merged.
But it's going to take some more work.
RATT + Seven + Intruders is coming in just at 30k.
Dali adds 2k.

Current stats are 906bytes data.
34510 code.
Not sure if anyone know what the upper limit on the 328,
But I think that means I'm about 1800 bytes heavy.

Luckily there are a few portions of the code that could be highly optimized.
I think that config.c might be work a k on its own.
But its going to be some hard work.
Still, its nice to flip between Intruders, Seven, and Ratt.
A little buggy, but workable.

Feedback please?
What do you think?

Instructions:
Hook up your your usbtiny to your monochron by placing 2x3 pinheaders in the 2x3 jack.
Plug this into the back of your monochron so it turns on just from the usbtiny (no wall power).
Execute: avrdude -c usbtiny -p m328p -B 1 -u flash:w:MultiChron-Beta-0-2.hex
Attachments
MultiChron-Beta-0-2.zip
Another late night jamming code!
(28.81 KiB) Downloaded 198 times

User avatar
neutron spin
 
Posts: 163
Joined: Sat Apr 03, 2010 6:11 pm

Re: MultiChron for MonoChron!

Post by neutron spin »

just downloaded the hex...will try later and see what happens!.... :D

User avatar
dataman
 
Posts: 98
Joined: Wed May 20, 2009 7:03 pm

Re: MultiChron for MonoChron!

Post by dataman »

Its got a couple screen artifacts mostly in RATT, But fixable. Pairing down code now on xdali and RATT.

User avatar
caitsith2
 
Posts: 217
Joined: Thu Jan 18, 2007 11:21 pm

Re: MultiChron for MonoChron!

Post by caitsith2 »

Okay, time to report some bugs / requests, I found in Beta 2.

1. If you click Set on Mode, click it again, like you are done setting the mode, you are then no longer able to change the mode again, for the remainder of your time in the config menu.

2. It would be nice if by pushing the Set/+ buttons in IntruderChron, you show the Year on one of the scores, like you show alarm time on the scores.

3. Scores don't change to date/year and alarm time like they should, in RATTChron, with them reverting to current time. They only change to what they should be displaying next, after an actual score change event, if you are pushing the buttons that close to the score change event. Original RATTChron did not behave that way.

And complements

1. Awesome that you caught most of my latest changes in SevenChron, like the AM/PM indicator. A few days ago, there was a bug in SevenChron where it was displaying 24 hour time, even if a 12 hour mode was set, which I fixed.

User avatar
dataman
 
Posts: 98
Joined: Wed May 20, 2009 7:03 pm

Re: MultiChron for MonoChron!

Post by dataman »

Great, I'll look into those.
Thank you.

I would rather have done this more C++ like,
But I just uniquely renamed functions and created a dispatcher.
I'll fork and post to github later tonight.

Happy to work with you and give write access if you like.
I really think this is the way to go, simplfy and combine sources.
I really wanted to ask you about some of the design choices in RATT.
Could you post me a private message here and let's start an email collaboration?

I'm working on combining and migraiting routines like DTOW into util.c
And optimizing config.c
Current priority is to get it all to fit in 32k
Then work out the bugs.

User avatar
dataman
 
Posts: 98
Joined: Wed May 20, 2009 7:03 pm

Re: MultiChron for MonoChron!

Post by dataman »

I managed to optimize the code by over 880 bytes tonight,
But that's still a bit short of the what's needed for all 4 branches.
My initial guess of 2.5k wasn't that far off.

1882 bytes more to go.
It's there, I can feel it.
Just need to optimize this code down more.

Just working optimizations,
So won't be posting a new hex for a while.
Will be a few days.

User avatar
dataman
 
Posts: 98
Joined: Wed May 20, 2009 7:03 pm

Re: MultiChron for MonoChron!

Post by dataman »

Ok, here I am feeling like a BANNED Master for combining the branches,
And remember, I'm over budget by about 1,880 bytes...

I ask BANNED for help,
And he blasts the entire thing into JUST JUST 32768 bytes.
Whoa!!!! In just a matter of an hour or two!
All 4 Chrons are now fitting in 32k!

They're not running quite yet, it's just not enough room yet.
Still more work to do.
But damn, it's close!!!
And I'm feeling like a padawan!

User avatar
dataman
 
Posts: 98
Joined: Wed May 20, 2009 7:03 pm

Closer than I thought...

Post by dataman »

On further inspection,
BANNED and I are using different compilers.
What was slightly over budget to me at 32888 bytes,
What just under budget to him at 32792 bytes.
I think I'm the second person to see a working MultiChron!
Great job BANNED!

I'm going to jump the gun a bit and push this as beta 3 hex code.
Please take a look at this and give feed.

You need a USBTiny to load this to your clock.
avrdude -c usbtiny -pm328p -U flash:w:MultiChron-Beta-0-3.hex

Known bugs:
Ratt: Ball barely visible,
Set/+ Not displaying Clock
Attachments
MultiChron-Beta-0-3.zip
Beta 3 - A Working Version of ALL 4 Chrons!
(31.61 KiB) Downloaded 210 times

User avatar
dataman
 
Posts: 98
Joined: Wed May 20, 2009 7:03 pm

Re: MultiChron for MonoChron!

Post by dataman »

BANNED is a frakn code machine.
I thought I was an ObiWan, but this guy is a Master Yoda.
He came up with an idea for moving data to EEProm,
I formulated the plan, the tables,
And he very quickly executed it!
And here's beta 4.

We're trying to trim off another k of code,
To get the code down far enough to FTDI loader range.

But seems that is a function complete Beta 4.
I'm really psyched that we could get all 4 MonoChron branches onto 1 core.
Hopefully Ada will let us promote this as the main branch.
And you'll never have to chose which firmware to load on your clock again!

The git project is at:
http://wiki.github.com/BANNED/monochron/

To load this code, you need a usb tiny.
Because we are loading eeprom, the command changes slightly:
avrdude -p atmega328p -c usbtiny -B 1 -U flash:w:MultiChron.hex -U eeprom:w:MultiChron.eep
Attachments
MultiChron-Beta-0-4.zip
Wohoo! Function Complete!
(31.26 KiB) Downloaded 180 times

User avatar
dataman
 
Posts: 98
Joined: Wed May 20, 2009 7:03 pm

Bug Fix

Post by dataman »

Grins.
Small bug fix.
Alarm wasn't working.
BANNED Strikes again!
Good fix!

To upload: UsbTiny required:
avrdude -p atmega328p -c usbtiny -B 1 -U flash:w:MultiChron.hex -U eeprom:w:MultiChron.eep
Attachments
MultiChron-Beta-0-5.zip
Bug fix for alarm.
(31.3 KiB) Downloaded 200 times

User avatar
caitsith2
 
Posts: 217
Joined: Thu Jan 18, 2007 11:21 pm

Re: MultiChron for MonoChron!

Post by caitsith2 »

Dataman fixed a few alarm related bugs, and other minor things. I trimmed the code down, (code that should have been #ifdef'd, but was not.), and added in a couple of easter eggs.

To upload: UsbTiny
avrdude -p atmega328p -c usbtiny -B 1 -U flash:w:MultiChron.hex -U eeprom:w:MultiChron.eep

To upload: FTDI cable / adapter
avrdude -p atmega328p -c arduino -P [Your FTDI cable com port] -b 57600 -U flash:w:MultiChron.hex -U eeprom:w:MultiChron.eep
Attachments
MultiChron-Beta-0-6.zip
easter eggs, bug fixes, now bootloadable.
(30.49 KiB) Downloaded 208 times

USBitsa
 
Posts: 2
Joined: Thu Mar 04, 2010 1:25 am

Re: MultiChron for MonoChron!

Post by USBitsa »

Hey Guys !

This is great ! Just what I wanted !

I just downloaded and tried out the MultiChron Beta-0-6

However, the RATTchron seems to be a bit messed up ? The Time digits are kinda spread apart, across the screen.

It doesn't quite look like a Pong clock with the digits that far apart, you know ?

Can you fix it ?

Ian

:-)

Locked
Please be positive and constructive with your questions and comments.

Return to “Clock Kits (discontinued)”