Timeout error when downloading onto a Auirga

Hello everyone

I have managed to compile one of my pieces of software that worked. I had to move some functions so that they are ahead of the calling statements but nevertheless it compiles.

The problem I am having is flashing the Auriga with the image. The uploader fails to set the baud rate.

Andrue

(deleted)

Its a 328 Robin but not sure which one and it also looks like it uses a CH340 for USB.

Also come as a SHIELD or a board but currently not enough Info to say what why where etc.

@muscipula

Please READ THIS POST to help you get the best out of the forum.

SIMPLE TROUBLESHOOTING.

These steps may also save you some unnecessary time and effort in the forum.

COMMON ISSUES

  • Check you have a COMMON GROUND where required.
  • Where possible use USB 2.0 ports or a USB 2.0 POWERED HUB to rule out USB 3.0 issues.
  • Try other computers where possible.
  • Try other USB leads where possible.
  • You may not have the correct driver installed. CH340/341 or CP2102
  • There may be a problem with the board check your wiring first.
  • Remove any items connected to pins 0 and 1.

COMPUTER RELATED

  • Ensure you turn off any additional security / antivirus just to test.
  • There may be a problem with the PC try RESTARTING it.
  • You may be selecting the wrong COM port.
  • Avoid cloud/network based installations where possible OR ensure your Network/Cloud software is RUNNING.
  • Clear your browsers CACHE.
  • Close the IDE before using any other serial programs.
  • Preferably install IDE's as ADMINISTRATOR or your OS equivalent

Performing the above actions may help resolve your problem without further help.

Bob.

Just had a play with the official DRIVER and its a bit iffy on win 7 x64 to say the least.

Looks like an interesting concept board but actual tech details are a bit random.
Sort of a UNO with some sensors and coloured phone connectors tagged on.

EDIT that one also says there is a MEGA version so could be either.

Bob.

spycatcher2k:
What is an Auriga ? What does it have to do with Arduino?

It is compatible with a Mega 2560, Mega 2560 ADK or simply a MEGA with the name of the usb port [ch340g]. In fact it is only the last in the list that is not recognised.. So ArduinoDriod must know the board is there it seems to be having problems changing the baud rate.

Andrue

There are no "OFFICIAL" arduino drivers from Arduino for the board.

However I did provide a link to the OFFICIAL chinese ones that almost everybody uses for the CH340/341 based USB.

You could be better off with those and they should certainly not harm.
There should be no need to change baud rates as once the IDE has the proper driver installed it will know what to do and expect.

If you have made any manual changes to the IDE or your OS baud rates you may want to revert those back.

Makeblock simply added thier name to the CH drivers which means all my CH based boards read as MAKER etc....
Another reason to use the official Chinese ones is that the maker ones are quite old ( 2011 ) compared to at least 2014 from the Chinese ones.
Bit of a cheapo response to making the drivers look like they were theirs.

The OFFICIAL CH drivers will look like this in device manager
2019-11-22 at 12-52-43.jpg

Bob.

2019-11-22 at 12-52-43.jpg

OK so you want detail and example code here we go...

First I am using a Samsung Galaxy Tab A with android 9 and the up to date ArduinoDroid. The Auriga is set as a MEGA 2560 or MEGA ADK. If I set MEGA CH340G ArduinoDroid simply says it does not recognise the board the other setting it does.

Compiling is fine but when I attempt to download ArduinoDroid reports 'error : cannot change the baud rate' or to be more specific

'overriding baud rate :: 115200'
'failed to set baud rate :: -9'

You wanted to see example code, here it is.

// Project 1 - LED Flasher

int ledPin = 10;
int spkr_pin=8;
int led_on_pin=7;
int spkr_on_pin=4;
boolean led_on;
boolean spkr_on;
int dot_length=7;
int dash_length=21;
int dot_dash_length=14;
int char_length=28;
int word_length=14;
int sentance_length=42;
int scale;
int potPin=2;

#define NOTE_C3 131
#define NOTE_CS3 139
#define NOTE_D3 147
#define NOTE_DS3 156
#define NOTE_E3 165
#define NOTE_F3 175
#define NOTE_FS3 185
#define NOTE_G3 196
#define NOTE_GS3 208
#define NOTE_A3 220
#define NOTE_AS3 233
#define NOTE_B3 247
#define NOTE_C4 262
#define NOTE_CS4 277
#define NOTE_D4 294
#define NOTE_DS4 311
#define NOTE_E4 330
#define NOTE_F4 349
#define NOTE_FS4 370
#define NOTE_G4 392
#define NOTE_GS4 415

int notes[]={
  NOTE_C3,
  NOTE_CS3,
  NOTE_D3,
  NOTE_DS3,
  NOTE_E3,
  NOTE_F3,
  NOTE_FS3,
  NOTE_G3,
  NOTE_GS3,
  NOTE_A3,
  NOTE_AS3,
  NOTE_B3,
  NOTE_C4,
  NOTE_CS4,
  NOTE_D4,
  NOTE_DS4,
  NOTE_E4,
  NOTE_F4,
  NOTE_FS4,
  NOTE_G4,
  NOTE_GS4};

//char message[]="the quick brown fox jumps over the lazy dogs back";

char message[]="the lemon and lime are always at war. they quarrel they kick each other to the floor. "\
          "lemon to the lime says you havent got much time. lime to the lemon says its armegeddon "\
          "when in fact they are nothing but bores.";

int numerical_digits[10];
int alpha_digits[26];

int morse_digits[]={
    0b100000,
    0b110000,
    0b111000,
    0b111100,
    0b111110,
    0b111111,
    0b101111,
    0b100111,
    0b100011,
    0b100001};

int morse_alpha[]={
    0b110,            // a
    0b10111,          // b
    0b10101,          // c
    0b1011,           // d
    0b11,             // e
    0b11101,          // f
    0b1001,           // g
    0b11111,          // h
    0b111,            // i
    0b11000,          // j
    0b1010,           // k
    0b11011,          // l
    0b100,            // m
    0b101,            // n
    0b1000,           // o
    0b11001,          // p
    0b10010,          // q
    0b1101,           // r
    0b1111,           // s
    0b10,             // t
    0b1110,           // u
    0b11110,          // v
    0b1100,           // w
    0b10110,          // x
    0b10100,          // y
    0b10011};         // z

void dot_dash(int c, int period)
  {
    if (c>0)
      {
        for (; c>0; c--)
          {
            if (led_on)
              {
                digitalWrite(ledPin, HIGH);
              }
            if (spkr_on)
              {
                tone(spkr_pin, 1000, period*scale);
              }

            delay(period*scale);

            if (led_on)
              {
                digitalWrite(ledPin, LOW);
              }

            delay(dot_dash_length*scale);
          }
      }
  }

void output_morse(byte m)
  {
    byte mask=32;
    if (m!=0)
      {
        while ((m & mask)==0)
          {
            mask=mask >> 1;
          }
        mask=mask >> 1;
        while (mask!=0)
          {
            if ((m & mask)!=0)
              dot_dash(1,dot_length);
            else
              dot_dash(1,dash_length);
            mask=mask >> 1;
          }
        delay(char_length*scale);
      }
  }

void show_char(char c)
  {
    byte b=byte(c) & 0x7f;
    
    if ((c>='0') && (c<='9'))
      {
        output_morse(morse_digits[b-byte('0')]);
      }
    else if ((c>='A') && (c<='Z'))
      {
        output_morse(morse_alpha[b-byte('A')]);
      }
    else if ((c>='a') && (c<='z'))
      {
        output_morse(morse_alpha[b-byte('a')]);
      }
    else if (c==' ')
      {
        delay(word_length*scale);
      }
  }
  
void setup() 
  {
    pinMode(ledPin, OUTPUT);
    pinMode(led_on_pin, INPUT);
    pinMode(spkr_pin, OUTPUT);
    pinMode(spkr_on_pin, INPUT);
    scale=(analogRead(potPin)+1)/64+1;
  }

void loop() 
  {
    for (int i=0, j=sizeof(message); i<j; i++)
      {
        led_on=digitalRead(led_on_pin)==HIGH;
        spkr_on=digitalRead(spkr_on_pin)==HIGH;
        scale=(analogRead(potPin)+1)/64+1;
        
        if (message[i]=='.')
          {
            delay(sentance_length*scale);
          }
        else
          {
            show_char(message[i]);
          }
      }
    delay(sentance_length*scale);
  }

AndRue

Arduino droid is nothing at all to do with the Arduino organisation.
You may get lucky and find somebody here who has a little knowledge but that is a "third part" application.
Your query is better suited to thier support forum.

Arduinos own software that is supported very well is listed HERE

Bob.