Frequently Asked Questions
Frequently Asked Questions page. If you have a question that isn't answered here, please contact us.
- 1 What is Piksi?
- 2 How do I use Piksi?
- 2.1 Does this work indoors?
- 2.2 What is the accuracy of Piksi?
- 2.3 What is the maximum distance between the receivers?
- 2.4 How does the receiver perform under poor signal or multipath environments?
- 2.5 How long does initialization take?
- 2.6 What is the position solution update rate of the receiver?
- 2.7 Do you have a PPS output?
- 2.8 Can I use a different communication protocol?
- 2.9 What accuracy can I expect with only one receiver?
- 2.10 Which radio should I get?
- 3 How do I integrate Piksi into my application?
- 3.1 Can I use my existing telemetry link?
- 3.2 What is the limit on acceleration?
- 3.3 Can one base station service multiple rovers?
- 3.4 Can two receivers go on the same vehicle?
- 3.5 How do I get the data off Piksi?
- 3.6 What output formats are supported?
- 3.7 How can I make cables to connect to Piksi connectors?
- 3.8 Can you record data from two devices and post-process later into RTK solutions?
- 3.9 What happens if you lose the observation stream from the base station?
- 4 How do I modify Piksi?
- 5 How do I get Piksi?
What is Piksi?
How does RTK GPS work?
Real Time Kinematics is a technique used to enhance the precision of position data derived from satellite-based positioning systems. Traditional GPS measures the satellite code stream, which can only be measured to several meters. Additionally, traditional GPS loses precision as a result of ionospheric delay. The resulting position is only accurate to several meters. Real Time Kinematics provides centimeter-level position by using a different signal measurement and by correcting for ionospheric delay. Instead of measuring the code stream, an RTK receiver measures the carrier phase to under a centimeter. Next, RTK systems use two receivers, broadcasting corrections to each other to cancel out the ionospheric delay and output a relative position between the receivers. For a deeper understanding, read our write up on understanding Piksi RTK GPS technology.
What does RTK positioning give you?
RTK gives you centimeter accurate relative positions between the two receivers. To get a position that is centimeter accurate with respect to the earth, one unit must be used as a stationary base station. To get an absolute position (in a coordinate system such as ECEF), a CORS base station must be used or the base station must be placed at a known geodetic location. A list of these locations in the US can be found here. If both receivers are in motion, RTK will give you the relative position between the two but not fixed position relative to the environment. For a more detailed discussion of this topic, please see our write up on understanding Piksi location data outputs.
What constellations and bands does Piksi support?
The Piksi hardware is capable of receiving L1 GPS signals. Currently, the Piksi firmware supports L1 GPS CA Code reception.
How long can I expect a GPS satellite to remain visible?
A GPS satellite, orbiting at a nominal height of 26,440km above earth center, completes a full orbit in 11 hours and 58 minutes. For an observer on the earth's surface, nominally 6,300 km above earth center, a satellite transiting through zenith (directly above the observer) will take 5 hours and 3 minutes.
When did webstore orders begin shipping?
- Piksi OEM Module: April 15, 2014
- Piksi RTK Kit : April 15, 2014
To order a Piksi RTK Kit or Piksi OEM Module, please go to store.swiftnav.com.
How much does Piksi cost?
See pricing at store.swiftnav.com.
Is this ITAR compliant?
Short answer: Yes!
Long answer: Some GPS receivers are subject to International Traffic in Arms Regulations (ITAR) if they are to be exported from the United States. The types of GPS receivers that are covered under these regulations are defined in the US Munitions List, Category XV part (c): https://www.fas.org/spp/starwars/offdocs/itar/p121.htm#C-XV
None of these categories apply to us, Piksi wasn't designed for military use or to control massive UAVs that can deliver half-tonne payloads. It was designed for small civilian and hobbyist UAVs. The only category that could apply is (c) (2): "GPS receiving equipment with any of the following characteristics: (2) Designed for producing navigation results above 60,000 feet altitude and at 1,000 knots velocity or greater"
Piksi does not output navigation solutions if the velocity is greater than 1,000 kts and the altitude is greater than 60,000 ft. Notice this is an "and" condition, you have to be going too fast AND too high. Use on a high altitude balloon for example would be ok, as you are high but slow.
We do not support people modifying the software to remove these restrictions and will not be merging any such changes into our codebase.
We are interested in working with people inside the United States on cubesat and amateur rocketry projects and seeing what is possible legally but we will not be shipping anything modified for these uses outside the US.
Note, there are possible uses in rocketry without violating these limitations - the critical phases of flight, launch and apogee, are usually only violating one but not both conditions. It is also possible to capture data to be post-processed into navigation solutions after the fact.
How do I use Piksi?
Does this work indoors?
No, it is not possible to do RTK positioning indoors. Not only are GPS signals are extremely weak indoors, but you can no longer assume they have traveled in a straight line to the receiver. The signal will usually have reflected several times off of walls and surfaces before it makes it to an indoor receiver, destroying one of the primary assumptions the receiver makes in calculating the position/velocity/time (PVT) solution - that the signal has traveled in a straight line from the satellite to the receiver's antenna.
What is the accuracy of Piksi?
Piksi is accurate to 2cm horizontally on short baselines with good sky view. Vertical precision is typically 2-3 times worse than horizontal precision for GPS receivers, so we expect 6cm accuracy on short baselines. Due to the nature of RTK, accuracy degrades at a rate of 1mm horizontal and 3mm vertical for each km between the base and rover.
What is the maximum distance between the receivers?
The theoretical maximum distance is about 10km. Practically, the maximum distance is limited by the quality of the radio. The radios included in the kit have 200-meter range with line of sight, but other radios are available for ranges up to 10km. There is no minimum distance between the receivers.
How does the receiver perform under poor signal or multipath environments?
Like all GPS/GNSS receivers, the receiver must connect with at least four satellites. If these connections are lost, then the unit must reinitialize. Lost connection can occur due to dense vegetation coverage or buildings obstructing sky view (urban canyons).
How long does initialization take?
Time to first RTK fix is not deterministic, so it will take different amounts of time, depending on your environment. Generally, it takes between 5 and 10 minutes.
What is the position solution update rate of the receiver?
With current beta firmware, RTK position solutions are output by default at 10Hz and can be configured up to 12Hz. Future firmware releases will support higher update frequencies for high accuracy solutions.
Do you have a PPS output?
Piksi has a PPS output on pin Debug1 of the Debug connector as of firmware version v0.21 and NAP version v0.16. Prior to these firmware versions, Piksi hardware/firmware does not have a dedicated PPS output.
Can I use a different communication protocol?
The current Piksi hardware supports UART (3.3 volts) and USB 2.0 communication. If you need a different protocol to communicate to your host, we recommend using a protocol converter, such as https://www.sparkfun.com/products/9981.
What accuracy can I expect with only one receiver?
Using a single receiver will not allow you to perform RTK for centimeter accuracy. We have yet to perform rigorous testing on single unit position solutions, but the typical accuracy we observe is 3-5 meters.
Which radio should I get?
The radio version depends on the legally permissible frequencies in the country of intended use. We offer 915Mhz (US) and 433Mhz (Europe and other countries that don't allow 915Mhz) versions for license free operation. It is very important to select the correct version; compliance with local laws and regulations is your responsibility.
How do I integrate Piksi into my application?
Yes. Fundamentally you just need to get some serial data from the reference station Piksi to the one on the vehicle. You can pass the data over an existing link if you'd like.
What is the limit on acceleration?
Previous iterations of Piksi were used to guide UAVs through flights with accelerations of up to 10g with no loss of satellite lock. We expect the current Piksi platform to be able to perform at least as well.
Can one base station service multiple rovers?
Currently, one base can provide corrections to multiple receivers provided you communicate with the rovers and read position and velocity information from each rover. The radio modems provided with the RTK kit do not support point to multipoint broadcast in their current form, so another inter-device communication method should be used.
Can two receivers go on the same vehicle?
Yes (see "What does RTK positioning give you?"). However, in this case, the relative position in this case will give you information about the attitude of the vehicle, and not centimeter accurate relative positioning relative to an external coordinate frame (such as NED or ECEF).
How do I get the data off Piksi?
The Piksi OEM board has a micro USB connector for USB 2.0 communication, and two TTL serial ports.
What output formats are supported?
Piksi's native format with full support for RTK solutions is SwiftNav Binary Protocol - see more information at SBP.
Piksi also supports standard NMEA-0183 for single ended PVT solutions, and observations transmitted via SBP can be converted into RINEX.
NMEA doesn't define a standardized message string for RTK solutions. To make it possible to achieve RTK accuracy with legacy host hardware or software that can only read NMEA, recent firmware versions implement a "pseudo-absolute" mode.
How can I make cables to connect to Piksi connectors?
Piksi uses 1.25mm spaced Molex Picobladetm connectors. The mating portion of the 5 pin UART connectors are part number 51021-0500. The mating portion of the 12 pin Debug connectors are part number 51021-1200. See the hints from the paparazzi user community about manufacturing cables or purchasing pre-made cables.
Can you record data from two devices and post-process later into RTK solutions?
Yes. Observations can be converted into RINEX for post processing with RTKLIB or another RTK software.
What happens if you lose the observation stream from the base station?
If radio communication link with the base station is lost, a rover with a stationary base station will be able to propagate the corrections for a few seconds. After this point, the ionospheric delay will have changed and the unit must reinitialize the integer ambiguity, which takes 10-12 minutes.
How do I modify Piksi?
How can I contribute to the open source code base?
Fork us on Github!
If I build my own Piksi, can I have SwiftNAP unlock codes?
If you use our open source hardware design to build your own Piksi, you will still need to unlock the SwiftNAP code that runs on the FPGA. We offer two of these codes for free for evaluation. To acquire them, you simply need to send us a request for keys that includes basic information about your organization and your project. Then, send us your device DNA and we will send you two free unlock codes; these can be used to build and run two Piksi's. Additional licenses are available for purchase.
How do I get Piksi?
Where do I buy Piksi?
Piksi is available for purchase in small quantities on our webstore.
What are Piksi's import / export control designations?
The ECCN (Export Control Classification Number) is 7A994, and the Harmonized / Tariff / Schedule B code is 8526910070.