I have updated all Arduino .ino code today 03Feb2015 for all controllers.
I added the Moonlite command PO for temperature calibration.
I also changed the code for the Moonlite GT command as it was calculating the temperature for Moonlite incorrectly. This did not affect the myFocuser software or driver as a different command was used.
I have tested compatibility with the Moonlite ASCOM driver and the Moonlite stand alone application. Screenshots of operation have been uploaded into the Documentation folder.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Please be aware that future releases from this point will no longer be compatible with Moonlite software.
In the first instance when this project was released, it was made compatible with Moonlite because I was unsure about whether to add ASCOM driver support and it was easier to use the Moonlite driver.
The myFocuser application software and ASCOM driver is now at a sufficient level that support is no longer an issue and it is recommended that the myFocuser software is used exclusively.
To that end I will remove reference to Moonlite and compatibility as development continues.
Last edit: brownrb 2015-02-03
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hello,
Thank you for some excellent software, and the work you put into the hardware too!
I wanted to do this quite a while ago, but didn't have the knowledge on the Ascom side.
I have successfully built a focuser with a DRV8825, NEMA17 with 1/27 reduction, and an Arduino Mega (I have a few other things running on it).
With your code I have it running well through USB, however when I change to Serial2 (a simple find and replace) to run through a bluetooth module, your Arduino code won't send or receive.
I've tried this using the Arduino as a simple pass through, and all serial communication is running smoothly.
Any ideas?
Thanks,
Mark
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi Mark
I assume you are using pins Serial2 on pins 17 (RX) and 16 (TX) of the Mega. They are wired correctly one assumes. To use them to communicate with an external TTL serial device, connect the TX pin of Mega to your USB device's RX pin, the Mega RX to your USB device's TX pin, and the ground of your Mega to your device's ground.
Never tried it over bluetooth.....
I would assume you have already paired the devices
Last edit: brownrb 2015-06-12
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I can confirm that my wiring is good, I can pair and establish a serial link. I can use it to echo serial strings back to me, and to pass them through the USB serial connection. So the issue isn't the bluetooth (although I might try connecting via a TTL to USB dongle).
When I use your software using Serial2, it doesn't reply to the initial connection strings. Is there anything in your code or libraries that preferences the USB serial perhaps?
I'm hoping I can get it to work, I connect to my mount via bluetooth, it's great being cable free (other than the camera at this stage.)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I can send it to you if you email me (brown_rb yahoo dot com). It is an obsolete version and not supported, as many fixes have been applied since then (133 did have some bugs).
Robert
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thank you Robert, I will email you. I am asking for that version since I want to compare it with the version 133 amended by "hughgilhespie", a stargazerslounge user, who used Bourns optical encoder and said the following (Quote from a stargazerslounge topic):
My manual focus uses a Bourns Optical Rotary Encoder (RE) to control manual focusing. Turning the encoder knob progressively increases (or decreases) the focus motor speed. Between forward (In) and reverse (Out) movements there is a 'Neutral' position.
Travel limits are set up using the Windows app.
If the focuser reaches the preset travel limits, the motor stops, a RED led lights and the buzzer sounds until the RE is moved back to 'Neutral'.
When the RE is in it's 'Neutral' position, a GREEN led lights.
The focuser position information is shown on the LED display after each movement.
This method of using a RE for manual focus is somewhat different to Robert Brown's. His way is to move the focuser a set distance, the actual distance being varied according to the RE position. I haven't tried Robert's method so I can't comment on it but my varying speed method gives a very smooth and intuitive way to manually focus.
The rest of the software and all the hardware is exactly as per RB's design.
End of the quote.
All I am left is to try and change the code to be able to use an OLED 128x64 display.
Also, it seems I am out of luck. I waited for 2 months for the Nema 17 PG27 to arrive only to find out that it only takes 1024 steps for the full circle. It seems the seller from China shipped the PG5 version, although he/she taped the home printed label "Nema 17 PG27" on it.
Miloš
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I will send you the other files as the quadrature.h and .cpp files don't work with the bourne encoder. I think I have some files somwehere where I had it working with a Bourne encoder,.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi Rodney
There would be layout changes of course, software changes to reflect the different pins that might be used and well as serial stuff. Could be more involved.
I dont have a micro to prototype and test however. Have you a link to where it can be purchased as the only ones I have found seem very expensive compared to the Nano.
Cheers
R
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
So the micro doesn't support the SerialEvent(). So I modified the code to Call a routine to Check the Serial Port. This is placed in the loop do it will run quite often. If i recall even if data arrives at the serial port it will be held until it is dealt with. I did have to hook up a second Serial port. I will not check this with the on board serial port to see if this works. I will keep you posted.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Nope that didnt work. It seems like it doesnt have time to move because all i get is the GI#: request but the ardunio doesnt answer back. I will continue to look into it.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
OK I spoke too soon. I apears that whne viewing the logfile through Notepadd++ fails to up date if the file refreshes too fast. It all seems to work fine in the windows now its time to test it with the motor attached. I will keep you posted.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
FINALLY got it working with the Micro. Now the issue is I cannot find the source for the ascom driver? was this made available to us? I hope so or this was a waste of my time. Not that I didnt have fun but I was hoping to start to pretty up the setup once I got it working.
I do not need to use a huge Nema17 stepper motor. as a mater of fact I am only using a Nema11. Some of the timers you have for stepping didnt work with my setup either so I had t make those changes.
Let me know if the ascom part of the code is available for us to compile, or maybe I missing something totally and do not need that part..
Thanks again fro your help.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
If you have it working with the windows app then it will also work with the ASCOM driver as the same serial protocol is used. Or you could try to use the Moonlite ASCOM driver as the serial protocol also supports that.
The source for the Windows app and ASCOM drivers is not available at this time.
Regards
R
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
For any issues or questions/discussions on the Arduino code or hardware, please post here
I have updated all Arduino .ino code today 03Feb2015 for all controllers.
I added the Moonlite command PO for temperature calibration.
I also changed the code for the Moonlite GT command as it was calculating the temperature for Moonlite incorrectly. This did not affect the myFocuser software or driver as a different command was used.
I have tested compatibility with the Moonlite ASCOM driver and the Moonlite stand alone application. Screenshots of operation have been uploaded into the Documentation folder.
It does not work with the very latest DRO Moonlite ASCOM driver, BUT it does work with the MoonLite Focuser Setup-603 ASCOM driver.
It works with the latest 1.07NA application.
Please be aware that future releases from this point will no longer be compatible with Moonlite software.
In the first instance when this project was released, it was made compatible with Moonlite because I was unsure about whether to add ASCOM driver support and it was easier to use the Moonlite driver.
The myFocuser application software and ASCOM driver is now at a sufficient level that support is no longer an issue and it is recommended that the myFocuser software is used exclusively.
To that end I will remove reference to Moonlite and compatibility as development continues.
Last edit: brownrb 2015-02-03
Last edit: tcpip 2015-02-03
See the ascom driver post for more info on the latest Moonlite DRO drivers.
Hello,
Thank you for some excellent software, and the work you put into the hardware too!
I wanted to do this quite a while ago, but didn't have the knowledge on the Ascom side.
I have successfully built a focuser with a DRV8825, NEMA17 with 1/27 reduction, and an Arduino Mega (I have a few other things running on it).
With your code I have it running well through USB, however when I change to Serial2 (a simple find and replace) to run through a bluetooth module, your Arduino code won't send or receive.
I've tried this using the Arduino as a simple pass through, and all serial communication is running smoothly.
Any ideas?
Thanks,
Mark
Hi Mark
I assume you are using pins Serial2 on pins 17 (RX) and 16 (TX) of the Mega. They are wired correctly one assumes. To use them to communicate with an external TTL serial device, connect the TX pin of Mega to your USB device's RX pin, the Mega RX to your USB device's TX pin, and the ground of your Mega to your device's ground.
Never tried it over bluetooth.....
I would assume you have already paired the devices
Last edit: brownrb 2015-06-12
Hi Mark
Would also recommend that you try (if you have not already done so) some basic testing of the bluetooth serial, such as this
http://www.instructables.com/id/Add-bluetooth-to-your-Arduino-project-ArduinoHC-06/?ALLSTEPS
Thanks for your quick response
I can confirm that my wiring is good, I can pair and establish a serial link. I can use it to echo serial strings back to me, and to pass them through the USB serial connection. So the issue isn't the bluetooth (although I might try connecting via a TTL to USB dongle).
When I use your software using Serial2, it doesn't reply to the initial connection strings. Is there anything in your code or libraries that preferences the USB serial perhaps?
I'm hoping I can get it to work, I connect to my mount via bluetooth, it's great being cable free (other than the camera at this stage.)
Hi Mark
Aha, that is I think the information that is needed. Its possible that the init of the bluetooth is taking too long, hence timing out
Send me your email to my yahoo address and i'll send you a test version to try ..
brown_rb
Thanks, I've sent you an email. I haven't used the reset circuit, my plan is to connect to 12V and have no USB, but I'll give it a go.
hi Mark
Have you maanaged to resolve your issue?
Hello,
Would it be possible to find the old version Focuserv133re_DRV8825_F.ino somewhere?
Miloš
I can send it to you if you email me (brown_rb yahoo dot com). It is an obsolete version and not supported, as many fixes have been applied since then (133 did have some bugs).
Robert
Thank you Robert, I will email you. I am asking for that version since I want to compare it with the version 133 amended by "hughgilhespie", a stargazerslounge user, who used Bourns optical encoder and said the following (Quote from a stargazerslounge topic):
My manual focus uses a Bourns Optical Rotary Encoder (RE) to control manual focusing. Turning the encoder knob progressively increases (or decreases) the focus motor speed. Between forward (In) and reverse (Out) movements there is a 'Neutral' position.
Travel limits are set up using the Windows app.
If the focuser reaches the preset travel limits, the motor stops, a RED led lights and the buzzer sounds until the RE is moved back to 'Neutral'.
When the RE is in it's 'Neutral' position, a GREEN led lights.
The focuser position information is shown on the LED display after each movement.
This method of using a RE for manual focus is somewhat different to Robert Brown's. His way is to move the focuser a set distance, the actual distance being varied according to the RE position. I haven't tried Robert's method so I can't comment on it but my varying speed method gives a very smooth and intuitive way to manually focus.
The rest of the software and all the hardware is exactly as per RB's design.
End of the quote.
All I am left is to try and change the code to be able to use an OLED 128x64 display.
Also, it seems I am out of luck. I waited for 2 months for the Nema 17 PG27 to arrive only to find out that it only takes 1024 steps for the full circle. It seems the seller from China shipped the PG5 version, although he/she taped the home printed label "Nema 17 PG27" on it.
Miloš
I will send you the other files as the quadrature.h and .cpp files don't work with the bourne encoder. I think I have some files somwehere where I had it working with a Bourne encoder,.
Finally made the PCB for DRV8825-HW203. Looks good!
Robert,
Hope you are well. I was wondering if there was support for the Arduino Micro Controller ?
Thanks
Hi Rodney
There would be layout changes of course, software changes to reflect the different pins that might be used and well as serial stuff. Could be more involved.
I dont have a micro to prototype and test however. Have you a link to where it can be purchased as the only ones I have found seem very expensive compared to the Nano.
Cheers
R
Bob (Robert),
So the micro doesn't support the SerialEvent(). So I modified the code to Call a routine to Check the Serial Port. This is placed in the loop do it will run quite often. If i recall even if data arrives at the serial port it will be held until it is dealt with. I did have to hook up a second Serial port. I will not check this with the on board serial port to see if this works. I will keep you posted.
Nope that didnt work. It seems like it doesnt have time to move because all i get is the GI#: request but the ardunio doesnt answer back. I will continue to look into it.
OK I spoke too soon. I apears that whne viewing the logfile through Notepadd++ fails to up date if the file refreshes too fast. It all seems to work fine in the windows now its time to test it with the motor attached. I will keep you posted.
FINALLY got it working with the Micro. Now the issue is I cannot find the source for the ascom driver? was this made available to us? I hope so or this was a waste of my time. Not that I didnt have fun but I was hoping to start to pretty up the setup once I got it working.
I do not need to use a huge Nema17 stepper motor. as a mater of fact I am only using a Nema11. Some of the timers you have for stepping didnt work with my setup either so I had t make those changes.
Let me know if the ascom part of the code is available for us to compile, or maybe I missing something totally and do not need that part..
Thanks again fro your help.
If you have it working with the windows app then it will also work with the ASCOM driver as the same serial protocol is used. Or you could try to use the Moonlite ASCOM driver as the serial protocol also supports that.
The source for the Windows app and ASCOM drivers is not available at this time.
Regards
R