Age | Commit message (Collapse) | Author | Files | Lines |
|
According to osmo-trx README:
SETSLOT sets the format of the uplink timeslots in the ARFCN.
The <timeslot> indicates the timeslot of interest.
The <chantype> indicates the type of channel that occupies the timeslot.
A chantype of zero indicates the timeslot is off.
CMD SETSLOT <timeslot> <chantype>
RSP SETSLOT <status> <timeslot> <chantype>
Change-Id: I63c81155c84fc35cff1704734fd8d2732235c5a4
Related: OS#2944
|
|
Use correct variable to check if supplementary service code is known
or not.
|
|
As dsp_extcode breaks power measurement and eventually other things,
dsp_excode is only loaded with trx app, not with layer1 nor rssi.
|
|
Thanks to Andreas for pointing this out
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Signed-off-by: Steve Markgraf <steve@steve-m.de>
|
|
This allows to directly load highram-images on
compal phones with the commandline-switch
-c.
Signed-off-by: Steve Markgraf <steve@steve-m.de>
|
|
This way it is possible to restart a phone without restarting transceiver
application. The operation of TRX is continued.
|
|
It is still not required to transmit dummy bursts, synchronization bursts
and frequency correction bursts. If they are not provided by the
transceiver, they are filled automatically, depending on current slot
configuration.
|
|
|
|
|
|
|
|
|
|
There is no more one-to-one relation between application state, trx
instance and l1ctl link to the phone. An application can have many trx
instances and many l1ctl links to phones. Additionally each trx can have
up to 8 relations to one or different l1ctl links, one for each time slot.
This allows to split one TRX into several phones. (use only one ARFCN)
Also it allows to use multiple phones for multiple TRX. (use multiple
ARFCN)
|
|
Each mask is used to define first time slot number and number of timeslots
per frame. The transceiver needs to choose different masks, depending on
single phone or multi phone operation.
Note: Currently the code only works with very limited number of mask
values.
|
|
|
|
By checking peak level of RACH's training sequence, only peaks that are
good enough are forwarded to the TRX interface. If any received noise
would be forwarded, there would be too many false detection, due to weak
CRC protection of RACH.
|
|
Instead of forwarding access bursts that are above some average noise
floor, the strongest of burst of a multiframe is always forwarded, no
matter how weak it is.
Since bandwidth of serial interface is limited, it is not possible to
forward all received access bursts. If there are suddenly many access
bursts or if a temporary noise causes detection of several bursts, only
the strongest of them is forwarded. This prevents overflow of serial
interface.
Detection of bursts is possible, no matter how weak they are. Tests have
shown that detection works up to 100%, even at border of BTS coverage.
|
|
The TOA of the received access burst is added to the TOA of the
demodulator. This sum is the actual access delay.
|
|
For access burst, the TOA offset is used as offset when reading the 88 IQ
values from DSP buffer.
|
|
|
|
|
|
|
|
|
|
Scheduling of NB/AB/SB/FB depends on given slot type by transceiver
application.
|
|
By using single frame only, loss of packets is reduced. For normal data
frames (and for TCH/H speech), one out of four parts of data gets lost.
For TCH/F speech, only one out of eight parts of data gets lost. The error
correction can compensate the missing parts.
The sync code can use the extended DSP task, but it is currently disabled,
because the current DSP code does not allow scheduling TSC for each
individual task, but we need to use TSC of sync cell here.
|
|
|
|
To alter default gain of 0, the gain can be altered by using SETRXGAIN
control command.
Please use a gain of 0, for normal use.
|
|
The gain of RX does not follow the sync-cell anymore. It still uses the
appropiate gain for sync-cell, but for RX of BTS bursts it uses a gain
that is suitable for a receive level of -47 dBm (by default). This is a
gain level of 0.
The low gain of 0 is the best start value, if phones are close to
the BTS, but also for low RX levels below -100 dBm, as several tests
showed.
|
|
|
|
|
|
Build is optional because it depends on some extra libraries
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
|
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
|
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
|
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
|
This is a generic interface to submit and retrieve bursts to be
transmitted. By default it has a dummy implementation that does
nothing and it's up to the 'application' to provide a correct
implementation.
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
|
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
|
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
|
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
|
We use the extended mode to have a better control
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
|
This also now allows to pass specific configure arguments to each
host application
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
|
Add a .dm_flags member to struct l1ctl_dm_est_req. Define a flag bit
to indicate CBCH mode. If set, this instructs L1 to use the CBCH
variant of SDCCH for dedicated mode (no uplink, no SACCH).
Add the new dm_flags field to l1ctl_tx_dm_est_req* API calls. Clear it
everywhere, except for app_cbch_sniff which requests CBCH.
Signed-off-by: Alex Badea <vamposdecampos@gmail.com>
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
|
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
|
|
|
|