First off, a big thankyou for all your efforts, accross all your projects, that you've given to the world.
As the weather has been bad, and I have a little time before the 'season' gets into full swing, I thought I'd just update all devices to the latest firmware & drivers etc.
I thought I was going nuts with 300 with all the 'funnies' but moving on to 301 things started to work the way I wanted, after suitable configuration changes, but there are still a few inconsistent\unconfigurable settings.
The most annoying of these is defaulting to Fahrenheight, I want Celcius , as even though I've updated the configuration section from:
// set to 1 or ON
myfocuser.displayenabled = myfocuser.tcdirection = myfocuser.tempmode = myfocuser.stepmode = myfocuser.coilpower = 1;
// set to 0 or OFF
to:
// set to 1 or ON
myfocuser.displayenabled = myfocuser.tcdirection = myfocuser.tempmode = myfocuser.stepmode = 1; myfocuser.coilpower = 0; // disable coil power to reduce heat also not needed with PG27 motors
// set to 0 or OFF
I've also noticed that in myDefines.h, char ontxt[] has been set with an additional space i.e. "= "ON ";" which means the text ON won't work ?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
yes , release 300 had bugs. Hopefully 301 addressed these.
It is important in a major update like from 298 to 301 that the eeprom is cleared first before reprogramming the new firmware. In addition, the windows app and the ascom driver must be removed using control panel before installing the new versions. This is because the driver settings stored by app/ascom are different and installing the new app/ascom driver over the top of the existing one does NOT update the settings correctly. Removing via control panel removes these hidden "settings" as well as the app. So when the new install happens a new "config setting file" gets created based on the new app [instead of using the previous one]
re in myDefines.h
char ontxt[] = "ON ";
char offtxt[] = "OFF";
These are only used by the TFT display. The extra space aligns the two text strings on the TFT display.
re tempmode Fahrenheit and Celsius
myfocuser.tempmode holds a byte value, Celsius=1, Fahrenheit=0
in setup(), the eeprom is read and if any saved config is found, then this is restored.
If no config data is found, then the function setfocuserdefaults() is called, which sets myfocuser.tempmode to 1 (celsius)
Now in the application or ascom driver, you have the ability to over-ride this on connection using the Update On Connect on the Temperature tab. If this is checked, then the setting will be sent to the controller.
Any update however, is only written to EEPROM after a minimum of 30s has elapsed from the update request.
IF you wanted Celsius to always be the default, the best place to do this would be add this to the State-Idle in the loop()
Hi,
Yes I know I can set everything in the drivers, but I wanted it to 'cold' boot to the correct configuration, and luckily with your pointer for the need to clear the eeProm (using eeprom_clear), my settings above work ok.
Maybe worth making a note on the site to clear the Nano before code flashing ?
Thanks Robert
Julian
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
15 Oct 2020
New firmware 301 - Please read this.
1. Save or write down your current focuser settings
2. Clear the eeprom of the controller using this program [in tests folder - ClearEEPROM]
3. Program controller with new firmware 301 - Note that configuration of options is now in the focuserconfig.h file
4. Reload your saved focuser settings
5. For Windows App and ASCOM Drivers - Please use control panel to remove existing versions
6. After removal, install new windows app [2459] and ASCOM drivers [276]
7. Download new PDF v301a which describes version 301 changes and configurations
regards
Robert
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Robert,
First off, a big thankyou for all your efforts, accross all your projects, that you've given to the world.
As the weather has been bad, and I have a little time before the 'season' gets into full swing, I thought I'd just update all devices to the latest firmware & drivers etc.
I thought I was going nuts with 300 with all the 'funnies' but moving on to 301 things started to work the way I wanted, after suitable configuration changes, but there are still a few inconsistent\unconfigurable settings.
The most annoying of these is defaulting to Fahrenheight, I want Celcius , as even though I've updated the configuration section from:
// set to 1 or ON
myfocuser.displayenabled = myfocuser.tcdirection = myfocuser.tempmode = myfocuser.stepmode = myfocuser.coilpower = 1;
// set to 0 or OFF
to:
// set to 1 or ON
myfocuser.displayenabled = myfocuser.tcdirection = myfocuser.tempmode = myfocuser.stepmode = 1; myfocuser.coilpower = 0; // disable coil power to reduce heat also not needed with PG27 motors
// set to 0 or OFF
I've also noticed that in myDefines.h, char ontxt[] has been set with an additional space i.e. "= "ON ";" which means the text ON won't work ?
Hi
yes , release 300 had bugs. Hopefully 301 addressed these.
It is important in a major update like from 298 to 301 that the eeprom is cleared first before reprogramming the new firmware. In addition, the windows app and the ascom driver must be removed using control panel before installing the new versions. This is because the driver settings stored by app/ascom are different and installing the new app/ascom driver over the top of the existing one does NOT update the settings correctly. Removing via control panel removes these hidden "settings" as well as the app. So when the new install happens a new "config setting file" gets created based on the new app [instead of using the previous one]
re in myDefines.h
char ontxt[] = "ON ";
char offtxt[] = "OFF";
These are only used by the TFT display. The extra space aligns the two text strings on the TFT display.
re tempmode Fahrenheit and Celsius
myfocuser.tempmode holds a byte value, Celsius=1, Fahrenheit=0
in setup(), the eeprom is read and if any saved config is found, then this is restored.
If no config data is found, then the function setfocuserdefaults() is called, which sets myfocuser.tempmode to 1 (celsius)
Now in the application or ascom driver, you have the ability to over-ride this on connection using the Update On Connect on the Temperature tab. If this is checked, then the setting will be sent to the controller.
Any update however, is only written to EEPROM after a minimum of 30s has elapsed from the update request.
IF you wanted Celsius to always be the default, the best place to do this would be add this to the State-Idle in the loop()
Hope this helps
Robert
Hi,
Yes I know I can set everything in the drivers, but I wanted it to 'cold' boot to the correct configuration, and luckily with your pointer for the need to clear the eeProm (using eeprom_clear), my settings above work ok.
Maybe worth making a note on the site to clear the Nano before code flashing ?
Thanks Robert
Julian
Please see last update on Discussion
15 Oct 2020
New firmware 301 - Please read this.
1. Save or write down your current focuser settings
2. Clear the eeprom of the controller using this program [in tests folder - ClearEEPROM]
3. Program controller with new firmware 301 - Note that configuration of options is now in the focuserconfig.h file
4. Reload your saved focuser settings
5. For Windows App and ASCOM Drivers - Please use control panel to remove existing versions
6. After removal, install new windows app [2459] and ASCOM drivers [276]
7. Download new PDF v301a which describes version 301 changes and configurations
regards
Robert
My bad, didn't look that far.... its usually just a quick flash & update of drivers etc., this one is alot more involved.
Yours,
Julian