Thursday, 15 November 2012

JY-MCU "linvor" AT Commands (change name of linvor)

Today I found out how to change the name of my "linvor" serial Bluetooth module to my desired name.
It's quite easy, however due the different baud rates you nee to experiment a little with them in order to get a good connection. So experiment with setting the baud rate in the Arduino code.

I connected the RX pin of linvor to pin 2 and the TX pin of linvor to pin 3 of the Arduino.
Then I changed the default SoftwareSerialexample of the Arduino IDE a little. Now the Serial.begin(rate); is set to 9600: Serial.begin(9600); which is the baud rate of the linvor.

/*
  Software serial multple serial test
 
 Receives from the hardware serial, sends to software serial.
 Receives from software serial, sends to hardware serial.
 
 The circuit: 
 * RX is digital pin 2 (connect to TX of other device)
 * TX is digital pin 3 (connect to RX of other device)
 
 created back in the mists of time
 modified 9 Apr 2012
 by Tom Igoe
 based on Mikal Hart's example
 
 This example code is in the public domain.
 
 */
#include <SoftwareSerial.h>

SoftwareSerial mySerial(2, 3); // RX, TX

void setup()  
{
 // Open serial communications and wait for port to open:
  Serial.begin(9600);
   while (!Serial) {
    ; // wait for serial port to connect. Needed for Leonardo only
  }

  
  Serial.println("Goodnight moon!");

  // set the data rate for the SoftwareSerial port
  mySerial.begin(9600);
  mySerial.println("Hello, world?");
}

void loop() // run over and over
{
  if (mySerial.available())
    Serial.write(mySerial.read());
  if (Serial.available())
    mySerial.write(Serial.read());
}



Open your serial monitor and if everyting is correctly set up you should see: "Goodnight moon!"
If you receive weird symbols your baud rate is wrong.
After that send: "AT". It should send OK back.
Now you're able to configure the linvor. Send one command at a time.

List of available ATcommands:
Command
Description
Options
Response
AT+VERSION
Returns the software version of the module

OKlinvorV1.x
AT+BAUDx
Sets the baud rate of the module 
The command AT+BAUD8 sets the 
baud rate to 115200
1 >> 1200 
2 >> 2400 
3 >> 4800 
4 >> 9600 (Default) 
5 >> 19200 
6 >> 38400 
7 >> 57600 
8 >> 115200 
9 >> 230400
OK115200
AT+NAMEOpenPilot
Sets the name of the module
Any name can be specified up to 20 characters
OKsetname
AT+PINxxxx
Sets the pairing password of the device
Any 4 digit number can be used, the default 
pincode is 1234
OKsetPIN
AT+PN
Sets the parity of the module
AT+PN >> No parity check
OK None
source:http://wiki.openpilot.org/display/Doc/Serial+Bluetooth+Telemetry

2 comments:

  1. I have two modules (linvor 1.8), each connected to it's own arduino. I'm not able to get one arduino to send data to the other, but works with a wire on same pins.

    ReplyDelete
    Replies
    1. For communication between two arduino's you need a host and a slave module since one has to pair with the other.

      If I'm correct most linvoir modules are slave. Which allows you to pair with for instance your phone by searching the module and filling in the pair code.
      For a connection between Arduino's you need another version of the linvoir which is the master/host. Then you can say to the master module "I want to you to connect with my other linvoir module with pair code xxxx".

      If i'm correctly DX.com is selling this master/host module too. I have no experience with it, but I'm quite sure this is the kind of module you need together with your other linvoir module to set up the connection.

      Good luck with your project!

      Delete