Skip to content

Instantly share code, notes, and snippets.

@pingud98
Created June 19, 2015 20:23
Show Gist options
  • Save pingud98/928e65376df2f23332a2 to your computer and use it in GitHub Desktop.
Save pingud98/928e65376df2f23332a2 to your computer and use it in GitHub Desktop.
Cosmic Pi data generator script
/*
DigitalReadSerial
Reads a digital input on pin 2, prints the result to the serial monitor
This example code is in the public domain.
*/
// digital pin 2 has a pushbutton attached to it. Give it a name:
//int pushButton = 2;
int gpstime = random(10000,1000000);
int latitude = random(0, 100);
int longitude = random(0,100);
int fixquality = random(-0,1);
int numsats = random(10,16);
int hozaccuracy= random(5,50);
int altitude = random(1000,3000);
int height = altitude + 100;
int timesinceupdate = random(10,1000);
int DGPS = random(1,2);
int checksum =random(0,8);
int exacttime = gpstime;
int energy1 = random(10000,20000);
int energy2 = random(10050,19950);
int altitudereal = altitude + random(-100,100);
int altaccuracy = random(1,100);
int humidity = random (60,70);
int humaccuracy = random (1,20);
int xgrav = random(0,10);
int ygrav = random(0,10);
int zgrav = random(0,10);
int mxgrav = random(0,10);
int mygrav = random(0,10);
int mzgrav = random(0,10);
int tempval1 = random(10,35);
int tempval2 = tempval1 + 1;
int uptime = random(1,1000);
int deviceid = random(1,10000);
// the setup routine runs once when you press reset:
void setup() {
// initialize serial communication at 9600 bits per second:
Serial.begin(115200);
}
// the loop routine runs over and over again forever:
void loop() {
// read the input pin:
//int buttonState = digitalRead(pushButton);
// print out the state of the button:
Serial.print("GPS data:$GPGGA");
Serial.print(gpstime);
Serial.print(',');
Serial.print(latitude);
Serial.print(',');
Serial.print(longitude);
Serial.print(',');
Serial.print(fixquality);
Serial.print(',');
Serial.print(numsats);
Serial.print(',');
Serial.print(hozaccuracy);
Serial.print(',');
Serial.print(altitude);
Serial.print(',');
Serial.print(height);
Serial.print(',');
Serial.print(timesinceupdate);
Serial.print(',');
Serial.print(DGPS);
Serial.print(',');
Serial.print(checksum);
Serial.print(" Timing:");
Serial.print(exacttime);
Serial.print(" Energy:");
Serial.print(energy1);
Serial.print(',');
Serial.print(energy2);
Serial.print(" Altitude:");
Serial.print(altitudereal);
Serial.print(',');
Serial.print(altaccuracy);
Serial.print(" Humidity:");
Serial.print(humidity);
Serial.print(',');
Serial.print(humaccuracy);
Serial.print(" GravOrientation:");
Serial.print(xgrav);
Serial.print(',');
Serial.print(ygrav);
Serial.print(',');
Serial.print(zgrav);
Serial.print(" MagOrientation:");
Serial.print(mxgrav);
Serial.print(',');
Serial.print(mygrav);
Serial.print(',');
Serial.print(mzgrav);
Serial.print(" Temperature:");
Serial.print(tempval1);
Serial.print(',');
Serial.print(tempval2);
Serial.print(" DeviceUptime:");
Serial.print(uptime);
Serial.print(" DeviceID:");
Serial.print(deviceid);
Serial.println(" End");
//increment and modify things
gpstime++;
exacttime++;
energy1= energy1 + random(-100,100);
energy2= energy2 + random(-100,100);
altitudereal = altitudereal + random(-10,10);
humidity=random(60,70);
uptime++;
delay(1); // delay in between reads for stability
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment