Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FMC Host doesn't know if lock is lost when Bno055 is enabled but PolledBno055Data node is absent from workflow #386

Open
cjsha opened this issue Dec 16, 2024 · 0 comments

Comments

@cjsha
Copy link
Member

cjsha commented Dec 16, 2024

Without the PolledBno055Data node in this workflow, the FMC Host awaits Bno055 data and never figures out if lock is lost. This might also cause the following error message to show "a failure to write to stream or register" when trying to restart the workflow.

image

@jonnew mentioned adding a watchdog as a potential solution.

lock goes undetected example
<?xml version="1.0" encoding="utf-8"?>
<WorkflowBuilder Version="2.8.5"
                 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                 xmlns:onix1="clr-namespace:OpenEphys.Onix1;assembly=OpenEphys.Onix1"
                 xmlns="https://bonsai-rx.org/2018/workflow">
  <Workflow>
    <Nodes>
      <Expression xsi:type="Combinator">
        <Combinator xsi:type="onix1:CreateContext">
          <onix1:Driver>riffa</onix1:Driver>
          <onix1:Index>0</onix1:Index>
        </Combinator>
      </Expression>
      <Expression xsi:type="Combinator">
        <Combinator xsi:type="onix1:ConfigureUclaMiniscopeV4">
          <onix1:Name>UclaMiniscopeV4</onix1:Name>
          <onix1:Camera>
            <onix1:DeviceName>UclaMiniscopeV4/UclaMiniscopeV4</onix1:DeviceName>
            <onix1:DeviceAddress>256</onix1:DeviceAddress>
            <onix1:Enable>true</onix1:Enable>
            <onix1:FrameRate>Fps30Hz</onix1:FrameRate>
            <onix1:SensorGain>Low</onix1:SensorGain>
            <onix1:InterleaveLed>false</onix1:InterleaveLed>
            <onix1:LedBrightness>0</onix1:LedBrightness>
            <onix1:LiquidLensVoltage>47</onix1:LiquidLensVoltage>
          </onix1:Camera>
          <onix1:Bno055>
            <onix1:DeviceName>UclaMiniscopeV4/PolledBno055</onix1:DeviceName>
            <onix1:DeviceAddress>257</onix1:DeviceAddress>
            <onix1:Enable>true</onix1:Enable>
            <onix1:AxisMap>ZYX</onix1:AxisMap>
            <onix1:AxisSign>MirrorZ MirrorY MirrorX</onix1:AxisSign>
          </onix1:Bno055>
          <onix1:Port>PortA</onix1:Port>
          <onix1:PortVoltage xsi:nil="true" />
        </Combinator>
      </Expression>
      <Expression xsi:type="Combinator">
        <Combinator xsi:type="onix1:StartAcquisition">
          <onix1:ReadSize>2048</onix1:ReadSize>
          <onix1:WriteSize>2048</onix1:WriteSize>
        </Combinator>
      </Expression>
      <Expression xsi:type="Combinator">
        <Combinator xsi:type="onix1:UclaMiniscopeV4CameraData">
          <onix1:DeviceName>UclaMiniscopeV4/UclaMiniscopeV4</onix1:DeviceName>
          <onix1:DataType>U8</onix1:DataType>
        </Combinator>
      </Expression>
      <Expression xsi:type="MemberSelector">
        <Selector>Image</Selector>
      </Expression>
    </Nodes>
    <Edges>
      <Edge From="0" To="1" Label="Source1" />
      <Edge From="1" To="2" Label="Source1" />
      <Edge From="3" To="4" Label="Source1" />
    </Edges>
  </Workflow>
</WorkflowBuilder>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant