EAMs from build XXXX (TODO: update once in stable build) have an XML file contained in a non-volatile EEPROM that specify the full hardware configuration of the unit. This includes which peripherals (I²C power monitors, serial ports etc.) are attached as well as some other information such as serial number(s) and part number(s), if those were stored at production time. This page documents the format of the XML file.
The data stored in the EEPROM must allow the code to determine:
…
There is no need for an XML declaration, although one may be present (but no
encodings other than UTF-8 can be used). A document type declaration must not
be present. The namespace
http://www.guralp.com/platinum/xmlns/calib/1.0
is to be used.
Elements from other namespaces can of course be present, but these will be
ignored (so a future expansion which adds new top-level elements should use a
new namespace for those elements, keeping the default namespace as-is). One
namespace that would be useful is
http://www.guralp.com/platinum/xmlns/part/1.0
, which has the
<part>
element for part tracking. For the purpose of this
document this namespace will have the prefix part
.
The top-level element will be <eam-hw-config>
and it may
contain the following elements:
Element | Occurrences | Description |
---|---|---|
<variant> |
Exactly one | Documents which hardware features are available (see Variants) |
<display-model> |
Exactly one | String to display to user as model number (arbitrary) |
<display-serial> |
Exactly one | String to display to user as serial number (arbitrary) |
<ina209> |
Zero or more | Details of INA209 power monitor (see INA209) |
<serial-port-setting> |
Zero or more | Factory-default setting of serial port (see Serial port setting) |
<lcd> |
Zero or one | Documents type of LCD module fitted and how to access it (see LCD) |
<part:part> |
Zero or more | See part tracking |
Codename | Description | Board assembly numbers |
---|---|---|
eam21+22+P |
Cylindrical unit with built-in DM24 module, including PCMCIA and Spyrus card for authentication purposes | ASE-DCM-1013, ASE-DCM-0021, ASE-DCM-0022 |
eam21+22 |
Cylindrical unit with built-in DM24 module, without PCMCIA | ASE-DCM-0013, ASE-DCM-0021, ASE-DCM-0022 |
eam20 |
Embedded EAM with many power switches and ports, for OBS etc. No case | ASE-DCM-2013, ASE-DCM-0020 |
eam18+W |
Round EAM, used in digital instruments or standalone, including wireless Ethernet module | ASE-DCM-0017, ASE-DCM-0018, ASE-DCM-0019 |
eam18 |
Round EAM, used in digital instruments or standalone, without wireless | ASE-DCM-0017, ASE-DCM-0018 |
eam16+16 |
Surface (Peli) EAM, 7 port variant | ASE-DCM-0013, ASE-DCM-0016 (×2) |
eam16 |
Surface (Peli) EAM, 3 port variant (standard) | ASE-DCM-0013, ASE-DCM-0016 |
eam15 |
Eskdalemuir authenticator, no longer in production | ASE-DCM-0013, ASE-DCM-0015 |
The top-level element <ina209>
records information about
an INA209 power monitor. These can vary from unit to unit as there is a shunt
resistor and potential divider whose resistor values have changed over the
course of manufacture. The INA209 description element may contain the following
children:
TODO: default on/off?
Element | Occurrences | Description |
---|---|---|
<codename> |
Exactly one | Name of I/O line (e.g. Port_A ) |
<i2c-address> |
Exactly one | Address on I²C bus (see I²C address scheme) |
<shunt |
Exactly one | Shunt resistance in Ω |
<pdiv |
Exactly one | Potential divider ratio (divide measured voltage by this value to get real external voltage) |
The top-level element <serial-port-setting>
is used to
record what the default setting for a port should be after factory settings
are restored. It is optional, as the default Platinum configuration files will
often be appropriate. The element contains the following children:
Element | Occurrences | Description |
---|---|---|
<codename> |
Exactly one | Name of port config file (PortDO, PortA, … PortG, PortSA1, PortSA2 ) |
<display-name> |
Exactly one | Name to display to user |
<device> |
Exactly one | Path to character device node |
<baud> |
Exactly one | Default baud rate, as an integer |
<function> |
Exactly one | Name of function as per configuration files |
The top-level element <lcd>
is used to record that an
LCD module has been attached to the EAM and gives the size of the display as
well as its I²C address. The element contains the following children:
Element | Occurrences | Description |
---|---|---|
<i2c-address> |
Exactly one | Address on I²C bus (see I²C address scheme) |
<size> |
Exactly one | Size in columns by rows, written as COLSxROWS (using the
letter 'x' as a separator, as per LCDproc) |