Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
P
PyPCC
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Iterations
Wiki
Requirements
Jira
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Test cases
Artifacts
Deploy
Releases
Package registry
Container registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review analytics
Issue analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
LOFAR2.0
PyPCC
Commits
acb4ad79
Commit
acb4ad79
authored
2 years ago
by
Paulus Kruger
Browse files
Options
Downloads
Patches
Plain Diff
RCU2H test config added
parent
ee07ebbc
No related branches found
No related tags found
No related merge requests found
Pipeline
#46798
passed
2 years ago
Stage: image
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
pypcc/config/RECVTR_HB_TEST.yaml
+596
-0
596 additions, 0 deletions
pypcc/config/RECVTR_HB_TEST.yaml
with
596 additions
and
0 deletions
pypcc/config/RECVTR_HB_TEST.yaml
0 → 100644
+
596
−
0
View file @
acb4ad79
version
:
"
1.0"
description
:
"
1234"
name
:
"
RECVTR"
drivers
:
-
name
:
I2C1
#TCA9548
type
:
i2c_iss
parameters
:
[
4
]
#COM port
-
name
:
I2C_RCU
type
:
i2c_dev
#I2C devices
parent
:
I2C1
status
:
CLK_I2C_STATUS
-
name
:
I2C_HBAT
type
:
hba1
#Special driver to manage HBAT1s.
parent
:
I2C_RCU
devreg
:
[
0x40.0xFF
]
#I2C broadcast register
parameters
:
[
24
]
#PPS GPIO pin
-
name
:
I2Cbb1
type
:
i2cbitbang1
#I2C bitbang via GPIO expander
devreg
:
[
IO3.GPIO2
,
IO3.GPIO2
,
IO3.CONF2
]
parameters
:
[
5
,
6
,
6
]
#pins
parent
:
I2C_RCU
-
name
:
I2Cbb2
type
:
i2cbitbang1
devreg
:
[
IO3.GPIO2
,
IO3.GPIO2
,
IO3.CONF2
]
parameters
:
[
4
,
6
,
6
]
parent
:
I2C_RCU
-
name
:
I2Cbb3
type
:
i2cbitbang1
devreg
:
[
IO3.GPIO2
,
IO3.GPIO2
,
IO3.CONF2
]
parameters
:
[
3
,
6
,
6
]
parent
:
I2C_RCU
-
name
:
SPIbb1
type
:
spibitbang1
#SPI bitbang via GPIO expander: CLK, SDIO, SDIOdir,CS
devreg
:
[
IO3.GPIO1
,
IO3.GPIO1
,
IO3.CONF1
,
IO3.GPIO2
]
parameters
:
[
1
,
0
,
0
,
0
]
parent
:
I2C_RCU
-
name
:
SPIbb2
type
:
spibitbang1
devreg
:
[
IO3.GPIO1
,
IO3.GPIO1
,
IO3.CONF1
,
IO3.GPIO2
]
parameters
:
[
3
,
2
,
2
,
1
]
parent
:
I2C_RCU
-
name
:
SPIbb3
type
:
spibitbang1
devreg
:
[
IO3.GPIO1
,
IO3.GPIO1
,
IO3.CONF1
,
IO3.GPIO2
]
parameters
:
[
5
,
4
,
4
,
2
]
parent
:
I2C_RCU
#This is the I2C devices in the RCU
device_registers
:
-
name
:
IO
dim
:
4
description
:
[
IO-Expander for filter selection
,
IO-Expander for ON/OFF
,
Band
,
BUFx2
,
IO-Expander for ADC control
]
address
:
[
0x75
,
0x76
,
0x20
,
0x77
]
device
:
[
TCA9539
,
TCA9539
,
TCA6416
,
TCA9539
]
driver
:
I2C_RCU
registers
:
-
name
:
CONF1
description
:
Direction of port1
address
:
6
store
:
True
-
name
:
CONF2
description
:
Direction of port2
address
:
7
store
:
True
-
name
:
GPIO1
description
:
Input/Ouput port
1
address
:
[
0
,
2
]
#Read / Write address different
store
:
True
-
name
:
GPIO2
description
:
Input/Ouput port
2
address
:
[
1
,
3
]
store
:
True
-
name
:
DIR1
address
:
4
-
name
:
DIR2
address
:
5
-
name
:
ROM
description
:
IO-Expander for filter selection
address
:
0x50
driver
:
I2C1
registers
:
-
name
:
ID
description
:
Random
address
:
0xfc
-
name
:
Version
description
:
Set in production
address
:
0
-
name
:
Serial
address
:
0x20
-
name
:
AN
description
:
Monitor ADC on RCU
address
:
0x74
#was 0x14 on RCU2-DIG PCBs
device
:
LTC2495
driver
:
I2C1
registers
:
-
name
:
V_1v8
address
:
0xB080
-
name
:
V_2v5
address
:
0xB880
-
name
:
V_3v3
address
:
0xB180
-
name
:
I_Ant0
address
:
0xB980
-
name
:
I_Ant1
address
:
0xB280
-
name
:
I_Ant2
address
:
0xBA80
-
name
:
V_Ant_I0
address
:
0xB380
-
name
:
V_Ant_O0
address
:
0xBB80
-
name
:
V_Ant_I1
address
:
0xB480
-
name
:
V_Ant_O1
address
:
0xBC80
-
name
:
V_Ant_I2
address
:
0xB580
-
name
:
V_Ant_O2
address
:
0xBD80
-
name
:
Temp
address
:
0xA0C0
#This 'special' devices that uses I2C
-
name
:
HB_UC
description
:
RCU microcontroller
address
:
0x40
driver
:
I2C1
registers
:
-
{
name
:
"
waitPPS"
,
address
:
12
,
description
:
"
1=wait
for
PPS"
}
-
{
name
:
"
VREF"
,
address
:
13
,
description
:
"
0..15/16
ratio
of
Vref"
}
-
{
name
:
"
firmware"
,
address
:
0x10
,
description
:
"
software
version"
}
# - name: HB_UC_update
# description: RCU microcontroller
# address: 0x40
# driver: HBA_trigger
# registers:
# - name: wait_pps
# address: 10
-
name
:
HBAT
dim
:
3
address
:
[
0x41
,
0x42
,
0x43
]
description
:
Virtual HBAT0 interface
driver
:
I2C_HBAT
registers
:
-
name
:
XY
address
:
0x10
description
:
XY delay register
store
:
"
w"
#only store on write
-
name
:
Version
address
:
127
description
:
HBAT server version
-
name
:
ADC
dim
:
3
description
:
ADC SPI control
device
:
AD9683
driver
:
[
SPIbb1
,
SPIbb2
,
SPIbb3
]
registers
:
-
name
:
PLL_stat
description
:
PLL locked status
address
:
0x0A
-
name
:
JESD_control1
description
:
JESD link control
address
:
0x5F
-
name
:
SYNC_control
address
:
0x3A
-
name
:
CML_level
description
:
CML output adjust
address
:
0x15
-
name
:
Update
description
:
Global device uptate
address
:
0xFF
-
name
:
testmode
address
:
0x0D
-
name
:
dither
address
:
0x0C
-
name
:
JESDscramble
address
:
0x6E
-
name
:
PDWNmodes
address
:
0x08
-
name
:
DCcorrect
address
:
0x40
-
name
:
DTH
dim
:
3
description
:
CW dither source
device
:
SI4012
driver
:
[
I2Cbb1
,
I2Cbb2
,
I2Cbb3
]
address
:
0x70
registers
:
-
name
:
Freq
description
:
Frequency
address
:
[
0x1240
,
0x1140
]
-
name
:
Property
description
:
Properties
address
:
[
0x12
,
0x11
]
-
name
:
State
address
:
[
0x61
,
0x60
]
-
name
:
Start
description
:
Start CW
address
:
[
0x62
,
0x62
]
-
name
:
Stop
description
:
Stop CW
address
:
[
0x67
,
0x67
]
-
name
:
Rev
address
:
0x10
-
name
:
Tune
address
:
[
0x1221
,
0x1121
]
-
name
:
CONF
address
:
[
0x1210
,
0x1110
]
-
name
:
PA_CONFIG
address
:
[
0x1260
,
0x1160
]
store
:
True
variables
:
-
name
:
RCU_I2C_STATUS
driver
:
I2C_RCU
rw
:
ro
#server RW variable, not linked to IO
dtype
:
uint8
-
name
:
[
CH1_attenuator_dB
,
CH2_attenuator_dB
,
CH3_attenuator_dB
]
description
:
RCU Attenuation (dB)
driver
:
I2C_RCU
devreg
:
[
IO1.GPIO1
,
IO1.GPIO2
,
IO2.GPIO1
]
bitoffset
:
[
0
,
0
,
0
]
width
:
6
rw
:
rw
dtype
:
uint8
dim
:
3
-
name
:
[
CH1_band_select
,
CH2_band_select
,
CH3_band_select
]
description
:
Band select for highband 2,1,4 for 110-190,170-230,210-240
driver
:
I2C_RCU
devreg
:
[
IO2.GPIO2
,
IO2.GPIO2
,
IO4.GPIO2
]
bitoffset
:
[
0
,
3
,
0
]
width
:
3
rw
:
rw
dtype
:
uint8
-
name
:
[
RCU_IO1_GPIO1
,
RCU_IO1_GPIO2
,
RCU_IO2_GPIO1
,
RCU_IO2_GPIO2
,
RCU_IO3_GPIO1
,
RCU_IO3_GPIO2
]
driver
:
I2C_RCU
devreg
:
[
IO1.GPIO1
,
IO1.GPIO2
,
IO2.GPIO1
,
IO2.GPIO2
,
IO3.GPIO1
,
IO3.GPIO2
]
width
:
8
rw
:
ro
dtype
:
uint8
-
name
:
RCU_LED_red_on
driver
:
I2C_RCU
description
:
Red LED on front panel
devreg
:
IO2.GPIO2
bitoffset
:
6
width
:
1
rw
:
rw
dtype
:
boolean
convert_unit
:
bool_invert
-
name
:
RCU_LED_green_on
driver
:
I2C_RCU
description
:
Green LED on front panel
devreg
:
IO2.GPIO2
bitoffset
:
7
width
:
1
rw
:
rw
dtype
:
boolean
convert_unit
:
bool_invert
-
name
:
RCU_TEMP
description
:
RCU PCB Temperature (Celsius)
driver
:
I2C_RCU
devreg
:
AN.Temp
width
:
23
scale
:
4.210e-3
#Scaled 1.1 for 3.3V ref. 3.827e-3 for 3.0V #T=DATAOUT * Vref/12.25/32. Vref=1.5 V
convert_unit
:
Kelvin2Celsius
rw
:
ro
dtype
:
double
-
name
:
RCU_PWR_3V3
description
:
RCU 3.3V voltage (V)
driver
:
I2C_RCU
devreg
:
AN.V_3v3
width
:
23
scale
:
1.609e-6
#Scaled 1.1: 1.463e-6 #3.0V
rw
:
ro
dtype
:
double
-
name
:
RCU_PWR_1V8
description
:
RCU 1.8V voltage (V)
driver
:
I2C_RCU
devreg
:
AN.V_1v8
width
:
23
scale
:
7.8679e-7
#Scaled 1.1: 7.1526e-7 #3.0V ref
rw
:
ro
dtype
:
double
-
name
:
RCU_PWR_2V5
description
:
RCU 2.5V voltage (V)
driver
:
I2C_RCU
devreg
:
AN.V_2v5
width
:
23
scale
:
7.8679e-7
#Scaled 1.1: 7.1526e-7 #3.0V ref
rw
:
ro
dtype
:
double
-
name
:
[
CH1_PWR_ANT_VOUT
,
CH2_PWR_ANT_VOUT
,
CH3_PWR_ANT_VOUT
]
description
:
Voltage on antenna output of RCU (V). Controlled by ANT_PWR_ON.
driver
:
I2C_RCU
devreg
:
[
AN.V_Ant_O0
,
AN.V_Ant_O1
,
AN.V_Ant_O2
]
width
:
23
scale
:
1.57356e-5
#Scaled 1.1: 1.43051e-5 #3V ref
rw
:
ro
dtype
:
double
-
name
:
[
CH1_PWR_ANT_VIN
,
CH2_PWR_ANT_VIN
,
CH3_PWR_ANT_VIN
]
description
:
RCU antenna voltage before switch (V)
driver
:
I2C_RCU
devreg
:
[
AN.V_Ant_I0
,
AN.V_Ant_I1
,
AN.V_Ant_I2
]
width
:
23
scale
:
1.57356e-5
#Scaled 1.1: 1.43051e-5 #3V ref
rw
:
ro
dtype
:
double
-
name
:
[
CH1_PWR_ANT_IOUT
,
CH2_PWR_ANT_IOUT
,
CH3_PWR_ANT_IOUT
]
description
:
Current drawn on antenna output of RCU (A). 15mA offset due to LED on RCU
driver
:
I2C_RCU
devreg
:
[
AN.I_Ant0
,
AN.I_Ant1
,
AN.I_Ant2
]
width
:
23
scale
:
2.62262e-7
#4.5K res
rw
:
ro
dtype
:
double
-
name
:
RCU_PWR_DIGITAL_on
description
:
RCU digital power enable. Controlled by calling RCU_on/RCU_off
driver
:
I2C_RCU
devreg
:
IO2.GPIO1
width
:
1
bitoffset
:
6
rw
:
ro
#rw for testing
dtype
:
boolean
-
name
:
RCU_PWR_good
description
:
Status of RCU power given by LDOs.
driver
:
I2C_RCU
devreg
:
IO2.GPIO1
width
:
1
bitoffset
:
7
rw
:
ro
dtype
:
boolean
-
name
:
RCU_PWR_ANALOG_on
description
:
RCU analog power enable. Controlled by RCU_on/off
driver
:
I2C_RCU
devreg
:
IO1.GPIO2
width
:
1
bitoffset
:
7
rw
:
rw
#rw for testing
dtype
:
boolean
-
name
:
[
CH1_DTH_shutdown
,
CH2_DTH_shutdown
,
CH3_DTH_shutdown
]
description
:
False means dither source & ADC powered on.
driver
:
I2C_RCU
devreg
:
[
IO3.GPIO1
,
IO3.GPIO1
,
IO3.GPIO2
]
width
:
1
bitoffset
:
[
7
,
6
,
7
]
rw
:
ro
dtype
:
boolean
-
name
:
[
CH1_PWR_ANT_on
,
CH2_PWR_ANT_on
,
CH3_PWR_ANT_on
]
description
:
Antenna power output ON/OFF control. Monitored by Ant_VOUT.
driver
:
I2C_RCU
devreg
:
[
IO1.GPIO1
,
IO1.GPIO1
,
IO1.GPIO2
]
width
:
1
bitoffset
:
[
6
,
7
,
6
]
rw
:
rw
dtype
:
boolean
-
name
:
RCU_PCB_ID
description
:
Unique PCB ID
driver
:
I2C_RCU
devreg
:
ROM.ID
width
:
32
rw
:
ro
dtype
:
uint32
-
name
:
RCU_PCB_version
description
:
RCU version number
driver
:
I2C_RCU
devreg
:
ROM.Version
width
:
0x100
#32 characters
rw
:
ro
dtype
:
string
-
name
:
RCU_PCB_number
description
:
PCB number (astron.nl/webforms/IenS-Boarden/view.php?id=xxx)
driver
:
I2C_RCU
devreg
:
ROM.Serial
width
:
0x100
#32 characters
rw
:
ro
dtype
:
string
-
name
:
[
CH1_ADC_locked
,
CH2_ADC_locked
,
CH3_ADC_locked
]
description
:
RCU ADC lock status. May generated noise and polling disabled in future
driver
:
I2C_RCU
devreg
:
[
ADC1.PLL_stat
,
ADC2.PLL_stat
,
ADC3.PLL_stat
]
width
:
1
rw
:
ro
dtype
:
boolean
-
name
:
[
CH1_ADC_sync
,
CH2_ADC_sync
,
CH3_ADC_sync
]
driver
:
I2C_RCU
devreg
:
[
ADC1.SYNC_control
,
ADC2.SYNC_control
,
ADC3.SYNC_control
]
width
:
8
rw
:
ro
dtype
:
uint8
-
name
:
[
CH1_ADC_JESD
,
CH2_ADC_JESD
,
CH3_ADC_JESD
]
driver
:
I2C_RCU
devreg
:
[
ADC1.JESD_control1
,
ADC2.JESD_control1
,
ADC3.JESD_control1
]
width
:
8
rw
:
ro
dtype
:
uint8
-
name
:
[
CH1_ADC_CML_level
,
CH2_ADC_CML_level
,
CH3_ADC_CML_level
]
driver
:
I2C_RCU
devreg
:
[
ADC1.CML_level
,
ADC2.CML_level
,
ADC3.CML_level
]
width
:
8
rw
:
ro
dtype
:
uint8
-
name
:
[
CH1_DTH_freq
,
CH2_DTH_freq
,
CH3_DTH_freq
]
description
:
RCU Dither source frequency (Hz). Should be around 102MHz.
driver
:
I2C_RCU
devreg
:
[
DTH1.Freq
,
DTH2.Freq
,
DTH3.Freq
]
width
:
32
rw
:
rw
dtype
:
uint32
-
name
:
[
CH1_DTH_PWR
,
CH2_DTH_PWR
,
CH3_DTH_PWR
]
description
:
RCU Dither source power (dBm). Range -25 to -4.
driver
:
I2C_RCU
devreg
:
[
DTH1.PA_CONFIG
,
DTH2.PA_CONFIG
,
DTH3.PA_CONFIG
]
width
:
48
rw
:
rw
dtype
:
double
scale
:
si4012_6bytes_to_pwr
-
name
:
[
CH1_DTH_on
,
CH2_DTH_on
,
CH3_DTH_on
]
description
:
RCU Dither on. Controlled by RCU_DTH_on/off
driver
:
I2C_RCU
devreg
:
[
DTH1.State
,
DTH2.State
,
DTH3.State
]
width
:
1
#read only first of 2 bytes
bitoffset
:
[
1
,
1
,
1
]
rw
:
ro
dtype
:
boolean
#RCU2H points
-
name
:
[
CH1_RCU_DAB_filter_on
,
CH2_RCU_DAB_filter_on
,
CH3_RCU_DAB_filter_on
]
description
:
DAB filter enable
driver
:
I2C_RCU
devreg
:
[
IO4.GPIO1
,
IO4.GPIO1
,
IO4.GPIO1
]
bitoffset
:
[
0
,
2
,
4
]
width
:
2
rw
:
rw
dtype
:
boolean
convert_unit
:
int12_to_bool
-
name
:
RCU_firmware_version
description
:
git firmware version
driver
:
I2C_RCU
devreg
:
HB_UC.firmware
width
:
32
rw
:
ro
dtype
:
uint32
endian
:
"
<"
#HBAT points
-
name
:
[
CH1_HBAT_BF_delay_steps
,
CH2_HBAT_BF_delay_steps
,
CH3_HBAT_BF_delay_steps
]
description
:
HBAT1 frontend delays (0.5ns steps)
driver
:
I2C_HBAT
devreg
:
[
HBAT1.XY
,
HBAT2.XY
,
HBAT3.XY
]
bitoffset
:
[
2
,
2
,
2
]
width
:
5
rw
:
rw
dtype
:
uint8
dim
:
32
wait
:
PPS
# wait: 1000 #ms
-
name
:
[
RCU_IO4_GPIO1
,
RCU_IO4_GPIO2
]
driver
:
I2C_RCU
devreg
:
[
IO4.GPIO1
,
IO4.GPIO2
]
width
:
8
rw
:
ro
dtype
:
uint8
-
name
:
[
CH1_HBAT_LED_on
,
CH2_HBAT_LED_on
,
CH3_HBAT_LED_on
]
description
:
HBA frontend control
driver
:
I2C_HBAT
devreg
:
[
HBAT1.XY
,
HBAT2.XY
,
HBAT3.XY
]
bitoffset
:
0
width
:
1
rw
:
rw
dtype
:
boolean
dim
:
32
-
name
:
[
CH1_HBAT_PWR_LNA_on
,
CH2_HBAT_PWR_LNA_on
,
CH3_HBAT_PWR_LNA_on
]
description
:
HBA frontend control
driver
:
I2C_HBAT
devreg
:
[
HBAT1.XY
,
HBAT2.XY
,
HBAT3.XY
]
bitoffset
:
7
width
:
1
rw
:
rw
dtype
:
boolean
dim
:
32
wait
:
1000
-
name
:
[
CH1_HBAT_PWR_on
,
CH2_HBAT_PWR_on
,
CH3_HBAT_PWR_on
]
description
:
HBA frontend control
driver
:
I2C_HBAT
devreg
:
[
HBAT1.XY
,
HBAT2.XY
,
HBAT3.XY
]
bitoffset
:
1
width
:
1
rw
:
rw
dtype
:
boolean
convert_unit
:
bool_invert
dim
:
32
wait
:
1000
methods
:
-
name
:
RECVTR_Init
#Called after startup to load. Should have all stored registers
driver
:
I2C_RCU
debug
:
True
instructions
:
-
RCU_IO1_GPIO1
:
Update
-
RCU_IO1_GPIO2
:
Update
-
RCU_IO2_GPIO1
:
Update
-
RCU_IO2_GPIO2
:
Update
-
RCU_IO3_GPIO1
:
Update
-
RCU_IO3_GPIO2
:
Update
-
RCU_IO4_GPIO1
:
Update
-
RCU_IO4_GPIO2
:
Update
-
name
:
RCU_on
description
:
Initialize RCU and it in the ON state
driver
:
I2C_RCU
mask
:
RCU_mask
instructions
:
-
RECVTR_I2C_error
:
0
-
IO2.CONF1
:
0x80
#Pgood on 0x80
-
IO2.GPIO1
:
0x4A
#0x40 Dig on, 0x0a =10dB att
-
IO2.GPIO2
:
0x52
#0x09 #Band0 (or 0x12 or 0x24) #LED green=on=low 0x40
-
IO3.DIR1
:
0
-
IO3.DIR2
:
0
-
IO3.GPIO1
:
0x15
#ADC_SDIO=high, clk=low, DTH_EN=low
-
IO3.GPIO2
:
0x47
#ADC SC=high, DTH_SDA=high
-
IO1.GPIO1
:
0x0A
#0x0a = 10dB att
-
IO1.GPIO2
:
0x8A
#0x80 Analog on, 0x0a=10dB att
-
IO2.CONF2
:
0
-
IO3.CONF1
:
0
-
IO3.CONF2
:
0
-
IO1.CONF1
:
0
-
IO1.CONF2
:
0
-
IO4.CONF1
:
0xC0
#pin 0x40, 0x80 not used
-
IO4.CONF2
:
0xF8
-
IO4.GPIO1
:
0x2A
#DAB switch states: 0x2A or 0x51
-
IO4.GPIO2
:
0x02
#Band select
-
name
:
RCU_off
driver
:
I2C_RCU
mask
:
RCU_mask
instructions
:
-
IO1.GPIO1
:
0
-
IO1.GPIO2
:
0
-
IO2.GPIO1
:
0
-
IO2.GPIO2
:
0
-
IO3.GPIO1
:
0
-
IO3.GPIO2
:
0
-
IO4.GPIO1
:
0
-
IO4.GPIO2
:
0
-
IO2.CONF1
:
0x80
#Pgood on 0x80
-
IO2.CONF2
:
0
-
IO1.CONF1
:
0
-
IO1.CONF2
:
0
-
IO4.CONF1
:
0xC0
#pin 0x40, 0x80 not used
-
IO4.CONF2
:
0xF8
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment