[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]

Re: CM11A hangup: Any better products?



In article <a6nPe.8855$A%1.2920@xxxxxxxxxxxxxxxxxxxxxxxxxx>, notthisjoergsch@xxxxxxxxxxxxxxxxxxxxx (Joerg) writes:
| Hello Dan,
|
| > The CM11a does employ a resonator for the PIC's clock, but it uses a
| > separate free-running LC oscillator to generate the 120kHz carrier. ...
|
| Interesting. I wonder why they did that.

My theory is that the implementors of the CM11a were familiar with the
free-running oscillator design used in the TW523 and decided to adapt
it.  It was a proven circuit used in other X10 products as well.

| They could have saved the cost
| for the extra LC if they used a timer on the PIC to generate the 120kHz.

Does the 16C58 have the capability to route a timer to an output pin?  When
I wrote the enhanced version of my replacement firmware for the RR501 I used
a timer, but I had to swap some pins around to I could send it out via the
PWM block of the 16F628 (not doing actual PWM, of course).

| Unless they ran out of timers but then there is still the chance to use
| a SW timer.

I used a software loop for my basic version of the replacement RR501 firmware
and it requires a pretty short loop.  (I assume the real RR501 & TM751 code
works the same way.)  I don't think you have a lot of flexibility for the CPU
clock rate if you use this approach (or even if you use a timer).  The RR501
(and, I assume, the TM751) uses a ~3.84MHz clock to make the carrier come out
right.  The CM11a uses a 4MHz clock.  Perhaps there was a conflict between the
clock needed to make the bit-banging serial easy and the clock needed to make
the carrier generation come out right.  Or maybe they didn't want to tie up the
CPU during burst generation.  But I still like my convenience-of-familiarity
theory best...

				Dan Lanciani
				ddl@danlan.*com


comp.home.automation Main Index | comp.home.automation Thread Index | comp.home.automation Home | Archives Home