Control board configuration reference

This document describes the control-board configuration sections and their properties.

Note

Most properties have defaults and can be left out, but not all defaults are sensible, so be warned when not defining a properties 😁.

general

General settings.

Expected in file: /etc/control/control.ini

Example configuration:

[general]
chip_power_pin=50
scripts=/etc/control/scripts

property

description

chip_power_pin

The GPIO pin which controls the power to the carrier board

scripts

Scripts directory (not used)

rpc

Google RPC settings

Expected in file: /etc/control/control.ini

Example configuration:

[rpc]
port=50051

property

description

port

The port to listen on for RPC requests

peripherals

Peripherals configuration.

Expected in file: /etc/control/control.ini

[peripherals]
file=/etc/control/peripherals.ini

property

description

file

Primary peripherals file

fan

Fan control.

Expected in file: /etc/control/control.ini

[fan]
min=45
max=65

property

description

min

Minimum temperature, below this the fan stops

max

Maximum temperature, up and above fan is at max speed

carrier_config

Carrier board configuration

Expected in file: /etc/control/control.ini

[carrier_config]
bus=i2c1
mux_addr=0x70
mux_val=1
eeprom_addr=0x50
eeprom_size=8192
configfile=/tmp/eeprom/carrier.ini

Note

configfile is the locaton of the carrier.ini once the content of the EEPROM has been extracted inside /tmp/eeprom.

property

description

bus

The i2c bus routed to the carrier board

mux_addr

The mux address the i2c board is behind, if any

mux_val

The mux port on which the board is located

eeprom_addr

The i2c address of the carrier board EEPROM

eeprom_size

Carrier board EEPROM size in bytes

configfile

Main carrier configuration file

xgbe

10 GbE configuration.

Expected in file: /etc/control/control.ini

[xgbe]
pri_mac_bus=i2c0
pri_mac_addr=0x51
sec_mac_bus=i2c0
sec_mac_addr=0x51
link_speed=2560

property

description

pri_mac_bus

Primary 1 GbE MAC address (EEP)ROM chip i2c bus

pre_mac_addr

Primary 1 GbE MAC address (EEP)ROM chip i2c address

sec_mac_bus

Secondary 1 GbE MAC address (EEP)ROM chip i2c bus

sec_mac_addr

Secondary 1 GbE MAC address (EEP)ROM chip i2c address

link_speed

Link-speed in MHz between Timepix and control board SoC

board

Carrier board definition

Expected in file: <carrier-board EEPROM>/carrier.ini

[board]
type=NIKHEF_TPX4_V2
serial=001

property

description

type

Carrier board version, one of:

NIKHEF_TPX4_V1

Nikhef carrier v1

NIKHEF_TPX4_V2

Nikhef carrier v2

NIKHEF_TPX4_V3

Nikhef carrier v3

serial

The serial number of this board

chip<#>

Pixel chip configuration. For each chip a different [chip<#>] section should exist.

Expected in file: <carrier-board EEPROM>/carrier.ini

The chip section defines the initialization code to run, the location of the dac_out, and the mapping of pixel chip output to the corresponding channel on the spidr4 control board.

[chip0]
type=TIMEPIX4
init=/etc/control/timepix4v1_carrier2.adat
dac_out=BOTTOM



; Physical TPX4 to board channel mapping:
top0=0
top1=1
top2=2
top3=3
top4=4
top5=5
top6=6
top7=7
bot0=8
bot1=9
bot2=10
bot3=11
bot4=12
bot5=13
bot6=14
bot7=15

property

description

type

Pixel chip type, for now only ‘TIMEPIX4’

init

Initialization ‘addressible data’ file to load

dac_out

Output location of the pixelchip DAC, BOTTOM or TOP

top<#>/bot<#>

Mapping from pixel-chip pin to spidr4 data-line

chip<#>_info

Pixel chip diagnostic sensor mapping, per chip <#>.

These mappings are composed of of [<namespace>/]<partname>/<value>, where name-space is optional. However, when the sensor IC is located it almost always has a namespace.

Expected in file: <carrier-board EEPROM>/carrier.ini

[chip0_info]
temp=carrier/temp/temperature
cur_vdda=carrier/vdda/current
cur_vdd=carrier/vdd/current
ext_adc=carrier/adc/volt

property

description

temp

Temperature sensor for this pixel chip

cur_vdda

Analog current as sourced by this chip

cur_vdd

Digital current, as sourced by this chip

ext_adc

External ADC to read the DAC out