Spark Logic

No fix on u-blox neo 6m

jucordero Fri Oct 28, 2016 6:13 pm

Hi

I purchased a couple maple-mini clones from ebay in order to test their capabilities and see if they could replace my Teensy on some finished and ongoing projects. I managed to program them quite easily (Thanks to all of you!).

Hooked up a cheap GPS module (u-blox neo 6m) and I’m having a lot of trouble making it getting a fix. The wiring and serial connection are working as I see the incoming data in the serial monitor. Also, I’m getting a fix almost instantaneously in the Teensy and a NANO.
I have tried to replicate the same conditions on the other boards, but it seems like the only ones which are not working properly are the maple clones.

At first I thought it could be a power issue, as the VCC line is not that smooth as on the Teensy. But the same issue is observed by powering it from Vin. Tried with a 3.3 voltage regulator but even that seems to fail.

Right now I’m running out of ideas. Does any of you know what could be happening?

Thanks!

Replies

stevestrong Fri Oct 28, 2016 6:51 pm

What exactly is not working? Which serial interface are you using?

RogerClark Fri Oct 28, 2016 8:11 pm

You need to separate out the changes and test them individually in a scientific way.

E.g. if you think the problem is power supply noise or instability, then power the GPS from the Maple but connect the Serial data lines to the AVR ( and also connect their GND together)

Also try holding the Maple mini in reset in another test in this config.

Then do it the other way, e.g perhaps power from the Teensy, but data to the Maple mini

Or power the GPS from a battery and only connect serial plus gnd to the Maple mini

Perhaps also consider RF noise, e.g. power and data to AVR but also run the Maple mini to generate noise

jucordero Sat Oct 29, 2016 4:36 am

Hi Steve and Roger, sorry for the poor description.

These devices use USART. I’m using Serial1.
The reported NMEA sentences show no information regarding time/date or any position. They do appear in the correct format, but the info between the delimiters is just a bunch of invalid data (9999 or similar, typical default numbers I guess) or no data at all. This changes as soon as I power it using the Teensy, keeping the data line on the maple and grounding them together as Roger suggested. That is why I first thought it was a power related issue.

I’ve estimated the current output with the module on and have not seen anything higher than 100mA.

RogerClark Sat Oct 29, 2016 4:46 am

The voltage regulators on some Maple mini and generic STM32 boards are very low quality

I’d recommend if you need 3.3V to power it (rather than 5V) then use a different source of 3.3V.

Next you’d need to see if the data that the Maple mini thinks is garbage is really garbage or its its interpretation of valid data.

There is nothing to stop you connecting a USB to Serial adaptor RX input to the RX input of the Maple mini and look at the data that appears on both, to determine if the data is corrupt or not

stevestrong Sat Oct 29, 2016 9:37 am

As Roger indicated, try separate 3.3V power supply for that module.
How do you inspect the serial data comming out of the module? On PC with the serial monitor? Can you show the hw connection on a picture?

ddrown Sat Oct 29, 2016 4:23 pm

jucordero wrote:Hi Steve and Roger, sorry for the poor description.

These devices use USART. I’m using Serial1.
The reported NMEA sentences show no information regarding time/date or any position. They do appear in the correct format, but the info between the delimiters is just a bunch of invalid data (9999 or similar, typical default numbers I guess) or no data at all. This changes as soon as I power it using the Teensy, keeping the data line on the maple and grounding them together as Roger suggested. That is why I first thought it was a power related issue.

I’ve estimated the current output with the module on and have not seen anything higher than 100mA.

jucordero Sun Oct 30, 2016 10:08 pm

Hi again!

Thank you all for your replies.

Steve: I’m inspecting data directly in the serial monitor, by printing all data received by the serial port.

Here is an example of the typical incoming data:

$GPRMC,215449.00,V,,,,,,,301016,,,N*77
$GPVTG,,,,,,,,,N*30
$GPGGA,215449.00,,,,,0,00,99.99,,,,,,*69
$GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99*30
$GPGSV,2,1,05,03,,,21,15,,,18,20,,,22,22,,,28*7A
$GPGSV,2,2,05,31,,,30*7D
$GPGLL,,,,,215449.00,V,N*45

ahull Sun Oct 30, 2016 10:44 pm

An oscilloscope on the power input to the GPS module might provide some clues, you may simply need a few more decoupling capacitors or shorter leads.

ddrown Mon Oct 31, 2016 9:42 pm

jucordero wrote:
Here is an example of the typical incoming data:

$GPRMC,215449.00,V,,,,,,,301016,,,N*77
$GPVTG,,,,,,,,,N*30
$GPGGA,215449.00,,,,,0,00,99.99,,,,,,*69
$GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99*30
$GPGSV,2,1,05,03,,,21,15,,,18,20,,,22,22,,,28*7A
$GPGSV,2,2,05,31,,,30*7D
$GPGLL,,,,,215449.00,V,N*45

stevestrong Wed Nov 02, 2016 3:36 pm

Yes, it is possible to change the online 3.3V regulator, just pick up one with the same pinout but at least 200mA.

mrburnette Thu Nov 03, 2016 2:15 am


1. GPS knows the current date and time (so it has a signal)
2. GPS is showing multiple satellites (so it has multiple signals)
3. GPS doesn’t know where it is (satellites have no relative position info, and the other position fields are empty)
4. GPS doesn’t have a lock (see #3)
5. GPS doesn’t have many satellites with strong (greater than 25dB) signals

3, 4, 5:

On Neo-6 units I have purchased from China, the worst-case time to work through the “where am I” logic has been a few minutes over 10 hours! This has been repeated 5 times with new units, so do not give up. It all depends on signal strength, sats in view, and many other little issues.

After the first full sync, power-on to lock is under 30 seconds consistently.
Ray

jucordero Fri Nov 04, 2016 2:20 am

The true mystery is the fact that the receiver does fix its position within a reasonable TTFF (30 seconds) placing it on the same breadboard with a different MCU. Again, it doesn’t seem to be a signal strength issue or sky view, unless the Signal to Noise has any dependence on the internals of the device.

zmemw16 Fri Nov 04, 2016 3:03 am

same cpu e.g. both blue pill or blue pill v maple mini
or maybe avr v stm32 e.g. 16MHz / 72MHz
capacitor quality & quantity?
srp

ahull Fri Nov 04, 2016 11:20 am

jucordero wrote:The true mystery is the fact that the receiver does fix its position within a reasonable TTFF (30 seconds) placing it on the same breadboard with a different MCU. Again, it doesn’t seem to be a signal strength issue or sky view, unless the Signal to Noise has any dependence on the internals of the device.

Pito Fri Nov 04, 2016 12:30 pm

Try to pass all three wires (gnd, vcc, data) via a ferrite bead/toroide (2-3 windings through the toroid for example).
GPS —> ferrite —-> Maple
filter.JPG
filter.JPG (10.51 KiB) Viewed 1367 times

mrburnette Fri Nov 04, 2016 12:52 pm

zmemw16 wrote:same cpu e.g. both blue pill or blue pill v maple mini
or maybe avr v stm32 e.g. 16MHz / 72MHz
capacitor quality & quantity?
srp

ilf Fri Jun 09, 2017 3:58 pm

Did someone manage to make it work. I have the same problem, I will try to scientifically test tomorrow, because all my receivers work either with the Arduino Pro Mini or directly connected with USB to serial with the u-center (even through wine on linux). I also used couple of decoupling capacitors on the GPS and still a no-go (Both with external LDO and with the build in, no difference).

Tried with NeoGPS/TinyGPS++ libs, so if someone has any ideas I’m all ears. Thanks

ilf Sat Jun 10, 2017 9:10 pm

Hi,

I want to report back and seek some advice. It seems that if I connect the GPS directly to a power source on the breadboard everything is fine. Nothing else on the breadboard is powered (I have an SPI device, the Blue Pill and I2C device /10DOF-IMU/). Once I connect the GND to the GND of the Blue Pill, the GPS stops working correctly. Again, nothing else is connected, nor is the Blue Pill powered, just attaching the GND to the GND of the breadboard (where the GPS is already connected).

I disconnected the GND from the Blue Pill and attached the RX/TX wires from the GPS to the Blue Pill. Again, nothing else is connected or powered (except the GPS), This also messes up the GPS but also causes the Power LED of the Blue Pill to start blinking in sync with the LED of the GPS. I’m a bit lost here. I don’t have an oscilloscope around, just a very cheap multi-meter. Any ideas guys? Seems like either something is shorted on the Blue Pill (it is the same with my whole batch, I have 5 of them) or it is some grounding/decoupling issue.

Any help will be greatly appreciated.

ahull Sat Jun 10, 2017 10:14 pm

It could simply be picking up so much noise (unfiltered mains hum, or other environmental RF for example) from the room, due to the long ground wires acting as an antenna, that it swamps out the signals. Are there RF screening cans surrounding the high frequency GPS components, if so are they grounded or are the components simply on a bare board?

Show us some pictures of your exact setup. The blinking in time to the LED suggests a poor connection somewhere, or your power supply is sagging under load.

You may need to fabricate some “tin hats” for some of the elements of the system to keep the mischievous RF pixies from getting into, or indeed out, of things they shouldn’t. You may be able to fabricate something using tin snips or stout scissors, and a few thin steel “tin cans”, or even just hide the sensitive bits under some earthed single sided PCB material. A more professional finish would require some tin or brass sheet. Easily obtainable from all the usual ebay suspects. Small brass sheet offcuts would to the trick and are pretty cheap. For example -> http://stores.ebay.co.uk/SGS-Metals/Cle … 34.c0.m322

RogerClark Sat Jun 10, 2017 10:32 pm

I dont think you should need to go to these lengths, but recently I have been using some 1W 5V DC to DC isolators, to prevent CPU noise getting into the audio input of HiFi amplifiers.

They are fairly inexpensive, I think about $2 each, and provide complete galvanic isolation, and are good at getting rid of high frequency noise. ( however they may not get rid of terrible hum)

Sign in to reply