Hello,
I am having a problem getting the CC3200's built in accelerometer to transmit data over WiFi.
I have the BMA222 example working perfectly and I can send static data from the CC3200 easily, but when I combine the two I cannot send accelerometer data over WiFi faster than once every 10 seconds.
#include <WiFi.h>
#include <Wire.h>
#include <BMA222.h>
char ssid[] = "private";
char password[] = "vastcartoon245";
unsigned int localPort = 2390;
IPAddress ip;
long rssi;
WiFiUDP Udp;
BMA222 mySensor;
void setup()
{
mySensor.begin();
uint8_t chipID = mySensor.chipID();
pinMode(RED_LED, OUTPUT);
pinMode(YELLOW_LED, OUTPUT);
pinMode(GREEN_LED, OUTPUT);
digitalWrite(RED_LED, LOW);
digitalWrite(YELLOW_LED, LOW);
digitalWrite(GREEN_LED, LOW);
Serial.begin(9600);
WiFi.begin(ssid, password);
while ( WiFi.status() != WL_CONNECTED) {
digitalWrite(YELLOW_LED, HIGH);
delay(150);
digitalWrite(YELLOW_LED, LOW);
delay(150);
}
digitalWrite(YELLOW_LED, HIGH);
while (WiFi.localIP() == INADDR_NONE) {
digitalWrite(GREEN_LED, HIGH);
delay(150);
digitalWrite(GREEN_LED, LOW);
delay(150);
}
digitalWrite(GREEN_LED, HIGH);
Udp.begin(localPort);
}
void loop()
{
ip = WiFi.localIP();
rssi = WiFi.RSSI();
int8_t acclX = mySensor.readXData();
int8_t acclY = mySensor.readYData();
int8_t acclZ = mySensor.readZData();
Udp.beginPacket("192.168.2.197", 42679);
Udp.print("{ rssi: '");
Udp.print(rssi);
Udp.print("', ip: '");
Udp.print(ip);
Udp.print("', accl_x: '");
Udp.print(acclX);
Udp.print("', accl_y: '");
Udp.print(acclY);
Udp.print("', accl_z: '");
Udp.print(acclZ);
Udp.print("' }");
Udp.endPacket();
delay(10);
}
Any help would be appreciated!
Also, this is my output. Obviously rssi and accl are all wrong, but the main problem is it took about a min to get all of that.
{ rssi: '0', ip: '192.168.2.90', accl_x: '-8', accl_y: '-8', accl_z: '-8' }
{ rssi: '0', ip: '192.168.2.90', accl_x: '-8', accl_y: '-8', accl_z: '-8' }
{ rssi: '0', ip: '192.168.2.90', accl_x: '-8', accl_y: '-8', accl_z: '-8' }