HC 06 LilyPad Atmega32u4 LED Controller Build

33 views Asked by At

Hi I am trying to build a LED controller on a led strip by using LilyPad Atmega32u4 and** HC 06 Bluetooth Module**. When I connect the LilyPad Arduino USB board wired to HC 06 Bluetooth module by using a micro USB cable. Micro USB cable communicates by COM8 port but HC 06 is communicating via COM13. When I am uploading my code to board I use COM8 but when I connect to HC 06 ı switched to COM13.

The question is when I connect to HC 06 via COM13, I cannot send data to Bluetooth module via COM13 port by using serial monitor. Here is the code:

I think maybe bluetoothSerial setup may be problematic. I never see the "Serail ready!" and "Bluetooth ready!" texts on the serial monitor.

What is the problem you think guys?

SoftwareSerial bluetoothSerial(10, 11); maybe this line may be problem because I do not know which pin numbers on the board are corresponsing to RX and TX.

#include <Adafruit_NeoPixel.h>
#include <SoftwareSerial.h>
#define PIN 9  
#define LED_COUNT 5  

SoftwareSerial bluetoothSerial(10, 11); 
Adafruit_NeoPixel leds = Adafruit_NeoPixel(LED_COUNT, PIN, NEO_GRB + NEO_KHZ800);
bool working = false;

void setup()
{
  Serial.begin(9600);          // Serial monitor for debugging
  bluetoothSerial.begin(9600); // Bluetooth communication
  Serial.println("Serial ready!");
  Serial.setTimeout(1000);
  leds.begin();                // Start up the LED strip.
  leds.show();                 // LEDs don't actually update until you call this.
}  


void loop()
{ 
  char sendData;
  char receivedData;
  if (Serial.available())
  {
    Serial.println("Serial ready!");

    //take and display data
    sendData = Serial.read();
    Serial.print("Sent data: ");
    Serial.println(sendData);
  }
  else
  {
    Serial.println("Serial is not ready!");
  }

  if (bluetoothSerial.available()){
    Serial.println("Bluetooth ready!");

    //read and process the data
    bluetoothSerial.write(sendData);
    receivedData = bluetoothSerial.read();
    Serial.print("Received data: ");
    Serial.println(receivedData);
  }
  else
  {
    Serial.println("Bluetooth is not ready!");
  }
  
  if (receivedData == '1')
  {
    leds.setPixelColor(0, 255, 0, 0);
    leds.setPixelColor(1, 0, 0, 0);
    leds.setPixelColor(2, 0, 0, 0);
    leds.setPixelColor(3, 0, 0, 0);
    leds.setPixelColor(4, 0, 0, 0);
    leds.show();
    delay(1500);
    leds.setPixelColor(0, 0, 0, 0);
    leds.setPixelColor(1, 0, 0, 0);
    leds.setPixelColor(2, 0, 0, 0);
    leds.setPixelColor(3, 0, 0, 0);
    leds.setPixelColor(4, 0, 0, 0);
    leds.show();
  }
  else if (receivedData == '2')
  {
    leds.setPixelColor(0, 0, 0, 0);
    leds.setPixelColor(1, 255, 0, 0);
    leds.setPixelColor(2, 0, 0, 0);
    leds.setPixelColor(3, 0, 0, 0);
    leds.setPixelColor(4, 0, 0, 0);
    leds.show();
    delay(1500);
    leds.setPixelColor(0, 0, 0, 0);
    leds.setPixelColor(1, 0, 0, 0);
    leds.setPixelColor(2, 0, 0, 0);
    leds.setPixelColor(3, 0, 0, 0);
    leds.setPixelColor(4, 0, 0, 0);
    leds.show();
  }
  else if (receivedData == '3')
  {
    leds.setPixelColor(0, 0, 0, 0);
    leds.setPixelColor(1, 0, 0, 0);
    leds.setPixelColor(2, 255, 0, 0);
    leds.setPixelColor(3, 0, 0, 0);
    leds.setPixelColor(4, 0, 0, 0);
    leds.show();
    delay(1500);
    leds.setPixelColor(0, 0, 0, 0);
    leds.setPixelColor(1, 0, 0, 0);
    leds.setPixelColor(2, 0, 0, 0);
    leds.setPixelColor(3, 0, 0, 0);
    leds.setPixelColor(4, 0, 0, 0);
    leds.show();
  }
  else if (receivedData == '4')
  {
    leds.setPixelColor(0, 0, 0, 0);
    leds.setPixelColor(1, 0, 0, 0);
    leds.setPixelColor(2, 0, 0, 0);
    leds.setPixelColor(3, 255, 0, 0);
    leds.setPixelColor(4, 0, 0, 0);
    leds.show();
    delay(1500);
    leds.setPixelColor(0, 0, 0, 0);
    leds.setPixelColor(1, 0, 0, 0);
    leds.setPixelColor(2, 0, 0, 0);
    leds.setPixelColor(3, 0, 0, 0);
    leds.setPixelColor(4, 0, 0, 0);
    leds.show();
  }
  else if (receivedData == '5')
  {
    leds.setPixelColor(0, 0, 0, 0);
    leds.setPixelColor(1, 0, 0, 0);
    leds.setPixelColor(2, 0, 0, 0);
    leds.setPixelColor(3, 0, 0, 0);
    leds.setPixelColor(4, 255, 0, 0);
    leds.show();
    delay(1500);
    leds.setPixelColor(0, 0, 0, 0);
    leds.setPixelColor(1, 0, 0, 0);
    leds.setPixelColor(2, 0, 0, 0);
    leds.setPixelColor(3, 0, 0, 0);
    leds.setPixelColor(4, 0, 0, 0);
    leds.show();
  }
  else
  {
    Serial.println("Could not light the LED");
  }
}

I tried to use a program called PuTTY. I tried to upload code from COM8 and switched to COM13 to communicate with Bluetooth module but it did not send data to HC 06, even serial monitor did not become available.

0

There are 0 answers