×

INDI Library v2.0.6 is Released (02 Feb 2024)

Bi-monthly release with minor bug fixes and improvements

Ekos setFilterNames() on connect() ?

  • Posts: 72
  • Thank you received: 21
Hello Jasem.
I'm writing a new driver for the filter wheel OptecInc IFW
When the function "SetFilterNames()" is calling, I write the filter names on the EEprom of the OptecIFW.
When I start INDI with "indiserver -vv indi_Optec_Wheel and connect to the device,it works fine, in real or in simulation mode.
No issue at this step, Filter names are saved correctly, change slot works fine, and my init function too.
This function make a kind of reset of the IFW. Identify the wheel in the filter box (Could have 5 different wheel), and move to slot one.
One specific workflow of this Filter wheel is the filter naming convention.
Even if the EEProm is able to store any char, and we could read them via serial interface with a computer,
the small 8 digits display is only able to show these chars :
"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ=.#/-%" you can see that ONLY capital letters are usable.
To avoid no chars the filterbox cannot display, I use REGEX to detect wrong char in the filternames.
Unfortunately with EKOS I get some troubles around that specific point.
I don't understand really the workflow, but due to the result I guess it should do one thing, write filternames, but I couldn't understand why?
When I start INDI from Ekos, no problem, but when I Connect from EKOS the issue occur.
The wheel connect correctly, and my init sequence start normally. The WheelID is retrieved, the filter position and the filter names with CAPITAL letters too.
The problem is that EKOS then seems to set the FILTERNAME property! why?
I can see that the original filter name, for example "GREEN" is set to "Green" by EKOS on FilterName property of my driver. As I've a REGEX to check if name is valid, the result is false and then I return false from SetFilter() and the process failed.
If I don't check the Filter name and return true, As SetFilter() is called, this new name is store in EEprom, but it isn't able to be displayed correctly to the FilterBox (Give "GGGGG") :-(
Now IF from that state I click on disconnect from EKOS and the connect (Without stop INDI), the sequence goes without changing the Filtername, but I don't know if this is because the names follow some "EKOS Rules" or if this is done only after first start of INDI.
I join the log from EKOS.
Any idea what occur? I really would like to be able to use only the chars could be displayed by the FilterBox.
Is a bug in EKOS?
It is due to snoop method to get filter name? Could it be avoid?
MY last solution is to capitalise small letters, but this is not nice, and this is not necessary to write filtername from EKOS.
I hope you understand my issue, with my "own" English it shouldn't be so easy!
Philippe Besson
Skywatcher HEQ5, Televue 101-IS, Takahashi FS-60CB
Focus Boss II with OptecInc TCF-S focuser and Starlight Instruments HSM20 handy stepper motor
Guiding camera ZWO ASI120MM
Filterwheel OptecInc IFW
Camera not set yet
Switzerland
7 years 5 months ago #10525
Attachments:

Please Log in or Create an account to join the conversation.

When you first connect from Ekos, it loads the config file. Could that be the problem? You can use the Device Manager and connect to your filter as it doesn't issue load_config automatically upon connect.
Last edit: 7 years 5 months ago by Jasem Mutlaq.
7 years 5 months ago #10530

Please Log in or Create an account to join the conversation.

  • Posts: 72
  • Thank you received: 21
Thanks Jasem.

This is correct and if from device I load the config I get the same issue. Then I've overided the INDI::DefaultDevice::loadConfig() to be sure I load ONLY property not saved in EEPRom of the IFW.
I've added new Switch property to allow the user to select if he wants to check the entry versus chars who could be display on IFW screen, or if he prefers to use any chars only readable via the serial connection.

Need more test, mainly related to wheel changing and Ekos but it looks fine. Then write a manuel to be ready to be published, if you accept.
Philippe Besson
Skywatcher HEQ5, Televue 101-IS, Takahashi FS-60CB
Focus Boss II with OptecInc TCF-S focuser and Starlight Instruments HSM20 handy stepper motor
Guiding camera ZWO ASI120MM
Filterwheel OptecInc IFW
Camera not set yet
Switzerland
7 years 5 months ago #10534

Please Log in or Create an account to join the conversation.

Time to create page: 0.454 seconds