bugtracker 
  manufacturer 
  source 
The newport-smc100 daemon can be installed using the following package managers:
The newport-smc100 daemon is composed of the following traits:
  has-limits
  
  has-position
  
  is-daemon
  
  is-homeable
  
  uses-serial
  
  uses-uart
  
The newport-smc100 daemon has been tested with the following hardware:
  
  newport/mfa-cc
  
  newport/smc100cc
  
  newport/smc100pp
    axis (int)
    default: 1
    
     Allows for daisy chained controllers 
 
    
    
    
    baud_rate (int)
    default: 57600
    
    
    
      from uses-uart
    
    
    
    enable (boolean)
    default: True
    
     Disable this daemon. The kind entry-point will not attempt to start this daemon. 
 
    
      from is-daemon
    
    
    
    limits (array)
    default: [-inf, inf]
    
     Configuration limits are strictly optional. 
 
    
      from has-limits
    
    
    
    log_level ({'name': 'level', 'symbols': ['debug', 'info', 'notice', 'warning', 'error', 'critical', 'alert', 'emergency'], 'type': 'enum'})
    default: info
    
     Set daemon log-level. 
 
    
      from is-daemon
    
    
    
    log_to_file (boolean)
    default: False
    
     Optionally force logging to a file. 
 
    
      from is-daemon
    
    
    
    make (['null', 'string'])
    default: newport
    
    
    
      from is-daemon
    
    
    
    model (['null', 'string'])
    default: SMC100
    
    
    
      from is-daemon
    
    
    
    out_of_limits (enum)
    default: closest
    
     Control behavior of daemon when set_position is given a value outside of limits. 
 
    
      from has-limits
    
    
    
    port (int)
    
    
     TCP port for daemon to occupy. 
 
    
      from is-daemon
    
    
    
    serial (['null', 'string'])
    default: None
    
     Serial number for the particular device represented by the daemon 
 
    
      from is-daemon
    
    
    
    serial_port (string)
    
    
    
    
      from uses-uart
    
    
    
    units (string)
    default: mm
    
     Units for the motor attatched to the controller 
 
    
    
    
The newport-smc100 daemon will provide the following state information:
    destination (double) 
    
    
        from has-position
    
    
    error_code (string) 
     Four digit code describing error conditions in the Tell Status (TS) command. 
 
    
    
    hw_limits (array) 
    
    
        from has-limits
    
    
    position (double) 
    
    
        from has-position
    
    
    status (string) 
     Device status, translated into text from the Tell Status (TS) command. 
 
    
    
The newport-smc100 daemon will expose the following public messages:
    busy
     ➜  boolean 
    
     Returns true if daemon is currently busy. 
 
    
    from is-daemon 
    
     
    direct_serial_write
     ➜  null 
    
     Expose direct access to the serial port to clients.
This should not be encouraged for normal use, but may be very important for debugging.
If a device is expected to return data, it should be logged at the INFO level, not returned to the client.
This is done to allow long tasks to be run asynchronously, and to explicitly discourage use of this method except when debugging.
Setting `busy` to true is encouraged, but individual daemon writers should consider their own use case.
 
 
    
    from uses-serial 
    
    
    parameters: 
    
        message (bytes)
        
        
        
    
    get_config
     ➜  string 
    
     Full configuration for the individual daemon as defined in the TOML file.
This includes defaults and shared settings not directly specified in the daemon-specific TOML table.
 
 
    
    from is-daemon 
    
     
    get_config_filepath
     ➜  string 
    
     String representing the absolute filepath of the configuration file on the host machine.
 
 
    
    from is-daemon 
    
     
    get_destination
     ➜  double 
    
     Get current daemon destination. 
 
    
    from has-position 
    
     
    get_limits
     ➜  {'items': 'double', 'type': 'array'} 
    
     Get daemon limits.Limits will be the intersection of config limits and driver limits (when appliciable). 
 
    
    from has-limits 
    
     
    get_position
     ➜  double 
    
     Get current daemon position. 
 
    
    from has-position 
    
     
    get_state
     ➜  string 
    
     Get version of the running daemon 
 
    
    from is-daemon 
    
     
    get_units
     ➜  ['null', 'string'] 
    
     Get units of daemon. These units apply to the position and destination properties. 
 
    
    from has-position 
    
     
    home
     ➜  null 
    
     Initiates the homing procedure.
The daemon will report as busy during the homing procedure.
 After the homing procedure is complete, the daemon will return to the current destination.
 
 
    
    from is-homeable 
    
     
    id
     ➜  {'type': 'map', 'values': ['null', 'string']} 
    
     JSON object with information to identify the daemon, including name, kind, make, model, serial.
 
 
    
    from is-daemon 
    
     
    in_limits
     ➜  boolean 
    
     Check if a given position is within daemon limits. 
 
    
    from has-limits 
    
    
    parameters: 
    
        position (double)
        
        
        
    
    set_position
     ➜  null 
    
     Give the daemon a new destination, and begin motion towards that destination. 
 
    
    from has-position 
    
    
    parameters: 
    
        position (double)
        
        
        
    
    set_relative
     ➜  double 
    
     Give the daemon a new destination relative to its current position. Daemon will immediately begin motion towards new destination. Returns new destination. 
 
    
    from has-position 
    
    
    parameters: 
    
        distance (double)
        
        
        
    
    shutdown
     ➜  null 
    
     Cleanly shutdown (or restart) daemon. 
 
    
    from is-daemon 
    
    
    parameters: 
    
        restart (boolean)
        default: False
        
        
    
built 2024-02-09 01:44:16 CC0: no copyright