Turnigy TrackStar 18A ESC

Anything to do with Propulsion.
rossrov
Posts: 383
Joined: Feb 28th, 2013, 5:01 pm
Location: Australia

Re: Turnigy TrackStar 18A ESC

Post by rossrov »

Looking forward to results Ryan, thanks in advance! I added the extra two ESC channels just as a ready-to-go 3-thruster example for the forum or in case Multicopter people could use it. With code for just one ESC (without the lines relating to esccommand2 and esccommand3) I could type into the serial monitor just one speed value at a time, then hit "enter". This allowed me to set the end limits on the other ESC - one of my new Car-30As. I think I bought 5 of those, so assuming they all work OK, combined with the old Trackstar 18As I'll have a total of 8 in the inventory :? :lol:

Ross
User avatar
KR2_Diving
Posts: 391
Joined: Aug 30th, 2012, 11:43 am
Location: Currently: NW Suburbs of Chicago. Originally: NE Wisconsin

Re: Turnigy TrackStar 18A ESC

Post by KR2_Diving »

yikes! 8 ESC... on the plus side... that is the beginning of a really cool control system for a highly nimble little ROV! :)

Just out of curiosity, do you know what settings you had on your ESC? (Brake forces, reverse speeds, etc...)

Thanks,
Ryan
"KR2_Diving"
rossrov
Posts: 383
Joined: Feb 28th, 2013, 5:01 pm
Location: Australia

Re: Turnigy TrackStar 18A ESC

Post by rossrov »

viewtopic.php?f=3&t=1069&start=30#p6051

Full power in reverse selected.

Trying to fine-tune these settings really didn't have much effect on the start-up issues.

I used the programming card to "reset" the ESC on one occasion, and maybe there was one setting that was only accessible using the card, though it was a while back now. Forward and reverse limits are done with the joystick first up. All other settings can be done with the beep-beeps and RC joystick or your own controller.

Hope that helps
Bindo
Posts: 112
Joined: Apr 7th, 2015, 4:42 pm

Re: Turnigy TrackStar 18A ESC

Post by Bindo »

I know this is an old thread,

But i had by chance selected almost the same setup, IE arduino over serial, with these ESC's, and encountered these same issues.

This fix works for arduino Mega, i can't vouch for other boards


in C:\Program Files (x86)\Arduino\libraries\Servo\src............... there is a file called "servo"

open this with the notepad and change the lines below

Code: Select all

#define REFRESH_INTERVAL   200000     // minumim time to refresh servos in microseconds (200000 = 50Hz)

#define SERVOS_PER_TIMER        12     // the maximum number of servos controlled by one timer 
to

Code: Select all

#define REFRESH_INTERVAL   2500     // minumim time to refresh servos in microseconds (2500 = 400Hz)

#define SERVOS_PER_TIMER        4     // the maximum number of servos controlled by one timer 

i had a tenfold improvement in startup response and low speed using the servo.h library edited to this


*hint, if you can't edit directly in the folder, try moving the file to the desktop, edit, save, then copy back to the src folder
rossrov
Posts: 383
Joined: Feb 28th, 2013, 5:01 pm
Location: Australia

Re: Turnigy TrackStar 18A ESC

Post by rossrov »

Thanks for posting. I for one will definitely remember this (my "new" ROV is to have Arduino controlling the ESCs). I have a feeling that the TrackStars could improve over their 50Hz performance with less of a jump in frequency. Have you tried say 100Hz? Thinking here that lower refresh rate will allow more servos.
Bindo
Posts: 112
Joined: Apr 7th, 2015, 4:42 pm

Re: Turnigy TrackStar 18A ESC

Post by Bindo »

Hi rossrov.

Yeah I tried 100Hz, there was an improvement but at 400hz the motor start up is almost instant.

Of course at this stage I'm testing in air only, I think with the drag of water it'll improve things even more.

The arduino mega has 4 x timers, so im this should still allow for 12 servos to be controlled. I'm planning to have 8 - 10 max so as long as it doesn't upset the comms I should be ok (I'm no expert, and this still needs testing, just what I've managed to deduce with my Google-fu)

On comms I'm using serial3 for rov comms, I dunno if this helps also as I believe arduino uses these 4 timers for each of the comm channels
User avatar
KR2_Diving
Posts: 391
Joined: Aug 30th, 2012, 11:43 am
Location: Currently: NW Suburbs of Chicago. Originally: NE Wisconsin

Re: Turnigy TrackStar 18A ESC

Post by KR2_Diving »

Hey Bindo!
Thanks for revisiting this! Very interested in giving this a try while I wait for my fancy new BlueRobotics Thrusters!

It has been a while since i visited that chunk of my code... am i correct in thinking that making this change limits you to 4 servos? As i read it, you are planning on running 8/10? How does the code know to assign additional servos to additional timers?

What am I missing here...
rossrov
Posts: 383
Joined: Feb 28th, 2013, 5:01 pm
Location: Australia

Re: Turnigy TrackStar 18A ESC

Post by rossrov »

Thanks Bindo. Re the comms, there are 4 RS232-like serial ports on the Mega. These are hardware UARTS so do not affect or use the timers. A timer is however used by the SoftSerial library. Recently I was doing a project with a Uno and found that SoftSerial upset other functions. No need for SoftSerial with all those ports on the Mega.

KR2, the Uno has 3 timers. It is the 16-bit timer (timer1) that does the servo function. The Mega has an additional 3 timers, all-16 bit.
User avatar
KR2_Diving
Posts: 391
Joined: Aug 30th, 2012, 11:43 am
Location: Currently: NW Suburbs of Chicago. Originally: NE Wisconsin

Re: Turnigy TrackStar 18A ESC

Post by KR2_Diving »

Ok... so I have been playing with my TrackStar ESC's again tonight... and I tried changing the lines in the SERVO.h library on an UNO (R3) and I did not see any change in the results...

Not sure if it is UNO based... or ME based... was only running ONE Servo. (well... it was 4 ESC all sharing one PWM output. I was testing different ESC Settings...)

As a side note, still not happy with what I am seeing...

I was using a very basic code with a POT acting as my throttle.

Code: Select all

#include <Servo.h> 
 
Servo myservo;  // create servo object to control a servo 
                // a maximum of eight servo objects can be created 
 
int pos = 0;    // variable to store the servo position 
int pot = 0;    // analog pin connected to POT
int potval = 0; // value of pot 0 to 1023
int val = 0;    // value sent to control speed/rotation of servo/motor
 
void setup() 
{ 
  Serial.begin(9600);
  myservo.attach(9);  // attaches the servo on pin 9 to the servo object
  myservo.write(90);  //send value of 90 (on scale of 0-180) to servo
  delay (2000);       //2 second delay to intiate ESC. required?
} 
 
 
void loop() 
{
  
  potval = analogRead(0);
  val = map(potval, 0, 1023, 0, 180);
  
  Serial.print(potval);
  Serial.print(" ");
  Serial.println(val);
  myservo.write(val);
  delay (50);

}
I have been playing with various combinations of settings, focusing on the DRAG Brake, Brake Strength, and Punch Control Settings.

Would motor timing have much affect on start stop reverse settings? I have it set in the middle at the moment?
Bindo
Posts: 112
Joined: Apr 7th, 2015, 4:42 pm

Re: Turnigy TrackStar 18A ESC

Post by Bindo »

Hi Ryan,

Yeah generally you want the punch set to max.... if you were running this ESC on a car, you'd use punch to adjust the throttle according to track grip. think of it as "ramp up time"

menu 1, should be 3 for best response.
reverse speed max,
drag brake max,
and timing, from memory, i have set to the middle setting.
Post Reply