|
|
Line 87: |
Line 87: |
| | | |
| ==Development== | | ==Development== |
− | * Make sure the +3.3 v power supply current can reach 200ma, not recommended use FT232R debugging directly, because FT232R's output +3.3 v current is too small. | + | * Please first make sure the +3.3 v power supply current can reach 200ma. (Using FT232R to debug directly is not recommended for the electric current is too small.) |
| | | |
− | * We suggest to use Microduino Core 32u4 to debug this BT module: | + | * We suggest using Microduino Core32u4 to debug the Neo-6m module: |
− | ** 32u4 module can use the USB to simulate the serial 0, and BT uses the 32u4's serial 1 (RX0,TX1), so you don't need change the existing jumper (RX0,TX1) and it won't impact the program downloading and serial's function. | + | ** 32u4 module can make use of the USB port to simulate 0(Serial) and Neo-6m uses the Core32u4's serial 1 (RX0,TX1). So you don't need to change the existing jumper (RX0,TX1) and it won't impact the program downloading and the serial's function. |
− | * Microduino Shield BT4.0 uses the default serial RX0,TX1 to communicate with Core module, so can connect with Microduino FT232 directly. | + | * Microduino Neo-6m uses the default serial RX0,TX1 to communicate with Core module, so it can not connect with Microduino FT232 directly. |
| | | |
| ===Use PC to debug=== | | ===Use PC to debug=== |
| * Use serial directly: | | * Use serial directly: |
− | ** No need superimpose the FT232 directly, cross connect the FT232 and NEO-6M's RX0,TX1. | + | ** No need to stack the FT232 directly and just cross connect the FT232 and NEO-6M's RX0,TX1. |
| | | |
− | ===Use FT232R、Core download and debug=== | + | ===Use FT232R and Core to download and debug=== |
− | *Use default jumper (RX0、TX1): | + | *If you keep using the default jumper (RX0、TX1): |
− | **Unplug the Microduino NEO-6M during download program; | + | **Please unplug the Microduino NEO-6M during download program; |
− | *If you want to change the jumper cables to meet your requirement:cut the connection between two intermediate of the pad and RX0/TX1, and then connect them to D2, D3. | + | *If you want to change the jumper cables to meet your requirement:Just cut the connection between the middle of two groups of pads and RX0/TX1, and then connect them to D2, D3. |
− | **If changed the jumper, need the change the serial connection between Microduino NEO-6M and Core module, change the connection "TX-RX0、RX-TX1" to following: | + | **If you change the jumper, you need to change the serial connection between Microduino NEO-6M and Microduino Core from "TX-RX0、RX-TX1" to: |
− | ***TX-D2、RX-D3 (For Core+'s Serial1) | + | ***TX-D2、RX-D3 (For Core+'s Serial port) |
| | | |
− | ===Arduino library and supported package=== | + | ===Arduino library and support package=== |
| *Microduino_GPS:https://github.com/Microduino/Microduino_Tutorials/tree/master/Microduino_Libraries/_05_Microduino_GPS | | *Microduino_GPS:https://github.com/Microduino/Microduino_Tutorials/tree/master/Microduino_Libraries/_05_Microduino_GPS |
| *Microduino_OLED_U8glib:https://github.com/Microduino/Microduino_Tutorials/tree/master/Microduino_Libraries/_01_Microduino_OLED_U8glib | | *Microduino_OLED_U8glib:https://github.com/Microduino/Microduino_Tutorials/tree/master/Microduino_Libraries/_01_Microduino_OLED_U8glib |
Line 112: |
Line 112: |
| ===How to use the library=== | | ===How to use the library=== |
| *For Adafruit_GPS library: | | *For Adafruit_GPS library: |
− | **Make sure the GPS baud rate is 38400 in function "void setup()",that is:GPS.begin(38400); | + | **Make sure the baud rate of the GPS is 38400 in function "void setup()",that is:GPS.begin(38400); |
| **If you don't change the jumper cable: | | **If you don't change the jumper cable: |
| ***Unplug the Microduino NEO-6M module when downloading program; | | ***Unplug the Microduino NEO-6M module when downloading program; |
− | ***Use the Core or Core+ to debug, make sure include "Adafruit_GPS GPS(&Serial)" in program; | + | ***When you use the Core or Core+ to debug, please make sure that the program is defined as "Adafruit_GPS GPS(&Serial)"; |
| **If you have changed the jumper cable: | | **If you have changed the jumper cable: |
− | ***When use Core+ to debug,make sure include "Adafruit_GPS GPS(&Serial1)" in program; | + | ***When you use Core+ to debug,please make sure that the program is defined as "Adafruit_GPS GPS(&Serial1)"; |
− | ***When use Core to debug, make sure include "SoftwareSerial mySerial(3, 2)" and "Adafruit_GPS GPS(&mySerial)" in program; | + | ***When you use Core to debug, please make sure that the program is defined as "SoftwareSerial mySerial(3, 2)" and "Adafruit_GPS GPS(&mySerial)"; |
| | | |
− | ===PPS State indicator=== | + | ===PPS Status indicator=== |
− | *This indicator connects to TIMEPULSE port on UBLOX NEO-6M module, the output characteristic can be set by program; | + | *The indicator is connected to the TIMEPULSE port of the UBLOX NEO-6M module and the output characteristics of the port can be set by the program; |
− | *PPS indicator has two state as default value without program setting: | + | *The PPS indicator has two status under the default condition(without program setup): |
− | **Keeping on,indicates that module has started, but but have not yet achieved positioning; | + | **Always keeping on means that the indicator has started work but failed to achieve positioning; |
− | **Flicker,(100ms off,900ms on),indicates that module has achieved position successfully. | + | **Keeping flashing means the module has achieved positioning. |
− | *Easy to identify the state of module by PPS indicator. | + | *By the PPS indicator, we can easily judge the current status of the module. |
| | | |
| ==Application== | | ==Application== |
Microduino-GPS module maybe the most beautiful GPS module that you've seen. Its core module use UBLOX NEO-6M, high sensitivity, update rate up to 5Hz, using mini ceramic antenna with IPEX interface, and build-in a rechargeable battery backup.
Feature
- High sensitivity;
- Update rate up to 5Hz;
- With a powerful PC support:u-center;
- PPS indicator,easily determine the current status of the module;
- Built-in rechargeable backup battery (Support warm or hot start);
- Small, cheap, stackable and open;
- Open source hardware circuit design, compatible with the Arduino IDE development environment for programming; ;
- Uniformed Microduino interface standard and rich peripheral modules, capable of having a fast and flexible connection and extension with other modules and sensors in accord with Microduino interface standard;
- Easy to be integrated to pegboards with a 2.45-pitch female header connector interface.
|
Specifications
- Communication protocol:
- Microduino NEO-6M module adopts NMEA-0183 protocol to output GPS data and configures the module through UBX protocol.
- Receiving characteristics
- Channel 50,GPS L1(1575.42Mhz) C/A 码,SBAS:WAAS/EGNOS/MSAS
- Capture tracking sensitivity:-161dBm
- Capture time
- cold start:27S(Shortest time)
- warm start:27S
- hot start:1S
- Note:
- Cold Start: Restart the system when the stored history GPS receiving information of the module gets lost, equivalent to that both the main power and the backup battery are out of charge.
- Warm Start: Restart the system when the module saves the history GPS receiving information but the current visual satellite information is not the same with the stored information.
- Hot Start: Restart the system when the module has saved the history GPS receiving information which keeps consistent with the current visual satellite information.
- Interface characteristics
- TTL,3.3V/5V microcontroller system compatible
- Serial communication baud rate:
- Microduino NEO-6M module supports several kinds of baud rate:4800,9600,38400(defult),57600;
- Set baud rate from two resistors of the module (R3 and R4. 1k recommended):
R3 |
R4 |
Protocol |
Baud rate
|
No welding |
No welding |
NMEA |
9600
|
No welding |
welding |
NMEA |
38400
|
welding |
No welding |
NMEA |
4800
|
welding |
welding |
UBX |
57600
|
Pin Description
GPS Module Pin |
Microduino Pin |
Function
|
TX |
RX0(or D2) |
Module serial send pin (TTL level), connect to microcontroller's RXD
|
RX |
TX1(or D3) |
Module serial receive pin (TTL level), connect to microcontroller's MCU TXD
|
Document
Eagle PCB File:Microduino-NEO6M.zip
Main components
Development
- Please first make sure the +3.3 v power supply current can reach 200ma. (Using FT232R to debug directly is not recommended for the electric current is too small.)
- We suggest using Microduino Core32u4 to debug the Neo-6m module:
- 32u4 module can make use of the USB port to simulate 0(Serial) and Neo-6m uses the Core32u4's serial 1 (RX0,TX1). So you don't need to change the existing jumper (RX0,TX1) and it won't impact the program downloading and the serial's function.
- Microduino Neo-6m uses the default serial RX0,TX1 to communicate with Core module, so it can not connect with Microduino FT232 directly.
Use PC to debug
- Use serial directly:
- No need to stack the FT232 directly and just cross connect the FT232 and NEO-6M's RX0,TX1.
Use FT232R and Core to download and debug
- If you keep using the default jumper (RX0、TX1):
- Please unplug the Microduino NEO-6M during download program;
- If you want to change the jumper cables to meet your requirement:Just cut the connection between the middle of two groups of pads and RX0/TX1, and then connect them to D2, D3.
- If you change the jumper, you need to change the serial connection between Microduino NEO-6M and Microduino Core from "TX-RX0、RX-TX1" to:
- TX-D2、RX-D3 (For Core+'s Serial port)
Arduino library and support package
How to use the library
- For Adafruit_GPS library:
- Make sure the baud rate of the GPS is 38400 in function "void setup()",that is:GPS.begin(38400);
- If you don't change the jumper cable:
- Unplug the Microduino NEO-6M module when downloading program;
- When you use the Core or Core+ to debug, please make sure that the program is defined as "Adafruit_GPS GPS(&Serial)";
- If you have changed the jumper cable:
- When you use Core+ to debug,please make sure that the program is defined as "Adafruit_GPS GPS(&Serial1)";
- When you use Core to debug, please make sure that the program is defined as "SoftwareSerial mySerial(3, 2)" and "Adafruit_GPS GPS(&mySerial)";
PPS Status indicator
- The indicator is connected to the TIMEPULSE port of the UBLOX NEO-6M module and the output characteristics of the port can be set by the program;
- The PPS indicator has two status under the default condition(without program setup):
- Always keeping on means that the indicator has started work but failed to achieve positioning;
- Keeping flashing means the module has achieved positioning.
- By the PPS indicator, we can easily judge the current status of the module.
Application
Download program
Tesp Program:File:Program Test NEO-6M.zip
Test Microduino NEO-6M using FT232 and core module
- Prepared hardware:Microduino FT232R、Microduino Core、Microduino OLED、Microduino NEO-6M;
- Prepared software:Arduino IDE(1.0 release upper)、Adafruit_GPS library、Microduino provides test program(Arduino part);
- Test environment:Open area,don't test in root;
- Put the downloaded library to the libraries folder of Arduino IDE installation fold;
- Start Arduino IED,open the test program,card type chooses "Microduino Core (Atmega328P@16M,5V)",download directly;
- Use the default jumper pin (RX0,TX1):
- Unplug the Microduino NEO-6M module when downloading program;Microduino NEO-6M module has the same RX0/TX1 pin position with Microduino FT232R, if superimpose these two module directly, the download process will be impact.
- After finished download, then superimpose the NE0 modult the core module and FT232 module again.
- Observed the OLED after the download completed:
- After half of minute,display data and time;
- Go on waiting,when you see PPS indicators of Microduino NEO-6M flashing, then the speed, latitude and longitude indicators can be displayed,if not, please restart Microduino Core.
- Player changes the back jumper cable:Cut off the connection between the middle of bonding pad and RX0/TX1, then welding the middle of bonding pad to D2 and D3. The purpose of change jumper is download program easily. Once changed the jumper, you superimpose three board together to download program.
- If you use the change jumper connection method, it will change the serial connection from TX-RX0,RX-TX1 to TX-D2,RX-D3 between Microduino NEO-6M and Core module.
Test Mocroduino NEO-6M using PC
Connection method
There are two connection methods:
1. Use the default pin (RX0、TX1):
- You need the Microduino FT232R module to connect the PC, but can't superimpose the FT232R, NEO-6M and Core module directly. Because the FT232 and NEO-6M has the same RX/TX defination and position on board, but the normal serial communication should be cross connect RX/TX.
- Superimpose the FT232 and microduino core, then conects to PC with microUSB to download program;
- Using the jumper cable cross connect the RX0/TX1 for FT232 and NEO-6M, that is the RX0 of NEO-6M connects to the TX1 of FT232, and the TX1 of NEO-6M connects to RX0 of FT232.
- Connect the 3V3 pin of NEO-6M module to 3V3 pin of FT232, and connects the GND together.
2. Use the changed jumper mode
If you have changed the jumper as upper described, you can supperipose FT232, NEO-6M and Core module together, then connect to PC to debug directly.
Use u-center configuration module to update rage
- Firstly, place the Microduino NEO-6M into an open area, and then connects to PC by Microduino FT232R;
- Start "u-center" software:
- Set the baud rate:Menu:“Receiver”-“Baudrate”-“38400”;
- Open the serial to start the communication:Menu:“Receiver”-“Port”- choose the port that Microduino FT232R using.
- Now,you can see the data on the "u-center";
- Update rate
- Open menu:“View”-“Messages View”,display the "Messages" window;
- Open“UBX”-“CFG(Config)”-“RATE(Rates)”,suppose you need 2HZ update rate, only need set the "Measurement Period" to 500ms;
- After configured,click the "Send" button on the left bottom to send the configuration to Microduino NEO-6M module. If you see the data update quickly on other information window, that means the set successfully.
Bug
History
Picture
Video
|