📜 ⬆️ ⬇️

Positioning module based on u-blox NEO-7M


I decided to promote my project a little, and at the same time tell about the beautiful GPS module from the Swiss company u-blox .

So, the answer to the question that arose after reading the title of people who are not familiar with u-blox:
Why u-blox?

Answer:

In addition, there is support, with which I even successfully managed to communicate.

A bit about the module:


Dimensions: 12.2x16.0x2.4mm.
Of course, the module is too big for a mobile phone, but small enough for a car solution, or, for example, a quadcopter, and also comfortable for manual installation on the board.
GPS receiver specification: 56-channel core of the 7th generation from u-blox.
Positioning systems supported: GPS L1 C / A, GLONASS L1 FDMA, QZSS L1 C / A, SBAS: WAAS, EGNOS, MSAS, Galileo E1B / C.

Galileo has not yet been launched, but in view of the fact that there is a possibility of updating the firmware, after a full launch of the system, I hope it will be possible to use it.
')
Data refresh rate: up to 10 Hz.
The frequency can be changed programmatically during the work with the module. The default is 1Hz.
Accuracy:

Active and passive antenna support
Nothing out of the ordinary, just a fact. True, 7M does not have the ability to programmatically turn off the power of the active antenna, so if you want to save energy, you need to do one of the hardware shutdown schemes from the outside suggested in the documentation.

Interfaces: UART, SPI, I2C, USB
UART and I2C work simultaneously, but SPI needs to be mucked using the D_SEL pin. Accordingly, you can make a controlled switch, for example, by connecting the GPIO to the D_SEL pin. I admit honestly I didn’t check SPI, since for my purposes the UART is much more convenient. Yes, and in switching the exchange protocol "on the fly" I do not see much sense.
Price: ~ $ 15 from the Chinese.

Here is the module itself:



Summary of the previous 270 episodes, or how it all began


At the beginning of the year, I purchased a car, and in a car without a multimedia system in modern times there is no way. By itself, you can say "Buy for $ 300 from the Chinese and do not bother!" But I am an engineer and it is interesting to me to do something myself, to understand the technologies. I already have experience in developing car multimedia systems, although not with 0, the more interesting it was to try. However, this is another story, I will tell about it next time. Now the main thing is that the system cannot do without one navigation. Hence the conclusion - you need to have a GPS module, map, routing, blackjack and poetess .

PCB or as it was the first time


As it turned out on closer examination, PCB design is not so complicated as it seems at first glance. All that one has to use is accompanied by a copious amount of documentation with typical schemes and explanations. In fairness, I did not look at the documentation of other vendors, because after studying the proposed u-blox, I was more than satisfied.

As a result of my research, it turned out, in my inexperienced look, quite a normal PCB design. Schemes can be downloaded from here . There are also ready to print .pdf files for further use in LUT'e.

I am ready to listen to criticism, because I have never seriously dealt with radio engineering - hence, mistakes, even gross ones, are possible. All the schemes I did in Eagle Cad Soft. The tool turned out to be very convenient for me, "+" to all a huge number of ready-made libraries with a wide choice of various elements that the community makes.

Below are screenshots of schematics and PCB:



The element base that I used is quite accessible in Russia. With the exception of the RF inductance of 27nH, which is recommended by the manufacturer (however, hand made work is not bad).



The PCB may not satisfy some of the requirements for such schemes, and I will not mind receiving feedback on this occasion again.

I didn’t have any desire to shoot the process of PCB manufacturing and soldering, so I can offer only the final version, if someone is interested by the abbreviation LUT, there is a huge amount of wonderful videos on youtube.

After etching and soldering it turned out such a shawl:



Upper side of PCB:



PS Yes, I shot on the calculator. Yes, the collective farm. Yes, a lot of solder.

On the bottom side of the board there are 5 conclusions:

There is also a SMA - female connector for connecting an active / passive antenna.

On the upper side there is a single pin 3.3V. It was not planned and was not divorced on the PCB initially, hence a capacitor hanging in the air.
I will also note that this is the second revision of the board, and somewhere in the bowels of the getaway, the first one is hidden, without the power of the LNA. Well, as the attentive reader could notice, the current board doesn’t correspond a bit to the schematics and PCB.

A few words about the antenna. I use an active antenna ordered from all the same Chinese for ~ $ 8. There was an attempt to make its own, but theoretical base, on a par with the elemental one, so far not enough to make an active antenna of acceptable quality.

Why did I write all this


Now I will behave a little impetuously and move on to the self-breathing part. In addition to the miraculous board, which I must say was not the most time-consuming part of the process, I wrote a ton or two of code (or to be precise, comments to it).

U-blox has its own binary protocol, which along with NMEA can give location data, and much more. In general, without hesitation, I made a C-library for the UBX protocol * .

Writing doxygen comments took a lot of time, but even so I mastered it .

Perhaps in the following posts I will tell you more about the capabilities of this protocol. In particular, using AGPS when working with the module.

Conclusion


In conclusion I want to add: everything about what is written above successfully works in conjunction with the PC and Cubieboard. Naturally, not everything has been tested, but unfortunately I don’t have enough hands.
The main disadvantage of this module is that GPS and GLONASS cannot work simultaneously. It is necessary to switch between them. Most likely the same thing is waiting for Galileo.

Sources:
General information about u-blox modules of the 7th generation ;
The specification of the 14th revision of the UBX protocol. * .

* At the time of this writing, the latest is the 15th revision. The author is going to implement new features of the protocol.

UPD: DIY added

Source: https://habr.com/ru/post/233925/


All Articles