NEW Carloop GPS now available

The ALL-NEW 2018 Carloop GPS now available at store.carloop.io!!! We worked really hard to make sure this new addition to the Carloop family is packed with great features. Here’s what you get:

  • uBlox SAM-M8Q GPS/Galileo/GLONASS module
  • Micro SD card reader
  • 3-Axis Accelerometer: LIS3DH
  • Includes long header pins to stack on top of Photon or Electron
  • Plugs into Carloop
  • JST-SH connector for remote installation
  • Integrated into latest Carloop library

Would love to hear your thoughts!

It looks like a nicely made product, my only concern is the lack of external antenna support.

The position of most OBD-II connectors faces the antenna downward, even if you extend the OBD-II to elsewhere it’s still likely to be buried inside the dash. Having an SMA or u.FL connector on the PCB would let you use an external active GPS antenna.

Hey! Thanks for the feedback. Totally agree and to be honest it was a tradeoff. We did, however, want to give people the ability to instalI Carloop GPS remotely. If you look closely at the J2 connector, that is a JST-SH connector. There is another one on the Carloop board and with a long jumper wire for the JST-SH connector, you could install the GPS unit remotely.

It is not totally ideal but worked well in our tests. Surprisingly this ublox module performed quite well even hidden in the OBD-II port. One caveat is that you need to download uBlox’s almanac so that it knows ahead of time where the satellites are. That improves Time-To-Fix significantly.

I just purchased the carloop, electron, and this GPS module. I am unclear how these three devices look once they are all plugged into each other.

Looking at this image:

Where does the GPS fit in? On top of the Electron?

Would you be able to post a picture of the three devices connected?

Thanks!

@ems, the datasheet for the GPS module indicates its internal antenna is omni-directional, so it should not matter what orientation it faces.

@alanm, I also have a bit of concern lacking a connector for external antenna. I will have to take a look at the JST-SH connector when I get my hands on one to see if it appears to be robust enough for installation in a rally car (relatively high G cornering & braking, but very high G in vibration and vertical (landing jumps)).

In general, it looks like a good module. However, the datasheet indicates a lot of the features are disabled by default. At this point, I assume there would be good value in creating a library with a GPS object that provide a programmers interface to easily enable/disable/use all the features.

@Nathan, In the image you provided, do you see there is an extra row of header sockets right beside the rows that the electron is plugged into? That is where the new GPS module will plug into, and it will sit up above the electron; it would be in the foreground if it was added into the image. It looks like it will extend slightly beyond the edge of the Carloop, but not a much as the electron extends. This assumes that I read the dimensions correctly.

1 Like

@cyclin_al1 , Granted, I have no experience with this device yet, but I’m not sure that omni-directional in this context would include being inverted vertically–faced away from the sky … I guess I’m skeptical :slight_smile: … Does ublox claim that a “face down” orientation is as optimal as one where the chip antenna is “face up”?

The datasheet and hardware integration manual for this ublox module says that other nearby components with heights greater 3mm should be placed at least 10mm from the antenna, they also specify a distance of at least 5mm to any enclosure. I would think this implies that shadows of tall components, and nearby items, will affect performance of the antenna.

…I would further assume that the above recommendation would suggest that when the entire assembly is inverted vertically–as it would be in a typical downward facing OBD-II vehicle port–that the PCB of the GPS board, with its ground planes, could attenuate any signals coming from the sky… this is further compounded by the fact the Particle PCB / components are (in this scenario) located directly “above” the faced-down GPS chip antenna. Then immediately above all of that is also the mass of metal which is the OBD-II connector(s) and its related wiring, not to mention all of the metal that makes up the vehicle and dashboard.

I’m not saying this device won’t work, just that I’m skeptical that a Earth-facing GPS chip antenna will give performance that is similar to a sky-facing GPS chip antenna.

…an external active GPS antenna option would alleviate a lot of this, and it’s what I have to use with my Particle Asset Tracker–their onboard GPS chip antenna does very poorly when shadowed by a USB connector, but with the external active antenna the performance is great.

@ems, I indicated that the datasheet indicated omnidirectional. Therefore, ublox is not claiming any particular orientation is optimal, whether it is face up or face down. Beyond that, you are certainly welcome to do some testing to verify whether or not it is omnidirectional or not.

Your assumption that proximity to other parts may attenuate the signal could be valid. However, proximity of other objects due to position/orientation of the whole assembly would not equate to an optimal orientation of the antenna, but rather an optimal position of the antenna relative to other objects. There are two separate concerns, which should be considered (and tested if desired) separately.

I do agree that a connector for an external antenna would be a valuable option. There are a number of other reasons as well that could support having a connector.

For fair comparison with the Particle Asset Tracker, do you have the v1 or the v2? GPS chip technology has evolved quite a bit since the Particle Asset Tracker v1, so almost any new option will have better performance than that. The v2 is fairly recent technology, so a comparison with that is worthy of a closer object look.

It seems like the u-blox design guides say that (omni) directionality is influenced by the PCB the module is used in, and that they do recommend running it face up.

Reducing the GND plane size makes the pattern more omni-directional but it comes also with a penalty of lower gain achievable compared to an isotropic antenna (dBic). Highest gain is achieved when the antenna module is facing upwards. It is thus recommended that a patch antenna or a module with integrated patch antenna is facing upwards in customers application

(ublox design guide for small high performance patch antenna applications UBX-16026689 - R01)

BTW, I’d like to apologize in advance if my posts on this topic appear contrary, or argumentative–it’s unintentional–It’s very possible I’m working off stale understanding of GPS module performance and that directionality is not as much of an issue as I believe it to be.

All this said, we can debate about what’s best and still not prove anything; I’m going to make the leap that if the Carloop GPS is anything like the Carloop itself I’ll be more than satisfied with how it performs in a typical situation, so I’ve put in an order for one (and a couple the CAN hitch devices). I’ll be happy to report back here once I receive it.

@ems,

I should apologize as well if my reaction was too strong. It is pretty late in my time zone when I get the chance to respond here.

It looks like you have dug in deeper and consulted the ublox design guide. I only went as far as reading over the datasheet and trusted the statements there as-is.

To be honest, I am in the same situation as you. I am making the leap to order one and see how it goes (I do not work for Carloop). I will be able to see how it performs in an abnormal situation; I have a rally car build in progress long-term.

Hey @cyclin_al1, @ems, definitely a great idea and something we will put on our roadmap the next rev of the board. For sure! Having sad that, in our tests, we found that the Carloop GPS performed surprisingly well even tucked away in the footwell connected to the OBD-II port. Granted this will change from car to car and amount of metal.

uBlox AssistNow Offline Function

One of the tricks we used to improve our time-to-fix (TTF) was to take advantage of uBlox AssistNow Offline. This is basically an almanac database you can flash to the uBlox IC. It really helps find a fix quicker since it knows which satellites to look for.

This is a huge improvement in capabilities and potential. If you remember, our old (now discontinued) GPS which was the GP-735T was not very impressive when getting a localization fix. Depending on the individual unit, sometimes it would take a few hours to get a fix in open sky. The SAM-M8Q uBlox cold start time is often less than 45 secocond using uBlox AssistNow Offline

** Please see my later post for updated tests, I’ll leave the original in quotes below for posterity **

As promised, here are my results–

Summary:

  • In the OBD-II connector of my car, pointed “earthward” under the dash, it will never obtain a GPS fix, even after 20 minutes
  • On the dashboard of my car, pointed “skyward”, it will obtain a GPS fix in about 90 seconds

For the FW I took the carloop-minimal example code from the carloop library on build.particle.io and I modified it to publish the result of gps.location.isValid() every 60s or immediately if it transitions from false to true.

I repeated each effort a few times, each time with the car stationary, the ignition key OFF, and my Electron 3G US running off a fully charged 4400mAh lithium ion battery (to make the tests in and out of the OBD port equal).

I also ran a test where I kept the carloop faced “earthward”, but sitting on a plastic container on my car’s seat (to eliminate my dashboard as the major signal blocker), and it still did not obtain a GPS fix after ~15 minutes.

So effectively I’m confirming my concern that the GPS will not work well (or at all) when in the typical position that an OBD-II port will place it (earthward, underneath a bunch of metal/plastic).

Downloading almanac data or enabling assisted-GPS are all possibilities to make things work better, but they don’t change the fact that as it is designed this will not work very well for its primary function (GPS) and without an external antenna port there isn’t a good way to enable it.

That said, I do not plan to request a refund because I think that despite the GPS reception issue it offers a good set of features in a small form (GPS, accelerometer, SD card) and I think this could easily work for other designs where it can made to face skyward, or where OBD can be extended to allow that orientation – but I do really hope that Carloop considers an external antenna option on a respin of this board sooner vs. later.

@ems,

Thanks for the test results.

Did you also test the case pointed “skyward” with the GPS sitting on a plastic container on my car’s seat?
What about the case pointed “earthward” on the dashboard of your car.
I am still curious about whether the results are caused by orientation versus position.

Still working on placing an order … I need an international arrangement since any distributors are sold out or do not have it yet.

I see your point–does being on the dashboard vs. elsewhere inside the car make a bigger impact than facing earth vs. sky.

The weather here is getting nicer, so I’ll try a few out-of-the-car tests to really nail down whether orientation is causing the issue or not. I’ll try to post some results by the end of the week.

I’d also really appreciate it if the Carloop folks would consider updating their libraries at Particle.io to make use of A-GPS or almanac downloads. I’ve considered both of those for the tracker devices I’ve got going w/ Particle’s Asset Tracker shield, but since those devices perform fairly well w/ an external GPS antenna (and they have coin-cell battery backed almanac storage) it hasn’t been necessary to get into it.

Hi @cyclin_al1

At your suggestion I re-performed several of the tests to try to better understand position vs. orientation–

My original concern was that Earthward orientation was going to have a negative impact on GPS fix and it would be compounded by positioning under the dash. My first set of tests in my earlier post were too limited in that they changed both orientation and position together, so while they did prove to me that the Carloop GPS won’t get a GPS fix while plugged into my OBD-II port, they didn’t prove whether orientation was a factor in the problem or not. So, I revisited the tests with changes to attempt to determine whether it was orientation or position that caused the GPS fix issues.

A few specific points I wanted to address after my latest set of tests–

  • You were absolutely correct that position in the car was a larger factor than orientation, in fact in these new tests orientation does NOT seem to matter at all, so my original concern over that is settled in my mind: Orientation does not impact GPS fix time

  • My original “on the seat” test was invalid–I realized after I posted that I had the chip antenna in physical contact with the plastic tub I used to keep it up off the seat… I now believe that physical contact w/ the antenna was the cause of not getting a GPS fix in that case, not the Earthward orientation. The GPS antenna in physical contact with an object may prevent GPS fix.

In the new tests I tested the Carloop GPS running w/ a Particle Electron 3G off a 4400mAh battery. I used 3 different positions in the car: “on dash”, “under dash”, and “on seat”. With on/under dash I used two different orientations: Earthward and Skyward, and with on seat tests they were all Earthward orientation but one with the GPS antenna in physical contact with something and one without.

For this set of tests I used a cardboard coffee cup sleeve to keep the GPS antenna from touching anything when in the “Earthward” orientation.

Position “On Dash”
Whether oriented toward sky or earth, the GPS fix happened within 50-90 seconds.

Oriented toward Earth:

Oriented toward Sky:

Position “Under Dash”
To simplify things I didn’t use the OBD-II connector this time, instead I placed the device on the floor of the car under the OBD-II location. No GPS fix occured within 6 minutes, regardless of the orientation.

Oriented toward Sky:

Oriented toward Earth:

Position “On Seat”
This position was different from the others in that I didn’t test orientation, but rather whether the GPS antenna being in physical contact may have made my earlier test invalid. I didn’t have the plastic tub with me this time, but I figured the seat itself would do… What I found was that when the antenna was not touching anything a fix was obtained in about the same time as the “on dash” positions, and when the antenna was physically touching the seat no fix would be obtained within ~6 minutes. My assumption is that my earlier test in this position was invalid because the GPS antenna was resting in physical contact with the plastic tub.

Oriented toward Earth, but with GPS antenna out of physical contact with anything, GPS fix in about 90 seconds:

Oriented toward Earth, but with GPS antenna in physical contact w/ the fabric seat, no GPS fix even after ~6 mins:

If you’re still reading, thanks for your interest, and I hope that something I posted here may be valuable or at least entertaining.

…and yes I did sit in my car for about an hour doing all this, but fortunately it was still within WiFi range of my office :slight_smile:

@ems,

Well-written Ethan! Also, I like how you applied a good methodology to your testing to separate out the different factors.

I suspected that location of the sensor would be a primary factor to its performance; your results show how sensitive it is to position. When I get mine, I’ll try it in a few different vehicles to see if I can spot something at a lower level.

Good observation about the effect of having some object in direct contact with the GPS. I am sure lots of people will find that to be very useful information to have.

Thanks!

Im gona assume one could basicly just create an “extension cord” for the GPS Chip and the place it wherever? Ofcourse the lenght couldn’t get too big due to resistance, but it should be doable.

@redimo, It works exactly that way. People refer to it as a JST cable since Carloop and the GPS unit have JST-SH connectors (see the announcement in the first post of this thread) just for that purpose.

Just received my GPS unit yesterday and so far I am enjoying playing with it. I was shocked how quickly it got a location fix where I live. We’re in an area where we often have satellite issues. I tried hooking up an FTDI cable to the board to connect it to the Blox U-Center application to see what else this chip could do but had no luck getting it to work. I then realized I was overthinking it and wrote a quick 20 line serial pass-through sketch for my Photon only to realize that @jvanier had already created on (oh well good practice). Anyway…

I’ve had the GPS running and logging to the SD card for 24 hours and it never lost Fix from what I see. The accuracy has been impressive. There were a few times it could only get a 2D fix instead of a 3D fix and still was only off by less than 20 meters.

While I haven’t written any code for this yet, I’ve been logging through the U-Center application the speed and compass direction. Has anyone tinkered with these yet? I am seeing the speed while stationary bouncing between 0.2kph and 1.7kph and would like to know if there is a way or procure to handle this fluctuation.

Second, I’m trying to figure out the compass orientation when the carloop is hanging upside down under the dashboard. It seems that north is pointing out through the SD side if the GPS board. Can anyone verify that?

@JerseyTechGuy,

It sounds like you are learning lots about the GPS unit, even if you don’t have to :slight_smile:

When you are stationary and you see the speed bouncing around, take a closer look and see if your position is bouncing around also. I am sure that is the case. Within that accuracy zone of 20 meters you are getting, your position will be different every time the GPS calculates a position and will jump around. The speed is calculated to get from position to position by that small amount. If you do an averaging calculation on the positions, then your speed error should reduce a lot. When stationary, a reduced error will get a speed closer to 0.

Can you use the U-Center application to enable an averaging function, or set parameters for such a function? I have not looked closely enough to see if the module does this. I will investigate that type of feature once I get my unit.

Same thing for the compass orientation. I have not looked at it yet. There may even be a way to calibrate it to take into account the orientation of the unit, although that might be optimistic.

I will be getting my unit soon. It gets picked up next week and brought across the border at the end of the week. Yay for personal exemption amounts (on duty & taxes) for a week-long visit to the states.

I am hoping there is a compass calibration. I’ll dig around some more and look for it. I may need to add a gyro into the equation if I plan to simply plug this in under the dashboard in my OBD port so I can tilt compensate the compass for better accuracy. It’s great that this board has an accelerometer but for the minimal cost difference it should have just had a 6dof or 9dof chip.