Jump to content
 







Main menu
   


Navigation  



Main page
Contents
Current events
Random article
About Wikipedia
Contact us
Donate
 




Contribute  



Help
Learn to edit
Community portal
Recent changes
Upload file
 








Search  

































Create account

Log in
 









Create account
 Log in
 




Pages for logged out editors learn more  



Contributions
Talk
 



















Contents

   



(Top)
 


1 SSI message structure  



1.1  SSI v1.2 command base  





1.2  Point-to-point SSI  





1.3  Networking SSI  







2 Version history  





3 External links  














Simple Sensor Interface protocol







Add links
 









Article
Talk
 

















Read
Edit
View history
 








Tools
   


Actions  



Read
Edit
View history
 




General  



What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Cite this page
Get shortened URL
Download QR code
Wikidata item
 




Print/export  



Download as PDF
Printable version
 
















Appearance
   

 






From Wikipedia, the free encyclopedia
 


The Simple Sensor Interface (SSI) protocol is a simple communications protocol designed for data transfer between computers or user terminals and smart sensors.

The SSI protocol has been developed jointly by Nokia, Vaisala, Suunto, Ionific, Mermit and University of Oulu. Currently SSI is being developed within the Mimosa Project, part of the European Union Framework Programmes for Research and Technological Development.

The SSI protocol is used in point-to-point communications over UART and networking nanoIP applications. SSI also provides polling sensors and streaming sensor data. For RFID sensor tags SSI specifies memory map for sensor data.

The criteria for SSI protocol development are:

Sample implementation of the SSI protocol for MSP430 microcontrollers will be published as open source during August 2006 by Nokia.

SSI message structure[edit]

An SSI message consists of a 2-byte header and an n-byte payload. The header consists of a one byte address (wildcard is '?', 0x3F in ASCII) and a one byte message/command type. The different possible values for the message/command type are presented in SSI v1.2 command base.

SSI v1.2 command base[edit]

Command byte Direction Description
Q,q (0x51, 0x71) C-> Query
A,a (0x41, 0x61) <-S Query reply
C,c (0x43, 0x63) C-> Discover sensors
N,n (0x4E, 0x6E) <-S Discovery reply
Z,z (0x5A, 0x7A) C-> Reset sensor device
G,g (0x47, 0x67) C-> Get configuration data for a sensor.
X,x (0x58, 0x78) <-S Configuration data response
S,s (0x53, 0x73) C-> Set configuration data for a sensor
R,r (0x52, 0x72) C-> Request sensor data
V,v (0x56, 0x76) <-S Sensor data response
D,d (0x44, 0x64) <-S Sensor response with one byte status field
M,m (0x4D, 0x6D) <-S Sensor response with many data points
O,o (0x4F, 0x6F) C-> Create sensor observer
Y,y (0x59, 0x79) <-S Observer created
K,k (0x4B, 0x6B) <-> Delete sensor observer / listener
U,u (0x55, 0x75) <-> Observer / listener finished
L,l (0x4C, 0x6C) <-S Request sensor listener
J,j (0x4A, 0x6A) C-> Sensor listener created
E,e (0x45, 0x65) <-> Error
F,f (0x46, 0x66) <-> Free data for custom purposes

The group of commands:

are used to find and configure sensor units utilizing the SSI-protocol.

The group of commands:

are used to read sensor data infrequently.

For data streaming purposes defined commands are:

Point-to-point SSI[edit]

Point-to-point messaging with SSI can be done with SSI/UART. An SSI UART message consists of a 3-byte UART header, an SSI message as the payload and an optional Cyclic redundancy check checksum. The use of a checksum is defined by the SSI message/command type, with lower case commands indicating the use of CRC. The header consists of a start byte (0xFE), a 2-byte (total) length of the message and a 2-byte bitwise Negation length to help identify the frame start.

Networking SSI[edit]

SSI networking in a variable environment is done using nanoIP. In a typical case using SSI, an individual message is not important, and so nanoUDP (simplified UDP defined by nanoIP) is used as the message format. If individual messages are important, nanoTCP can be used, as it provides flow control and retransmission at a cost of message size and increase in network traffic.

A nanoUDP message consists of a 5-byte nanoUDP header, an n-byte message payload and an optional 2-byte CRC checksum. The header consists of one protocol byte, a 2-byte message length (total length, including header and CRC), a 1-byte source port and a 1-byte destination port number. The destination port number should be 0x28 for SSI messages.

Version history[edit]

External links[edit]


Retrieved from "https://en.wikipedia.org/w/index.php?title=Simple_Sensor_Interface_protocol&oldid=1205354490"

Categories: 
Network protocols
Application layer protocols
Hidden categories: 
Articles lacking sources from December 2015
All articles lacking sources
 



This page was last edited on 9 February 2024, at 13:06 (UTC).

Text is available under the Creative Commons Attribution-ShareAlike License 4.0; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.



Privacy policy

About Wikipedia

Disclaimers

Contact Wikipedia

Code of Conduct

Developers

Statistics

Cookie statement

Mobile view



Wikimedia Foundation
Powered by MediaWiki