Here is how to get feedback from Talon ROR for your dragscripts

In the observatory, we use a Talon6 Roll of Roof (E-Eyes).

The Talon6 is a fantastic roll of roof, but i was lacking some feedback from it’s status and switch for my dragscript.

To manage some conditions in my dragscripts, i wrote a simple go program with a CLI: Achille.
I now can be sure that the roof is fully open before any mount operation :wink:

For those who are interested the code is here, and i will soon push a windows binary release.

Repository is here:

Hope this could help Talon6 users to interface it with voyager using external script in your awesome Dragscripts.


Regards,
HoxCa

3 Likes

Hi HoxCa,

Talon6 have an ASCOM Driver, May you confirm ?

All the best
Leonardo

Yes Leo, Talon6 have an Ascom driver but unfortunnatly

Ascom driver/Voyager report ‘Open’ status even if the roof is open at 2% (not fully open).
Voyager and dragscript cannot confirm that mount is at park position (Talon MAP switch) via ascom


HoxCa

Sorry for my question but I dont know Talon6 system.

Usually a roof systems reports opened only if the running end switch sensor report on and this mean roof completly opened.

To get status of mount a couple of sensors is needed, usually this is something you can do with a simple I/O card and a 2 proximity sensors over the mount and coupled to Viking and Voyager.

All the best
Leonardo

Yes, Leo.

“Usually a roof systems reports opened only if the running end switch sensor report on and this mean roof completly opened.”
I was expecting the same behavior from the Talon6, but in reality it’s not the case ¯_(ツ)_/¯.
So i have to manage that to prevent catastrophic situation and avoid any goto in dragscript prior confirmation. Here is why i wrote Achille in the first place.

I know that switch sensor status can be used via viking (i already use viking for 12VDC and USB switching of the Pegasus). But as far as we are in the E-Eyes hosting facility we have no wiring between the talon roof and any of our I/O card. The Talon6 is only plugged to the AAG CloudWatcher.
And, if i correctly understood; the Ascom Dome Class don’t manage/report any switch state anyway.

So Achille is just used here to get switch confirmation of mount parking before closing Talon in case of an emergency managed by voyager (that’s a double check, but also an alert management !).

In the case of Talon6, the hardware is prevent roof closing if the MAP mount at park is not confirmed. But if Talon6 is able to manage emergency situation (Rain, Power failure), park the mount and close the roof with a hardware confirmation…

I’ve preference for managing emergency with voyager when we are imaging, because i also need to correctly warm the camera before shutdown, and voyager dragscript does a great job here :wink:
In any other case, voyager idle (dragscript not running), the Talon6 will take command to put the observatory in safety.


Regards,

HoxCa

To be more clear, here is 3 status from the Talon6 Ascom Roof Driver.
For your information voyager dome see the Status field.

RCL stand for Roof Close switch
ROP stand for Roof Open switch

roof


Regards

HoxCa

Thank for the explanation

All the best
Leonardo

Hello hoxca, I’m also in Eeye with the talon. Investigating Voyager trial (for now only in simulator modus).
Can you share your dragscript on how you manage the rolloff using your program? I know Talon can be pine in the ass sometimes…

Talon seems very reliable here.
Voyager doing an amazing job here :wink:

I could share our dragscript, but it’s conplex and very specific to our observatory :

  • theSkyX control the AP1200 mount that is parked at Park1 position
  • viking is controlling our 12VDC line

If your are in a discover process, i could suggest you to make more simple dragscript in the first place.
In the case of the Talon, Achille could be easely used via external script in your dragscript.
Feel free to PM your email address if you want a Achille binary release and not able to compile the source code yourself.

I will make a screencast soon about safety management with voyager.

Hello Leonardo,

I’ve contacted Antonio from Talon6 for support.

He said:

Yes, the talon ascom driver reports Open even if the roof is not totally open, but this is so because the only status allowed in ASCOM are OPEN, OPENING, CLOSED, CLOSING and ERROR. ASCOM expects the driver to report OPEN if the roof is not moving and it is not closed.

The way of knowing via ASCOM how open is the roof is using the Altitude property.

Did you see this as specific to Talon6 dome driver or something that should be implemented more generally in the ROR dome management inside voyager ?

Hi Hoxca,

for Voyager and I think for all the systems open mean observatory ready to start operation for imaging without problem, close mean no start anything or start something at your risk.

This is something absolutely not reliable so we cant considering this. Like I said to you Open will be reported only if an end running sensor is switched on. Usually all situation not clear must be reported like ERROR. Otherwise you dont have way to start your night ! IMHO

All the best
Leonardo

Hi HoxCa. Yes, I also don’t have much issues with Talon. But I usually open/close the roof manually and try to not observe on nights when rain is predicted. Now I have to start up everything manually around sunset and a tool like Voyager could be very helpful that can wake the whole system up automatically when I’m not able to attend it.
Still in (early) discovery process of Voyager. I’ll only roll it out in E-Eye when I have it tested out as much as possible with simulators so I won’t get nasty surprises. See my other topic for that.

Hello Leo,

Thank you for your reply.

That seems also legit to me and i was expecting this answer on your side !
I’ve warn Antonio before asking on the voyager forum, that i’ve no good reason to hope see you implement something specific to manage this weird thing coming from the Talon6 driver behavior :wink:

It also confirm that Achille is valuable to manage this in dragscripts.


Regards,
Hugues

Hi Hugues,

I have been using Talon6 for many years for my rolloff roof observatory using different control programs and never had any issues with the status reported by Talon6 ASCOM driver to the control programs. Now I am using Voyager and everything works smoothly when the “Open Shutter” is sent through the DragScript.

Here you can see the activity recorded in Voyager’s log for one if my sessions:
2020/10/31 19:02:40 360 - EVENTO - [DragScript Run ] - [GET_NEXT_ISTRUZIONE_Code ] - Instruction [25]=> Open Shutter
2020/10/31 19:02:40 398 - INFO - [DragScript Run ] - [DO_ISTRUZIONE_Code ] - Run Action => Open Shutter
2020/10/31 19:02:40 402 - SUBTITLE - [DragScript Run ] - [DOME_OPEN_SHUTTER_Code ] - Open Dome Shutter
2020/10/31 19:02:40 443 - INFO - [DomeCMD ] - [OPEN_SHUTTER_Code ] - Opening Dome Shutter …
2020/10/31 19:02:40 446 - INFO - [DomeCMD ] - [OPEN_SHUTTER_Code ] - Command OpenShutter Processed correctly …
2020/10/31 19:02:44 451 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:02:45 468 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:02:46 455 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:02:47 480 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:02:48 469 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:02:49 493 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:02:50 379 - INFO - [WEATHER ] - [GestioneFSM_STREAMING ] - Read Sensor [READ]:2020-10-31 19:02:47 - [WRITE]:2020-10-31 19:02:47 - [SINCE]:0 - [WEATHER]: CLEAR - CALM - DRY - DARK - [SAFETIME]: 3222s - [RAW]: 2020-10-31 19:02:47.00 C K -10.9 11.9 11.9 0.0 85 9.4 10 0 0 00000 044135.79360 1 1 1 1 0 0
2020/10/31 19:02:50 476 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:02:51 520 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:02:52 506 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:02:53 541 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:02:54 525 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:02:55 544 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:02:56 536 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:02:57 554 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:02:58 578 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:02:59 552 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:03:00 567 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:03:01 551 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:03:02 574 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:03:03 594 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:03:04 600 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:03:05 592 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:03:06 580 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:03:07 604 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:03:08 592 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:03:09 611 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:03:10 625 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:03:11 612 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:03:12 628 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:03:13 619 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:03:14 636 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:03:15 622 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:03:16 610 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpening [2]
2020/10/31 19:03:17 625 - DEBUG - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Status = shutterOpen [0]
2020/10/31 19:03:17 627 - INFO - [DomeCMD ] - [OPEN_SHUTTER_WAIT_Code ] - Dome Shutter Open
2020/10/31 19:03:17 656 - EVENTO - [DragScript Run ] - [DOME_OPEN_SHUTTER_WAIT_Code ] - Open Dome Shutter Done
2020/10/31 19:03:17 660 - INFO - [ATOMIC_DOME_CMD ] - [Funzione ] - Action Time [ATOMIC_DOME_CMD] => 0 [m] 37 [s]
2020/10/31 19:03:17 663 - INFO - [ATOMIC_DOME_CMD ] - [Funzione ] - Action Time Mobile Mean [ATOMIC_DOME_CMD] => 0 [m] 28 [s]

As you can see the “Opening” status is received while it is opening.
Bear in mind that mine is a “standalone” installation. I mean, I am not sharing the Talon6 hardware with others, like you probably do in e-EyE, and the behaviour could be different in this setup.

Best regards,

Julian

Hello Julian,

As i said Talon6 software is reliable.
I have no problem controlling the Talon6 with Voyager or using Shutter controls in Dragscript !

Let’s be more explicit
If somebody make a GOTO 10 with the talon before the session, and dragscript is launch you have no possibility to make sure that the Talon is FULLY OPEN from there.
Yes you could throw a ‘Open Shutter’ in the beginning of a session, but you have no automata confirmation that the roof is FULLY OPEN again.

I don’t like to guess there, i want to be sure !
Because we plan something without any human intervention, here (from start to end).
Leo have implemented WAIT SAFE for good reason :wink:

The only ways to be sure that the roof is fully open are:
1- Use the switch via IO/Card and viking (We cannot do that in the E-Eyes facility)
2- Use the Ascom Driver Alt value (Not possible, See answer of Leonardo)
3- Use an external software to get this information and push this in the dragscript (That’s what we did with Achille !)


Regards,
HoxCa

Hi Hoxca , can you be more clear on this. To what method you are referring ?

All the best
Leonardo

Hello.
I use Talon6 since several years without any issue.
I have a Roll on Roof and there are magnetic contacts that indicate you if the roof is open or close.

And also there are magnetic contacts for the mount parking position.

For example, I don’t let the roof closing until the magnetic mount contacts state that the mount is in parking position.

I use it with drag script, etc without any concern.

Un saludo!
Fernando

Hello fhuet,

:thinking: Are you really reading what i explain ?
I just clarify the purpose of the Achille binary.

And yes delPark 0 is the safe option for parking !
Notice you can’t get feedback from switch via Ascom for your dragscript.

Antonio from talon said:
The way of knowing via ASCOM how open is the roof is using the Altitude property.

Hello HoxCa.
I understand what you mean, I think.
If the roof stalls while opening, we don’t know exactly where it is.
If is open al 90% or at 50%.
That’s correct.

I just say that I try not moving the scope until I’m sure the magnetic contacts say that it’s open or close.

What you say about the Altitude variable is very interesting.
It seems in Ascom you can use the Altitude variable used for a dome shutter, as a way of knowing the position of a Roll roof.

Sorry for the misunderstanding.
Fernando