Announcement

Collapse
No announcement yet.

Transmission theory questions + uk power Q's?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Transmission theory questions + uk power Q's?

    As some of you may be aware I am studying the smart home as part of university dissertaion, search my other posts for more background, Anyway I have been doing research into the transmisiion theory behinf the X10 protocol. As I understand the x10 CM12U sends an 11 digit binary code around the power circuit,


    picture from http://www.x10.com/technology1.htm

    see here for full X10 transmission theory!
    http://www.x10pro.com/pro/ppt/x10works.pps

    anway, the way it looks to me and the way that it expalins it is that it either sends a number code (being the device number of the reciever module) OR a function code (on/off) surely it needs to send bothe of these values firstly the number so it knows which device its sending it too and then the function code so it knows which action to take, I looked over the transmission theory the whole of yesterday and could not figure it out. I am also a little confused about the power situation. I pressume this is all american as in UK I thought we used 240v power sockets!

    any help appriciated!

    Stu

    #2
    The protocol is explained in a lot of places, but sometimes not very well. So I'll attempt the Readers' Digest version:


    The x10 message has 9 bits, 4 bits for housecode/unitcode, 4 bits for the command code/number code, and a final bit which is set to indicate this 'frame' is a command.


    Simple. But wait, there's more! The 'frame' is sent in Manchester encoding, where each data bit is sent as 2 bits on the powerline. A '1' is sent as '10' and a zero is sent as '01'.

    Now your frame takes up 18 bits on the power line.

    Each frame has a start token (binary '1110', not Manchester encoded), so the message now takes 22 bits.

    Now, each 22 bit start token+frame is transmitted twice, with no gap in between. (Call it the 'uberframe') This is for reliability and to allow repeaters to work. (The repeater listens to the first of the two frames, then outputs it again right over top of the second instance). Thus, a weak signal can be improved. However, it means that an X10 receiver can't compare the two frames as an error check, since it may have only received one of them.)

    Now you have presumably sent an X10 Address (like 'A1'). The command is next, in the same format as above. There must be an intervening gap of at least six bits between the 44-bit 'uberframes'. So if you now send 'AOn', you've turned light A1 On.

    That's it in a nutshell, at least as I understand it.

    An additional wrinkle is that a module, once addressed, remembers that it is selected. So, you can send A1, AOn, AOff, AOn ... and the light will cycle on and off. The module forgets that it's addressed when it receives an address following a command, or 'All units off'. This allows you to send A1, A2, A3, AOn to turn on three lights. You can then send 'dim' and they will all dim one notch. If you now send A4 AOn, only A4 will respond.

    The protocol is the same worldwide. The bits are stuffed onto the powerline shortly after the voltage crosses zero. The sender syncs to the line, so it doesn't matter about the frequency (50 Hz vs 60 Hz)

    Voltage is not relavent to the protocol, though of course any X10 devices must match the voltage of your country.
    Last edited by firtha; February 25, 2005, 12:36 PM.

    Comment


      #3
      That was a great explanation, Firtha.

      About as clear and concise an explanation as I've ever read in 25 years of X10ing. To reiterate a few points:

      The address message and command message are separate to allow the flexibility of operating multiple devices with one command (all on the same housecode).

      Both address messages and command messages contain a housecode to prevent your system from affecting your neighbor. This came about from two assumptions: 16 devices were enough, and everyone was going to use X10.

      PS: I never heard the term "uberframe" before. I like it so much I'm going to name the combination of address uberframe, the six-bit gap and the command uberframe the "super-uberframe".

      Comment


        #4
        Thanks rocco. That's high praise. I'm sure a great many people can do as well or better. I've memorized things after working on my own modules for a while.

        Bet you've got some Radio Shack or Heathkit or Sears brown modules around! Wonder if they're collector's items yet?

        Comment


          #5
          http://www.mbx-usa.com/noise.htm

          Comment


            #6
            [QUOTE=Microchip]everything should originate from the mains incoming distribution board. This is where the X10 transmitter should be located./QUOTE]


            Interesting

            Would I get better signal distribution if I did this?

            Comment


              #7
              Exxelent, I wil have a look over all this info and work things out, Ive looked for the dave houston site and i found one but unfortunatley i get permission denied message
              http://www.laser.com/dhouston/

              Cheers again

              Stu

              Comment


                #8
                The Dave Houston site is http://www.mbx-usa.com/That other link appears to be dead. It just locks up my browser. Annoying

                Comment

                Working...
                X