Results 1 to 3 of 3
  1. #1
    royster1994 is offline Member
    Join Date
    Feb 2014
    Posts
    3
    Rep Power
    0

    Default Gathering GPS locations to my phone via bluetooth

    Hello, I am new to Java programming and I am trying to receive GPS coordinates to my phone via Bluetooth.

    -My GPS code seems to be working but cant pick up satellite signals
    -I'm quite sure if my Bluetooth code is working
    -And most importantly I don't have a clue how to put the two together!

    Here is my GPD code -

    /*

    Example GPS Parser based off of arduiniana.org TinyGPS examples.

    Parses NMEA sentences from an EM406 running at 4800bps into readable
    values for latitude, longitude, elevation, date, time, course, and
    speed.

    For the SparkFun GPS Shield. Make sure the switch is set to DLINE.

    Once you get your longitude and latitude you can paste your
    coordinates from the terminal window into Google Maps. Here is the
    link for SparkFun's location.
    http://maps.google.com/maps?q=40.06477,+-105.20997

    Uses the NewSoftSerial library for serial communication with your GPS,
    so connect your GPS TX and RX pin to any digital pin on the Arduino,
    just be sure to define which pins you are using on the Arduino to
    communicate with the GPS module.

    REVISIONS:
    1-17-11
    changed values to RXPIN = 2 and TXPIN = to correspond with
    hardware v14+. Hardware v13 used RXPIN = 3 and TXPIN = 2.

    */

    // In order for this sketch to work, you will need to download
    // TinyGPS library from arduiniana.org and put them
    // into the hardware->libraries folder in your ardiuno directory.
    #include <SoftwareSerial.h>
    #include <TinyGPS.h>

    // Define which pins you will use on the Arduino to communicate with your
    // GPS. In this case, the GPS module's TX pin will connect to the
    // Arduino's RXPIN which is pin 3.
    #define RXPIN 2
    #define TXPIN 3
    //Set this value equal to the baud rate of your GPS
    #define GPSBAUD 4800

    // Create an instance of the TinyGPS object
    TinyGPS gps;
    // Initialize the NewSoftSerial library to the pins you defined above
    SoftwareSerial uart_gps(RXPIN, TXPIN);

    // This is where you declare prototypes for the functions that will be
    // using the TinyGPS library.
    void getgps(TinyGPS &gps);

    // In the setup function, you need to initialize two serial ports; the
    // standard hardware serial port (Serial()) to communicate with your
    // terminal program an another serial port (NewSoftSerial()) for your
    // GPS.
    void setup()
    {
    // This is the serial rate for your terminal program. It must be this
    // fast because we need to print everything before a new sentence
    // comes in. If you slow it down, the messages might not be valid and
    // you will likely get checksum errors.
    Serial.begin(115200);
    //Sets baud rate of your GPS
    uart_gps.begin(GPSBAUD);

    Serial.println("");
    Serial.println("GPS Shield QuickStart Example Sketch v12");
    Serial.println(" ...waiting for lock... ");
    Serial.println("");
    }

    // This is the main loop of the code. All it does is check for data on
    // the RX pin of the ardiuno, makes sure the data is valid NMEA sentences,
    // then jumps to the getgps() function.
    void loop()
    {
    while(uart_gps.available()) // While there is data on the RX pin...
    {
    int c = uart_gps.read(); // load the data into a variable...
    if(gps.encode(c)) // if there is a new valid sentence...
    {
    getgps(gps); // then grab the data.
    }
    }
    }

    // The getgps function will get and print the values we want.
    void getgps(TinyGPS &gps)
    {
    // To get all of the data into varialbes that you can use in your code,
    // all you need to do is define variables and query the object for the
    // data. To see the complete list of functions see keywords.txt file in
    // the TinyGPS and NewSoftSerial libs.

    // Define the variables that will be used
    float latitude, longitude;
    // Then call this function
    gps.f_get_position(&latitude, &longitude);
    // You can now print variables latitude and longitude
    Serial.print("Lat/Long: ");
    Serial.print(latitude,5);
    Serial.print(", ");
    Serial.println(longitude,5);

    // Same goes for date and time
    int year;
    byte month, day, hour, minute, second, hundredths;
    gps.crack_datetime(&year,&month,&day,&hour,&minute ,&second,&hundredths);
    // Print data and time
    Serial.print("Date: "); Serial.print(month, DEC); Serial.print("/");
    Serial.print(day, DEC); Serial.print("/"); Serial.print(year);
    Serial.print(" Time: "); Serial.print(hour, DEC); Serial.print(":");
    Serial.print(minute, DEC); Serial.print(":"); Serial.print(second, DEC);
    Serial.print("."); Serial.println(hundredths, DEC);
    //Since month, day, hour, minute, second, and hundr

    // Here you can print the altitude and course values directly since
    // there is only one value for the function
    Serial.print("Altitude (meters): "); Serial.println(gps.f_altitude());
    // Same goes for course
    Serial.print("Course (degrees): "); Serial.println(gps.f_course());
    // And same goes for speed
    Serial.print("Speed(kmph): "); Serial.println(gps.f_speed_kmph());
    Serial.println();

    // Here you can print statistics on the sentences.
    unsigned long chars;
    unsigned short sentences, failed_checksum;
    gps.stats(&chars, &sentences, &failed_checksum);
    //Serial.print("Failed Checksums: ");Serial.print(failed_checksum);
    //Serial.println(); Serial.println();
    }

    Here is my Bluetooth code -

    char val; // variable to receive data from the serial port

    void setup(){

    Serial.begin(9600); // start serial communication at 9600bps
    }

    voidl loop(){

    if( Serial.available() ) // if data is available to read
    {
    val = Serial.read(); // read it and store it in 'val'
    }

    Please help!
    Email me roy.cliffe@stu.mmu.ac.uk

  2. #2
    kjkrum's Avatar
    kjkrum is offline Senior Member
    Join Date
    Apr 2011
    Location
    Tucson, AZ
    Posts
    1,060
    Rep Power
    6

    Default Re: Gathering GPS locations to my phone via bluetooth

    Sorry, this is the Android forum. The Arduino forum is thataway.
    Get in the habit of using standard Java naming conventions!

  3. #3
    gimbal2 is online now Just a guy
    Join Date
    Jun 2013
    Location
    Netherlands
    Posts
    3,722
    Rep Power
    5

    Default Re: Gathering GPS locations to my phone via bluetooth

    Okay, this is the moment where I figure out this forum has tags. I was wondering on what basis you reasoned this had to do with Arduino :)

    Yeah go to the forum of the third party API, tool or framework if you want to get help with it. Its in your own best interest; the chance that you find someone with experience with not only your API/tool/framework AND knows how to fix your issues is slim in a general purpose Java programming forum such as this, but is a lot higher in that dedicated forum.
    "Syntactic sugar causes cancer of the semicolon." -- Alan Perlis

Similar Threads

  1. Replies: 2
    Last Post: 02-24-2014, 09:24 AM
  2. Replies: 0
    Last Post: 06-06-2012, 08:26 AM
  3. gathering jtable rowdata from checkbox selection
    By Redefine12 in forum AWT / Swing
    Replies: 2
    Last Post: 04-21-2012, 01:59 AM
  4. Replies: 0
    Last Post: 02-26-2009, 08:14 PM

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •