Category Archives: GPS

First SigFox program with Arduino (Akeru)

Following my previous post, I’ve started to explore Sigfox capacities with a small first project. The idea was to make a low powered GPS tracker. So I’ve just added a 10€ GPS adapter from China and wrote my first sketch.
The idea is to make a simple GPS Traker, ideally not using SMS but being able to send his position from anywhere, with of course very low energy consumption. This first version is just a proof of concept so we are not yet focused on the consumption. The data are then send to the OpenSensorCloud platform (feel free to register! )

photo(2)

The programe is quite simple:
1. initialize everything
2. wait for the GPS to get fix position
3. send it to server through Sigfox network
4. wait 10 min
5. start at 2)

We need to wait 10 minutes before sending another 22 bytes messages, it’s a Sigfox limitation and the tradeoff between low consumption, high coverage, and size. I don’t see this as a big issue for many usage, but for sure, it will add some interesting challenges

In short:

// include the library code:
#include <Akeru.h>
#include <TinyGPS.h>
#include <SoftwareSerial.h>

// initialize the library with the numbers of the interface pins
TinyGPS gps;
SoftwareSerial ss(8, 9);  // GPS RX is set on pin 8

void setup() {

  Serial.begin(9600);
  while (!Serial) {
    ; // wait for serial port to connect. Needed for Leonardo only
  }
  Akeru.begin();  // Not sure it's neded, as I need to call it again later
  delay(1000);
  ss.begin(9600);
  // Init modem
  delay(1000);
}

// int is 16 bits, float is 32 bits. All little endian
typedef struct {
  float lat;
  float lon;
  float alt;
} Payload;


void loop()
{
  Payload p;
  float flat, flon;

  gps.f_get_position(&flat, &flon, &age);
  p.lat=flat;
  p.lon=flon;
  p.alt=gps.f_altitude();
  
  if(flat==TinyGPS::GPS_INVALID_F_ANGLE){
    delay(1000);
  }else{
    // Note Seems that we need to call Akeru.begin() again or
    // further call to isReady or send will be blocked...
    delay(1000);
    Akeru.begin();
    delay(1000);
    Serial.println("is ready:"+String(Akeru.isReady()));
    Serial.println("Sending");
    bool status=Akeru.send(&p,sizeof(p));
    Serial.println("done result:"+String(status));
    // Wait for 10 minutes before sending another one
    for(int i=0;i<600;i++){
       delay(1000);
    }
    Serial.println("wake up");
  }
}

Of course, the program need some improvements, like waiting to have more satellite fixed before seding the first message, but let’s keep it simple.

The full source code is available

I had some minor issue, it seems that the Akeru API needs to be “reseted” before sending new data

The payload is quite simple, just a structure with three float: lat , lon, and alt (the last one might not be the most interesting but it was just a test).

The most interesting things is that now opensensorcloud support Sigfox devices. Sigfox allows you to send data in a limited way. You are allowed only 22 bytes per message, so no way to do ascii or json. So you usually send binary information, typically raw C or C++ structure. Then you have to decode them on the server.
Hopefully, OpenSensorCloud provides full support for such feature:
When creating a sensor for an Akeru enabled device, you just need to specify the format of the payload, this will be automatically converted to corresponding sensor values.
SigFoxConf

Make sure that your sigfox device id is well defined
Format are described in a generic json way, for instance, in may case, the payload contained 3 float field, so format is the following:

[
  {'name':"lat",'type':'float'},
  {'name':"lon",'type':'float'},
  {'name':"alt",'type':'float'}
]

As I wanted to map this to a “Position” object, and not to thre sensors, I ad to add a little bit of definition


[{'name':'pos',
  'type':'position',
  'struct':[
   {'name':"lat",'type':'float'},
   {'name':"lon",'type':'float'},
   {'name':"alt",'type':'float'}
  ]
 }
]

As a Sigfox callback, put the URL of the OpenSensorCloud callback, like this

http://api.opensensorcloud.com/device/sigfox?api_key=YOUR_API_KEY


Replace with the value of the platform.
OpenSensorCloud expect two extra parameters: device value, with the device_id you’ve just entered before, and data with the binary payload.

The API_KEY is visible on your profile,
And let’s go

The map location appears on the platform

You can see the result on the
Real Time Dashboard live
capture

In next part, we will add geofencing and twitter features thanks to the Trigger functions of the OpenSensorCloud platform…

Webwag widgetize PNDs!

We just announced a few days ago a very exciting things: widgets are coming to your PNDs: Webwag Drives the First Widgets into cars and portable navigation devices.

This is interesting as a stand alone news, but also in the Webwag vision of a converging world where you can access to services around all your connected devices, from your computer, netbook, photo frame, settop box, PND or any connected devices, through a service taking advantage of devices specificites (like GPS for a PND) while taking care of device limitation.
That’s our challenge, and result if exciting for now!
And remember, see you at MWC, Hall2 , Booth 2E59

Reblog this post [with Zemanta]

Widgets and GPS…

uLocate just launched a couple of days ago “Where.com“. Exciting concept – great domain name- , mixing two of the fast growing area of interests in mobile phone: LBS/GPS application, and Widgets.
Widgets seems to be mainly “HTML based”, but looks good. The bad thing for now, it’s running only on Sprint.
Anyway, I liked the concept and I believe that “Location aware Widget” will be a killing category in future mobile widget space.

Technorati Tags: , , , , ,

powered by performancing firefox

First Microsoft application for J2me!

Microsoft just released “Windows Live for mobile“, and as far as I know, it’s the first time that Microsft release a J2me Application! (but don’t worry, there is a Windows Mobile app too)


Windows logo on J2me device! :-)

So support for J2me seems quite limited (see my full report on the mobile mapping blog), but it’s rare enough to be noticed.

In summary:
- not yet as polished as Google map
- Still some porting issue (menu keys)
- map download (when working) is quite fast and works well
- some good and interesting UI ideaes….

As expected, the long term war will be one services, and not applications…The underlying language/OS is not very relevant, and I expect to see more Microsoft application on J2me, or in other platforms (Flash, Symbian, etc…).

This is Mobile2.0!

Technorati Tags: , , , ,

Flickr got maps – good time to GeoTag!

Two interesting news for today:
First, Flickr introduced some mapping feature for geotaged picture. You can see where these picture has been taken. Of course, visualisation is done through Yahoo Maps, which is less accurate (outside U.S.) than GoogleMap, but that’s a good start, and probably a big incentive for Yahoo to correct this soon.
Of course, this feature is nothing really new, but it’s nice to see in integrated. Note that “Pikeo” is an Orange project that intent to do the same kind of things, but not as smooth as I would expect it…

Surfview

The bad side seems to be that you need to do an extra step, even if your photos are already geotagged. You need to “import” them (go to “organize”, then “map”). This step is probably not needed and useless.
The other issue seems that YahooMaps seems to contains a lot of errors, as you can see on this snapshot….

The other good news of the day is the announce that I am involved in the “mobup” project since some monthes now. Mobup is a free open source Flickr uploader. Now mobup haves some geotagging capacities: if you have a connected GPS to your mobile phone through bluetooth, Mobup will add Geotags to this. Of course, the geotagging picture capacities of J2memap are based on Mobup…

Technorati Tags: , , , ,

WayFinder 3D

In case you missed it (I’ve missed it!), a demo of Wayfinder 3D is available for Symbian S60. It’s a Symbian native application (1.7 meg and even, does not contains any map!). You can use it to find service…But with some strange behavior. For instance, to get weather, you have to re-enter (manually) your location! Does not work with GPS (says that I need to “update” it?)

Through mobitrends

Technorati Tags: ,

Navigation on mobile for free (nearly)

I’ve just realized recently that GoogleMap has an interesting possibility. When looking for directions, you can specify a latitude/longitude location instead of an address. This opens up the possibilty of real time directions on your mobile, linked to your GPS( thanks to J2memap)…
So I’ve quickly implemented this in Version v0.906, thanks to the “here” location in the direction box. If you type or selecet here, your coordinates will be used as a starting point.

Here is an example:


Lost in Paris?

Lets find an hotel

Do I have an issue with “é”?

Let’s find how to go there

Hum…

and follow the sign…

This is GPS navigation for free (except the data costs, that might be huge depending of your operator!)

And my disclaimer: this is an experimental feature, and does not attempt to replace any “real” navigation system!

Technorati Tags: , , ,

Nokia E61 and GPS

I’ve just discovered something today, thanks to a user of J2memap: The nokia E61 support the JSR179, but does not have a built in GPS. So it can be only server side localisation. But you also have the ability to pair it with a GPS bluetooth device directly, so JSR179 implementation will use this informations…Smart approach! Unfortunatly the JSR179 provide more limited information than a full access to the GPS device, but that’s probably the price to pay for interoperability.

Ok, the E61 design could have been better, but the screen is really great, especially for this kind of application!

Technorati Tags: , , ,

Geotagging and Pictures (and a world record!)

I’ve added a few nice features in the latest J2memap release (v0.9, not yet you): the ability to take some pictures, and to upload them directly to Flickr with some geotagged flags thanks to the mobup classe
The other day, I was in the french fast train, and make probably the record of the fastest geotaged and uploaded picture in real time, at 300 kmh! I forgot to switch on full size, so quality is quite bad, but it got the position on the map, as well as the snapshot of J2memap who include some nice icons once the picture has been geottaged: it’s quite easy, just take a picture, and it will be send to Flickr using your current GPS position.
Here are a few screenshots:

The picture in Flickr (ok, the resolution is really to small)

The screen of the mobile (yes, TGV was not at 300 km/h at that time, only 295…)

the result on the great tool yuan.cc:

I like this one, as it a real good example of mashing up different tools, googlemap, flickr, yuan.cc, j2memap, and a little bit of mobup… No real usage yet (who knows? ;-) ), but fun!

Geotagging with mobile is in the air, Martin is doing some experiment too, look at it…Technorati Tags:

mPowerplay and J2memap

First, I’ve finally went upgraded J2memap with some important functions. search is now fixed (but not yet direction), but more important, a some memory allocation issue on Nokia has been fixed.
I take the occasion of this note to “introduce” mPowerplay. This fantastic tool enable you to display any midlet on the web, without any change, just by adding ” http://webstart.mpowerplayer.com/ before the URL of the midlet you want to display, and ending with “.jnlp”. Of course, you can protect your midlet if you want, for demo games for instance. I am just surprised to see that no so many developers are using it. See the result on J2memap: J2meMap_Beta

Technorati Tags: , , ,

OrangeGPS application: great…

I’ve just
discovered today the latest version of the Orange GPS application. It’s a quite
good GPS guidance app, who haves all the usual stuff that you except to find in
such app. Briefly:

  • Find where you are
  • Get guided to a certain destination
  • Get point of interest (restaurant, etc…)
  • Voice output
  • Link with address book
  • etc…

This is already quite good, but what I really like, is that:

  • ll the path are computed on server side. So I do not need to embed megabytes
    of data…
  • the business model: its 1.5€/request or 10€ for unlimited number of request
    per month.

Good be seen as expensive on a per request basis, but for not frequent users,
it’s in fact much more economical than buying an expensive TomTom software or
equivalent. During the year, there is probably only a dozens of occasions where
I really need such software, that’s why this business model is well adapted to
such situation.And it’s also a good way to get addicted to such service! ;-)

That’s a real great step in the right direction, and a truly added value service, which I am ready to pay for….

Unfortunatly, the application is only available on most of the Symbian or Windows mobile phone….

Technorati Tags: , , ,