Trying to control a Qik with an Arduino

Hi I hope someone can help me. I am using an Arduino Uno and trying to control the Qik 2s9V1 via serial commands. I can get the demo code to work just fine. So I have it hooked up correctly. I have following this post and have been trying to just get the Green LED to indicate it is out of Auto detect mode but can’t seem to do it. Below is the code I am using.

#include <SoftwareSerial.h>

#define rxPin 3
#define txPin 2

// set up a new serial port
SoftwareSerial mySerial =  SoftwareSerial(rxPin, txPin);

void setup()
{
  
  Serial.begin(9600);
  mySerial.write(0xAA);
  mySerial.write(170);
  delay(100);
}

void loop()
{
 
 
}

Hello.

It looks like you are initializing the Arduino hardware serial instead of the software serial object you are trying to use. Can you change Serial.begin(9600) to mySerial.begin(9600)? If that does not work, can you try to add a delay between initialization and sending the first byte?

- Jeremy

I updated the code like you suggested but the Green LED still indicates it has not received the first byte.

#include <SoftwareSerial.h>

#define rxPin 3
#define txPin 2

// set up a new serial port
SoftwareSerial mySerial =  SoftwareSerial(rxPin, txPin);

void setup()
{
  
  mySerial.begin(9600);
  delay(100);
}

void loop()
{
 
 mySerial.write(0xAA);
 mySerial.write(170);
 delay(1000);
}

After looking at the qik library, it looks like init() resets the qik before sending 0xAA for setting the baud rate. Can you see if resetting the qik before you first transmit makes a difference?

At this point I suggest you start with the example sketch, which you say works, and incrementally simplify it to your version (you might need to actually look at the library source code to accomplish this). If at some point it stops working, you will have a much better idea what the problem is.

- Jeremy