Skip to content

Commit

Permalink
Merge branch 'master' of github.com:epics-modules/ip
Browse files Browse the repository at this point in the history
  • Loading branch information
MarkRivers committed Nov 27, 2024
2 parents 7f01487 + ccb2ced commit 57f0ae5
Show file tree
Hide file tree
Showing 16 changed files with 8,480 additions and 2,584 deletions.
2 changes: 1 addition & 1 deletion .ci
4 changes: 2 additions & 2 deletions .github/workflows/ci-scripts-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ jobs:
name: "Windows master 7.0"

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
submodules: true
- name: Automatic core dumper analysis
Expand All @@ -105,7 +105,7 @@ jobs:
- name: Run main module tests
run: python .ci/cue.py -T 15M test
- name: Upload tapfiles Artifact
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: tapfiles ${{ matrix.name }}
path: '**/O.*/*.tap'
Expand Down
21 changes: 21 additions & 0 deletions ipApp/Db/MicroE_SS350.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
ExtraInput=Ignore;

# set a short timeout since we don't have an input terminator
ReadTimeout=17;

sync {
out "\x80";
in "%(\$1:sync.VAL)1r";
}
reg69_raw {
out "\x80\x51\x04\x04\x00\x00\x69\x00\x42\x01";
in "%*4r%(\$1:reg69_raw.VAL)#2r%*2r";
}
reg68_raw {
out "\x80\x51\x04\x04\x00\x00\x68\x00\x41\x01";
in "%*4r%(\$1:reg68_raw.VAL)#2r%*2r";
}
reg27_raw {
out "\x80\x51\x04\x04\x00\x00\x27\x00\x00\x01";
in "%*4r%(\$1:reg27_raw.VAL)#2r%*2r";
}
203 changes: 203 additions & 0 deletions ipApp/Db/MicroE_SS350.vdb
Original file line number Diff line number Diff line change
@@ -0,0 +1,203 @@
#! Generated by VisualDCT v2.5
#! DBDSTART
#! DBD("../../dbd/iockagVX.dbd")
#! DBDEND


record(longin, "$(P)SS350:$(N):sync") {
field(DTYP, "stream")
field(INP, "@MicroE_SS350.proto sync($(P)SS350:$(N)) $(PORT)")
}

record(longin, "$(P)SS350:$(N):reg69_raw") {
field(DTYP, "stream")
field(FLNK, "$(P)SS350:$(N):sync_b2")
field(INP, "@MicroE_SS350.proto reg69_raw($(P)SS350:$(N)) $(PORT)")
}

record(longin, "$(P)SS350:$(N):reg68_raw") {
field(DTYP, "stream")
field(FLNK, "$(P)SS350:$(N):sync_b3")
field(INP, "@MicroE_SS350.proto reg68_raw($(P)SS350:$(N)) $(PORT)")
}

record(longin, "$(P)SS350:$(N):reg27_raw") {
field(DTYP, "stream")
field(INP, "@MicroE_SS350.proto reg27_raw($(P)SS350:$(N)) $(PORT)")
}

record(longin, "$(P)SS350:$(N):sync2") {
field(DTYP, "stream")
field(INP, "@MicroE_SS350.proto sync($(P)SS350:$(N)) $(PORT)")
}

record(longin, "$(P)SS350:$(N):sync3") {
field(DTYP, "stream")
field(INP, "@MicroE_SS350.proto sync($(P)SS350:$(N)) $(PORT)")
}

record(seq, "$(P)SS350:$(N):dly1") {
field(PREC, "2")
field(DLY1, "0.08")
field(DOL1, "1")
}

record(asyn, "$(P)SS350:$(N):sync_b1") {
field(SCAN, "Passive")
field(DISV, "0")
field(SDIS, "$(P)SS350:$(N):run.RVAL")
field(FLNK, "$(P)SS350:$(N):reg69_raw.PROC")
field(PORT, "$(PORT)")
field(TMOD, "Write/Read")
field(TMOT, ".1")
field(AOUT, "\200")
field(NRRD, "1")
}

record(asyn, "$(P)SS350:$(N):sync_b2") {
field(FLNK, "$(P)SS350:$(N):reg68_raw")
field(PORT, "$(PORT)")
field(TMOD, "Write/Read")
field(TMOT, ".1")
field(AOUT, "\200")
field(NRRD, "1")
}

record(asyn, "$(P)SS350:$(N):sync_b3") {
field(FLNK, "$(P)SS350:$(N):reg27_raw")
field(PORT, "$(PORT)")
field(TMOD, "Write/Read")
field(TMOT, ".1")
field(AOUT, "\200")
field(NRRD, "1")
}

record(seq, "$(P)SS350:$(N):dly2") {
field(PREC, "2")
field(DLY1, "0.08")
field(DOL1, "1")
}

record(bo, "$(P)SS350:$(N):run") {
field(ZNAM, "disable")
field(ONAM, "enable")
}

record(transform, "$(P)SS350:$(N):read_xform") {
field(CLCD, "(A>>4)&4095")
field(CLCE, "B<<12")
field(CLCF, "C<<28")
field(CLCG, "((D|E)&268435455)|F")
field(INPA, "$(P)SS350:$(N):reg27_raw CP")
field(INPB, "$(P)SS350:$(N):reg68_raw")
field(INPC, "$(P)SS350:$(N):reg69_raw")
field(PREC, "3")
field(CMTG, "Raw Pos (cts)")
field(CLCL, "(G<<2)/4")
field(CLCM, "L*0.0048828125")
field(CLCN, "L*4.8828125")
field(CMTL, "Pack for sign")
field(CMTM, "Microns")
field(CMTN, "Nanometers")
field(OUTM, "$(P)SS350:$(N):reading.A PP")
}

record(calc, "$(P)SS350:$(N):reading") {
field(DESC, "Ch. $(N) Description")
field(CALC, "A+B")
field(EGU, "micron")
field(PREC, "3")
}

record(calcout, "$(P)SS350:$(N):zero_rdg") {
field(CALC, "-(A)")
field(INPA, "$(P)SS350:$(N):reading.A")
field(OUT, "$(P)SS350:$(N):reading.B")
}

#! Further lines contain data used by VisualDCT
#! View(2332,2538,0.9)
#! Record("$(P)SS350:$(N):sync",1900,2550,0,1,"$(P)SS350:$(N):sync")
#! Visibility("$(P)SS350:$(N):sync.INP",2)
#! Visibility("$(P)SS350:$(N):sync.FLNK",2)
#! Record("$(P)SS350:$(N):reg69_raw",2500,2656,0,0,"$(P)SS350:$(N):reg69_raw")
#! Field("$(P)SS350:$(N):reg69_raw.FLNK",16777215,0,"$(P)SS350:$(N):reg69_raw.FLNK")
#! Link("$(P)SS350:$(N):reg69_raw.FLNK","$(P)SS350:$(N):sync_b2")
#! Field("$(P)SS350:$(N):reg69_raw.VAL",16777215,1,"$(P)SS350:$(N):reg69_raw.VAL")
#! Visibility("$(P)SS350:$(N):reg69_raw.INP",2)
#! Record("$(P)SS350:$(N):reg68_raw",2500,2856,0,0,"$(P)SS350:$(N):reg68_raw")
#! Field("$(P)SS350:$(N):reg68_raw.VAL",16777215,1,"$(P)SS350:$(N):reg68_raw.VAL")
#! Field("$(P)SS350:$(N):reg68_raw.FLNK",16777215,0,"$(P)SS350:$(N):reg68_raw.FLNK")
#! Link("$(P)SS350:$(N):reg68_raw.FLNK","$(P)SS350:$(N):sync_b3")
#! Visibility("$(P)SS350:$(N):reg68_raw.INP",2)
#! Record("$(P)SS350:$(N):reg27_raw",2520,3070,0,0,"$(P)SS350:$(N):reg27_raw")
#! Field("$(P)SS350:$(N):reg27_raw.VAL",16777215,1,"$(P)SS350:$(N):reg27_raw.VAL")
#! Visibility("$(P)SS350:$(N):reg27_raw.INP",2)
#! Record("$(P)SS350:$(N):sync2",1900,2650,0,1,"$(P)SS350:$(N):sync2")
#! Visibility("$(P)SS350:$(N):sync2.INP",2)
#! Visibility("$(P)SS350:$(N):sync2.FLNK",2)
#! Record("$(P)SS350:$(N):sync3",1900,2750,0,1,"$(P)SS350:$(N):sync3")
#! Visibility("$(P)SS350:$(N):sync3.INP",2)
#! Visibility("$(P)SS350:$(N):sync3.FLNK",2)
#! Record("$(P)SS350:$(N):dly1",2780,2616,0,0,"$(P)SS350:$(N):dly1")
#! Visibility("$(P)SS350:$(N):dly1.PREC",2)
#! Record("$(P)SS350:$(N):sync_b1",2220,2497,0,1,"$(P)SS350:$(N):sync_b1")
#! Field("$(P)SS350:$(N):sync_b1.FLNK",16777215,1,"$(P)SS350:$(N):sync_b1.FLNK")
#! Link("$(P)SS350:$(N):sync_b1.FLNK","$(P)SS350:$(N):reg69_raw")
#! Field("$(P)SS350:$(N):sync_b1.SDIS",16777215,0,"$(P)SS350:$(N):sync_b1.SDIS")
#! Link("$(P)SS350:$(N):sync_b1.SDIS","$(P)SS350:$(N):run.RVAL")
#! Record("$(P)SS350:$(N):sync_b2",2220,2739,0,1,"$(P)SS350:$(N):sync_b2")
#! Field("$(P)SS350:$(N):sync_b2.FLNK",16777215,1,"$(P)SS350:$(N):sync_b2.FLNK")
#! Link("$(P)SS350:$(N):sync_b2.FLNK","$(P)SS350:$(N):reg68_raw")
#! Record("$(P)SS350:$(N):sync_b3",2240,2959,0,1,"$(P)SS350:$(N):sync_b3")
#! Field("$(P)SS350:$(N):sync_b3.FLNK",16777215,1,"$(P)SS350:$(N):sync_b3.FLNK")
#! Link("$(P)SS350:$(N):sync_b3.FLNK","$(P)SS350:$(N):reg27_raw")
#! Record("$(P)SS350:$(N):dly2",2780,2836,0,0,"$(P)SS350:$(N):dly2")
#! Visibility("$(P)SS350:$(N):dly2.PREC",2)
#! Record("$(P)SS350:$(N):run",2200,2376,0,1,"$(P)SS350:$(N):run")
#! Field("$(P)SS350:$(N):run.RVAL",16777215,0,"$(P)SS350:$(N):run.RVAL")
#! Record("$(P)SS350:$(N):read_xform",2840,3084,0,1,"$(P)SS350:$(N):read_xform")
#! Field("$(P)SS350:$(N):read_xform.INPA",16777215,0,"$(P)SS350:$(N):read_xform.INPA")
#! Link("$(P)SS350:$(N):read_xform.INPA","$(P)SS350:$(N):reg27_raw.VAL")
#! Field("$(P)SS350:$(N):read_xform.INPB",16777215,0,"$(P)SS350:$(N):read_xform.INPB")
#! Link("$(P)SS350:$(N):read_xform.INPB","$(P)SS350:$(N):reg68_raw.VAL")
#! Field("$(P)SS350:$(N):read_xform.INPC",16777215,0,"$(P)SS350:$(N):read_xform.INPC")
#! Link("$(P)SS350:$(N):read_xform.INPC","$(P)SS350:$(N):reg69_raw.VAL")
#! Field("$(P)SS350:$(N):read_xform.OUTM",16777215,1,"$(P)SS350:$(N):read_xform.OUTM")
#! Link("$(P)SS350:$(N):read_xform.OUTM","$(P)SS350:$(N):reading.A")
#! Visibility("$(P)SS350:$(N):read_xform.CLCD",2)
#! Visibility("$(P)SS350:$(N):read_xform.CLCE",2)
#! Visibility("$(P)SS350:$(N):read_xform.CLCF",2)
#! Visibility("$(P)SS350:$(N):read_xform.CLCG",2)
#! Visibility("$(P)SS350:$(N):read_xform.INPA",2)
#! Visibility("$(P)SS350:$(N):read_xform.INPB",2)
#! Visibility("$(P)SS350:$(N):read_xform.INPC",2)
#! Visibility("$(P)SS350:$(N):read_xform.PREC",2)
#! Visibility("$(P)SS350:$(N):read_xform.CMTG",2)
#! Visibility("$(P)SS350:$(N):read_xform.CLCL",2)
#! Visibility("$(P)SS350:$(N):read_xform.CLCM",2)
#! Visibility("$(P)SS350:$(N):read_xform.CLCN",2)
#! Visibility("$(P)SS350:$(N):read_xform.CMTL",2)
#! Visibility("$(P)SS350:$(N):read_xform.CMTM",2)
#! Visibility("$(P)SS350:$(N):read_xform.CMTN",2)
#! Visibility("$(P)SS350:$(N):read_xform.OUTM",2)
#! Visibility("$(P)SS350:$(N):read_xform.CLCH",2)
#! Visibility("$(P)SS350:$(N):read_xform.CLCI",2)
#! Visibility("$(P)SS350:$(N):read_xform.CMTH",2)
#! Visibility("$(P)SS350:$(N):read_xform.CMTI",2)
#! Visibility("$(P)SS350:$(N):read_xform.CMTF",2)
#! Box(Box0,1860,2520,2100,2860,0,16777215,null)
#! TextBox(TB0,1920,2480,2100,2520,0,"Dialog",18,1,16777215,"Not Used",null)
#! Record("$(P)SS350:$(N):reading",3100,3144,0,1,"$(P)SS350:$(N):reading")
#! Field("$(P)SS350:$(N):reading.A",16777215,1,"$(P)SS350:$(N):reading.A")
#! Field("$(P)SS350:$(N):reading.B",16777215,1,"$(P)SS350:$(N):reading.B")
#! Visibility("$(P)SS350:$(N):reading.DESC",2)
#! Visibility("$(P)SS350:$(N):reading.CALC",2)
#! Visibility("$(P)SS350:$(N):reading.EGU",2)
#! Visibility("$(P)SS350:$(N):reading.PREC",2)
#! Record("$(P)SS350:$(N):zero_rdg",3380,3116,0,1,"$(P)SS350:$(N):zero_rdg")
#! Field("$(P)SS350:$(N):zero_rdg.INPA",16777215,0,"$(P)SS350:$(N):zero_rdg.INPA")
#! Link("$(P)SS350:$(N):zero_rdg.INPA","$(P)SS350:$(N):reading.A")
#! Field("$(P)SS350:$(N):zero_rdg.OUT",16777215,0,"$(P)SS350:$(N):zero_rdg.OUT")
#! Link("$(P)SS350:$(N):zero_rdg.OUT","$(P)SS350:$(N):reading.B")
#! Visibility("$(P)SS350:$(N):zero_rdg.CALC",2)
13 changes: 13 additions & 0 deletions ipApp/Db/Synaccess_netBooter.proto
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,18 @@ get_status5

out "$A5";

@mismatch {
in
"%*1c" # sometimes it sends a <00> ?
"$A5\r\n"
"%*4c"
"%(\$1\$2status5.RVAL)1b"
"%(\$1\$2status4.RVAL)1b"
"%(\$1\$2status3.RVAL)1b"
"%(\$1\$2status2.RVAL)1b"
"%(\$1\$2status1.RVAL)1b";
}

in
"$A5\r\n" # from echoed input
"%*4c" # ignore return status ($A0)
Expand All @@ -43,6 +55,7 @@ get_status5
"%(\$1\$2status3.RVAL)1b"
"%(\$1\$2status2.RVAL)1b"
"%(\$1\$2status1.RVAL)1b";

}


Expand Down
86 changes: 86 additions & 0 deletions ipApp/Db/Synaccess_np05b.db
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
# Used to display a desciption of the device
record(stringout, "$(P)$(R)device")
{
field (DESC, "$(R)DEVICE_NAME")
}

##########################################
# $(P)$(R)setX
# Sets outlet X On (VAL=1) or Off (VAL=0)
Expand Down Expand Up @@ -116,6 +122,13 @@ record (bo, "$(P)$(R)alloff")
# Indicates the status of each outlet
######################################

# Check the status of the outlets every 10 seconds
record (bo, "$(P)$(R)periodic_status")
{
field (SCAN, "10 second")
field (FLNK, "$(P)$(R)get_status.PROC")
}

record (stringin, "$(P)$(R)get_status")
{
field (DTYP, "stream")
Expand Down Expand Up @@ -153,3 +166,76 @@ record (bi, "$(P)$(R)status5")
field (INP, 0)
field (SCAN, "Passive")
}

######################################
# $(P)$(R)userCalcOutX
# calcout records for each port
#
# $(P)userCalcOutX:$(R)EnableCalc
# enable/disble record for each calcout
######################################

record(bo, "$(P)userCalcOut1:$(R)EnableCalc")
{
field (VAL, 1)
field (OUT, "$(P)$(R)userCalcOut1.DISA $(P)userCalcOut1:$(R)EnableCalc.RVAL")
field (PINI, "YES")
}

record(calcout, "$(P)$(R)userCalcOut1")
{
field (SCAN, "Passive")
field (DISV, "0")
}

record(bo, "$(P)userCalcOut2:$(R)EnableCalc")
{
field (VAL, 1)
field (OUT, "$(P)$(R)userCalcOut2.DISA $(P)userCalcOut2:$(R)EnableCalc.RVAL")
field (PINI, "YES")
}

record(calcout, "$(P)$(R)userCalcOut2")
{
field (SCAN, "Passive")
field (DISV, "0")
}

record(bo, "$(P)userCalcOut3:$(R)EnableCalc")
{
field (VAL, 1)
field (OUT, "$(P)$(R)userCalcOut3.DISA $(P)userCalcOut3:$(R)EnableCalc.RVAL")
field (PINI, "YES")
}

record(calcout, "$(P)$(R)userCalcOut3")
{
field (SCAN, "Passive")
field (DISV, "0")
}

record(bo, "$(P)userCalcOut4:$(R)EnableCalc")
{
field (VAL, 1)
field (OUT, "$(P)$(R)userCalcOut4.DISA $(P)userCalcOut4:$(R)EnableCalc.RVAL")
field (PINI, "YES")
}

record(calcout, "$(P)$(R)userCalcOut4")
{
field (SCAN, "Passive")
field (DISV, "0")
}

record(bo, "$(P)userCalcOut5:$(R)EnableCalc")
{
field (VAL, 1)
field (OUT, "$(P)$(R)userCalcOut5.DISA $(P)userCalcOut5:$(R)EnableCalc.RVAL")
field (PINI, "YES")
}

record(calcout, "$(P)$(R)userCalcOut5")
{
field (SCAN, "Passive")
field (DISV, "0")
}
Loading

0 comments on commit 57f0ae5

Please sign in to comment.