Skip to content

SISAM Overview

SISAM – SImple SAMpler – is a simple PIC-based hardware for precision dual channel data acquiring with moderate resolution (up to 500 ksps in continous mode and up to 5 Msps for very short sequence). It uses USART and SSP for sampling signals and software routines for RS232 communication. USART is configured for synchronous master reception, while SSP is set for synchronous slave reception and is driven by USART clock via external circuit (wire).

In sampling mode signals are sampled on USART.RX and SSP.SDI pins. It timing mode it measures time between signal alternations on CC1 pin using CCP module. Acuired data is sent using RS232 protocol.


Current version is build for PIC16F690. Hardware schematic is given in this post.


SISAM has a terminal-like console interface with a small set of ASCII-based commands and produces human readable and computer friendly responses.

SISAM – provides the following capabilities

  • S – Sampling single channel – RB5 up to 500 ksps (kilo sample per sec)
  • X – Sampling dual channel RB5, RB4 up to 200 ksps per each channel
  • J – Limited buffered sampling sole channel @ 5 Msps (1920 samples via internal buffer)
  • M – Measuring pulse timing on RC5 up to 12 kHz average,
  • o – drive (trigger) output pins right before (0.8us) sampling started
  • O – drive (trigger) output pins immediately and/or in a sequence (20 us per data byte)
    (two sequential commands Oxx;Oxx have interval approx 440 us – 436.6 + delay on PC USART)

Command language capabilities:

  • executing all commands via ASCII/RS232 console
  • command data is passed as hexadecimal digits

Communication capabilities

  • RTS/CTS driven RS232 communication @ 115.2 kbps
  • Parasitic -12V power RS232 matching circuit
  • 32 bytes long RS232 reception buffer
  • Data transfer mode operates on 115.2, 230.4, 460.8 and 921.6 kbps
  • Best data transfer speed is selected by SISAM and reported via console
  • Data transfer is driven by PC via DTR signal

System requirements:

To achieve high speed sampling rate, your COM port must be overclocked to the highest possible speed. Please follow this link to details on port overclocking. Table 1 lists maximal sampler resolution for possible baud rates.

Table 1. Maximal resolution versus baud rate

Baud rate

Operating mode

S – Sole channel sampling rate (ksps)
X – Dual channel sampling rate (ksps)
M – Timing pulses 10% duty (us)
M – Timing pulses 50% duty (us)


Sisam is designed for use in Simplescope and A Simple Environment for Automated Testing .

See details on Hardware for PIC16F690, Hardware for PIC16F88, Protocol, Command Language; Downloads


  1. Eugene wrote:

    2006-08-09 Fixed link to Overclocking COM port

    Wednesday, August 9, 2006 at 14:03 | Permalink
  2. edt wrote:

    Very cool idea. We have an expensive digital scope that can’t log to a file without extra expensive software, so we’re ordering the parts to build one of these. Thanks for providing this all in the public domain!

    (BTW, the copyright at the bottom of the page has “&nbsp” instead of ” “, so it displays the literal)

    Wednesday, September 13, 2006 at 21:26 | Permalink
  3. edt wrote:

    Oops, I meant instead of “ ”

    Wednesday, September 13, 2006 at 22:44 | Permalink
  4. hutorny wrote:

    Thanks for pointing, I did not notice this before because IE shows it properly.
    Indeed, I did not find yet how to fix that – it seems, this string is autogenerated by the WP engine.

    Thursday, September 14, 2006 at 08:36 | Permalink

Post a Comment

Your email is never published nor shared. Required fields are marked *