52 Commits
Author SHA1 Message Date
Cedric Roux c4acec706d T: make number of subframes per frame a configurable item
Think: NR with different number of slots per frame depending on mu.

The name 'subframes_per_frame' is a bit ambiguous. It is valid for LTE,
but for NR it should be 'slots_per_frame'.

For example, for sub-carrier spacing of 30KHz, we have 20 slots per
frame, so in this case subframes_per_frame = 20. In reality whatever
the numerology, there is always 10 subframes per frame in NR.

But how to name this variable which is used both for LTE and NR cases?
'subframes_or_slots_per_frame'? It's a bit long and also ambiguous.

Conclusion: no big deal I think. 'subframes_per_frame' and so be it.
2025-08-18 11:53:54 +02:00
Robert Schmidt ed89498c4f Use standard C initializer list syntax
Fix clang warning

  warning: use of GNU old-style field designator extension [-Wgnu-designator]
2024-04-18 14:16:09 +02:00
Robert Schmidt f099ff59eb Rename T files to avoid name clashes
There is already common/utils/config.h. This file(name) is hardcoded as
it is included into asn1c, and cannot be renamed. To avoid a name clash
and confusing, we rename T's config.h/c to configuration.h/c.
2023-08-01 13:49:25 +02:00
Cedric Roux eb3b87d956 T: bugfix and cleanup
- bug fixed in ue and enb tracer: the socket needs to be closed
  in case of restart
- cleanup: fix spacing in T_messages.txt
2018-08-08 11:58:26 +02:00
Cedric Roux 52cf61de97 T tracer: don't depend on T_BUFFER_MAX anymore in the tracers
Whenever the value T_BUFFER_MAX changes, the tracers had to
be recompiled. The only reason why it was needed is because we
used some fixed size buffers to read events. This commit removes
this restriction.

Also, with the basic simulator, this value T_BUFFER_MAX now comes
with an #ifdef which would have required some special hackish-level
tricks in the tracers, which is not good.

Let's just allocate memory when needed.
2018-05-02 12:11:34 +02:00
Cedric Roux 2516216d14 T tracer: improve a bit enb tracer
- UE_id 0 is for rnti 65535 (sib)
- UE_id 1 is for rnti 65534 (this is a hack)
- UE_id 2 is for rnti 2     (RA RNTI as of today's code/config)
- we start enb by displaying UE_id 3
- there was a bug: we need to lock when resetting UE ids (reset_ue_ids)
2017-10-18 12:06:16 +02:00
Cedric Roux 783667552e T: add -rb option to enb tracer 2017-10-17 13:16:44 +02:00
Cedric Roux 748a0790c9 T: hack for enb tracer 2017-10-12 11:00:33 +02:00
Cedric Roux e6936f1b7c update T tracer
not finished, UE may not work, many things bad/to fix properly
2017-09-27 17:59:08 +02:00
Cedric Roux bfecb5e54a T: add PHY throughput view to enb tracer 2017-01-09 17:08:30 +01:00
Cedric Roux f89c70dfc3 T: change range of DL/UL MCS plots
[-1 29] was not very pleasant for MCS 28 or no DCI (value is -1 in this case).
[-2 30] looks better.
2016-11-30 18:03:49 +01:00
Cedric Roux 1e485b4b5e T: add DL and UL MCS plots in enb.c
Helps visualize MCS usage over time.
2016-11-30 16:39:49 +01:00
Cedric Roux 860394244b T: bugfix: lock required
When the user clicks on "next UE" or "prev UE" we change the
filters of loggers.

At the same time, the main thread of enb.c processes events
received from the soft-modem and uses the filters, some of them
maybe in the process of being changed.

Changing the filters is not atomic and has to be protected.
2016-11-28 18:28:10 +01:00
Cedric Roux ee934102b6 T: switch UE in enb tracer
Just below the logo you see the current UE, eg. [UE 0],
and near that you have two "buttons" [prev UE] and [next UE].

You click with left button of mouse on those and the various
plots that depend on the UE are now done for the new UE (say UE 1
instead of UE 0 if you click on [next UE]).

The plots are not cleared when you switch.
Let's say it's a feature.
2016-11-25 17:19:33 +01:00
Cedric Roux 2716aaa711 T: activate all info/warning/error legacy traces by default in enb.c 2016-11-23 15:00:36 +01:00
Cedric Roux 19d4502c3d add PUCCH plots to enb.c 2016-07-08 13:14:03 +02:00
Cedric Roux 3310c2a93f cosmetic changes 2016-07-08 12:56:25 +02:00
Cedric Roux be03e9f80f bugfix in enb.c
we have to free memory in any case...
2016-06-24 18:11:09 +02:00
Cedric Roux 832ecfb470 update enb.c to include MAC PDU/SDU with full buffer logs 2016-06-23 12:41:19 +02:00
Cedric Roux 3c5e27618d add PUSCH IQ and UL channel estimates for UE 0 to enb.c 2016-06-22 11:10:53 +02:00
Cedric Roux 8c328e00b0 increase size of enb.c man window 2016-06-22 10:53:59 +02:00
Cedric Roux 0f0fa90d16 xy view to exist in two flavours
XY_LOOP_MODE: replace old points with new ones, using the maximum size
              of the view
XY_FORCE_MODE: append_forced sets those and only those points
               and we crash if we pass too much points
2016-06-20 15:40:53 +02:00
Cedric Roux 9d49702639 cleanup: put DEFAULT_REMOTE_IP and DEFAULT_REMOTE_PORT in utils.h 2016-06-17 11:14:14 +02:00
Cedric Roux 1f389ec019 cleanup: rename PHY traces (and update code to reflect the changes) 2016-06-16 12:16:20 +02:00
Cedric Roux 468020879e enb.c logs MAC/RLC/PDCP
very basic, to be refined, find a nice way to display (plot? text?)
protocol data movement
2016-06-10 10:48:39 +02:00
Cedric Roux dd55be2c67 cleanup 2016-06-09 17:35:41 +02:00
Cedric Roux b0e50688ee cleanup: introduce ticktime_filter() 2016-06-09 16:20:32 +02:00
Cedric Roux f9843f46bc add UL/DL harq ticktime view to enb.c 2016-06-09 10:51:24 +02:00
Cedric Roux bdd8ee3eed restructure a bit the views in enb.c
more readable, still not satisfying though
2016-06-09 10:41:38 +02:00
Cedric Roux c96039108c update enb.c to trace uplink dci/retrans/ack/nack
and also start to use the PHY textview
2016-06-06 11:41:39 +02:00
Cedric Roux 0b7d242083 enb.c stays alive if tracee dies
enb.c will then try to reconnect.
2016-06-05 17:57:57 +02:00
Cedric Roux 88c44ef9fe rename store_config_file load_config_file 2016-06-05 17:54:38 +02:00
Cedric Roux 1a9d614f0e take care of SIGPIPE received when writing a dead socket
write() on a socket with the other end closed throws a SIGPIPE.
Let's ignore this signal. write() will return an error anyway...
2016-06-05 17:42:44 +02:00
Cedric Roux 83350a807f reading a socket does not abort anymore
fullread has been changed, so get_event too, and the callers also
for the moment the callers crash, enb.c will be a bit more clever,
the others to see...
2016-06-05 17:39:06 +02:00
Cedric Roux 9338f06e90 socket_send does not crash anymore but returns an error
The application (enb.c basically) will now monitor the socket
and reconnect if it dies. See following commits.
2016-06-05 13:10:52 +02:00
Cedric Roux 51292c2472 event_selector does not deal with socket anymore
It was wrong.
Plus it is starting work so as to make enb.c not crashing if
the tracee goes away (maybe also textlog and vcd, but those are of
less importance).
2016-06-04 23:48:03 +02:00
Cedric Roux b3889a44be integration of local tracer into tracee - step 2
The local tracer now waits for the remote tracer to connect,
that's no more the other way around.

All the remote tracers (textlog, enb, vcd) have also been converted.
2016-05-31 18:01:49 +02:00
Cedric Roux 655e48c5dc enable legacy RRC info/error/warning by default in enb.c
can be deactivated on the command line or in the gui
2016-05-27 18:40:09 +02:00
Cedric Roux d9202e43f7 add RRC traces to the RRC view in enb.c 2016-05-27 18:39:40 +02:00
Cedric Roux fc1c621a18 better colors in enb.c 2016-05-27 17:27:43 +02:00
Cedric Roux 32302fc233 add legacy logs to enb.c 2016-05-25 17:59:13 +02:00
Cedric Roux 0feda7fdfe add some RRC logs
- adding T macros here and there
- modify the T_messages.txt
- modify enb.c to trace them in the RRC view
2016-05-25 17:38:44 +02:00
Cedric Roux 2138a47e41 more work on enb.c
plus add rrc connection setup complete tracing
2016-05-25 16:51:33 +02:00
Cedric Roux 2e64d54e9e the tracee (lte-softmodem) now sends the content of T_messages.txt
as special events.

If we store all received events to a file, this dump is now
self-contained. Helps to analyze traces.

Some functions have also been factorized in the process, too much
duplication.

(Also tracer/Makefile was forgotten in previous commit, included
in this one...)
2016-05-25 14:15:47 +02:00
Cedric Roux 120951d732 minor color change in enb.c 2016-05-24 17:02:38 +02:00
Cedric Roux 9cedfbcf1b add openair logo to enb.c 2016-05-24 15:43:55 +02:00
Cedric Roux 262ab7090c bugfix/improve/simplify view/time.c 2016-05-19 14:55:48 +02:00
Cedric Roux 0e03381016 log ack/nack at phy level (process_harq_feedback) 2016-05-17 18:48:11 +02:00
Cedric Roux b0ee0f4c82 add UE downlink DCI logging 2016-05-17 18:10:36 +02:00
Cedric Roux 5822e94e5f starting work on DL/UL DCI graphical logging 2016-05-17 17:33:45 +02:00