Absolute C-Bus newbie looking for info

Discussion in 'C-Bus Toolkit and C-Gate Software' started by nzmike, Oct 30, 2010.

  1. nzmike

    nzmike

    Joined:
    Oct 29, 2010
    Messages:
    3
    Likes Received:
    0
    Location:
    Sydney
    Hi all,

    As stated in the title I am completely new to C-Bus but am a .Net developer and want to program against the C-Bus network in the new place I am moving to (in January 2011) in order to create an application or website to allow a touchscreen computer to (hopefully) control all the main functions (though perhaps just lighting, air-con & heating first) for my wife who is partially disabled.

    Basically, she will have trouble with tapping the smallish keys on the Clipsal units and remotes so my idea is to have an app or website with nice large buttons and sliders running on a touchscreen PC to allow her to control everything when everyone else is at work or out etc. I can place this very centrally (and also have it on her touchscreen laptop) and also replicate it to other PC's in our new home so she can have access in more than place.

    I can take care of the programming and so far I've downloaded the C-Bus toolkit and looked at the VB.Net sample project which makes sense. I've also downloaded the C-Bus toolkit and this looks like a very powerful way to work out the topology of the network (I'm assuming there will only be one network in our new house) so I can work out how to control each unit.

    I'm also working my way through the Toolkit help file as I'm aware I need to know a lot more but I just have some really basic questions first:

    1. What controller do I need to attach at least one "master" (i.e: server) PC to the C-Bus network? I can see there is a 5500CN and a 550PCU but I'm not really sure which one I'd need and why. (I'll be using Windows 7 64 bit most likely if it helps).

    2. Once I have the correct controller, do I attach it via unshieled cat5 to any of the ethernet ports in the house or does it have to be plugged into the main control panel?

    3. Is the best way to get the topology to use the Toolkit or should the previous owners give us documentation etc about the C-Bus installation when we move in? They say they have no idea (they just use it) but I want to make sure I have all the info I need before I start experimenting.

    4. If I do write this app/website and attach it to our C-Bus network will it void any C-Bus warranty? Should I also need to let our insurance company know I'm doing this? (Just not sure how easy or hard it is to do any damage - don't want to burn the house down trying to do this!!)

    5. Would I have to get this app or website certified or checked by a registered C-Bus consultant or electrician (or whatever)? We're in Sydney, Australia so not sure what the requirements are.

    Sorry if some of these are dumb questions - am trying to learn as much as possible before we move in (in January) but being able to do something like this will make my wife's life a lot easier so it's something I am very keen on doing.

    TIA for any help/advice,

    Mike
     
    nzmike, Oct 30, 2010
    #1
  2. nzmike

    tobex

    Joined:
    Nov 3, 2006
    Messages:
    728
    Likes Received:
    0
    Location:
    Sydney, Australia
    For further reading investigate;

    a) PAC module (Pascal driven logic controller)

    b) Homegate - c-bus PC-based server environment.

    c) Various poke tools aimed at allowing a person to address C-Bus in its native data structure.

    d) C-Bus protocol non-disclosure agreement.

    The toolkit software should in theory be able to give you the topology of the network. The only thing you can really add is either logic units by clipsal or logic units by software.

    There is no actual limit however, as you may extend one proprietary service which controls other types of equipment back to C-Bus. This includes alarms or other services.
     
    tobex, Oct 30, 2010
    #2
  3. nzmike

    nzmike

    Joined:
    Oct 29, 2010
    Messages:
    3
    Likes Received:
    0
    Location:
    Sydney
    Thanks for that tobex - I looked into Homegate but it is quite expensive and I really want to have the ability to drive the design based on my wife's input as this is for her. (I also love programming challenges and this should be a very interesting one.)

    Not sure the PACA would be what I'd want as that obviously only uses Pascal and I really want to do this using .Net (i.e: using the Vb.Net or C# programming languages) so I was looking more at connecting through a 5500CN or PCU and sending commands via the C-Bus driver... is there any reason I couldn't do it this way?

    With c), what actual "poke tools" do you mean? Also would a), b) and c) all be part of the same solution or are they all different methods of doing what I need?

    I'll obviously read up on what you said in your points anyway but if you could add a bit more detail I'd appreciate it.

    BTW, do you have a link for the non-disclosure agremeent? Looked on the clipsal site but couldn't see anything like this.

    Thanks again,

    Mike
     
    Last edited by a moderator: Oct 30, 2010
    nzmike, Oct 30, 2010
    #3
  4. nzmike

    tobex

    Joined:
    Nov 3, 2006
    Messages:
    728
    Likes Received:
    0
    Location:
    Sydney, Australia
    C-Bus protocol http://training.clipsal.com/downloads/OpenCBus/OpenCBusProtocol.html

    3rd Party Poke Tool http://www.cbusforums.com/forums/showthread.php?t=4353


    As you can tell, C-Bus works off a lookup table which sets up the data frame to have fixed properties. The devices in the C-Bus network do not have the ability to interpret requests other than their own data packets.

    If you plan to hook up .NET to this system then you would have to define a method of polling the network, associating objects and then storing those objects in list. Not unlike an LM Hosts lookup.

    One of the advantages of a true use oriented software design is that you could address an unlimited number of outputs using a different logic sequence for each output (if needed). This would decouple the need for a number of ONE-TO-MANY and MANY-TO-ONE logic states. Giving the context in a more direct addressing per function.

    About 10 years ago I approached a "mini-PC" supplier up in Hornsby who provided ultra-small PC's with larger LCD screens. These were capable of running HomeGate or any other website design linked to a scripting engine. AFAIK they never got back to me but rather one of their friends took up the idea.

    There are dozens of ways of doing this. Just depends how much limitation you want to put on code. What tends to happen in C-Bus projects is that logic states exist in the network as relationships and not in the windows software. Presumably this is to eliminate the PC as a point of failure and still retain all on/off functions on the network.
     
    Last edited by a moderator: Oct 31, 2010
    tobex, Oct 31, 2010
    #4
  5. nzmike

    nzmike

    Joined:
    Oct 29, 2010
    Messages:
    3
    Likes Received:
    0
    Location:
    Sydney
    Thanks Tobex - I'll be honest and say I don't really understand quite a lot of your answer which has made me realise I need to do a *lot* more reading before I can even think about committing to do this.

    Basically, I think I'm guilty of over-simplifying and under-estimating what I thought it would take to do this. From looking at the VB.Net sample app and using the Windows DLL I thought you could have a PC with some sort of an internal PCI card connected directly into any of the RJ45 ports on the network and you could send messages which would eventually get to their target (using the network/group ID's plus the command to send and values etc) - I guess I assumed it was a bit like a token-ring network where the messages would go around the network until they hit their intended target.

    As you can probably tell by now I have no background at all in this sort of automation so perhaps it is not going to be possible to do what I want without a serious amount of development.

    If I did just want to play with the VB.Net sample what would I need to attach to the C-Bus network? Is that where a 5500CN or PCU comes in - or am I barking up the wrong tree completely?

    Sorry to be such a noob and many thanks for your patience and replies so far... would love to be able to do this project but I can see the learning curve is likely to he pretty huge!

    Mike
     
    nzmike, Oct 31, 2010
    #5
  6. nzmike

    tobex

    Joined:
    Nov 3, 2006
    Messages:
    728
    Likes Received:
    0
    Location:
    Sydney, Australia
    The closest signal to the C-Bus signal is a structured RS-485 signal, multi-drop, power over network. It is a pure serial signal. Only its container is not generic. The container comes from a defined set of rules and a defined list of known objects. To get a list of objects you must have the ability to tag and read the objects into a list. Because it is based on an industrial concept of defined structure there is no such thing as plug-and-play.

    If you wanted to address each object as you would in a LAN, then you can only work off the list of what you have already discovered. There is no point in sensing data frames out to objects that dont exist. It clutters the network. The advantage of having such a rigid design is that it allows my 1999 C-bus to talk very happily with my 2010 C-bus.

    I give the analogy that you are the spectator in a football game and the only things you can observe are the players on the field. The players can send messages to each other in one direction only and each player has a special function. The spectator can only call out instructions to a specific player as marked by their number. You can all out specific instructions to one player or a command relating to forwards, left side, right side. all players over the age of 30 ... so on.
     
    Last edited by a moderator: Oct 31, 2010
    tobex, Oct 31, 2010
    #6
  7. nzmike

    mattyh

    Joined:
    Mar 18, 2008
    Messages:
    28
    Likes Received:
    0
    Location:
    SE Melbourne
    Hey Mike,

    I wrote an activex control in delphi a while ago that uses the cbus windows driver too send commands through JScript. This was so that I could use the salling clicker application on my mobile phone to control cbus before wiser was released. From memory I used a CNI to connect to windows which ran salling clicker, which connected to my phone...

    The CNI's IP address was redirected on windows to a COM port using Lantronix Redirector aswell.

    Have dug up the source files if you want to have a look. See if it may help any...?


    Cheers,
    Matt
     

    Attached Files:

    mattyh, Oct 31, 2010
    #7
Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.