Imperious Technology  
Imperious Technology
7324 S. W. Freeway, Suite 1040 Houston, TX 77074
TEL: (713) 532-1280 FAX: (713) 532-1291
welcome to Imperious Technology
Your source for OPC I/O Servers, Testsets & Protocol
Analyzers. Imperious Technology is the first in the
industry to offer OPC Servers with built-in Testset
and Protocol Analyzer capabilities.
Request a Product Demo
Screen Shots - DNP3
Modbus OPC Serial Server

Need Help
Smart PA  Serial Monitor  Modbus  DNP3

Smart PA DNP3

The Smart Protocol Analyzer not only works under ideal conditions, but also in the real world, where conditions are rarely ideal. In complex situations when a master or slave is violating a protocol step, SmartPA will not only catch the violating packets, but also highlight them to display the protocol violation. For example,

  • Unsolicited sequence numbers range from 16 to 31 according to DNP3.0 protocol. If in the field while monitoring, you start getting out of range sequence numbers, they will be color coded for you.
  • Polled response are in the range 0 to 15 and match the master request sequence number for multi-frag and single-frag packets. We show any violations of polled responses as color coded warnings.
  • At application level if packets are mal-formed, they will not be caught by link level CRC checks. In case a master or slave appends bad data headers or un-aligned bytes, we can catch that too.
  • If link level acks and nacks are missing or being generated without having been asked for, then we will generate a warning
  • If there are CRC errors at the link level, we identify and display them for you.
  • If application level confirms are missing or being generated without having been asked for, then we will generate a warning
  • At transport level, we not match sequence numbers and show warning if anything is out of order.
  • If sequence numbers are repeated, we show them color coded as retry packets.
  • We can also trigger actions based on any of the above criteria. Trigger actions include audible sounds or marking of packets.
  • We not only detect protocol violations, but also display the corresponding graphical statistics.
  • With SmartPA, you can define filters to show or hide the above protocol violations and communication noise. It helps you easily look at just what you want to see.
SmartPA is not just merely a tool for viewing protocol data, it also shows you when and where the protocol steps are being followed or violated. Other protocols are simpler, but DNP is very complicated, and SmartPA is a must for those who work with DNP. If you encounter any of the above problems, then it will be very difficult to manually catch that problem. SmartPA will make your life much easier by pin-pointing all these protocol violations and errors!

SmartPA supports almost all objects and qualifier codes. If you find any object definitions missing, we will gladly add it, provided you give us sample hex bytes for that object. The terminolgy we use for the description of protocol packets is the same as what is described in Basic 4 document. Therefore you don't have to learn anything new.


Communication Statistics


This dialog allows you to view statistics per device. You can check which category has more data, e.g. unsolicited, polled, etc. The legend shows for the corresponding bar graphs, the category name in sequential order. Use this feature of SmartPA to optimize your bandwidth.

Highlighted Hex Bytes

By clicking on a packet tree node, the corresponding hex bytes of the packet will be highlighted for you in the data window. If you right click to access our evaluation tools, the highlighted data (in blue background) is automatically copy pasted into the evaluation dialogs. You can override the highlighted hex bytes by making your own selection (in black background) of hex bytes, and selecting the evalution tool.


Jump to Tree from Hex Bytes

By selecting the hex bytes in the data pane (in black background) and right clicking on them, or by just right clicking on the highlighted hex bytes (blue background), you may choose the 'Map to Tree' option. The packet tree node containing those selected or highlighted hex bytes will be shown in the packet tree pane.

Checksum Window


Here you can calculate the LRC and the CRC16 of the data in the 'Evaluation data' window. Make sure your 'Data Format' selection is the same as the type of data in your 'Evaluation data' window. For e.g. if the data in the 'Evaluation data' window is in binary hex form, then select 'Binary Hex' in the 'Data Format' drop down list box.

Interactive Parsing


This dialog allows you to type or copy paste raw hex bytes. You can do calculations like crc, lrc and you can also parse the data into protocol packets just by pressing one of the parse buttons. You can parse request and response separately or together as one stream. Once you parse it, you will see results in protocol monitor based on what you entered.


Bit Viewer


For many entities that require interpretation at the bit level, this unique bit crunching feature of SmartPA really comes in handy. It allows you to see the bit fields for the selected packet's tree item.

DNP Pre-Capture Filters

Selectively capture DNP packets and save memory resource by discarding unmatched packets. Use this easy dialog to define your custom filter for capturing the specific DNP packets.


DNP Post-Capture Filters

Use these filters to show or hide DNP packets after you have already captured them. By hiding certain packets that satisfy your filter criteria, you don't loose those packets, you can un-hide them later on if you want.


Note that to apply the post-capture filters, you need to press the 10 toolbar button. To remove the filter, press the button again.

DNP Triggers

You can also define actions to be performed when certain packets satisfy your filter criteria. These actions will be triggered whenever such a packet is captured, e.g. if you have defined your trigger filters to be activated upon receiving noise packets, you will be alerted by a beep when you get noise.


We will add more triggers upon user request, for e.g. launch application, email alerts, paging, etc.