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

rotctld rot_caps to reflect underlying rotator functions #1035

Closed
mdblack98 opened this issue May 19, 2022 · 10 comments
Closed

rotctld rot_caps to reflect underlying rotator functions #1035

mdblack98 opened this issue May 19, 2022 · 10 comments
Labels
bug enhancement priority High priority for enhancement or fix but not critical
Milestone

Comments

@mdblack98
Copy link
Contributor

Expand dump_state for rotctld to include all the functions too and complete rig_caps capabilities

@mdblack98 mdblack98 added this to the 4.6 milestone May 19, 2022
@PianetaRadio
Copy link
Contributor

Hi Mike, please try to address this issue in v.4.5.1

TNX

@mdblack98 mdblack98 added priority High priority for enhancement or fix but not critical bug labels Nov 3, 2022
@mdblack98
Copy link
Contributor Author

Can you explain exactly what's missing?
There are these four items
Get functions:
Set functions:
Extra functions:
Can set Func: N
Can get Func: N

But not one rotator has any get/set function defined.

@PianetaRadio
Copy link
Contributor

PianetaRadio commented Nov 4, 2022

I added in my commit south_zero that was missing from dump state.

In my opinion the important info missing from dump caps are:

  • rot_type (should reflect the real rotator, not to be the generic ROT_TYPE_OTHER);
  • Can Set and Can Get functions (as before, reflected from the real rotator)

@mdblack98
Copy link
Contributor Author

Thanks for the patch.

The are no "Can Set and Can Get" functions in any rotor.
Rotors only know movement -- not what we call a "function" in Hamlib. Functions are generally things you toggle on/off.

@PianetaRadio
Copy link
Contributor

Sorry, I will try to explain better: I mean something like "my_rot->caps->park" doesn't work as expected with Net rotator, beacuse doesn't take it from the real rotator caps.

@mdblack98
Copy link
Contributor Author

What rotor needs to have the ROT_TYPE_OTHER changed? Some items are controllers with no specific direction. Consder "OTHER" to mean "GENERIC".

@PianetaRadio
Copy link
Contributor

Consider for example my application software CatRotator:

  • The GUI is responsive to the rotator type, if the rotator is azimuth only, the elevation indicator disappear from the interface.
  • If the rotator has park function, the interface use it, otherwise send the rotator in the direction selected by the user in the setup.

And so on, there is a series of features that couldn't be used with the NET rotctl.

@mdblack98
Copy link
Contributor Author

mdblack98 commented Nov 7, 2022 via email

@PianetaRadio
Copy link
Contributor

PianetaRadio commented Nov 8, 2022

For example:

Caps dump for model:    1701
Model name:             D azimuth
Mfg name:               Prosistel
Backend version:        20201215.0
Backend copyright:      LGPL
Backend status:         Stable
Rot type:               Azimuth
Port type:              RS-232
Serial speed:           9600..9600 bauds, 8N1
Write delay:            0mS, timeout 3000mS, 3 retries
Post Write delay:       0mS
Status flags: None

Get functions:
Set functions:
Extra functions:
Get level:
Set level:
Extra levels:
Get parameters:
Set parameters:
Extra parameters:
Min Azimuth:            0.00
Max Azimuth:            360.00
Min Elevation:          0.00
Max Elevation:          0.00
Has priv data:          Y
Has Init:               N
Has Cleanup:            N
Has Open:               Y
Has Close:              N
Can set Conf:           N
Can get Conf:           N
Can set Position:       Y
Can get Position:       Y
Can Stop:               Y
Can Park:               N
Can Reset:              N
Can Move:               N
Can get Info:           N
Can get Status:         N
Can set Func:   N
Can get Func:   N
Can set Level:  N
Can get Level:  N
Can set Param:  N
Can get Param:  N

The same rotator connected via NET

Caps dump for model:    2
Model name:             NET rotctl
Mfg name:               Hamlib
Backend version:        20200528.0
Backend copyright:      LGPL
Backend status:         Stable
Rot type:               Other
Port type:              Network link
Write delay:            0mS, timeout 2000mS, 3 retries
Post Write delay:       0mS
Status flags: None
Get functions:
Set functions:
Extra functions:
Get level:
Set level:
Extra levels:
Get parameters:
Set parameters:
Extra parameters:
Min Azimuth:            0.00
Max Azimuth:            360.00
Min Elevation:          0.00
Max Elevation:          0.00
Has priv data:          N
Has Init:               N
Has Cleanup:            N
Has Open:               Y
Has Close:              Y
Can set Conf:           N
Can get Conf:           N
Can set Position:       Y
Can get Position:       Y
Can Stop:               Y
Can Park:               Y
Can Reset:              Y
Can Move:               Y
Can get Info:           Y
Can get Status:         N
Can set Func:   N
Can get Func:   N
Can set Level:  N
Can get Level:  N
Can set Param:  N
Can get Param:  N

As you can check there are some discrepancies in the available functions.
If I undestand well is not possible to correct this.

@PianetaRadio
Copy link
Contributor

Well done

@mdblack98 mdblack98 modified the milestones: 4.6, 4.5.1 Nov 14, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug enhancement priority High priority for enhancement or fix but not critical
Projects
None yet
Development

No branches or pull requests

2 participants