OMG thanks Jasem!!!

That was it.

I also need to get better at planning to fill up the scheduler :-)

Read More...

Question on the scheduler.

Last night I had a schedule running for a bunch of targets (15 or 20)
However the observatory shutdown and closed a little earlier than I expected even though the weather was good.

I found this in the logs
[code]
[2024-02-26T01:27:03.443 GMT INFO ][ org.kde.kstars.ekos.scheduler] - "Job 'SDSS J190817.07+394036.4' scheduled for execution at 26/02 03:57. Observatory scheduled for shutdown until next job is ready."
[2024-02-26T01:27:03.444 GMT INFO ][ org.kde.kstars.ekos.scheduler] - Starting shutdown process...
[2024-02-26T01:27:03.444 GMT INFO ][ org.kde.kstars.ekos.scheduler] - "Warming up CCD..."
[2024-02-26T01:27:04.395 GMT INFO ][ org.kde.kstars.ekos.scheduler] - "Parking mount in progress..."
[/code

So it initiated the shutdown procedure even though the next job would have been ready in 2.5hours.

My shutdown procedure calls a script that powers off all the equipment and shuts down the PC.
If I didn't call this script, would the scheduler have restarted at 03:57 and started again?

Thanks,
Derek

Read More...

Thank you!! This fixed it.
My location previously was 'mount location' as I did at one time have my mount update kstars. This was while troubleshooting some mount craziness where it would crash into itself on the first slew. Hope that problem does not return now :-)

Read More...

Not sure what I'm doing here.
The time in the EKOS scheduler is one hour less than my real system time.
See below my timezone info and what is reported in EKOS.
In my KSTARS settings I have set to "KStars updates all devices" with both time and location set.





Read More...

OK I found the serial documentation indilib.org/media/kunena/attachments/1/H...sSteppermotor107.pdf
Looks like the commands sent are correct but the protocol uses two-digit, signed (2’s complement) hex number.
So I think it can only support int values from -128 to +127. However the driver UI allows entry of decimal values.

Read More...

I'm adding a temperature probe to my home-made arduino moonlite clone at the moment.

So I'm adding the command handling to the arduino for setting the temp coefficient but running into trouble.
I'm wondering if indi-moonlite really sends the correct data for this command.

Examples of setting driver values and the serial data sent:

  1. I set the temp in the driver to 1.0 and the driver sends `SC02#` over usb
  2. I set the temp in the driver to 1.2 and the driver sends `SC02#` over usb
  3. I set the temp in the driver to 1.5 and the driver sends `SC03#` over usb

Looking at the driver code here github.com/indilib/indi/blob/master/driv....cpp#L286C19-L286C63
uint8_t hex = static_cast<int8_t>(coefficient * 2) & 0xFF;
I see it doubles the value and then does a bitwise and with 0xFF to get the hex to send.

So I'm wondering, is this correct?
What is the precision of the value that gets sent over the serial bus?
Also, how do I convert the hex back to a double in arduino code?

Thanks!
Derek

Read More...

Derek replied to the topic 'INDI Website Upgrade' in the forum. 3 months ago

Would there be any merit in moving away from a CMS and us a static site generator instead?
Something like Gatsby or Jekyll.

Advantages:
Changes to the site could be done by anyone then with a PR.
More secure (less surface area for attack)
Easier to maintain (no database to backup, migrate, maintain)

Disadvantages
Dynamic content has to be added separately (like this forum)

Read More...

I loaded an old sequence file though. That sequence file had filters specified. Maybe it shoudn't have allowed me to load the sequence file.

Read More...

Aaaaagh. As soon as I reported this I just figured it out.

Turns out my filter wheel was missing for some reason from the 'primary' optical train settings.

Not sure if I should delete this post?
I think Kstars should probably report an error if a sequence that requires a filter is used and the filter or filter wheel is unavailable instead of crashing.

Read More...

Just updated kstars and it crashes when starting a sequence file. I noticed this first last night using the scheduler. Couldn't capture anything in the schedule.

Tried to take calibration frames today during the day and its crashing when I start the sequence file. Screenshot and backtrace below. Any idea what I'm doing wrong? I'm using a sequence file that worked with the previous version (also attached). Feeling its something filterwheel related.....


(gdb) 
(gdb) bt
#0  Ekos::FilterManager::getFilterPosition (this=0x0, forceRefresh=forceRefresh@entry=false) at ./kstars/ekos/auxiliary/filtermanager.cpp:371
#1  0x0000555555ce7fa7 in Ekos::CaptureDeviceAdaptor::updateFilterPosition (this=0x55555ac09140) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qsharedpointer_impl.h:301
#2  0x00007ffff4cf1793 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#3  0x0000555555d128f6 in Ekos::SequenceJobState::prepareTargetFilter (isPreview=<optimized out>, frameType=FRAME_BIAS, this=0x55555a9da0a0)
    at ./kstars/ekos/capture/sequencejobstate.cpp:253
#4  Ekos::SequenceJobState::initCapture (this=0x55555a9da0a0, frameType=FRAME_BIAS, isPreview=<optimized out>, isAutofocusReady=<optimized out>, mode=<optimized out>)
    at ./kstars/ekos/capture/sequencejobstate.cpp:125
#5  0x0000555555d05c5c in Ekos::SequenceJob::startCapturing (this=<optimized out>, autofocusReady=<optimized out>, mode=<optimized out>)
    at ./kstars/ekos/capture/sequencejob.cpp:510
#6  0x0000555555cd578f in Ekos::CaptureProcess::captureImage (this=0x55555ac09220) at ./kstars/ekos/capture/refocusstate.h:75
#7  0x0000555555cd7be0 in Ekos::CaptureProcess::executeJob (this=0x55555ac09220) at ./kstars/ekos/capture/captureprocess.cpp:694
#8  0x00007ffff4cf1793 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#9  0x00007ffff4cf1793 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#10 0x0000555555a62573 in Ekos::SequenceJob::prepareComplete (this=<optimized out>, _t1=<optimized out>)
    at ./obj-x86_64-linux-gnu/kstars/KStarsLib_autogen/VONTORZADU/moc_sequencejob.cpp:218
#11 0x00007ffff4cf1793 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#12 0x0000555555a625d6 in Ekos::SequenceJobState::prepareComplete (this=<optimized out>, _t1=<optimized out>)
    at ./obj-x86_64-linux-gnu/kstars/KStarsLib_autogen/VONTORZADU/moc_sequencejobstate.cpp:555
#13 0x00007ffff4cf1793 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#14 0x0000555555a62336 in Ekos::CaptureDeviceAdaptor::hasShutter (this=this@entry=0x55555ac09140, _t1=<optimized out>, _t1@entry=true)
    at ./obj-x86_64-linux-gnu/kstars/KStarsLib_autogen/VONTORZADU/moc_capturedeviceadaptor.cpp:520
#15 0x0000555555cedad9 in Ekos::CaptureDeviceAdaptor::queryHasShutter (this=0x55555ac09140) at ./kstars/ekos/capture/capturedeviceadaptor.cpp:755
#16 0x00007ffff4cf1793 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#17 0x0000555555d0eadf in Ekos::SequenceJobState::checkHasShutter (this=0x55555a9da0a0) at ./kstars/ekos/capture/sequencejobstate.cpp:579
#18 Ekos::SequenceJobState::checkDarksCoverReady (this=0x55555a9da0a0) at ./kstars/ekos/capture/sequencejobstate.cpp:366
#19 0x0000555555d0fa95 in Ekos::SequenceJobState::checkAllActionsReady (this=0x55555a9da0a0) at ./kstars/ekos/capture/sequencejobstate.cpp:190
#20 Ekos::SequenceJobState::checkAllActionsReady (this=0x55555a9da0a0) at ./kstars/ekos/capture/sequencejobstate.cpp:142
#21 0x00007ffff4cf1793 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#22 0x0000555555a64c47 in Ekos::CaptureDeviceAdaptor::newCCDTemperatureValue (this=<optimized out>, _t1=<optimized out>)
    at ./obj-x86_64-linux-gnu/kstars/KStarsLib_autogen/VONTORZADU/moc_capturedeviceadaptor.cpp:422
#23 0x00007ffff4cf1793 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#24 0x0000555555a65b64 in ISD::Camera::newTemperatureValue (this=<optimized out>, _t1=<optimized out>)
    at ./obj-x86_64-linux-gnu/kstars/KStarsLib_autogen/FRI4DANIHA/moc_indicamera.cpp:416
#25 0x0000555555b333b4 in ISD::ConcreteDevice::updateProperty (this=0x7fffe8011210, prop=...) at ./kstars/indi/indiconcretedevice.cpp:62
#26 0x0000555555b32afb in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<INDI::Property>, void, void (ISD::ConcreteDevice::*)(INDI::Property)>::call
    (arg=<optimized out>, o=<optimized out>, f=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:152
#27 QtPrivate::FunctionPointer<void (ISD::ConcreteDevice::*)(INDI::Property)>::call<QtPrivate::List<INDI::Property>, void> (arg=<optimized out>, o=<optimized out>, 
    f=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:185
#28 QtPrivate::QSlotObject<void (ISD::ConcreteDevice::*)(INDI::Property), QtPrivate::List<INDI::Property>, void>::impl (which=<optimized out>, this_=<optimized out>, 
    r=<optimized out>, a=<optimized out>, ret=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:418
#29 0x00007ffff4cf1793 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#30 0x0000555555a69ad9 in ISD::GenericDevice::propertyUpdated (this=this@entry=0x55555c560050, _t1=...)
--Type <RET> for more, q to quit, c to continue without paging--
    at ./obj-x86_64-linux-gnu/kstars/KStarsLib_autogen/FRI4DANIHA/moc_indistd.cpp:680
#31 0x0000555555b2898e in ISD::GenericDevice::processNumber (this=this@entry=0x55555c560050, prop=...) at ./kstars/indi/indistd.cpp:441
#32 0x0000555555b26187 in ISD::GenericDevice::updateProperty (this=0x55555c560050, prop=...) at ./kstars/indi/indistd.cpp:289
#33 0x0000555555b316bc in INDIListener::updateProperty (this=<optimized out>, prop=...) at ./kstars/indi/indilistener.cpp:196
#34 0x0000555555b2f55b in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<INDI::Property>, void, void (INDIListener::*)(INDI::Property)>::call (
    arg=<optimized out>, o=<optimized out>, f=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:152
#35 QtPrivate::FunctionPointer<void (INDIListener::*)(INDI::Property)>::call<QtPrivate::List<INDI::Property>, void> (arg=<optimized out>, o=<optimized out>, 
    f=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:185
#36 QtPrivate::QSlotObject<void (INDIListener::*)(INDI::Property), QtPrivate::List<INDI::Property>, void>::impl (which=<optimized out>, this_=<optimized out>, 
    r=<optimized out>, a=<optimized out>, ret=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:418
#37 0x00007ffff4ce741e in QObject::event(QEvent*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#38 0x00007ffff596c713 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#39 0x00007ffff4cb9e3a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#40 0x00007ffff4cbcf27 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#41 0x00007ffff4d13a67 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#42 0x00007ffff3ffed3b in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#43 0x00007ffff4054258 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#44 0x00007ffff3ffc3e3 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#45 0x00007ffff4d130b8 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#46 0x00007ffff4cb875b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#47 0x00007ffff4cc0cf4 in QCoreApplication::exec() () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#48 0x00005555556ffb2a in main (argc=<optimized out>, argv=<optimized out>) at ./kstars/main.cpp:386
(gdb) 


Read More...