Changes between Version 3 and Version 4 of JamieAndEricsDiscussion


Ignore:
Timestamp:
09/05/2007 07:00:05 PM (17 years ago)
Author:
ejona
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • JamieAndEricsDiscussion

    v3 v4  
    22
    33== Network ==
    4  * Use a normal home network with DHCP and SNMP capable router
    5   * SNMP - http://en.wikipedia.org/wiki/Simple_Network_Management_Protocol
    6   * zeroconf - http://en.wikipedia.org/wiki/Zeroconf
    7 
     4 * Use a normal home network. Assume existing DHCP server.
     5  * Service discovery: Zeroconf (http://en.wikipedia.org/wiki/Zeroconf)
     6  * Remote control protocol: SNMP (http://en.wikipedia.org/wiki/Simple_Network_Management_Protocol)
    87
    98== Devices ==
    109
    1110 * 2 types of devices
    12 
    1311  * Smart Devices
    14    * Support network capabilities (TCP UDP IP)
    15    * support SNMP
    16    * Suppport zeroconf
     12   * Support SNMP
     13   * Support Zeroconf
     14   * Both would use UDP over existing network
    1715  * Dumb devices
    18    * Support SNMP
    19    * Support zeroconf
     16   * Support a variant of SNMP. We basically want SNMP without requiring any network knowledge.
     17   * Can connect to a smart device using any means necessary.
    2018
    2119Each device also has a set of variables and associated values which are manipulated using the SNMP protocol
     
    2624
    2725 * Smart devices connect to network using DHCP
    28  * Dump devices connect to smart devices and us it as a proxy
    29  * all devices use zeroconf to publish metadata (Name of device, type of device i.e. dishwasher, microwave)
     26 * Dumb devices connect to smart devices and us it as a sort of proxy
     27 * All devices' metadata is published to the network with Zeroconf. This would probably include IP/port, name, type (i.e., dishwasher, microwave), location, and category (i.e., security, entertainment).
     28
     29The genius behind the system is that we may not have to implement any new protocols at all. SNMP and Zeroconf, along with a home network, is all that is needed to make this thing work. If we decide SNMP and Zeroconf are simple enough to implement cheaply, then there is no new development needed.
    3030
    3131
    32 The genius behind the system is that we don't have to implement any new protocols at all.  SNMP and zeroconf, along with a home network, is all that is needed to make this thing work.
     32== Protocol Abilities ==
     33 
     34 * '''Get Bulk''' all varibles, values, and schema from device
     35 * '''Get''' specific variable value from device
     36 * '''Set''' specific variable value on device
     37  * Will produce either an ok or error message. Error produced if the change would cause an invalid state; however, input should be limited to the schema.
     38 * '''Request Notify''' a specify variable change from device
     39  * A controller requests to receive a Notify when the specified variable is changed. See the uncertainty in definition of Notify.
     40 * '''Notify''' controller
     41  * Sent in response to a variable value that changed.
     42  * Typically the notification was requested beforehand, however, some devices (such as a fire alarm, or security system) may want to Notify without a previous Request Notify.
     43  * Unsure if this is a broadcast to all devices, notifying only one other device, or notifying a list of devices.
    3344
    3445
    35 == User interaction ==
    36 
    37  * Get vars, values, schema via UDP - a Get Bulk type thing
    38  * Get specific variable value
    39  * Set variable value
    40   * Will produce either an ok or error message.
    41    * error produced if an innappropriate value is submitted, however, input should be limited to the schema
    42  * request Notify
    43   * can ask it to notify another device if a variable is changed.
    44   * can have it notify multiple devices
    45   * Some devices (such as a fire alarm, or security system) can notify all devices with having info requested.
    46  * notify
    47 
    48 
    49 
    50 == other implementation ==
     46== Other Implementation ==
    5147
    5248 * http://en.wikipedia.org/wiki/Domotics
    53   * Eric and I found this while looking around for things.  It is basically a system that does something very similar to what we are doing.  Found it very amusing.
     49  * Eric and I found this while looking around for things. It is basically a system that does something very similar to what we are doing. Found it very amusing. It has use case ideas.