Hello!!

When connecting my HitecAstro USB Guider onto Ubuntu 20.04 the device is not recognized as a usb serial (which should provide /dev/ttyUSBx) but as a hid-generic

[ 3143.297181] usb 2-1.1: new full-speed USB device number 9 using ehci-pci
[ 3143.416957] usb 2-1.1: New USB device found, idVendor=04d8, idProduct=fbc7, bcdDevice= 0.01
[ 3143.416962] usb 2-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 3143.416965] usb 2-1.1: Product: USB Guide
[ 3143.416967] usb 2-1.1: Manufacturer: HitecAstro
[ 3143.419174] hid-generic 0003:04D8:FBC7.0008: hiddev0,hidraw2: USB HID v1.01 Device [HitecAstro USB Guide] on usb-0000:00:1d.0-1.1/input0

looking at device wuth udevadm info I get:
'/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.1/1-1.1:1.0/0003:04D8:FBC7.0002/hidraw/hidraw0':
    KERNEL=="hidraw0"
    SUBSYSTEM=="hidraw"
    DRIVER==""

....
looking at parent device '/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.1':
    KERNELS=="1-1.1"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb"
    ATTRS{bDeviceProtocol}=="00"
    ATTRS{removable}=="removable"
    ATTRS{idVendor}=="04d8"
    ATTRS{bDeviceClass}=="00"
    ATTRS{bmAttributes}=="80"
    ATTRS{version}==" 2.00"
    ATTRS{speed}=="12"
    ATTRS{devpath}=="1.1"
    ATTRS{avoid_reset_quirk}=="0"
    ATTRS{tx_lanes}=="1"
    ATTRS{configuration}==""
    ATTRS{authorized}=="1"
    ATTRS{manufacturer}=="HitecAstro"
    ATTRS{bMaxPacketSize0}=="8"
    ATTRS{rx_lanes}=="1"
    ATTRS{product}=="USB Guide"
    ATTRS{bMaxPower}=="200mA"
    ATTRS{bNumInterfaces}==" 1"
    ATTRS{idProduct}=="fbc7"
    ATTRS{ltm_capable}=="no"
    ATTRS{busnum}=="1"
    ATTRS{bNumConfigurations}=="1"
    ATTRS{bConfigurationValue}=="1"
    ATTRS{bDeviceSubClass}=="00"
    ATTRS{bcdDevice}=="0001"
    ATTRS{devnum}=="6"
    ATTRS{urbnum}=="14"
    ATTRS{quirks}=="0x0"
    ATTRS{maxchild}=="0"

I have added an entry in /etc/udeb/rules.d/69-libmtp.rules to avoid having mtp trying to detect the device as it was failing with "mtp-probe: bus: 1, device: 6 was not an MTP device":
ATTR{idVendor}=="04d8", GOTO="libmtp_rules_end"

Still I only have a raw device detected and when using that within ekos it failed.

Anyone facing the same issue can help?
Thanks

Read More...

Hi
that's great thanks for letting me know. I can see that GoTo is now available. Wonderful.

Thanks
Francesco

Read More...

Here we are.
This the github URL:
github.com/f-campanini/ardust4
Feel free to get the code and to commit changes. I will try to regulary review and work with the community on this.
Francesco

Read More...

Hi,
sorry to be away for so long but many nice things happened (a daughter and a new job) and I didn't have time to work on the project. I will create a git repository and upload the latest set of files ASAP then post here the link.
Thanks
Francesco

Read More...

Thanks Jasem, That was what I was missing !

Francesco

Read More...

Hi,

yes that was the reason ! Thanks.

I am now trying to debug the code using QT creator 3.5 (I have being using Visual studio years ago and I found QT really a good development environment). I watched your videos here:
www.indilib.org/develop/developer-manual...ent-environment.html

After some try/error I got my driver built with debug symbols in it (the size is more than twice the normal build) ... but ... there is always a but !!

As my driver is a telescope driver and kstars require to have a CCD driver as well so I tried both indi_v4l2_ccd (with my laptop webcam....) or indi_gphoto_ccd and within QT, the application start like this:
indiserver -v indi_v4l2_ccd indi_arduinogoto_telescope

The issue is that, I just use:
indiserver -v indi_arduinogoto_telescope
I can debug with no error (breakpoint works), but I cannot test it with kstars.

If I use
indiserver -v indi_v4l2_ccd indi_arduinogoto_telescope
indiserver -v indi_gphoto_ccd indi_arduinogoto_telescope

I got a segmentation fault ! Any idea or recommendation ?

Cheers
Francesco

Read More...

Hello again !

The code is now compiling correctly and I have been able to start indiserver, start CCDciel and use the Panel (only the Tracking part of the code is working, the rest is still simulated).

If I tried to use KStars (as it is the only way I know to be able to test GoTo functionalities with Indi) ... I can see my driver listed but when I connect indiserver I get an error message like "driver was not found on the system".

I checked and the driver is (together with the other) in /usr/bin while the xml is in /usr/share/indi

With KStars I can use indi with indi_v4l2_ccd and indi_gphoto2_ccd ... which have files located in the same place of arduinogoto_telescope ...

Any idea ? I tried to strace indiserver but without success !

Cheers
Francesco

Read More...

Thanks you !

YOU ARE A PRO !!

Read More...

Hi knro,

found the solution and compiled !

The issue was in the MakeFile.txt, there was information of the include directive but not of the library :

I added this to the end of the MakeFile.txt and I got it compiled ...
target_link_libraries(indi_ardust4 nova)

That does not mean that it will work but ... you know ... it has to compile first !!

I asked the author of ardust4 if I can collaborate but he didn't come back to me so I started to modify is driver. When I will have it tested with basic goto functionality I will create my GitHub repository and I will inform you.

Thanks for your support. I really appreciate your hard work and commitment for such a big project !
Many thanks from Francesco (an Italian who live in Britain)
Francesco

Read More...

Hi !

are you awake 14 hours a day ? Thank you very much to be so fast to reply.

Perhaps I don't know the difference in building within libindi or as a 3rd party driver.

The tgz of my project is here:
https://www.dropbox.com/s/lz31p0sg6awcvs4/indi_ardust4-master-2.0.tgz?dl=0

While waiting for your comments I will try to learn something more !!
Cheers
Francesco

Read More...

Thank you !

I did as suggested:
1) transformed the project from a generic Default Device into "Telescope"
2) added the functions from the Telescope Simulator which are related to "GoTo"
3) corrected some wrong function categorization (private, public, protected...)

Compiled ... with errors !! The errors is related to "missing libnova" library.

I don't know if this is the right forum where to ask for advice, if not you may point me to the right one or advice me ... please !

My development environment is Ubuntu 16.04 LTS
I installed the indi library from mutlaqja repository with this command:
sudo apt install indi-full kstars-bleeding

The libnova library version I have is 0.14.0-2.1 (both the library and the development ... all the .h files)
I downloaded the full source code of Indi (version 1.2).

As IDE I am using QT. GCC can find all the Indi Libraries (as libnova is included within telescope.h) but no way to find libnova...

I did modify the orginal MakeFile.txt of ardust4 into this, to include libnova directory:

########### Tutorial one ##############
include(CheckCXXCompilerFlag)
CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11)
CHECK_CXX_COMPILER_FLAG("-std=c++0x" COMPILER_SUPPORTS_CXX0X)
if(COMPILER_SUPPORTS_CXX11)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
elseif(COMPILER_SUPPORTS_CXX0X)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x")
else()
message(STATUS "The compiler ${CMAKE_CXX_COMPILER} has no C++11 support. Please use a different C++ compiler.")
endif()


include_directories("/usr/include/libindi/")
include_directories("/usr/include/libnova/")
add_executable(indi_ardust4 ardust4.cpp ardust4driver.cpp)

target_link_libraries(indi_ardust4 indidriver)


After that I got a different output which let me think about libraries incompatibility such as versions mismatch:

:-1: error: CMakeFiles/indi_ardust4.dir/ardust4.o: undefined reference to symbol 'ln_get_julian_from_sys'

Can you suggest me which is the best development environment you suggest ? Or if you already got this issue ... how to solve it !

Cheers
Francesco

Read More...

knro wrote:

Try to incorporate it in your mount driver. A mount driver can have the INDI Guide interface as well like the telescope simulator and EQMod

At the moment I don't have any mount driver but just a "guide" driver which has an object to connect to the USB and then to the Arduino controller (which send commands to the ST4 input on my mount).

If I understand correctly (last line of C++ code for me were typed about 10 years ago !!!) I should create a new "mount driver" which include Guide and Telescope (GoTo).
Is that correct ?

What about the EQMod ? Do I need it ?

Do you know if there are any similar drivers around so I can have a look and understand how to proceed ?

Cheers
Francesco

Read More...