Top level PC -> Microcontroller commands

RESET

Command for doing general reset of test system. Cutoff all power, end all tests, re-initialise

  • TEST_BOARD_RESET

Power supplies

POWER_UP_TEST_DTM0

[DTM0, DTM1, DTM2, TCM]

Turn on requested module. Check current for both 1V5 and 2V5. Must be below top limit and (possibly) above bottom limit. Turns power supply off immediately if not. Turn off power once test is complete.

Expected responses:

  • TEST_PASS_1V5_[DTM0]:Measured value OR TEST_FAIL_1V5_[DTM0]:Measured value
  • TEST_PASS_2V5_[DTM0]:Measured value OR TEST_FAIL_2V5_[DTM0]:Measured value
  • TEST_COMPLETE
TO DO: Consider adding options for setting current limits over UART

Set module current thresholds

The module overcurrent thresholds used in the power on test may be set as follows:

DTM_1V5_TRH:0000 to set the DTM 1V5 overcurrent threshold to 0000 mA

DTM_2V5_TRH:0000 to set the DTM 2V5 overcurrent threshold to 0000 mA

TCM_1V5_TRH:0000 to set the TCM 1V5 overcurrent threshold to 0000 mA

TCM_2V5_TRH:0000 to set the TCM 2V5 overcurrent threshold to 0000 mA

The microcontroller will respond to each command with exactly the same message format, with a value representing the actual set point used by the microcontroller.

PWR_CTRL

Turn on/off selected modules

VALUE: ABCD

Where:

  • A is 0/1 (on/off) for DTM0
  • B is 0/1 (on/off) for DTM1
  • C is 0/1 (on/off) for DTM2
  • D is 0/1 (on/off) for TCM
Expected responses:
  • POWER_STATUS:0000
    • (Exactly the same format - to confirm that operation was successful)

PWR_MEAS

VALUE: ABCD

Where:

  • A is 0/1 (on/off) for DTM0
  • B is 0/1 (on/off) for DTM1
  • C is 0/1 (on/off) for DTM2
  • D is 0/1 (on/off) for TCM
Measure current from active module. Averaging performed on PIC: 5 - 10 values.

Expected responses:

  • CURRENT_1V5_[DTM0]:Measured value
  • CURRENT_2V5_[DTM0]:Measured value
  • TEST_COMPLETE

Measurements

TEMP_MEAS

Measure temperature from all modules. Averaging performed on PIC: 5 - 10 values.

Expected responses:

  • TEMP_[DTM0]:Measured value
  • TEST_COMPLETE

CLK_MEAS

Measure all clocks for given multiplexer configuration

VALUE:0

Where 0 is an integer between 0 and 3, representing input multiplexer setting

Expected responses:

  • CLK_MEAS_0:0.00
  • CLK_MEAS_1:0.00
  • CLK_MEAS_2:0.00
  • CLK_MEAS_3:0.00
  • TEST_COMPLETE
Where value is a float, typically with 2 decimal places, representing the time for 2^26 clock cycles in ms. If zero returned, then operation has timed out for that measurement.

READ_DAC

Read the DAC value for each of the four DAC pins on the TCM (AN10, AN11, AN12, AN13 for DAC0 to DAC 3). No value is provided. The input value will be between 0 and 1 V. The value should be a voltage as a float, with units of mV.

Expected responses:

  • DAC_0:0.00
  • DAC_1:0.00
  • DAC_2:0.00
  • DAC_3:0.00
  • TEST_COMPLETE

TEST_ADC

Read the voltage currently applied to the TCM ADCs, so that they can be checked against a reference. This uses pin AN14. No value is provided. The input value will be between 0 and 1 V. The value should be a voltage as a float, with units of mV.

Expected responses:

  • TCM_ADC:0.00
  • TEST_COMPLETE

TEST_SPI

VALUE:11111111

Value is a string of single-digit ints representing the number of times each slave select is expected to be asserted. The first character represents SS0, the second SS1 and so on.

Measure the number of clock cycles and check correct functioning of the SPI slave select lines by counting the total number of clock cycles and checking that each slave select line has gone low once only.

The slave select response consists of 8 single digit decimal ints representing the 8 slave select lines in the sequence SS_0, SS_1 ... SS_7. Each time a slave select line goes low, whilst the others stay high, the int for its value should be incremented by 1. E.g. a fully working system should give 11111111, one in which there is no slave select response would give 00000000.

The number of clock cycles associated with each slave select should be returned as a decimal int.

Expected responses:

  • SS:11111111
  • CLK_SS0:128
  • CLK_SS1:128
  • CLK_SS2:128
  • CLK_SS3:128
  • CLK_SS4:128
  • CLK_SS5:128
  • CLK_SS6:128
  • CLK_SS7:128
  • TEST_COMPLETE

Module configuration

Configuration on start-up

In addition to the defaults specified below, the following pins should be configured on start-up:

  • RA10 = 0 (TCM_TX_DISABLE)
  • RA5, RA6, RA7, RA9 = 1 (All module power supplied disabled)
  • RA14 (TCM_RESETB_SCA) and RC4 (TCM_RESETB_GBTX) should be tristate (input)
  • All of PORTB should be configured as an input (tristate)
  • All of PORTD should be configured as an input (tristate)
  • RC1-3, (JTAG_TMS, DTM1temp, DTM2temp) set as inputs (tristate)
  • RG6-8 (SPI pins) set as inputs (tristate)

SET_CONF_SEL

Set value of config select pin (RD13). Value provided is 1 or 0.

Important: The CONFIG_SELECT pin is pulled low on the module. This command should therefore tristate the output if a 0 is required and set an output of zero if a 1 is required.

Response: CONF_SEL_SET:value

Default: 1

SET_TCM_TX_DATA_VALID

Set value of TCM's data valid pin (RC14), to check that header changes. Value provided is 1 or 0.

Response: TCM_TX_DATA_VALID_SET:value

Default: 1

GET_TCM_RX_DATA_VALID

Get value of TCM's RX data valid pin (RC13) to look for header changes. No value is provided

Response: TCM_RX_DATA_VALID:value

GET_READY_STATUS

Read the value of the TX and RX ready status for all modules

Response: READY_STATUS:value

The value in the response is made up of 8 characters, each a 1 or a 0 representing the state of the TX/RX ready pins for each module in the following order:

DTM0_GBTX0, DTM0_GBTX1, DTM1_GBTX0, DTM1_GBTX1, DTM0_GBTX2, DTM2_GBTX1, TCM_GBTX_TX, TCM_GBTX_RX

This corresponds to returning the values of the following I/Os:

RF2, RF3, RD14, RD15, RF12, RF13, RF0, RF1

RESETB_TCM_GBTX

Set value of TCM GBTX RESETB pin (RC4). Value provided is 1 or 0.

Important: The RESETB pin is pulled up through a low pass filter on the module. This command should therefore tristate the output if a 1 is required and set an output of zero if a 0 is required.

Response: TCM_GBTX_RESET:value

Default: 1

RESETB_TCM_SCA

Set value of TCM SCA RESETB pin (RA14). Value provided is 1 or 0.

Important: The RESETB pin is pulled up through a low pass filter on the module. This command should therefore tristate the output if a 1 is required and set an output of zero if a 0 is required.

Response: TCM_SCA_RESET:value

Default: 1

SET_DATA_LOOPBACK

Set value of pin enabling data loopback from TCM to DTM (RA4). Value provided is 1 or 0.

Response: DATA_LOOPBACK_SET:value

Default: 0

GET_RSSI

Read the value of the RSSI pin on the TCM (RC1/AN16). This is an analogue voltage between 0 and 1 V. Please return the voltage as a float, with units of mV.

Response: RSSI:value

Tracking and user interface

INDICATE_DTM0

[DTM0, DTM1, DTM2, TCM, OFF]

Flash red indicator LED next to named module to indicate that its barcode should now be scanned. Only one module should be able to be selected at a time, so a new INDICATE_X command will overrule the previous one. To switch off the indicator, send INDICATE_OFF. Suggested flash rate is 2 Hz.

It is not necessary for the PIC to be able to do anything else when indicating, so the firmware can be quite simple (although obviously new UART commands must still be accepted and acted upon!). The Python will automatically un-set the indicator if another unrelated command is received from the UDAQ.

Expected responses:

  • SCAN_[DTM0] (i.e. DTM0, DTM1, DTM2, TCM or OFF)

MTB_ID_REQ

Return the unique ID of the tester board used (read from pins 8 and 9 of tester board LCD connector)

This corresponds to the following boards

Board ID (written on PCB) Board unique ID (returned by microcontroller) Physical location of board Comments
MTB#1 0b00 Cambridge First board manufactured and tested
MTB#2 0b01 Bucharest  
MTB#3 0b10 Bucharest  
Expected responses:
  • MTB_ID:value

Microcontroller -> Top level PC commands

Java <> Python

Always acknowledge commands

Command format

  • Line by line
  • Sequence number
  • Command
  • Data
0000|Command|Response\n

Match sequence number on response. Multiple responses to the same command from Java should have the same sequence number.

Acknowledge commands. If return data, include after |. Define format on a command-by-command basis

  • 0000|ACK_OK|DATAFIELD - Message was received OK. Data field is optional. Note that almost all tests return at least one additional message with the same sequence number, described below.
  • 0000|ACK_ERROR|DATAFIELD - A message was received, but there was a problem with it. Usually an error code will be included. Error codes are described in the table below:
Error code Description
0 Missing/invalid sequence number
1 Missing | separator
2 Invalid command (command not recognised)
3 Invalid message terminator (missing \n at end of message)
4 Error message received
5 No data in received message
If the client receives an out-of-sequence command it should not execute the command but should instead reset its internal sequence number to match the received command and respond with ACK_ERROR and an error code.

The Java GUI may send a NOP (do nothing) command. The client should reset its internal sequence number to match the received command and respond with ACK_OK.

Commands and responses issued and returned to Java program

A summary of the commands sent by muDaq can be viewed here.

Note that the required format of a sequence number and | preceding the message and the the required \n message terminator are assumed in these descriptions

Power up test

COMMAND: POWER_UP_TEST|DTMS=1000,5000;TCM=1000,5000

This command will run a power up test on each listed module. The module will be switched on and its power supply current measured. If the current exceeds the set limits, the module will immediately be powered down and an error reported. Otherwise, a pass will be reported and the module will subsequently be switched off.

Command made up of "POWER_CONTROL" keyword and a series of commands separated by vertical bars, representing each module to be tested. For each module to be tested, the command is of the form MODULE_NAME=1V5_I_LIMIT,2V5_I_LIMIT where MODULE_NAME is either DTMS, DTM0, DTM1, DTM2 and TCM, and 1V5_I_LIMIT and 2V5_I_LIMIT are the current limits (in mA) for the 1V5 and 2V5 respectively. If no current limit is specified, 0 will be assumed and the test will fail. Note that only one of the DTM options can be selected at once. DTMS tests all the DTMS with the same current limit set points, whilst DTM0, 1, 2 tests just those specific DTMs.

RESPONSE:

The response is made up of up to five fields. The first is the command POWER_UP_TEST. The others give the test results for each module in the following format: MODULE_NAME:1V5_STATUS=STATUS,1V5_VALUE=0,2V5_STATUS=STATUS,2V5_VALUE=0, where MODULE_NAME is either DTM0, DTM1, DTM2 and TCM, STATUS is PASS, FAIL_UC (under-current failure, for input current <150 mA) and FAIL_OC (over-current failure, where input current exceeds the set threshold). The value is the integer value of current in mA.

EXAMPLE RESPONSE TO POWER_UP_TEST|1100: 253|POWER_UP_TEST|DTM0:1V5_STATUS=PASS,1V5_VALUE=0.00,2V5_STATUS=PASS,2V5_VALUE=0.00|DTM1:1V5_STATUS=PASS,1V5_VALUE=0.00,2V5_STATUS=PASS,2V5_VALUE=0.00|DTM2:1V5_STATUS=PASS,1V5_VALUE=0.03,2V5_STATUS=PASS,2V5_VALUE=0.00|TCM:1V5_STATUS=PASS,1V5_VALUE=0.00,2V5_STATUS=PASS,2V5_VALUE=0.00|TEST_STATUS=COMPLETE\n

Power control

COMMAND: POWER_CONTROL|1111 or POWER_CONTROL|15 or POWER_CONTROL|0xF

Command made up of "POWER_CONTROL" keyword and a value. The value may be given as either a string of four characters that may be either one or zero, or as an integer between 0 and 15.

The four characters correspond to DTM0, DTM1, DTM2 and TCM in that order. All devices with a 1 will be switched on. All devices with a 0 will be switched off. Any character that is not a 1 is assumed to be a zero. (e.g. 1010 will test DTM0 and DTM2, but not DTM1 and the TCM)

If integers (decimal or hex) are given, they respond to a binary value representing DTM0 in bit 0, DTM1 in bit 1, DTM2 in bit2, TCM in bit 3.

RESPONSE:

The response is made up of 2 fields. The first is the command POWER_CONTROL. The second gives the status of the action, either OK if completed correctly, or ERROR

EXAMPLE RESPONSE TO MEASURE_POWER|1100: 253|POWER_CONTROL|OK\n

Measure power

COMMAND: MEASURE_POWER|1111 or MEASURE_POWER|15 or MEASURE_POWER|0xF

Command made up of "MEASURE_POWER" keyword and a value. The value may be given as either a string of four characters that may be either one or zero, or as an integer between 0 and 15.

The four characters correspond to DTM0, DTM1, DTM2 and TCM in that order. All devices with a 1 will be tested. Any character that is not a 1 is assumed to be a zero. (e.g. 1010 will test DTM0 and DTM2, but not DTM1 and the TCM)

If integers (decimal or hex) are given, they respond to a binary value representing DTM0 in bit 0, DTM1 in bit 1, DTM2 in bit2, TCM in bit 3.

RESPONSE:

The response is made up of 6 fields. The first is the command MEASURE_POWER. There is then a field for each module consisting of the module name followed by a colon, then a comma separated list of the individual measurements made for that module in the form testname=value. A sixth field gives the overall TEST_STATUS, which can be marked as PASS, COMPLETE, or FAIL

EXAMPLE RESPONSE TO MEASURE_POWER|1100: 253|MEASURE_POWER|DTM0:1V5=144.85,2V5=81.69|DTM1:1V5=48.42,2V5=31.34|DTM2:1V5=NT,2V5=NT|TCM:1V5=NT,2V5=NT|TEST_STATUS=COMPLETE\n

Note that returned values are floats with units of mA

Measure temperature

COMMAND: MEASURE_TEMPERATURE|1111 or MEASURE_TEMPERATURE|15 or MEASURE_TEMPERATURE|0xF

Command made up of "MEASURE_TEMPERATURE" keyword and a value. The value may be given as either a string of four characters that may be either one or zero, or as an integer between 0 and 15.

The four characters correspond to DTM0, DTM1, DTM2 and TCM in that order. All devices with a 1 will be tested. Any character that is not a 1 is assumed to be a zero. (e.g. 1010 will test DTM0 and DTM2, but not DTM1 and the TCM)

If integers (decimal or hex) are given, they respond to a binary value representing DTM0 in bit 0, DTM1 in bit 1, DTM2 in bit2, TCM in bit 3.

RESPONSE:

The response is made up of 6 fields. The first is the command MEASURE_TEMPERATURE. There is then a field for each module consisting of the module name followed by a colon, then a comma separated list of the individual measurements made for that module in the form testname=value. A sixth field gives the overall TEST_STATUS, which can be marked as PASS, COMPLETE, or FAIL

EXAMPLE RESPONSE TO MEASURE_TEMPERATURE|1100: 253|MEASURE_TEMPERATURE|DTM0:1V5=25.1,2V5=30.2|DTM1:1V5=27.8,2V5=25.5|DTM2:1V5=NT,2V5=NT|TCM:1V5=NT,2V5=NT|TEST_STATUS=COMPLETE\n

Note that returned values are floats with units of degrees C

Measure clocks

COMMAND: MEASURE_CLOCKS

Command made up of the "MEASURE_CLOCKS" keyword.

RESPONSE:

The response is made up of 17 fields. The first is the command MEASURE_CLOCKS. Then there is a field for each clock consisting of the clock name and its frequency in the form clockname=frequency. A 17th field gives the overall TEST_STATUS, which can be marked as COMPLETE OR ERROR.

EXAMPLE RESPONSE TO MEASURE_CLOCKS: 253|MEASURE_CLOCKS|DTM0_REFCLK=4.197799|DTM0_FPGA_CLK=4.360967|DTM1_REFCLK=4.197799|DTM1_FPGA_CLK=4.360967|DTM2_REFCLK=4.197799|DTM2_FPGA_CLK=4.360967|TCM_CLK3=4.197799|TCM_CLK4=134.223097|TCM_CLK5=134.223097|TCM_DCLK0=134.223097|TCM_DCLK8=134.223097|TCM_DCLK16=4.360967|DTM0_GBTX1_CLK_OUT=671.088640|DTM1_GBTX1_CLK_OUT=671.088640|DTM2_GBTX1_CLK_OUT=671.088640|TEST_STATUS=COMPLETE\n

Note that returned values are floats with 6 decimal places and units of MHz

Read DACs

COMMAND: READ_DACS

Command made up of the "READ_DACS" keyword.

RESPONSE:

The response is made up of 6 fields. The first is the command READ_DACS. Then there is a field for each DAC result and its value in mV, in the form dac_name=voltage. The final field gives the overall TEST_STATUS, which can be marked as COMPLETE OR ERROR.

EXAMPLE RESPONSE TO READ_DACS: 253|DAC0=0.123|DAC1=0.123|DAC2=0.123|DAC3=0.123|TEST_STATUS=COMPLETE\n

Note that returned values are floats with units of mV

Test ADC

COMMAND: TEST_ADC

Command made up of the "TEST_ADC" keyword. Used for independently measuring the input voltage to the TCM ADC

RESPONSE:

The response is made up of 3 fields. The first is the command TEST_ADC. The second is a field for the ADC input voltage in mV, in the form tcm_adc=voltage. The final field gives the overall TEST_STATUS, which can be marked as COMPLETE OR ERROR.

EXAMPLE RESPONSE TO READ_DACS: 253|TCM_ADC=0.512|TEST_STATUS=COMPLETE\n

Note that returned values are floats with units of mV

Reset

COMMAND: RESET

Command made up of "RESET" keyword. This command resets the microcontroller to its initialised state and stops all running tests on the hardware

RESPONSE:

The response is made up of 2 or 3 fields. The first is the command RESET. The second is the status - either OK or ERROR. If there is an error, a third field with an error code is included

EXAMPLE RESPONSE TO RESET: 253|RESET|OK\n

Module configuration/status commands

SET_CONF_SEL

COMMAND: SET_CONF_SEL|0

Command made up of "SET_CONF_SEL" keyword and a value. The value is either 0 or 1 and represents the value of the CONF_SEL pin. Setting 1 will allow configuration from I2C, 0 allows configuration from the optical link. The default is 1.

RESPONSE:

The response is made up of 2 or 3 fields. The first is the command SET_CONF_SEL. The second is the status - either OK or ERROR. If there is an error, a third field with an error code is included

EXAMPLE RESPONSE TO SET_CONF_SEL: 253|SET_CONF_SEL|OK\n

SET_TCM_TX_DATA_VALID

COMMAND: SET_TCM_TX_DATA_VALID|0

Command made up of "SET_TCM_TX_DATA_VALID" keyword and a value. The value is either 0 or 1 and represents the value of the TCM TX DATAVALID pin. Setting 1 will cause the DTM to transmit valid headers. The default is 1

RESPONSE:

The response is made up of 2 or 3 fields. The first is the command SET_TCM_TX_DATA_VALID. The second is the status - either OK or ERROR. If there is an error, a third field with an error code is included

EXAMPLE RESPONSE TO SET_TCM_TX_DATA_VALID: 253|SET_TCM_TX_DATA_VALID|OK\n

GET_TCM_RX_DATA_VALID

COMMAND: GET_TCM_RX_DATA_VALID

Command made up of "GET_TCM_RX_DATA_VALID" keyword, with no value. The response to this command returns the current state of the TCM's RX data valid pin.

RESPONSE:

The response is made up of 2 fields. The first is the command GET_TCM_RX_DATA_VALID. The second is the value - either 1 or 0 if the pin is read correctly, or "ERROR" if not.

EXAMPLE RESPONSE TO SET_TCM_TX_DATA_VALID: 253|GET_TCM_RX_DATA_VALID|1\n

GET_READY_STATUS

COMMAND: GET_READY_STATUS

Command made up of "GET_READY_STATUS" keyword, with no value. The response to this command returns the current state of the TCM's RX data valid pin.

RESPONSE:

The response is made up of 10 fields. The first is the command GET_READY_STATUS. The following 8 fields represent the ready status of each GBTX transceiver. The final field gives the overall test status.

EXAMPLE RESPONSE TO GET_READY_STATUS: 253|GET_READY_STATUS|DTM0_GBTX0=1|DTM0_GBTX1=1|DTM1_GBTX0=1|DTM1_GBTX1=1|DTM0_GBTX2=1|DTM2_GBTX1=1|TCM_GBTX_TX=1|TCM_GBTX_RX=1|TEST_STATUS=COMPLETE\n

SET_RESETB_TCM_GBTX

COMMAND: SET_RESETB_TCM_GBTX|0

Command made up of "SET_RESETB_TCM_GBTX" keyword and a value. The value is either 0 or 1 and represents the value of the TCM GBTX RESETB pin. Setting 0 will reset the TCM's GBTX. Setting 1 will allow normal operation. The default is 1.

RESPONSE:

The response is made up of 2 or 3 fields. The first is the command SET_RESETB_TCM_GBTX. The second is the status - either OK or ERROR. If there is an error, a third field with an error code is included

EXAMPLE RESPONSE TO SET_RESETB_TCM_GBTX: 253|SET_RESETB_TCM_GBTX|OK\n

SET_RESETB_TCM_SCA

COMMAND: SET_RESETB_TCM_SCA|0

Command made up of "SET_RESETB_TCM_SCA" keyword and a value. The value is either 0 or 1 and represents the value of the TCM SCA RESETB pin. Setting 0 will reset the TCM's SCA. Setting 1 will allow normal operation. The default is 1.

RESPONSE:

The response is made up of 2 or 3 fields. The first is the command SET_RESETB_TCM_SCA. The second is the status - either OK or ERROR. If there is an error, a third field with an error code is included

EXAMPLE RESPONSE TO SET_RESETB_TCM_SCA: 253|SET_RESETB_TCM_SCA|OK\n

SET_DATA_LOOPBACK

COMMAND: SET_DATA_LOOPBACK|0

Command made up of "SET_DATA_LOOPBACK" keyword and a value. Setting this value to 1 will enable the fanout buffers to send the output of the TCM data downlinks to the DTM E-link uplinks. Setting this value to 0 will disable the fanout buffers.

RESPONSE:

The response is made up of 2 or 3 fields. The first is the command SET_DATA_LOOPBACK. The second is the status - either OK or ERROR. If there is an error, a third field with an error code is included

EXAMPLE RESPONSE TO SET_DATA_LOOPBACK: 253|SET_DATA_LOOPBACK|OK\n

GET_RSSI

COMMAND: GET_RSSI

Command made up of "GET_RSSI" keyword, with no value. The response to this command returns the voltage on the RSSI pin of the TCM

RESPONSE:

The response is made up of 2 fields. The first is the command GET_RSSI. The following field represents the mV value of the RSSI pin as a decimal float if it can be read. If an error occurs, this field contains "ERROR" instead.

Note that this function is not fully implemented yet and will always return 0

EXAMPLE RESPONSE TO SET_TCM_TX_DATA_VALID: 253|GET_RSSI|564.24\n

INDICATE

COMMAND: INDICATE|0000

Command made up of "INDICATE" keyword and a value consisting of four values. The four characters correspond to DTM0, DTM1, DTM2 and TCM in that order. The tester board will indicate to the user that the specified module should be scanned by flashing the red LED next to it. Setting the value to 0000 will disable all indicators. Note that indicators should always be set to 0 before continuing on to further tests using the tester board.

Important: Only one module is allowed to be indicated at a time. Therefore, if more than one '1' is set in the value, no modules will be indicated and an error will be returned instead.

RESPONSE:

The response is made up of 2 fields. The first is the command INDICATE. The following field contains "OK" if the indicator was set as expected. If an error occurs, this field contains "ERROR" instead. If an error occurs, it is likely to be because an attempt has been made to set more than one indicator at once.

EXAMPLE RESPONSE TO INDICATE: 253|INDICATE|OK\n

GET_MTB_ID

COMMAND: GET_MTB_ID

Command made up of "GET_MTB_ID" keyword, with no value. The response to this command returns the unique two bit ID of the module test board as an integer. If integer conversion cannot be performed, "ERROR" is returned instead

RESPONSE:

The response is made up of 2 fields. The first is the command GET_MTB_ID. The following field contains the value as a decimal integer.

EXAMPLE RESPONSE TO GET_MTB_ID: 253|GET_MTB_ID|2\n

-- StephenWotton - 2018-11-23

Topic attachments
I Attachment History Action Size Date Who Comment
Unknown file formatrar PDM_Module_uC_v2_21.rar r1 manage 181.0 K 2018-12-03 - 10:17 VladMihaiPlacinta v2_21 = latest version of dspic33 uC for module tester board
Edit | Attach | Watch | Print version | History: r11 < r10 < r9 < r8 < r7 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r11 - 2019-04-11 - StephenWotton
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    LHCb All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback