Feature #1855
closedprovide actual BER or C/I values from osmo-bts-trx into the PCU
100%
Description
see fo rexample 4b76a323b3bb71f8d3f4dc7439ecd9bad0f13bcf which introduces various FIXMEs explaining what's missing.
Related issues
Updated by laforge over 5 years ago
- Related to Bug #3395: Uplink CS/MCS control is broken osmo-pcu is used with osmo-bts-trx/osmo-trx added
Updated by laforge over 5 years ago
- Related to Bug #1616: osmo-bts-trx / osmo-bts-octphy doesn't provide C/I information to PCU added
Updated by laforge almost 5 years ago
tnt, any news here?
I just re-investigated this topic with Lynxis. The C/I value can be computed from the training sequence of each burst, where we can compare the "ideal" training sequence with the actual training sequence and then express that in dB.
As osmo-trx is already doing the correlation againt the training sequence, it may make sense to do it there. In fact, detectBurst() appears to already return the complex normalized amplitude of the correlation of the training sequence, which is probably almost exactly the value we're interested in here? If this is true, we should probably extend the trx protocol to provide the data to osmo-bts-trx, rather than having osmo-bts-trx do another correlation against the training sequence...
Updated by tnt almost 5 years ago
I got the math worked out that computes a value that might be the C/I ... (at least it seems to have the right properties and it's also in the right range of value).
http://git.osmocom.org/osmo-trx/commit/?h=tnt/ci&id=d40f11962a4d0e2c0ea9e3bde4c568c6c4b62a12
How/Where to actually pass it all the way to the PCU is TBD.
Updated by ipse almost 5 years ago
tnt wrote:
I got the math worked out that computes a value that might be the C/I ... (at least it seems to have the right properties and it's also in the right range of value).
http://git.osmocom.org/osmo-trx/commit/?h=tnt/ci&id=d40f11962a4d0e2c0ea9e3bde4c568c6c4b62a12
How/Where to actually pass it all the way to the PCU is TBD.
Great to finally see some progress here :)
By "right properties" - have you tested increasing interference to check that it's correctly accounted?
Do you have test vectors which could be used as a test case when/if someone decides to write an optimized version of the code?
Updated by tnt almost 5 years ago
I checked that :
- It's independent of scaling (so if you multiply the input vector by any value, it doesn't change the result, except for 'float' precision of course).
- Adding noise tends to decrease the value. I say "tends" because it's all based on only 16 samples ... which doesn't provide much averaging at all, so I ran it through thousands of runs, adding noise to some off the air captures and just looked at the shape of the graph.
Updated by fixeria almost 5 years ago
- Blocked by Feature #4006: TRX protocol: wind of change added
Updated by fixeria over 4 years ago
- Tracker changed from Bug to Feature
- Status changed from New to In Progress
- Assignee changed from tnt to fixeria
- Priority changed from High to Urgent
- % Done changed from 0 to 80
Please see: https://gerrit.osmocom.org/#/c/osmo-bts/+/14613/
Updated by fixeria over 4 years ago
- Status changed from In Progress to Feedback
- % Done changed from 80 to 90
I finally wrote a TTCN-3 test case:
https://gerrit.osmocom.org/#/c/osmo-ttcn3-hacks/+/14660/
Waiting for all changes to be merged now...
Updated by fixeria over 4 years ago
- % Done changed from 90 to 100
All required changed have been merged. The TTCN-3 test case passes.
P.S. I cannot mark it as resolved for some reason.
Updated by fixeria over 4 years ago
- Blocked by deleted (Feature #4006: TRX protocol: wind of change)