MOSP : Minimal Overhead Serial Protocol

This page is a work in progress… The purpose of this page is to describe and specify the general ideas behind MOSP, so that fellow engineers all over the world will be able to make their own implementation.

Changelog

1. What is MOSP?

MOSP (Minimal Overhead Serial Protocol) is a protocol being developed by Tom Verschooten. MOSP’s main goal is to allow gradual implementation of algorithms onto embedded systems. MOSP will allow a more flexible debug solution for amounts of data which would be impossible to oversee with traditional debuggers (such as KEIL uVision in combination with an ULINK).

2. Features

3. MOSP Communication

3.1 Single Communication

The most basic form of communication featured by MOSP is a Single Communication. In general, a single communication consists of 2 frames :

  1. An instruction
  2. A reply (ACK, NACK or DATA)

MOSP single transmission

The image above shows a Single Communications can be divided into two cases :

  1. A SET-instruction : An instruction to set a specified parameter in the slave device is sent. As a reply an ACK or NACK is expected
  2. A DATA-request : A piece of data is requested from the slave device. As a reply a DATA-frame is expected by the master.

3.2 Burst Communication

As a supplement to Single Communication MOSP also features a simple form of Burst Communication.

The image below shows a simple example of how a Burst Communication works.

MOSP burst communication

 

 

Note that the slave never receives 2 consecutive frames or more. As a result the slave’s reception buffer only has to supply space for 1 frame.

3.4 MOSP Frame Layout

The frame layout used by MOSP is fairly straightforward and always consists out of 7 bytes, each with it’s own purpose :

 

MOSP general frame layout

Now let’s take a closer look at the specific layout for Instruction frames and Data frames :

 

MOSP specific frames

4. Where to go from here?

So you’re probably wondering “Is the MOSP specification really this simple? Can it be we’re already through reading it?”. The answer is “YES!”. Since one of the goals of this protocol is to be “simple”, there’s really no point of overcomplicating things with a spec containing a thousand pages.

This specification still leaves a few things open to your own interpretation such as :

As a result, you still have a lot of freedom in your own applications, while using the MOSP frame layout and a combination of Single Transmissions and Bursts. This combination offers a lot of possibilities with only a minimum of effort to be put into implementing this protocol.

All additional information about MOSP on this blog can be found in the MOSP archives.

 

 

 


About

This blog is dedicated to the conversion of cafeïne into electronics. Although this process is never mentioned in most electronics books/courses, it is vital to the industry… Obviously, talking solely about electronics would be a little bit too boring, so there’ll be plenty of other random distractions to enjoy ^^

Pages

Categories

Flickr Photos

DSC_8326.JPGDSC_8322.JPGDSC_8351.JPGDSC_8345.JPGDSC_8344.JPGDSC_8338.JPG

View All Photos