<phyphox version="1.7" locale="en">
    <title>Tidal locking</title>
    <category>*Astrolab University of Cologne</category>
    <description>DIY experiment using two SensorTag (CC2650) to investigate the phenomenon of fixed day and night sides on astronomical objects</description>
    <data-containers>
        <container size="0" static="false">t</container>
        <container size="1" static="false">count</container>
        <container size="1" static="false">tmax</container>
        <!-- 1 -->
        <container size="0" static="false">tempRaw1</container>
        <container size="0" static="false">tempCal1</container>
        <container size="1" static="false">T_max1</container>
        <container size="1" static="false">T_min1</container>
        
        <container size="0">objRaw1</container>
        <container size="0">ambRaw1</container>
        <container size="0">objCal1</container>
        <container size="0">ambCal1</container>
        <container size="0">t1</container>
        <container size="1">count1</container>
        <container size="1">tmax1</container>
        <container size="0" static="false">factor1</container>
        <container size="1" static="false">T_max1_obj</container>
        <container size="1" static="false">T_min1_obj</container>
        <container size="1" static="false">T_max1_amb</container>
        <container size="1" static="false">T_min1_amb</container>
        
        <container size="0" static="false">RawInt1</container>
        <container size="0" static="false">e1</container>
        <container size="0" static="false">m1</container>
        <container size="1" static="false">countI2</container>
        <container size="0">t2</container>
        <container size="1" static="false">tmax2</container>
        <container size="0" static="false">factor2</container>
        <container size="0">amplitude1</container>
        <container size="1" static="false">amplitude_max1</container>
        <container size="1" static="false">amplitude_min1</container>
        
        <!-- 2 -->
        <container size="0" static="false">tempRaw2</container>
        <container size="0" static="false">tempCal2</container>
        <container size="1" static="false">T_max2</container>
        <container size="1" static="false">T_min2</container>
        
        <container size="0">objRaw2</container>
        <container size="0">ambRaw2</container>
        <container size="0">objCal2</container>
        <container size="0">ambCal2</container>
         <container size="1" static="false">T_max2_obj</container>
        <container size="1" static="false">T_min2_obj</container>
        <container size="1" static="false">T_max2_amb</container>
        <container size="1" static="false">T_min2_amb</container>
        
        <container size="0" static="false">RawInt2</container>
        <container size="0" static="false">e2</container>
        <container size="0" static="false">m2</container>
        <container size="0" static="false">factor2</container>
        <container size="0">amplitude2</container>
        <container size="1" static="false">amplitude_max2</container>
        <container size="1" static="false">amplitude_min2</container>
    </data-containers>
    <input>
        <!-- 1 -->
        <bluetooth name="SensorTag" mode="notification" rate="1" subscribeOnStart="false">
            <!-- temp, ambient -->
            <config char="F000AA44-0451-4000-B000-000000000000" conversion="hexadecimal">64</config>
            <config char="F000AA42-0451-4000-B000-000000000000" conversion="hexadecimal">01</config>
            <output char="F000AA41-0451-4000-B000-000000000000" conversion="int24LittleEndian" offset="0" length="3">tempRaw1</output>
            <!-- temp, ir -->
            <config char="F000AA03-0451-4000-B000-000000000000" conversion="hexadecimal">1E</config>
            <config char="F000AA02-0451-4000-B000-000000000000" conversion="hexadecimal">01</config>
            <output char="F000AA01-0451-4000-B000-000000000000" conversion="uInt16LittleEndian" offset="0" length="2">objRaw1</output>
            <output char="F000AA01-0451-4000-B000-000000000000" conversion="uInt16LittleEndian" offset="2" length="2">ambRaw1</output>
            <!-- light -->
            <config char="F000AA73-0451-4000-B000-000000000000" conversion="hexadecimal">50</config>
            <config char="F000AA72-0451-4000-B000-000000000000" conversion="hexadecimal">01</config>
            <output char="F000AA71-0451-4000-B000-000000000000" conversion="uInt16LittleEndian" offset="0" length="2">RawInt1</output>
        </bluetooth>
        <!-- 2 -->
        <bluetooth name="SensorTag" mode="notification" rate="1" subscribeOnStart="false">
            <!-- temp, ambient -->
            <config char="F000AA44-0451-4000-B000-000000000000" conversion="hexadecimal">64</config>
            <config char="F000AA42-0451-4000-B000-000000000000" conversion="hexadecimal">01</config>
            <output char="F000AA41-0451-4000-B000-000000000000" conversion="int24LittleEndian" offset="0" length="3">tempRaw2</output>
            <!-- temp, ir -->
            <config char="F000AA03-0451-4000-B000-000000000000" conversion="hexadecimal">1E</config>
            <config char="F000AA02-0451-4000-B000-000000000000" conversion="hexadecimal">01</config>
            <output char="F000AA01-0451-4000-B000-000000000000" conversion="uInt16LittleEndian" offset="0" length="2">objRaw2</output>
            <output char="F000AA01-0451-4000-B000-000000000000" conversion="uInt16LittleEndian" offset="2" length="2">ambRaw2</output>
            <!-- light -->
            <config char="F000AA73-0451-4000-B000-000000000000" conversion="hexadecimal">50</config>
            <config char="F000AA72-0451-4000-B000-000000000000" conversion="hexadecimal">01</config>
            <output char="F000AA71-0451-4000-B000-000000000000" conversion="uInt16LittleEndian" offset="0" length="2">RawInt2</output>
        </bluetooth>
    </input>
    <output>
    </output>
    <analysis sleep="0"  onUserInput="false">
        <!-- 1 -->
        <multiply>
            <input as="factor" clear="false">tempRaw1</input>
            <input as="factor" type="value">0.01</input>
            <output as="product">tempCal1</output>
        </multiply>
        <max>
            <input as="y" clear="false">tempCal1</input>
            <output as="max">T_max1</output>
        </max>
        <min multiple="false">
            <input as="y" clear="false">tempCal1</input>
            <output as="min">T_min1</output>
        </min>
        <count>
            <input as="buffer" clear="false">tempRaw1</input>
            <output as="count">count</output>
        </count>
        <formula formula="([1]-1)*0.0166666666">
            <input as="in" clear="false">count</input>
            <output as="out">tmax</output>
        </formula>
        <ramp>
            <input as="start" type="value">0</input>
            <input as="stop">tmax</input>
            <input as="length">count</input>
            <output as="out">t</output>
        </ramp>
        
        <formula formula="floor([1_]/4)*0.03125">
            <input clear="false">ambRaw1</input>
            <output clear="true">ambCal1</output>
        </formula>
        <formula formula="floor([1_]/4)*0.03125">
            <input clear="false">objRaw1</input>
            <output clear="true">objCal1</output>
        </formula>
        <max>
            <input as="y" clear="false">objCal1</input>
            <output as="max">T_max1_obj</output>
        </max>
        <max>
            <input as="y" clear="false">ambCal1</input>
            <output as="max">T_max1_amb</output>
        </max>
        <min multiple="false">
            <input as="y" clear="false">objCal1</input>
            <output as="min">T_min1_obj</output>
        </min>
        <min multiple="false">
            <input as="y" clear="false">ambCal1</input>
            <output as="min">T_min1_amb</output>
        </min>
        <count>
            <input clear="false">ambRaw1</input>
            <output>count1</output>
        </count>
        <formula formula="([1]-1)*0.3">
            <input clear="false">count1</input>
            <output>tmax1</output>
        </formula>
        <ramp>
            <input as="start" type="value">0</input>
            <input as="stop">tmax1</input>
            <input as="length">count1</input>
            <output>t1</output>
        </ramp>
        
        <formula formula="floor([1_]/4096)">
            <input as="in" clear="false">RawInt1</input>
            <output as="out">e1</output>
        </formula>
        <formula formula="[2_]-[1_]*4096">
            <input as="in" clear="false">e1</input>
            <input as="in" clear="false">RawInt1</input>
            <output as="out">m1</output>
        </formula>
        <power>
            <input as="base" type="value">2</input>
            <input as="exponent" clear="false">e1</input>
            <output as="power">factor1</output>
        </power>
        <formula formula="[2_]*(0.01*[1_])">
            <input as="in" clear="false">factor1</input>
            <input as="in" clear="false">m1</input>
            <output as="out">amplitude1</output>
        </formula>
        <max>
            <input as="y" clear="false">amplitude1</input>
            <output as="max">amplitude_max1</output>
        </max>
        <min multiple="false">
            <input as="y" clear="false">amplitude1</input>
            <output as="min">amplitude_min1</output>
        </min>
        <count>
            <input as="buffer" clear="false">RawInt1</input>
            <output as="count">countI2</output>
        </count>
        <formula formula="([1]-1)*0.8">
            <input as="in" clear="false">countI2</input>
            <output as="out">tmax2</output>
        </formula>
        <ramp>
            <input as="start" type="value">0</input>
            <input as="stop">tmax2</input>
            <input as="length">countI2</input>
            <output as="out">t2</output>
        </ramp>

        <!-- 2 -->
        <multiply>
            <input as="factor" clear="false">tempRaw2</input>
            <input as="factor" type="value">0.01</input>
            <output as="product">tempCal2</output>
        </multiply>
        <max>
            <input as="y" clear="false">tempCal2</input>
            <output as="max">T_max2</output>
        </max>
        <min multiple="false">
            <input as="y" clear="false">tempCal2</input>
            <output as="min">T_min2</output>
        </min>
        <formula formula="floor([1_]/4)*0.03125">
            <input clear="false">ambRaw2</input>
            <output clear="true">ambCal2</output>
        </formula>
        <formula formula="floor([1_]/4)*0.03125">
            <input clear="false">objRaw2</input>
            <output clear="true">objCal2</output>
        </formula>
        <max>
            <input as="y" clear="false">objCal2</input>
            <output as="max">T_max2_obj</output>
        </max>
        <max>
            <input as="y" clear="false">ambCal2</input>
            <output as="max">T_max2_amb</output>
        </max>
        <min multiple="false">
            <input as="y" clear="false">objCal2</input>
            <output as="min">T_min2_obj</output>
        </min>
        <min multiple="false">
            <input as="y" clear="false">ambCal2</input>
            <output as="min">T_min2_amb</output>
        </min>
        <formula formula="floor([1_]/4096)">
            <input as="in" clear="false">RawInt2</input>
            <output as="out">e2</output>
        </formula>
        <formula formula="[2_]-[1_]*4096">
            <input as="in" clear="false">e2</input>
            <input as="in" clear="false">RawInt2</input>
            <output as="out">m2</output>
        </formula>
        <power>
            <input as="base" type="value">2</input>
            <input as="exponent" clear="false">e2</input>
            <output as="power">factor2</output>
        </power>
        <formula formula="[2_]*(0.01*[1_])">
            <input as="in" clear="false">factor2</input>
            <input as="in" clear="false">m2</input>
            <output as="out">amplitude2</output>
        </formula>
        <max>
            <input as="y" clear="false">amplitude2</input>
            <output as="max">amplitude_max2</output>
        </max>
        <min multiple="false">
            <input as="y" clear="false">amplitude2</input>
            <output as="min">amplitude_min2</output>
        </min>
    </analysis>
    <views>
        <view label="Temperature">
            <info label ="Sensor #1 (S1), orange" />
            <graph label="Temperature" partialUpdate="true" history="1" labelX="t" labelY="T" unitX="min" unitY="°C" xPrecision="0" yPrecision="1">
                <input axis="x">t</input>
                <input axis="y" color="orange">tempCal1</input>
            </graph>
            <separator height="1"/>
            <value label="Max. Temp. S1" size="2" precision="2" scientific="false" unit="°C" factor="1" >
                <input>T_max1</input>
            </value>
            <value label="Min. Temp. S1" size="2" precision="2" scientific="false" unit="°C" factor="1" >
                <input>T_min1</input>
            </value>
            <separator height="1"/>
            <info label ="Sensor #2 (S2), blue" />
            <graph label="Temperature" partialUpdate="true" history="1" labelX="t" labelY="T" unitX="min" unitY="°C" xPrecision="0" yPrecision="1">
                <input axis="x">t</input>
                <input axis="y" color="blue">tempCal2</input>
            </graph>
            <separator height="1"/>
            <value label="Max. Temp. S2" size="2" precision="2" scientific="false" unit="°C" factor="1" >
                <input>T_max2</input>
            </value>
            <value label="Min. Temp. S2" size="2" precision="2" scientific="false" unit="°C" factor="1" >
                <input>T_min2</input>
            </value>
            <separator height="1"/>
            <info label ="2in1" />
             <graph label="Temperature" partialUpdate="true" history="1" labelX="t" labelY="T" unitX="min" unitY="°C" xPrecision="0" yPrecision="1">
                <input axis="x">t</input>
                <input axis="y" color="orange">tempCal1</input>
                <input axis="x">t</input>
                <input axis="y" color="blue">tempCal2</input>
            </graph>
        </view>
        
        <view label="IR">
        <info label ="Sensor #1 (S1), orange" />
            <graph label="Ambient Temperature" partialUpdate="true" history="1" labelX="t" labelY="T" unitX="min" unitY="°C" xPrecision="0" yPrecision="1">
                <input axis="x">t1</input>
                <input axis="y" color="orange">tempCal1</input>
            </graph>
            <separator height="1"/>
            <value label="Max. Amb. S1" size="2" precision="2" scientific="false" unit="°C" factor="1" >
                <input>T_max1_amb</input>
            </value>
            <value label="Min. Amb. S1" size="2" precision="2" scientific="false" unit="°C" factor="1" >
                <input>T_min1_amb</input>
            </value>
            <separator height="1"/>
            <graph label="IR Temperature" partialUpdate="true" history="1" labelX="t" labelY="T" unitX="min" unitY="°C" xPrecision="0" yPrecision="1">
                <input axis="x">t1</input>
                <input axis="y" color="orange">objCal1</input>
            </graph>
            <separator height="1"/>
            <value label="Max. IR S1" size="2" precision="2" scientific="false" unit="°C" factor="1" >
                <input>T_max1_obj</input>
            </value>
            <value label="Min. IR S1" size="2" precision="2" scientific="false" unit="°C" factor="1" >
                <input>T_min1_obj</input>
            </value>
            <separator height="1"/>
            <info label ="Sensor #2 (S2), blue" />
            <graph label="Ambient Temperature" partialUpdate="true" history="1" labelX="t" labelY="T" unitX="min" unitY="°C" xPrecision="0" yPrecision="1">
                <input axis="x">t1</input>
                <input axis="y" color="blue">tempCal2</input>
            </graph>
            <separator height="1"/>
            <value label="Max. Amb. S2" size="2" precision="2" scientific="false" unit="°C" factor="1" >
                <input>T_max2_amb</input>
            </value>
            <value label="Min. Amb. S2" size="2" precision="2" scientific="false" unit="°C" factor="1" >
                <input>T_min2_amb</input>
            </value>
            <separator height="1"/>
            <graph label="IR Temperature" partialUpdate="true" history="1" labelX="t" labelY="T" unitX="min" unitY="°C" xPrecision="0" yPrecision="1">
                <input axis="x">t1</input>
                <input axis="y" color="blue">objCal2</input>
            </graph>
             <separator height="1"/>
            <value label="Max. IR S2" size="2" precision="2" scientific="false" unit="°C" factor="1" >
                <input>T_max2_obj</input>
            </value>
            <value label="Min. IR S2" size="2" precision="2" scientific="false" unit="°C" factor="1" >
                <input>T_min2_obj</input>
            </value>
            <separator height="1"/>
            <info label ="2in1" />
            <graph label="Ambient temperature" labelX="t" unitX="s" labelY="T" unitY="°C" partialUpdate="true">
                <input axis="x">t1</input>
                <input axis="y" color="orange">ambCal1</input>
                <input axis="x">t1</input>
                <input axis="y" color="blue">ambCal2</input>
            </graph>
            <graph label="Object Temperature" labelX="t" unitX="s" labelY="T" unitY="°C" partialUpdate="true">
                <input axis="x">t1</input>
                <input axis="y" color="orange">objCal1</input>
                <input axis="x">t1</input>
                <input axis="y" color="blue">objCal2</input>
            </graph>
        </view>
        
        <view label="Light">
            <info label ="Sensor #1 (S1), orange" />
            <graph label="Illuminance" labelX="t" unitX="s" labelY="Ev" unitY="lx" partialUpdate="true">
                <input axis="x">t2</input>
                <input axis="y" color="orange">amplitude1</input>
            </graph>
            <separator height="1"/>
            <value label="Max. Illum. S1" size="2" precision="2" scientific="false" unit="lx" factor="1" >
                <input>amplitude_max1</input>
            </value>
            <value label="Min. Illum. S1" size="2" precision="2" scientific="false" unit="lx" factor="1" >
                <input>amplitude_min1</input>
            </value>
            <separator height="1"/>
            <info label ="Sensor #2 (S2), blue" />
            <graph label="Illuminance" labelX="t" unitX="s" labelY="Ev" unitY="lx" partialUpdate="true">
                <input axis="x">t2</input>
                <input axis="y" color="blue">amplitude2</input>
            </graph>
            <separator height="1"/>
            <value label="Max. Illum. S2" size="2" precision="2" scientific="false" unit="lx" factor="1" >
                <input>amplitude_max2</input>
            </value>
            <value label="Min. Illum. S2" size="2" precision="2" scientific="false" unit="lx" factor="1" >
                <input>amplitude_min2</input>
            </value>
            <separator height="1"/>
            <info label ="2in1" />
            <graph label="Illuminance" labelX="t" unitX="s" labelY="Ev" unitY="lx" partialUpdate="true">
                <input axis="x">t2</input>
                <input axis="y" color="orange">amplitude1</input>
                <input axis="x">t2</input>
                <input axis="y" color="blue">amplitude2</input>
            </graph>
        </view>

        <!-- single>
        <view label="Temperature">
            <graph label="Temperature" partialUpdate="true" history="1" labelX="t" labelY="T" unitX="min" unitY="°C" xPrecision="0" yPrecision="1">
                <input axis="x">t</input>
                <input axis="y" color="orange">tempCal1</input>
            </graph>
            <separator height="1"/>
            <value label="Max. Temp." size="2" precision="2" scientific="false" unit="°C" factor="1" >
           <input>T_max1</input>
            </value>
            <value label="Min. Temp." size="2" precision="2" scientific="false" unit="°C" factor="1" >
                <input>T_min1</input>
            </value>
        </view-->
    </views>
    <export>
        <set name="Temperature (BMP280)">
            <data name="Time (min)">t</data>
            <data name="Temperature 1 (°C)">tempCal1</data>
            <data name="Temperature 2 (°C)">tempCal2</data>
        </set>
        <set name="Temperature (TMP007)">
            <data name="Time (min)">t1</data>
            <data name="Ambient temperature 1 (°C)">ambCal1</data>
            <data name="Object temperature 1 (°C)">objCal1</data>
            <data name="Ambient temperature 2 (°C)">ambCal2</data>
            <data name="Object temperature 2 (°C)">objCal2</data>
        </set>
        <set name="Light (OPT3001)">
            <data name="Time (min)">t2</data>
            <data name="Illuminance (lx)">amplitude1</data>
            <data name="Illuminance (lx)">amplitude2</data>
        </set>
    </export>
</phyphox>
