Dsc Serial Protocol Sniffer

Information about using the hardware and software.

Dsc Serial Protocol Sniffer

Official documentation

A description in the Serial protocol section. Additonal controller features can be found in the controller specific pages. If you want to contribute i.e. Add a controller or update information, please do so in the forum thread. The BusBee Serial Bus Monitor is the ultimate simple, yet powerful, Protocol Decoder and Logic Analyzer. Electrical Test Pods. Toggle navigation Main Menu. The Easy to Use Serial Bus Monitor, Protocol Analyzer and Logic Analyzer. USBee Suite Manual. BusBee Downloads. BusBee Specifications. Buy a BusBee. BusBee Overview. Freeware RS232 port sniffer/monitor software Hi All. The setup is my PC connected to another serial device and I want to watch the data flow.

You should implement software in conjunction with reading the officialdocumentation. This library attempts to follow its terminology andstructures, so understanding what is happening on a lower level is neededparticularly when using the lower level interfaces in this library.

Serial Port Sniffer Open Source

There is a large amount of documentation in there that says 'these items aredeprecated and shouldn't be used'. I've noticed that C-Gate and Toolkit willinteract with the hardware in these 'deprecated' ways...

This doesn't mean implement the library to talk this way. You should implementit properly. Just be aware than when working with implementing a fake PCI orparsing out packets that Clipsal's software generated, be aware they'll dostrange and undocumented things.

Geoffry Bennett's reverse engineering notes (2001 - 2004)

Geoffry Bennett gave a talk at a LinuxSA meeting in 2001 and atLinux.conf.au 2004 about his experiences with reverse engineering C-Bus.At the time there was no official protocol documentation available.

Dsc Serial Protocol Sniffer

The Linux.conf.au 2004 notes cover a lot more information, includes someinformation about dumping and reverse engineering the contents of NVRAM inunits, a Perl client library, and an emulator used for older versions of theClipsal programming software.

CNI / network protocol

The C-Bus Toolkit software has a CNI (network) interface mode, which is justthe serial protocol over a TCP socket.

Some of the tools here support running in TCP mode with -t.

There's also a discovery protocol, however this has not been implemented yet.Patches welcome. :)

Setting up a fake CNI and sniffing the protocol

If you want to see how Toolkit interacts with a Serial PCI, use thetcp_serial_redirect.py script from the pySerial example scripts.

For example:

Congratulations, you now have turned your computer and a 5500PC into a5500CN without writing a single line of custom code, and saved about 200$.Even a Beaglebone can be had for less than 200$. ;)

Go into Toolkit, set the Default Interface type to 'IP Address (CNI)' with theIP and port of the machine running the serial redirector.

You can then use tools like Wireshark to monitor interactions with theC-Bus PCI, instead of using kernel hacks to sniff serial, other redirects, orwiring up your own serial sniffer device. This will aid if you wish to useundocumented commands, or isolate issues in the Clipsal documentation.

You could also use this with tools like C-Gate to get a higher level interfacewith the C-Bus PCI.

USB support / 5500PCU

Clipsal's driver is not digitally signed.

It uses silabser.sys on Windows, which corresponds to a Silicon LabsCP210X USB-serial bridge. cbususb.inf lists the following products:

  • 10C4:EA60: Generic SiLabs CP210X
  • 166A:0101: C-Bus Multi-room Audio Matrix Switcher (560884)
  • 166A:0201: C-Bus Pascal/Programmable Automation Controller(5500PACA)
  • 166A:0301: C-Bus Wireless PC Interface (5800PC). This appears to be anunreleased product.
  • 166A:0303: C-Bus Wired PC Interface (5500PCU)
  • 166A:0304: C-Bus Black & White Touchscreen Mk2 (5000CT2)
  • 166A:0305: C-Bus C-Touch Spectrum Colour Touchscreen(C-5000CT2)
  • 166A:0401: C-Bus Architectural Dimmer (L51xx series)

Linux kernel module

The cp210x kernel module in Linux 2.6.30 and later supports this chipset.However, only the generic adapter and 5500PCU device IDs are included withthe kernel for versions before 3.2.22 and 3.5-rc6.

Your distribution vendor may backport the patches in to other kernel versions.

To see which devices your kernel supports, run the following command:

If the following is returned, you only have support for the 5500PCU:

If more lines come back, then your kernel supports all the hardware that isknown about at this time.

Unit Tests

Free Serial Port Sniffer

There's some basic unit tests that are written that require you have thenosetests package (nose on pip).

When you run nosetests, it will discover all the unit tests in the packageand try to run them.

I'm targeting Python 2.6 and 2.7 at this time. Python 3 support is currently awork in progress. Patches still welcome.

When implementing a new application, you should copy all of the examples givenin the documentation of that application into some tests for that application.Be careful though, there are sometimes errors in Clipsal's documentation, sodouble check to make sure that the examples are correct. If you find errors inClipsal's documentation, you should email them about it.

Dsc Serial Protocol Sniffer Software

Joined: Sat. Sep 25, 2010
Total votes: 0

I am trying to understand this protocol that my DSC 1555 alarm uses between the base and the keypad, but issue is its propriatary of some sorts. There was another thread about it on this forums but it ended prematurely with the guy just checking one bit for stay or away mode.

From what I know about this protcol so far the clock line runs at 1kHz with 50% duty and oddly enough only does so for 41.6ms then it stays high for 5.4ms and starts all over again. The data line seems to transistion on either the falling or rising edge of the clock (or in the middle), which led Kortuk of chiphacker.com to belive that it is NRZ encoding which I'm not sure of yet but here are some OLS dumps of the data and clock lines hopefully with teamwork we can figure this out.

I'm pretty sure the data is the same as whats listed in the PC5401 pdf below just sent via some weird protocol, all I really need help with is figuring out whats a 1 and whats a 0. From there I'm confident I can figure out the rest. Thanks for your time :D

0 is the Data line, 1 is the Clock

DSC OLS Dump
ECP Patent
PC5401 Dev-PDF
Previous AVRFreaks Thread