Node('PPMS.psi.ch',
     'PPMS at PSI',
     interface='tcp://5000',
)

Mod('tt',
    'frappy_psi.ppms.Temp',
    'main temperature',
    io='ppms',
)

Mod('mf',
    'frappy_psi.ppms.Field',
    'magnetic field',
    target=Param(
        min=-9.0,
        max=9.0,
    ),
    io='ppms',
)

Mod('pos',
    'frappy_psi.ppms.Position',
    'sample rotator',
    io='ppms',
)

Mod('lev',
    'frappy_psi.ppms.Level',
    'helium level',
    io='ppms',
)

Mod('chamber',
    'frappy_psi.ppms.Chamber',
    'chamber state',
    io='ppms',
)

Mod('r1',
    'frappy_psi.ppms.BridgeChannel',
    'resistivity channel 1',
    no=1,
    value=Param(
        unit='Ohm',
    ),
    io='ppms',
)

Mod('r2',
    'frappy_psi.ppms.BridgeChannel',
    'resistivity channel 2',
    no=2,
    value=Param(
        unit='Ohm',
    ),
    io='ppms',
)

Mod('r3',
    'frappy_psi.ppms.BridgeChannel',
    'resistivity channel 3',
    no=3,
    value=Param(
        unit='Ohm',
    ),
    io='ppms',
)

Mod('r4',
    'frappy_psi.ppms.BridgeChannel',
    'resistivity channel 4',
    no=4,
    value=Param(
        unit='Ohm',
    ),
    io='ppms',
)

Mod('i1',
    'frappy_psi.ppms.Channel',
    'current channel 1',
    no=1,
    value=Param(
        unit='uA',
    ),
    io='ppms',
)

Mod('i2',
    'frappy_psi.ppms.Channel',
    'current channel 2',
    no=2,
    value=Param(
        unit='uA',
    ),
    io='ppms',
)

Mod('i3',
    'frappy_psi.ppms.Channel',
    'current channel 3',
    no=3,
    value=Param(
        unit='uA',
    ),
    io='ppms',
)

Mod('i4',
    'frappy_psi.ppms.Channel',
    'current channel 4',
    no=4,
    value=Param(
        unit='uA',
    ),
    io='ppms',
)

Mod('v1',
    'frappy_psi.ppms.DriverChannel',
    'voltage channel 1',
    no=1,
    value=Param(
        unit='V',
    ),
    io='ppms',
)

Mod('v2',
    'frappy_psi.ppms.DriverChannel',
    'voltage channel 2',
    no=2,
    value=Param(
        unit='V',
    ),
    io='ppms',
)

Mod('tv',
    'frappy_psi.ppms.UserChannel',
    'VTI temperature',
    enabled=True,
    value=Param(
        unit='K',
    ),
    io='ppms',
)

Mod('ts',
    'frappy_psi.ppms.UserChannel',
    'sample temperature',
    enabled=True,
    value=Param(
        unit='K',
    ),
    io='ppms',
)

Mod('ppms',
    'frappy_psi.ppms.Main',
    'the main and poller module',
    class_id='QD.MULTIVU.PPMS.1',
    visibility='expert',
    pollinterval=2.0,
)
