Andrew replied to the topic 'Parking scope without Park capability (LX200 & Skysensor)' in the forum. 1 month ago

Hi Jasem,

I was eager to test the new ss2k park function last week but clear sky abound for once!

Anyhow I did a quick first test at the end of last night session confirmed:-

1. park function appears in INDI Main control panel Parking: Park UnPark.
2. INDI Site Management appears to enable setting of Park Position as AltAz D:M:S
as test I input Alt 0:30:0, 260:0:0 and Set, then in Park Options I hit Write Data (I assumed this would be saved but this morning no data appeared after reconnect despite INFO screen showed 'Saved Park Status/Position)
It seems I forgot to do Options : Save Config since I re-did this morning and the Park position was saved.

3. at end of session I went to remote site so I could observe the Park function in action (always wary of runaway mount)
I saw there were several ways to operate Park function. from Kstars right click Skysensor then Park/UnPark or from INDI Main control or from EKOS Park or EKOS Mount Control Park. This is great I assume they all use same 'code'.

1st try : from INDI Main - after clicking (vnc from phone to PC) there was beep from handset (good) and audible change in motors but no movement towards park position.

2nd try : from EKOS Park.
handset beep and INDI panel shows ERROR error slewing to 260:0:0 0:30:0 Object below horizon
Tried setting Alt 2:30:0, 260:0:0 same result
By feeling the motors I can tell they are still tracking RA.

I Unparked and slewed to random spot and tried all again with same result.
It seems like same result when I tried my pyindi code i.e. there was comms with mount but the final 'goto' doesn't work.

The functionality feels great, if we can get it to work on ss2k it would be awesome.

Unfortunately I'd set logging off while I was imaging, sorry I know you need this, so I'll have to send logs from new session maybe tonight. Anything particular you want me to try?

Read More...

Andrew replied to the topic 'Parking scope without Park capability (LX200 & Skysensor)' in the forum. 2 months ago

Thanks Jasem, I'll try to test this weekend.

But as T-Studio points out there is a wider need (other drivers) and requirement for personalisation (Alt-Az park point). For example you've given functionality to select a point on Kstar sky map (Ra Dec), but we need a fixed know land (Alt-Az) point, i.e. Input box "Park position (Alt-Az)" = x,y

Read More...

Andrew replied to the topic 'Parking scope without Park capability (LX200 & Skysensor)' in the forum. 2 months ago

Yes Jasem, that is the root issue.
For me park is required to get to a fixed point to take flats and let the scope 'sleep', for other there are different reasons.
Andrew

Read More...

Andrew replied to the topic 'Parking scope without Park capability (LX200 & Skysensor)' in the forum. 2 months ago

HI Jasem,

I'm still working on getting pyindi basics working to simulate a 'parking' in mounts without the function.

As you know with python serial I got simulated park working with my skysensor using lx200 codes.

I couldn't get pyindi to work. After many debug cycles I reduced the issue back to telescope_on_coord_set switch explained below.

I attach the debug code (.py as .txt) its focussed on the 2 commands:-

1. telescope_on_coord_set[0].s = PyIndi.ISS_OFF # or ISS_ON
2. indiclient.sendNewSwitch(telescope_on_coord_set)

I attach the output using simulator. You can see the switch cycle ON - OFF but I see no effect in the loop showing RA,DEC. I expect when track ISS_ON to show repeated same RA,Dec values. I get same result in both simulator and real skysensor both local and server.

Could you have a quick look to see what I'm missing?
Andrew

Read More...

Andrew replied to the topic 'Parking scope without Park capability (LX200 & Skysensor)' in the forum. 2 months ago

Sorry for delayed reply it was clear here so priority went to photon collection!

Firstly Jasem,
The SS2K serial commands I used to 'park' (since park doesn't exist only 'Land') are in the code extract I gave in #28610 which works but needs more tests, the LX200 codes are published online (i.e. github.com/syntheticminds/raspberrysky/blob/master/telescope.py .

Here is key points extracted from my code:-
command = "#:AL#" (set mode to Land)
command = "#:MA#" (slew to AltAz coordinates previously given )
command = "#:Q#" (halt the scope) followed by with "#:hN#" (like sleep)

Even if I get this code working/hardened it requires dedicated serial connection using pypi serial, so its not a good INDI solution, hence I'm trying to implement using pyindi. I'm having some ON_COORD-SET Switch issues that I'll send in separate post for checking.

For T-studio,

I'll keep working on a PyINDI solution with my skysensor and simulator setup, if I get it working and hardened we can work on how to integrate it but at present it requires these things:-
a. A know 'park' position to be input in AltAz coords (dms)
b. The precise geodetic EarthLocation (gps, with elevation, locatime is converted to UTC by code)
c. mount setup in accordance with b (obviously will fail if mount thinks its somewhere else, as you say it's dangerous)

Read More...

Andrew replied to the topic 'Parking scope without Park capability (LX200 & Skysensor)' in the forum. 2 months ago

Jasem saw my issue without Park last week, so please feel free to share just be aware I'm not a real coder so somebody had better check that code!
Also I realised it would probably be easier to integrate using PyIndi code and I have found below step that act as a parking function in three steps:
1. find RaDec of your park (altaz position) - uses astropy module.
2. slew to that using PyIndi
3. switch off tracking using this
telescope_on_coord_set = device_telescope.getSwitch("ON_COORD_SET")
telescope_on_coord_set[0].s = PyIndi.ISS_OFF # TRACK
telescope_on_coord_set[1].s = PyIndi.ISS_OFF # SLEW
telescope_on_coord_set[2].s = PyIndi.ISS_OFF # SYNC
indiclient.sendNewSwitch(telescope_on_coord_set)
I make complete code and tests and send update then see what Jasem and experts think.

Read More...

Andrew replied to the topic 'Parking scope without Park capability (LX200 & Skysensor)' in the forum. 2 months ago

For the record I did resolve this using a python code and serial interface module (pyserial - see code extract below). So now I'm able to effectively 'park' the scope at a 'land' location (fixed AltAz LCD screen) so the scope stops tracking and then sleeps enabling me to take flats etc.

The options I tried:
a. Using the INDI module PyIndi - but couldn't find any commands to set land mode , sleep or park.
b. A hardware switch on the skysensor to turn it off - this still meant coding to get the scope into position

Let me know if you want more info.
Andrew

Python 3.5 code extract

import serial
import time
#import string, re
#


def start_telescope(port):
#connect to the scope on a port #linux: /dev/ttyUSB0 (check with lsusb)
print("trying to connect to port:{} ".format(port))
try:
serialobject = serial.Serial(port, 9600, timeout = 5)
if(serialobject.isOpen()):
print("port is connected")
#wakeup sleeping telescope
serialobject.write("#:hW#".encode())
print("trying to wake scope")
else:
print("-- scope not ready! --")
serialobject = "notready"
except:
print("serial port open error - already open?")
serialobject = "serialerror"
return(serialobject)

def get_telescope_position(serialobject):
#get RA and DEC
serialobject.write("#:GR#".encode())
RA = serialobject.read(10).decode('latin-1')
time.sleep(1)
serialobject.write("#:GD#".encode())
Dec = serialobject.read(10).decode('latin-1')
pos = [RA, Dec]
print('telescope pos is RA:{}, DE:{}, pos{}'.format(RA,Dec,pos))
return (pos)

def set_alignment(serialobject, amode): #set to land, polar or altaz mode
serialobject.reset_input_buffer() #flushInput()
serialobject.reset_output_buffer() #flushOutput()
if(amode == "Land"):
command = "#:AL#"
elif(amode == "polar"):
command = "#:AP#"
elif(amode == "altaz"):
command = "#:AA#"
else:
print(" alignmode not recognized...defaulting to altaz..")
command = "#:AA#"
print('alignment mode set to {}'.format(amode))
serialobject.write(command.encode())
time.sleep(1)
serialobject.reset_input_buffer() #flushInput()
return

def get_alignment(serialobject): # find the alignment mode
serialobject.reset_input_buffer() #flushInput()
serialobject.reset_output_buffer() #flushOutput()
command = chr(0x06)
serialobject.write(command.encode())
time.sleep(1)
result = serialobject.read(2).decode('latin-1')
time.sleep(1)
serialobject.flushInput()
if (result == 'A'):
mode = "altaz"
elif (result == 'L'):
mode = "Land"
elif (result == 'P'):
mode = "polar"
else:
mode = "unknown"
print('alignment mode is {}, {}'.format(result,mode))
return

def go_lcd(serialobject) :# only works if Land or AlAz True
alt= '#:Sa -0*50#' #:Sa sDD*MM#
az = '#:Sz 250*50#' #:Sz DDD*MM#
print('going to lcd at {}, {}'.format(alt,az))
serialobject.reset_input_buffer() #flushInput()
serialobject.reset_output_buffer() #flushOutput()
serialobject.write(alt.encode())
serialobject.write(az.encode())
command = "#:MA#"
serialobject.write(command.encode())
return

def halt_scope(serialobject):
serialobject.reset_input_buffer() #flushInput()
serialobject.reset_output_buffer() #flushOutput()
command = "#:Q#"
print('scope halted')
serialobject.write(command.encode())
serialobject.write("#:hN#".encode())
return

so = start_telescope('/dev/ttyUSB1')
for x in range(3):
get_telescope_position(so)
get_alignment(so)
set_alignment(so,'Land')
go_lcd(so)
get_alignment(so)
halt_scope(so)
so.close()

Read More...

Andrew replied to the topic 'indi 1.7.4 : possible small bug in skysensor' in the forum. 2 months ago

Thanks Jasem,

I deleted the Skysensor configs under /home/mate/.indi and restarted with same result. I've copied extract of log below with my edit of actions.

I think this is triggered by me not tracking anything i.e. in day testing mode I don't complete guide calibration, obtain target, focus, guide and track.
And it seems resolved if I right-click in KSTARS - Skysensor then Connect or go to EKOS and hit Connect - see below tracking starts and all seems OK:

The only other thing I noticed and it appears an irrelevant and known item, is the log reports an warning:
WARNING 317.448158 sec : Could not process mount date and time: 2018-08-10T

I'll do a full night test tonight with normal workflow to see if the issue is resolved.
Andrew


[AB added - output after setting new config for skysensor]

2018-08-10T09:05:56: Driver indi_lx200ss2000pc: read setSwitchVector SkySensor2000PC CONFIG_PROCESS Ok
CONFIG_LOAD='Off'
CONFIG_SAVE='Off'
CONFIG_DEFAULT='Off'
2018-08-10T09:05:56: Client 0: queuing <setSwitchVector device='SkySensor2000PC' name='CONFIG_PROCESS'>
2018-08-10T09:05:56: Client 0: sending msg copy 1 nq 1:
<setSwitchVector device="SkySensor2000PC" name="CONFIG_PROCESS" state="Ok" timeout="0" timestamp="2018-08-10T09:05:56">
<oneSwitch name="CONFIG_LOAD">
Off
</oneSwitch>
<oneSwitch name="CONFIG_SAVE">
Off
</oneSwitch>
<oneSwitch name="CONFIG_DEFAULT">
Off
</oneSwitch>
</setSwitchVector>

2018-08-10T09:06:16: Client 0: read newSwitchVector SkySensor2000PC ON_COORD_SET
SLEW='On'
2018-08-10T09:06:16: Driver indi_lx200ss2000pc: queuing responsible for <newSwitchVector device='SkySensor2000PC' name='ON_COORD_SET'>
2018-08-10T09:06:16: Client 0: read newNumberVector SkySensor2000PC EQUATORIAL_EOD_COORD
RA='1.69197'
DEC='1.23823'
2018-08-10T09:06:16: Driver indi_lx200ss2000pc: queuing responsible for <newNumberVector device='SkySensor2000PC' name='EQUATORIAL_EOD_COORD'>
2018-08-10T09:06:16: Driver indi_lx200ss2000pc: sending msg copy 1 nq 2:
<newSwitchVector device="SkySensor2000PC" name="ON_COORD_SET">
<oneSwitch name="SLEW">
On
</oneSwitch>
</newSwitchVector>

2018-08-10T09:06:16: Driver indi_lx200ss2000pc: sending msg copy 1 nq 1:
<newNumberVector device="SkySensor2000PC" name="EQUATORIAL_EOD_COORD">
<oneNumber name="RA">
1.69197
</oneNumber>
<oneNumber name="DEC">
1.23823
</oneNumber>
</newNumberVector>

2018-08-10T09:06:16: Driver indi_lx200ss2000pc: indi_lx200ss2000pc dispatch error: Property ON_COORD_SET is not defined in SkySensor2000PC.
2018-08-10T09:06:16: Driver indi_lx200ss2000pc: indi_lx200ss2000pc dispatch error: Property EQUATORIAL_EOD_COORD is not defined in SkySensor2000PC.


[AB added - after EKOS Mount Control motion arrow click ]

2018-08-10T09:07:57: Driver indi_lx200ss2000pc: indi_lx200ss2000pc dispatch error: Property TELESCOPE_MOTION_WE is not defined in SkySensor2000PC.
2018-08-10T09:07:57: Client 0: read newSwitchVector SkySensor2000PC TELESCOPE_MOTION_WE
MOTION_WEST='Off'
MOTION_EAST='Off'
2018-08-10T09:07:57: Driver indi_lx200ss2000pc: queuing responsible for <newSwitchVector device='SkySensor2000PC' name='TELESCOPE_MOTION_WE'>
2018-08-10T09:07:57: Driver indi_lx200ss2000pc: sending msg copy 1 nq 1:
<newSwitchVector device="SkySensor2000PC" name="TELESCOPE_MOTION_WE">
<oneSwitch name="MOTION_WEST">
Off
</oneSwitch>
<oneSwitch name="MOTION_EAST">
Off
</oneSwitch>
</newSwitchVector>

Read More...

Wilson Muchenje thanked Andrew in topic Starlight Express MX5 2 months ago
Andrew replied to the topic 'Starlight Express MX5' in the forum. 2 months ago

hi Will, I have one but had to drop it since the indi drivers don't work with it.

Peter and I tried hard to make a fit (see indilib.org/forum/general/7-starlight-xp...cluded-in-sx.html#20 ) without success which is a pity since it remain a great ccd for guiding and mine is still working on XP virtual machine.

Andrew

Read More...

Andrew created a new topic ' indi 1.7.4 : possible small bug in skysensor' in the forum. 2 months ago

firstly great thanks to the team for latest release, I only got to try it this week and was very excited to see improvements that jumped out, several that were on my wish list:-
- camera temperature indication for Canon (would be great to have tickbox option to add this to filenames)
- better integration of lin_guider
- the pulse guide option for skysensor (not tested yet)

During first run of v1.7.4 with new Raspberrypi 3 using ubuntu mate, I noticed what might be a bug with skysensor slew control while following my normal workflow :-
1. connect skysensor, canon and lodestar guider, check focus, take some flats, start guide calibration - all OK
2. after starting guiding (lin-guider) on remote, I normally use client kstar to slew target using mouse select target, then right click option for skysensor 'slew' or use ekos mount control to move.

Here I got no slew and after setting debug I saw error reported in the remote indi.log

"Driver indi_lx200ss2000pc: indi_lx200ss2000pc dispatch error: Property EQUATORIAL_EOD_COORD is not defined in SkySensor2000PC.

after checking several options I also noticed any attempt at mount control using ekos 'keypad' or indi control panel motion control resulted also in this error

"Driver indi_lx200ss2000pc: indi_lx200ss2000pc dispatch error: Property TELESCOPE_MOTION_NS is not defined in SkySensor2000PC."

I can resolve the issue by clicking 'connect' in kstar (from right click then skysensor) - which is odd since I'm sure I was already connected.

The client kstars (log attached) from a daytime test run doesn't seem to record any errors like above.

I never noticed this before, maybe I've slipped somewhere but could somebody check? I can send skysensor logs if required.

thanks
Andrew

Read More...

Alfred thanked Andrew in topic Question re FITS/CR2 conversion 6 months ago
Andrew replied to the topic 'Question re FITS/CR2 conversion' in the forum. 6 months ago

I also ran into similar issues with mixed image sizes during sessions which still persists. I understand it is a long standing bug in dcraw. It was a pain to resolve because I use also Siril, I wrote some python code to check and convert all session images into same size before using Siril.
see indilib.org/forum/general/2931-image-geo...rsus-fits.html#21889

Read More...

Andrew replied to the topic 'Image geometry different when using native versus fits?' in the forum. 8 months ago

Hi Jasem, Magnus,
This looks like same libraw bug (see indilib.org/forum/ccds-dslrs/1895-dslr-i....html?start=12#16190 ) that I stumbled upon a year ago.
I can verify from this weeks session it is still present i.e. with Canon 60Da some FITs files (bias and flat) have different dimensions to lights 5202 vs 5184 and makes processing a mess.
I can understand a longstanding bug in libraw, but why does it impact say bias and not light exposures from INDI?

If we want to stay only with FITs workflow is the subframe workaround i.e. add 5202-5184 = 18 still the only option?
Andrew

Read More...

Andrew replied to the topic 'Did EKOS guider option 'via' change?' in the forum. 9 months ago

Just to reconfirm that all working fine - first time use of internal guide 'via' lodestar worked all night.
Option Via skysensor also available , I'll test tomorrow.

Read More...

Andrew replied to the topic 'Did EKOS guider option 'via' change?' in the forum. 9 months ago

hello Jasem,
I upgraded to latest versions on server and client and can see indi-sx is 1.12-20180203 for example.
But I still cannot select 'skysensor' using the 'via' field in the EKOS guider options, it remains as just one choice 'SX CCD Lodestar'.
I assume that I should be able to choose to guide via RS232 or ST4 right?
I see Skysensor is online and I can use INDI control panel to Motion Control the scope so the RS232 is working.
Let me know if you need some logs.
Andrew

Read More...

Andrew replied to the topic 'Did EKOS guider option 'via' change?' in the forum. 9 months ago

Well jasem, I'm not sure who disabled but you re-enabled it , see #15105. Hopefully I can try the new ppa tomorrow and I'll feedback.
Andrew


indilib.org/forum/mounts/1821-skysensor2....html?start=12#15105

Read More...

Login

3rd Party

Choose from the numerous 3rd party INDI drivers to suit your needs!

Got Problem?

Check out the FAQ, the forum, and the bug tracking system to resolve any issues you might have!
You can also subscribe to INDI newsletter and development mailing lists to get the latest updates on INDI!