PRODUCTS
 
 
 
 
 
 

 
 

Teleo System

Description of the Teleo System:

 

Teleo System

Modules
Devices
Properties
Message
Module Identification
Data Exchange

Teleo Network Messages

Teleo System Specifications

 
   

TELEO SYSTEM

The Teleo System is designed to provide an infrastructure for people building machines of different kinds. Teleo Modules are central to the idea of Teleo. They have particular functions and that communicate together over a Teleo Network.

Teleo System

In the diagram above, each of the modules connected to the network sends or receives data to or from the outside world depending on its function. A computer can be connected to the network to give it more complex behavior, combine actions with media playback and connect it to the Internet.

Modules

Modules are the physical boards that attach to the Teleo Network. To function correctly, each has it's own unique address. The actual numerical addresses for regular modules can range from 3 - 63, and the address of a module can be changed with a simple procedure.

Modules

One module on the network is the Controller. This Controller is either the interface to the main computer or it is the main computer in the system. All of the housekeeping and many of the data messages that modules generate are sent to the Controller. Future versions of the Teleo product will permit there to be 0 or more Controllers on a single network, but currently this number is limited to one. The Controller must be a Teleo Introductory Module.

Devices

Each module has one or more autonomous devices. These devices are indexed from 0 to n - 1, where n is the number of devices on the module. For example, the Teleo MultiIO Module has 14 devices: 4 Analog In, 4 Digital In, 4 Digital Out and 2 PWM devices - each of which functions completely autonomously.


Module Devices

Properties

Each Device present on a module has Properties which control the behavior of the device in some cases and report information back in other cases.

Device Properties

Properties have data types, but can accept assignment from any type and will convert into their prefered internal format automatically.

Messages

The Teleo Network is a peer-to-peer message passing network. A message on the network is simply an address and some data. (* The address alone has bit 9 set - this speeds identification of packets on the network)

Network Packet

By declaring the first data byte a message type, we created a set of messages that are useful to the task of exchanging data on a network. These messages are summarized in the Teleo Network Message section.

Module Identification

Modules on a Teleo Network regularly send Identification Messages to the Controller stating their address, type, manufacturer and version number.

Identification messages are sent by all modules every few seconds

Modules send this message once every few seconds, so it can be used to identify a new module that has been plugged into the network and the absence of these messages can indicate when a module has been removed.

Data Exchange with Modules

Modules, devices on those modules and the properties of those devices can all be addressed directly. So sending data to them is very easy - a message is constructed addressed to the appropriate module which contains the destination device, property and the new data.

Setting property data on a device

Soliciting Data from a module can occur in two ways. The first way is to just ask for it with a Data Request message. The addressed module replies with a Monitor Data message.

Requesting property data from a device

The second way to get data from a module is to request that it be sent whenever a item changes. This process is called Monitoring which can be achieved on a per-property basis or for the whole network. To monitor an individual property on a device, the Monitor message is sent to the appropriate module. To monitor all properties on all devices on a particular module, the Monitor All message is used. To monitor all properties the Monitor All message is broadcast to the whole network.

Monitor All message causing Monitor Data messages to be sent

When these values are no longer interesting, the Monitor Cancel and Monitor All Cancel messages are sent.

 

Teleo Network Messages

Address Change
Button Press
Configuration Reset
Configuration Load

Configuration Save
Connection Cancel
Connection
Data Request
Data
Module Identification
Monitor Cancel
Monitor All
Monitor All Cancel
Reset

 

The table belows shows the data portion of the module messages. They are all addressed either by the controller outwards to the network or from modules inwards to the controller.

s

Address Change

Requests a module change its address. Modules are placed into Address Change mode by holding their buttons down for more than 3s. Then when this message is sent, only the module in Address Change mode actually processes it.

MESSAGE_ADDRESS_CHANGE
[new address]
 

Button Press

Indicates that a module button has been pressed

MESSAGE_BUTTON
[module address]
 

Configuration Reset

Request that all the settings be returned to their default state. Clears constants, connections, etc.

 

MESSAGE_CONFIG_RESET
 

Configuration Load

Permits the controller to request a module to restore its saved state.

 

MESSAGE_CONFIG_LOAD
 

Configuration Save

Command issued to devices to get them to save their connections and property data into permanent storage, so they can resume at a known place when they power-up.

 

MESSAGE_CONFIG_SAVE
 

Connection Cancel

Requests the addressed module to disconnect one property from another.

 

MESSAGE_CONNECT_CANCEL
[device]
[property]
[to module]
[to device]
[to property]
 

Connection

Request to connect one property to another. Whenever the value stored in the property changes, it will be sent to the to property.

 

MESSAGE_CONNECT
[device]
[property]
[to module]
[to device]
[to property]
 

Data Request

Data from a property is requested to be sent to the controller on a one-time basis.

Note the return message, MESSAGE_MONITOR_DATA, is not the same as the MESSAGE_DATA message above, since it has the senders device and property indicies.

 

MESSAGE_DATA_REQUEST
[device]
[property]

Response (sent to the controller)

MESSAGE_MONITOR_DATA
[module address]
[device]
[property]
[data_type]
[data]
 

Data

The most basic message. Data being sent anonymously to a module device property. This is the message used by the controller to change a property value. Note that the reverse is not true, since in the opposite case - when a module needs to send data to the controller - the controller needs to know the origin of the data to present it or process it correctly.

 

MESSAGE_DATA
[device]
[property]
[data type]
[data]
 

Module Identification

Sent from each of the modules at regular intervals.

 

MESSAGE_IDENT
[module address]
[module type]
[module manufacturer]
[module version number]
 

Monitor Cancel

Device data is no longer required.

The device may be omitted and all monitoring traffic from all devices will be stopped.

 

MESSAGE_MONITOR_CANCEL
[device]
[property]
 

Monitor

Data from a module / device / property is requested to be sent to the controller until told otherwise.

 

MESSAGE_MONITOR
[device]
[property]

Response

MESSAGE_MONITOR
[module address]
[device]
[property]
[data_type]
[data]
 

Monitor All

Data is requested from all properties of all devices. This is useful for certain UI modes and applications, although it can be very wasteful of network bandwidth.

 

MESSAGE_MONITOR_ALL
 

Monitor All Cancel

Monitor All mode is stopped.

 

MESSAGE_MONITOR_ALL_CANCEL
 

Reset

Sent by a module to the controller. Indicates that a module has been reset

MESSAGE_RESET
[module address]
 
     

 

TELEO SYSTEM SPECIFICATIONS

   
Teleo Network  
  Maximum Voltage 30V
  Minimum Voltage 7.5V
  Maximum Network Current 10A
  Data Rate 250kb/s
  Reliable Packet Rate (optimal) 1000 packets/s
  Reliable Packet Rate (heavy load) 100 packets/s
     

Teleo Default Module Addresses

 
  Introductory Module 2
  Multi IO Module

3

  Stepper Motor Module 4
  Servo Module 5
  Motor Controller 2x2A 6
  Motor Controller 10A

7

  Digital Out 8
  Video Module 9
  Analog In Module 10

 

 

copyright © 2002-2004 MakingThings LLC