onocoy Documentation
  • 1. INTRODUCTION
    • What is Onocoy?
  • Why GNSS matters?
  • Mission and Vision
  • 2. How It Works (DePIN + GNSS)
    • DePIN for GNSS
  • Decentralizing correction data
  • Benefits for users and miners?
  • 3. Become a Miner
    • Hardware recommendations
    • Installation guide
    • Connect your station to onocoy
    • Data Validation
  • Receive rewards
  • Data quality standards
  • Reward calculation
    • Location Scale
  • Explorer
    • Sky Map
  • 4. Get GNSS Corrections
    • Getting datacredits
    • Setting of the credentials
    • Configure the GNSS receiver
    • Setting up a GNSS receiver (to delete)
  • Service levels
  • 5. Token and Incentives
    • ONO token utility and design
  • Tokenomics
  • Mining rewards breakdown
  • Token release strategy
  • 6. How to Contribute.
    • Deployment partners
    • Hardware partners
  • Rooftop partners
  • Distribution partners
  • 7. Governance and Community
    • DAO & voting
  • 8. FAQ / Troubleshooting
    • Top miner questions
      • Explaining datum shifts
  • Correction usage issues (WIP)
  • Support contact
  • Glossary
Powered by GitBook
On this page
  • General ideas
  • Distance Penalty ()
  • Share Factor ()
  • An example
  1. Reward calculation

Location Scale

General ideas

The location scale is one of the multipliers to calculate a station's reward. Its goal is to distribute rewards in areas with a high number of base stations.

It is a number between 1 and 0, obtained after multiplying all the reduction factors (RFRFRF) of its neighbor stations within a 50km radius.

The base stations are grouped by their IP of origin. That means if three stations belong to the same owner, they form one group. If another owner has just one station, it is another group. Your own stations are never grouped.

For the station location scale calculation we only take in to consideration the base station that has the highest impact out of each group. All the other stations from this group are ignored.

The neighboring stations i=1…ni=1\ldots ni=1…n which are not ignored are sorted by distance to your own station.

LocationScale=RF1⋅RF2⋅…⋅RFnLocationScale = {RF}_1 \cdot RF_2 \cdot \ldots \cdot RF_nLocationScale=RF1​⋅RF2​⋅…⋅RFn​

A location scale of 1 will mean you get full rewards regarding the location, a location scale of 0 means you will get no rewards regarding our location.

Each Reduction Factor RFRFRF is a function of the distance and the quality of the stream so that:

  • The further away a neighbor is, the lower the distance penalty (DPDPDP).

  • The higher your signal quality and availability compared to that of your neighbors, the higher your share of the rewards. A Share Factor (SFSFSF) is calculated for each of the neighbors. This means that a low quality stream does not heavily affect the rewards of high quality streams. It is still profitable to install a high quality base station in an area already covered by low quality base stations.

RFi=1−(DPi⋅SFi)RF_i=1-(DP_i\cdot SF_i)RFi​=1−(DPi​⋅SFi​)
  • The two stations with the biggest impact will not affect your location scale, which is to promote redundancy.

Distance Penalty (DPDPDP)

For each neighboring station, a Distance Penalty will be calculated. The distance penalty of each neighboring base station is defined using the following rules:

  1. The stations are grouped from neighbor networks and only consider the one with the highest impact for location scale calculation.

  2. The two closest base stations are ignored, because we want to incentivize network redundancy

  3. Stations within 15 kilometers from your own base station will have a distance penalty of 1

  4. The distance penalty for stations located between 15 and 50 kilometers declines quadratically from 1 to 0, where at 15 km it is 1 and at 50 km is 0

  5. Stations further away than 50 kilometers are ignored

The equation for the Distance Penalty between 15 and 50 km is

DP=(1−DistanceToStation−15km50km−15km)2DP = (1-\frac{DistanceToStation - 15 \text{km}}{50\text{km} - 15 \text{km}})^2DP=(1−50km−15kmDistanceToStation−15km​)2

This plot shows the Distance Penalty in a graph. The first two stations are ignored, hence the graph will only apply to those stations after the first 2. Between 15 and 50 km, the quadratic decline applies.

Share Factor (SFSFSF)

Similarly, for each neighboring station, a Share Factor is calculated. It is taking into account the signal quality and the availability (Qual factor) of each station:

SF=QualNeighborQualNeighbor+QualYour StationSF=\frac{Qual_{\text{Neighbor}}}{Qual_{\text{Neighbor}} + Qual_{\text{Your Station}}}SF=QualNeighbor​+QualYour Station​QualNeighbor​​

An example

Let’s look at a practical example of how the location scale is calculated for each station.

This is the widget displayed in your Reference Stations tab. On the right side of the map, we can see your exemplary base station, in green color, surrounded by 3 third party base stations scattered through the surrounding land, in purple color.

Next to your exemplary base station, we can click on each of the four neighboring stations to get the details.

Calculating Reduction Factors (RFRFRF)

If we sort the neighboring stations simply by the distance to your own station, we can create a plot showing the relation between the distance and the distance penalty DPDPDP:

The dashed gray line represents the quadratic function so that you can see the behavior of the penalty as a function of the distance.

In this example, the distance penalties have been scaled up from 0% to 100% but for the calculation purposes the punctuations range from 0 to 1.

Let's take station ESPBARSAB4 as an example and calculate DPDPDP, SFSFSF and RFRFRF.

ESPBARSAB4 has QualESPBARSAB4=0.934Qual_{\text ESPBARSAB4} = 0.934QualESPBARSAB4​=0.934 and a distance to your exemplary station of 25.522 km. In comparison, QualYourStation=0.99Qual_{\text Your Station} = 0.99QualYourStation​=0.99.

As picked from the graph,

DPESPBARSAB4=(1−DistanceToStation−15km50km−15km)2=0.489DP_{\text{ESPBARSAB4}} = (1-\frac{DistanceToStation - 15 \text{km}}{50\text{km} - 15 \text{km}})^2=0.489 DPESPBARSAB4​=(1−50km−15kmDistanceToStation−15km​)2=0.489

Next, we calculate SFSFSF and RFRFRF.

SFESPBARSAB4=0.9340.934+0.99=0.485SF_\text{ESPBARSAB4}=\frac{0.934}{0.934+0.99}=0.485SFESPBARSAB4​=0.934+0.990.934​=0.485
RFESPBARSAB4=1−(0.489⋅0.485)=0.763RF_\text{ESPBARSAB4}=1-(0.489\cdot 0.485)=0.763RFESPBARSAB4​=1−(0.489⋅0.485)=0.763

This process is repeated for all stations between 15 and 50 km radius:

Now we can calculate your station's final Location scale by multiplying all the Reduction Factors. As ESPBARSAB4 is the only station in 50 km range that is not ignored, the Location Scale is simply

LocationScale=0.763LocationScale=0.763LocationScale=0.763

This Location Scale factor will then be used for the multiplication with the other reward factors, resulting in your total Reward Scale.

PreviousReward calculationNextExplorer

Last updated 10 months ago

Graphical display of the Distance Penalty (DP). The farther the neighbor, the lower the distance penalty.
Find this map of neighbors in your Reference Stations tab.
The first two stations are ignored. The third neighbor's reduction factor, Qual factor and distance to the example station is shown