labscript-suite / labscript-devices

A modular and extensible plugin architecture to control experiment hardware using the 𝘭𝘢𝘣𝘴𝘤𝘳𝘪𝘱𝘵 𝘴𝘶𝘪𝘵𝘦.
http://labscriptsuite.org
Other
5 stars 58 forks source link

Novatech DDS transition to manual strangeness #37

Closed philipstarkey closed 4 years ago

philipstarkey commented 5 years ago

Original report (archived issue) by David Meyer (Bitbucket: dihm, GitHub: dihm).


We’ve been working on some triggering issues with our 409B-AC devices (packaged versions of the DDS9m) and I’ve observed inconsistent behavior when transitioning to manual. Depending on the trigger mode used (async vs. sync) the buffered outputs would blank between shots.

I was able to fix it by placing an “M 0” command in transition to manual. I ended up calling the guy at Novatech and he confirmed that the phase alignment commands “M a/n” do not replace the function of “M 0” when going from table mode to single tone mode, so the change made with the double clutch that removed “M 0” from both transitions seems to be the rub.

I propose changing the phase alignment commands in the transition functions back to “M 0” and making the default phase alignment keyword point to continuous.

philipstarkey commented 5 years ago

Original comment by Chris Billington (Bitbucket: cbillington, GitHub: chrisjbillington).


I think I understand. Thanks for figuring this out!

So at startup, we should send m 0 to ensure it's in single tone mode, followed by either m a or m n to set the phase mode and from then on it's just m t and m 0 to switch between single-tone mode and table mode (without ever re-sending m a or m n)?

philipstarkey commented 5 years ago

Original comment by David Meyer (Bitbucket: dihm, GitHub: dihm).


That is my understanding. The tests we have done seem to bear that out, though can be hard to test all the edge cases with these things.

philipstarkey commented 5 years ago

Original comment by Chris Billington (Bitbucket: cbillington, GitHub: chrisjbillington).


Great. I'll make the pull request, and will see if we can test it in the labs that care about their phase modes to ensure it is working as expected.

philipstarkey commented 5 years ago

Original comment by Chris Billington (Bitbucket: cbillington, GitHub: chrisjbillington).


Addressed by PR #78

philipstarkey commented 4 years ago

Original comment by Chris Billington (Bitbucket: cbillington, GitHub: chrisjbillington).


Merged in novatech_phase_mode_fix (pull request #78)

Fix issue #37: incorrect transition to manual/buffered semantics for novatech.

→ \<\<cset 01f2a3ea9864dd6a4d028d84b0c9f15a284fd8c3>>