yaq/daemons/quadmf


Daemon to control edaq isopod quadmf data recorder

external links

source
bugtracker
manufacturer

traits

The quadmf daemon is composed of the following traits:

uses-serial
uses-uart
is-daemon

hardware

The quadmf daemon has been tested with the following hardware:

epu452

configuration

baud_rate (number) default: 115200
from uses-uart

c_1_mode (string) default: pH&ISE
assigns function types to each channel input

c_1_units (string) default: pH
assign units to channel 1 input

c_2_mode (string) default: off
assigns function types to each channel input

c_2_units (string)
assign units to channel 2 input

c_3_mode (string) default: off
assigns function types to each channel input

c_3_units (string)
assign units to channel 3 input

c_4_mode (string) default: off
assigns function types to each channel input

c_4_units (string)
assign units to channel 4 input

serial_port (string)
from uses-uart

port (integer)
TCP port for daemon to occupy.
from is-daemon

serial (string) default: NULL
Serial number for the particular device represented by the daemon
from is-daemon

make (String) default: NULL
from is-daemon

model (String) default: NULL
from is-daemon

methods

Daemons with the quadmf trait expose the following public methods:

blink
LEDs on quadmf front panel blink once

remove_calibration
wipes calibration information for a given channel
Arguments:

chno, {'type': 'integer', 'description': 'channel number'}

add_calibration_point
adds one calibration point with a point index and known value to a given channel
Arguments:

chno, {'description': 'channel number', 'type': 'integer'}

pointno, {'description': 'calibration point index', 'type': 'integer'}

knownval, {'description': 'known calibration value', 'type': 'number'}

raw_write
formats an input string and passes to the quadmf
Arguments:

string, {'description': 'string in plain text to be sent', 'type': 'string'}

direct_serial_write
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
Arguments:

message, {'type': 'string'}

busy ➜ boolean
Returns true if daemon is currently busy.
from is-daemon

id ➜ dictionary
JSON object with information to identify the daemon, including name, kind, make, model, serial.
from is-daemon

get_config_filepath ➜ string
String representing the absolute filepath of the configuration file on the host machine.
from is-daemon

get_config ➜ dictionary
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_traits ➜ [string]
Get a full list of the daemon traits.
from is-daemon

get_state ➜ dictionary
Get daemon state, as saved in the state.toml file.
from is-daemon

set_state
Set daemon state. Accepts any subset of the state dictionary, dynamically.
from is-daemon

list_methods ➜ [string]
Get an array of all known public method names.
from is-daemon

shutdown
Cleanly shutdown (or restart) daemon.
from is-daemon
Arguments:

restart, {'type': 'boolean', 'default': False}

help ➜ string
If method not given, return a human-readable string with information about the daemon as a whole. If method is given, return a human-readable string with the signature of the method on the first line and a description of the method on subsequent lines. The signature is not specified to be in any particular language. It is intended for usage by humans ONLY.
from is-daemon
Arguments:

method, {'type': 'string'}


built 2020-05-24 18:31:17                                      CC0: no copyright