Bryan Biedenkapp
91d4d68917
reformat log message;
1 year ago
Bryan Biedenkapp
df2b91ec60
recommit previous log message change (working this time);
1 year ago
Bryan Biedenkapp
e1ecdffe21
revert previous change;
1 year ago
Bryan Biedenkapp
25c3babb4b
when a NAK is directly written to a end-point address log the address;
1 year ago
Bryan Biedenkapp
bc05a4d06e
add mutex locking for the peer status, to prevent segfaults;
1 year ago
Bryan Biedenkapp
2893ed20d4
ensure multiple instances of a peer-link FNE don't clobber each other when receiving peer-link ACL;
1 year ago
Bryan Biedenkapp
ebfbed1ef5
Merge branch 'master' into incall_ctrl
1 year ago
Bryan Biedenkapp
f810351847
use non-blocking IO for the SecureTcpClient accept routine;
1 year ago
Bryan Biedenkapp
619cb548df
add support for per TGID RID permission lists; add call router support to check for source RID permission to TGID;
1 year ago
Bryan Biedenkapp
f8ee0aab51
Merge branch 'master' into incall_ctrl
1 year ago
Bryan Biedenkapp
ebb8669c0d
disable watchdog checking while the modem is transmitting CW;
1 year ago
Bryan Biedenkapp
10f3f35131
add destination ID to ICC messages;
1 year ago
Bryan Biedenkapp
86119c2171
ignore INCALL_CTRL inbound to an FNE;
1 year ago
Bryan Biedenkapp
59f85c5976
implement in-call control mechanism (this allows the FNE to command a host to stop transmitting if a ACL check fails);
1 year ago
Bryan Biedenkapp
15656dcdbf
don't assume 04F11-only peers will be present, and check for voiceChannel array viability;
1 year ago
Bryan Biedenkapp
f40e6c6af0
Merge Peer Link Enhancement Changes ( #73 )
...
* add support for Peer-Link CFNEs to pass activity and peer status messages to the prime/master CFNE; add support for Peer-Link CFNEs to transmit their currently active peer list to the prime/master CFNE; add support on the master/prime CFNE to support reporting Peer-Link peer IDs in the /peer/query REST API request; add support to pass affiliation updates from Peer-Link CFNEs to the prime/master CFNE (Note: this passing does not preserve the original peer ID the affiliation came from, from the prime/master perspective, currently, the affiliation will appear as if it came from the Peer-Link CFNE); correct a bug with buffer overflow for Peer-Link configuration transfers;
* hide debug messages;
* remove debug print;
1 year ago
Bryan Biedenkapp
8c00c7b81c
add missing peer link parameter when saving peer list;
1 year ago
Bryan Biedenkapp
2e2e8bf957
fix all instances of (uint32_t) for calcTxOffset;
1 year ago
jsb5151
e41fec1253
fixed calcTxOffset to use a signed integer; ( #72 )
...
(uint32_t)calcTxOffset would result in the offset being 0 if the value was negative in iden_table.dat
1 year ago
Bryan Biedenkapp
3ed87d4f89
slim down the embedded zlib library;
1 year ago
Bryan Biedenkapp
3740b33d8c
make sure Connection: close is explicitly used for InfluxDB;
1 year ago
Bryan Biedenkapp
a009d3345f
disable linger for InfluxDB;
1 year ago
Bryan Biedenkapp
b637a14f2d
whoops;
1 year ago
Bryan Biedenkapp
d61c1cd57f
return actual NAK for uninitialized affiliations tables; use SO_REUSEADDR on InfluxDB to reduce the number of idiotic TIME_WAIT TCP sockets;
1 year ago
Bryan Biedenkapp
5f601247b7
add zlib 1.3.1 dep (included in common); implement Peer-Link feature, this allows a master CFNE, when configured by peer list, to transmit complete talkgroup, RID and peer list data to subordinate CFNEs;
1 year ago
Bryan Biedenkapp
cc274ba78e
add support to selectively revert to previous logic ignoring affiliation checks;
1 year ago
Bryan Biedenkapp
b0369d272a
if for some reason, you have grant demands, and are a conventional/DVRS site, don't handle any grant demands if traffic is in progress;
1 year ago
Bryan Biedenkapp
7736e03aef
add ability to disable NON-AUTHORITATIVE log warnings (functionality is made optional as it makes diagnostics easier); remove redundant error message from grant demands;
1 year ago
Bryan Biedenkapp
ff6658cae7
how did no one find this, like how was this missed? add missing affiliated flag being sent from FNE to host;
1 year ago
Bryan Biedenkapp
cee2995389
throttle peer_status a little bit, send an update every 175ms (similar to the TUI update speed);
1 year ago
Bryan Biedenkapp
b190ce3628
add new net_event websocket data type that occurs when a valid CSBK or TSBK is decoded;
1 year ago
Bryan Biedenkapp
61a7a108ad
ignore subsequent grant demands for a TG with a call in progress;
1 year ago
Bryan Biedenkapp
7dc9522d7f
add support for V.24 modem connection state reporting;
1 year ago
Bryan Biedenkapp
c7ff885c72
replace spinbox with line edit; correct issue where AffListWnd and PeerListWnd would steal focus preventing input;
1 year ago
Bryan Biedenkapp
426a903ead
add log message for when peer status messages are being forwarded to a SysView client;
1 year ago
Bryan Biedenkapp
a65cdb1de2
fix incorrect display of VC count;
1 year ago
Bryan Biedenkapp
45d3b01b13
disable transfer of SysView's diag logs back to the FNE; add support to dump whether or not peer status was Rx when in debug mode;
1 year ago
Bryan Biedenkapp
fc6f199c37
peer status doesn't require influx;
1 year ago
Bryan Biedenkapp
f6f2ec36d5
remove unused variables;
1 year ago
Bryan Biedenkapp
bf8938766e
port newer changes for RPTC JSON message handling from dvmhost to other apps;
1 year ago
Bryan Biedenkapp
ab32e8c8be
implement getDefault for json::value, this helps correct a flaw in picojson that causes get to fail with an assertion;
1 year ago
Bryan Biedenkapp
304163ef8b
stablize the Peer Status display for SysView; refactor rendering of peers for SysView Peer Status; make dvmmon's peer display more similar to SysView;
1 year ago
Bryan Biedenkapp
4f5369a582
because I just made this error, lets make sure debug builds are clearly labeled [and as such we'll label them in a cheeky way ;)];
1 year ago
Bryan Biedenkapp
285e45c0e2
add freq display to peer list;
1 year ago
Bryan Biedenkapp
fe66aff8ab
correct long lingering frequency rounding error when calculating freq in MHz;
1 year ago
Bryan Biedenkapp
ac6518abe5
fix some issues with not clocking timers for peer list and aff list; fix issue with logging system not redirecting to a std::ostream;
1 year ago
Bryan Biedenkapp
bc5e49e80a
add display of peer identity (if available) on peer status display;
1 year ago
Bryan Biedenkapp
9d2efc3028
fix issue with WS defaulting to IPv6 sockets; hide debug logging unless debug is set in YML;
1 year ago
Bryan Biedenkapp
813a594b84
implement backroundable WebSocket mode for SysView; add WebSockets++ dependency (disableable with CMake option: -DDISABLE_WEBSOCKETS=1);
1 year ago
Bryan Biedenkapp
68d98817a9
move frequency precision to 5 places;
1 year ago
Bryan Biedenkapp
e11758a06a
remove peer status reporting to influx; allow the host to transmit status messages to FNE at 2 second interval instead of 5 second interval; change peer watch update time to 250ms;
1 year ago
Bryan Biedenkapp
5fc266b457
more SysView peer watch rendering corrections;
1 year ago
Bryan Biedenkapp
8667032bd5
correct some rendering issues on SysView peer watch; enhance display of peer state to include title bar color change; other minor data display corrections;
1 year ago
Bryan Biedenkapp
8f6319d15e
refactor SysView and more tightly integrate with the DVM stack; add CC voice channel reporting in the peer status message; add support on the FNE to report activity log and peer status to SysView instances;
1 year ago
Bryan Biedenkapp
aab5e208e4
add support to transmit commands from sysview;
1 year ago
Bryan Biedenkapp
e9d4039ce0
fix minor save copy issue for tged;
1 year ago
Bryan Biedenkapp
1fadd65d32
add custom OSP for GRP_AFF_RSP to SysView;
1 year ago
Bryan Biedenkapp
993e9b7239
correct AFF RSP display in SysView;
1 year ago
Bryan Biedenkapp
802716a21c
sysview should identify itself as SYSVIEW;
1 year ago
Bryan Biedenkapp
6bed22ccce
add RID and TGID resolution if rule files are available; correct some display bugs;
1 year ago
Bryan Biedenkapp
cd56011f87
refix issue with REST client (I shrunk a buffer for testing and didn't re-enbigen it); enhance some sysview displays slightly;
1 year ago
Bryan Biedenkapp
fe6f7508c0
add code dump of private sysview FNE monitoring utility to public GPL; correct issue with large REST responses getting truncated;
1 year ago
Bryan Biedenkapp
555ec97c90
fix some minor usability issues;
1 year ago
W3AXL
8d8ebfd5c9
added TG alias to REST API on FNE
1 year ago
Bryan Biedenkapp
ce008197fd
bug fixes for tged;
1 year ago
Bryan Biedenkapp
5947f5028b
display a total count of TGs for the list title;
1 year ago
Bryan Biedenkapp
322a116af6
implement default file backup before saving; fix copyright dates;
1 year ago
Bryan Biedenkapp
ae39ae816a
adjust color palette for TUI; add alpha version for the TUI talkgroup rules file editor;
1 year ago
Bryan Biedenkapp
a015c547d7
ensure TDU is transmitted at end of voice;
1 year ago
Bryan Biedenkapp
538763c203
allow length written to be returned;
1 year ago
Bryan Biedenkapp
84a3d859b9
remove debug trace;
1 year ago
Bryan Biedenkapp
7b27eadbd7
correct issue where DMR would round-robin assign slots for TGs, instead ensure available channel resources for the request slot exist and grant or queue accordingly; add some experimental support to generate a CSBK grant from network traffic if the destination ID hasn't already been granted;
1 year ago
Bryan Biedenkapp
0fda70654c
fix incorrect log messaging;
1 year ago
Bryan Biedenkapp
d837d0950d
fix issue where CSBK static site data wasn't being updated for netActive change;
1 year ago
Bryan Biedenkapp
c435256726
ignore plea's for SU registration on DMR when trying to register with power saving options;
1 year ago
Bryan Biedenkapp
f49b6ce257
document why the response data is set to 0;
1 year ago
Bryan Biedenkapp
1edf2b57e9
fix condition where peers that were NAK'ed during traffic would never receive NAK because it wasn't being sent to a direct IP;
1 year ago
Bryan Biedenkapp
696e93a3ec
increase the report time for packet Rx and processing to 360ms (or 180ms * 2, or 2 full P25 LDUs);
1 year ago
Bryan Biedenkapp
582629c395
add rule name alias for future use;
1 year ago
Bryan Biedenkapp
8f4c33c890
fix up some offsets that seem to be causing problems (*seem* to be causing problems);
1 year ago
Bryan Biedenkapp
4786923b1e
fix sleep deprived typos;
1 year ago
Bryan Biedenkapp
f68532ed33
[EXPERIMENTAL] add possible support to convertToAir V.24 PDU frames;
1 year ago
Bryan Biedenkapp
9a9441fbd5
extend W3AXLs implementation for space in blocks to the air interface modems as well (even though the modem firmware doesn't support it yet), for future proofing purposes;
1 year ago
W3AXL
a5709dd0a7
added optional byte-block free space reporting to ModemV24
1 year ago
Bryan Biedenkapp
9c3525a872
fix double clocking of modem in the modem clock threaad;
1 year ago
Bryan Biedenkapp
d1730d40fc
whoops remove debug trace;
1 year ago
Bryan Biedenkapp
0673aac088
add support to disable watchdog overflow checking;
1 year ago
Bryan Biedenkapp
d2fcea4885
implement logic to count overflows before resetting hard, after 10 consecutive overflow conditions, the PANIC reset logic will execute;
1 year ago
Bryan Biedenkapp
ccd5a5a9d8
be extremely aggressive about clearing buffers in PANIC overflow of modem and internal;
1 year ago
Bryan Biedenkapp
810fb62c72
update v24 submodule;
1 year ago
Bryan Biedenkapp
22a8ccb75f
partially revert Modem poll change to 250ms, partial because we're only reverting the poll time to 125ms (previous commit IDLE time);
1 year ago
Bryan Biedenkapp
c4038d92fb
ensure internal states are reset at callEnd; ensure if overriding source ID from UDP we actually override the source ID;
1 year ago
Bryan Biedenkapp
5a972a671c
add some more verbose logging for overflow conditions; correct issue with DMR Tx timer expiring before the call actually ended;
1 year ago
Bryan Biedenkapp
e233289f44
remove these sleeps (debug code not needed);
1 year ago
Bryan Biedenkapp
1851cec087
fix issue with UDP audio not sending metadata correctly; fix issue with enabling UDP audio; fix issue with incorrect address and port used for receiving remote UDP audio PCM data; fix issue with incorrect checking of destination and slot for DMR; fix issue with encodingDMRAudio frames and sending them too quickly; refactor how callEnd is handled;
1 year ago
Bryan Biedenkapp
b281da766e
clarify some watchdog panic messages;
1 year ago
Bryan Biedenkapp
cac58cea1f
move buffer size checks to host watchdog thread; add additional checks to prevent aggressive buffer overflow check logging;
1 year ago
Bryan Biedenkapp
0c247a2b37
make isQueueFull() checking -- less aggressive;
1 year ago
Bryan Biedenkapp
71a4cc2acc
add -wasapi command line option for dvmbridge on Windows to prioritize WASPI over WinMM;
1 year ago
Bryan Biedenkapp
6e9c8837fb
add more verbose logging if the modem reports it does not have space for frames and if the local controller queue is full;
1 year ago
Bryan Biedenkapp
d8efc3e29d
validate the state of the audio device, and attempt to reinit if its not running (and die in a panic if it can't be reinited);
1 year ago
Bryan Biedenkapp
92070b77db
setup preferred backends for miniaudio;
1 year ago
Bryan Biedenkapp
35cf087b33
ensure redundant terminators aren't logged (rxStartTime should be zeroed after the first terminator for a call is received, all others after that shouldn't make a log entry based on zeroed rxStartTime);
1 year ago
Bryan Biedenkapp
89a1d4bde9
peekFrameLength() should abide by mutex locks on txQueue's;
1 year ago
Bryan Biedenkapp
c60f418ddc
correct issue with thread-safety when writing network queues for bridge;
2 years ago
Bryan Biedenkapp
e81e7752ed
allow hasP25Space() to be overriden by derived classes [for possible future use];
2 years ago
Bryan Biedenkapp
849d54976b
fix file spacing;
2 years ago
Bryan Biedenkapp
14b880b708
add some mutex locking for thread safety, ensure addFrame and getFrame cannot happen simultaneously;
2 years ago
W3AXL
6ddec3c641
typo mistake whoops
2 years ago
W3AXL
d3aede7f1f
added sytem information to host status response
2 years ago
Bryan Biedenkapp
f5c5748789
increase modem read delay to 1ms;
2 years ago
W3AXL
8c836ec336
whoops, put this in the right place
2 years ago
W3AXL
babfdeb4f3
fixed U: log messages causing journalctl spam
2 years ago
Bryan Biedenkapp
043f6a73ae
add support for always send list;
2 years ago
Bryan Biedenkapp
dd31260ded
i'm an idiot;
2 years ago
Bryan Biedenkapp
7d582138aa
properly respect N(S)/N(R);
2 years ago
Bryan Biedenkapp
f4291f9235
ignore PDUs who claim to have PDU data but really don't;
2 years ago
Bryan Biedenkapp
d106fbb062
add some extra length documentation for RTP packets; make network ringbuffer initialized value a constant; continue logic implementation for P25 data; correct buffer issue on P25 data;
2 years ago
Bryan Biedenkapp
52e3677270
fix problem with ULL for 32-bit, on 64-bit this wasn't a problem as the numbers were all treated as 8 bytes wide (on Linux anyway), but for 32-bit this truncated the numbers and caused weird problems;
2 years ago
Bryan Biedenkapp
7a7dff3388
report now value in PONG response;
2 years ago
Bryan Biedenkapp
f6f7a70757
add debug trace for PONG messages;
2 years ago
Bryan Biedenkapp
1d760e0489
update debian package version;
2 years ago
Bryan Biedenkapp
260f4ed6d4
when a LOC_REG comes in ensure group affiliations are updated as well;
2 years ago
Bryan Biedenkapp
a880d2734e
implement call collision timeouts; fix GRP_VCH_GRANT_UPD allow it to carry 2 channels per spec;
2 years ago
Bryan Biedenkapp
a45d180c23
ensure if run in the foreground logs never goto syslog;
2 years ago
Bryan Biedenkapp
5aaad9c2fb
add support to suppress diagnostic messages from the bridges to the FNE;
2 years ago
Bryan Biedenkapp
3edab9f384
fix idiotic non-sense with MDC decoding, the logic here is if the MDC ID has no hex values to translate 1:1, if it contains hex values convert the hex value to a decimal value;
2 years ago
Bryan Biedenkapp
8ba2528533
bump overall version number with release of dvmbridge C++ alpha and Win32 support;
2 years ago
Bryan Biedenkapp
65fa91b7cb
[THIS MAY BREAK THINGS, BE AWARE] Merge Win32 support and C++ dvmbridge into master. ( #67 )
...
* experimental support for WIN32 compilation (tested only with VS2022);
* fix up incorrect return;
* make debug compile verbose; ensure ws2_32.lib is included;
* initial commit of vocoder library to main source tree; initial commit of C++ port of bridge (non-functional);
* calculate the length of the preamble tone and properly write it;
* implement MDC callback to detect MDC unit ID; implement UDP audio reception; implement local audio reception;
* very alpha working verison;
* correct buffer size;
* correct issue with enabled Tx mode not properly being set on the network; correct issue with DMR not setting the appropriate frame length after packing AMBE bits; correct false call starts by faking the txStreamId (this isn't correct but works for now); fix issue with P25 non-GROUP LCOs causing audio breaks; correct bad logic for call lockup thread;
* cleanup and properly align log messages;
* implement missing Rx/Tx manual gain control; fix missing srcId overrides;
* eliminate the __ALLOC_VLA macro (this really only works on VS2022, GCC explodes in a fit of horror);
* fix missing comment;
* fix bad CFLAGS; correct missing dl library when linking dvmbridge on linux; fix various typos and bad variable types in bridge;
* fix some bad memset calls not taking array size into account; fix some missing parens;
* implement missing cal options;
* don't start the timer till the first LDU1 for cal mode;
* I'm just full of bad mistakes today;
* ignore logging excessive sync frame errors;
* update modem submodule;
* Add DVM-V24 Firmware Submodule And Enable Building It (#66 )
* Added v24 firmware as a submodule
* Added v24 firmware compilation
* V24 doesn't have make clean, so remove it from cmake
* Added V24 firmware to tarballs
* Fix my 1D107 error...
---------
Co-authored-by: faulty <faulty@evilcomputing.net>
* correct compilation flags for Win32; add support to dump sample levels on bridge (this is useful for tuning the vox level); add various fixes for local audio flag; add various fixes for not starting loops until completely running; ensure audio input/output device settings are output to the log; fix issue with Rx and Tx gain controls not being applied appropriately;
* fix compilation issues for RPI_ARM; ensure math constants are defined; remove unused command line arguments;
---------
Co-authored-by: Jim <25770089+faultywarrior@users.noreply.github.com>
Co-authored-by: faulty <faulty@evilcomputing.net>
2 years ago
Bryan Biedenkapp
37e058731c
update submodules;
2 years ago
Bryan Biedenkapp
26457d7d85
implement support to software reboot into the system bootloader for flashing (using stm32flash); update modem and hotspot submodules;
2 years ago
Bryan Biedenkapp
6542443ca7
add support to transmit dynamic regroup IR extended commands;
2 years ago
W3AXL
f0d7ecb021
removed individual RID lookup prints
2 years ago
Jim
748a40590f
Add DVM-V24 Firmware Submodule And Enable Building It ( #66 )
...
* Added v24 firmware as a submodule
* Added v24 firmware compilation
* V24 doesn't have make clean, so remove it from cmake
* Added V24 firmware to tarballs
* Fix my 1D107 error...
---------
Co-authored-by: faulty <faulty@evilcomputing.net>
2 years ago
Bryan Biedenkapp
31d5371765
update modem submodule;
2 years ago
Bryan Biedenkapp
958c33c65a
ignore logging excessive sync frame errors;
2 years ago
Bryan Biedenkapp
2b20a509cb
I'm just full of bad mistakes today;
2 years ago
Bryan Biedenkapp
cda8427c6c
don't start the timer till the first LDU1 for cal mode;
2 years ago
Bryan Biedenkapp
5b6d10d517
implement missing cal options;
2 years ago
Bryan Biedenkapp
325e9776e2
update modem submodule;
2 years ago
firealarmss
e031b2bb8f
Add support for GRP UNAFFIL opcode. ( #65 )
...
* Add support for GRP UNAFFIL opcode
* Fix line spacing
2 years ago
Bryan Biedenkapp
95ea46d7d5
update hotspot firmware; update modem firmware; allow FIFO sizes sent to modem to be zeroed if a digital mode is not enabled;
2 years ago
Bryan Biedenkapp
7cf37e0e21
fix incorrect log messages (find and replace typo);
2 years ago
Bryan Biedenkapp
093f8dd6e8
more warning cleanups;
2 years ago
Bryan Biedenkapp
27452f935d
cleanup some warnings;
2 years ago
Bryan Biedenkapp
34855aed70
fix incorrect macro;
2 years ago
Bryan Biedenkapp
10232d2f9b
OSP_TIME_DATE_ANN fix variable size;
2 years ago
Bryan Biedenkapp
3bc8e73560
update modem submodule; fix error with NXDN addFrame calls;
2 years ago
Bryan Biedenkapp
1bada70ca4
better fix then the previous commit, flag a LC decode from an LDU1 as "raw only", use raw RS bytes always for a ModemV24 convertFromAir;
2 years ago
Bryan Biedenkapp
c8a60af83c
attempt to add pass thru support for some LCs;
2 years ago
Bryan Biedenkapp
59a5482473
silence "Failed writing data to the network" messages; silence out-of-sequence warnings if the pktSeq is 0; when the master reports it is closing, have peers restart their connection states;
2 years ago
Bryan Biedenkapp
34e6e1dc38
ensure the time delay calculation is always an absolute value;
2 years ago
W3AXL
340400fab7
fixed wrong MI on start of enc calls
2 years ago
W3AXL
e7bec0504f
corrected V24 TSBK offset
2 years ago
Bryan Biedenkapp
38bce6de04
fixup V.24 TSBK data offset; correct situation where ACL lists for a host would repeatedly be sent because the last update time was never changed (this could happen if the peer is in progress for traffic, if thats the case just ignore sending updates and wait till next interval to send them);
2 years ago
Bryan Biedenkapp
4f55a89201
implement some changes suggested by CLang; fix writePeerStatus() not using RTP_END_OF_CALL_SEQ;
2 years ago
Bryan Biedenkapp
ec1cf8c87e
drop dvmdfsi as a standalone application (this functionality has been entirely rolled into dvmhost); update README.md;
2 years ago
Bryan Biedenkapp
617c889d1a
Merge DFSI host changes into master ( #63 )
...
* begin implementing support for the V.24 modem as a regular modem dvmhost can utilize;
* add Tx support (maybe);
* theoretical TSBKs via V.24?;
* set start of stream correctly;
* ensure stream frame type is set correctly; send start of stream and end of stream correctly for TSBK (hopefully);
* fix variable naming; ensure voice frames aren't repeated back to the V.24 source;
* document configuration changes;
* add framework for eventual V.24 UDP support;
* correct issue not handling regular modem commands;
* fix up issue writing V.24 data to the modem buffers;
* initial working V24 modem implementation
* update commenting/documentation;
* reorganize configuration parameters and documentation;
* whoops forgot comment;
* ensure TSDU MBF is disabled for DFSI modems; tag DFSI parameters in log output proper for clarity; ensure P25 fixed mode is forced for DFSI modems;
* fixup V.24 UDP port, properly fake certain modem responses, fix bad RTP transmissions; add STT_NON_IMBE_NO_JITTER message type for ignoring message jitter;
* fix data offsets;
* ensure DFSI's internal call timeout is settable;
* bump version numbers;
* use LOG_MODEM not LOG_SERIAL;
* correct issue with PING/PONG resetting pktSeq incorrectly; add metric calculation for determining RTT for a PING/PONG;
* use milliseconds instead of seconds for delta clocking on the FNE and host for networking; correct several issues with incorrect packet sequences being sent for some control packets; correct issue with tracked packet sequence possibly being incorrectly reset;
---------
Co-authored-by: W3AXL <29879554+W3AXL@users.noreply.github.com>
2 years ago
Bryan Biedenkapp
2c640a53c4
allow OSP_TSBK_RAW to allocate and decode a raw unknown TSBK;
2 years ago
Bryan Biedenkapp
eae8923227
various cleanups; correct incorrect implementation for copy constructors on DFSI FSC messages;
2 years ago
Bryan Biedenkapp
cd579eeabf
add virtual flag to some routines;
2 years ago
Bryan Biedenkapp
e0ea19b350
move dvmdfsi/frames into common; make host Modem class inheritable;
2 years ago
Bryan Biedenkapp
fb0bb665eb
fix issue where SIGTERM or SIGINT was not properly stopping the process;
2 years ago
Bryan Biedenkapp
9205f514a1
increase time between modem polls to 750us;
2 years ago
Bryan Biedenkapp
abe45a1d53
fix up file headers;
2 years ago
W3AXL
34d17d961a
added DVMV24 board info reporting
2 years ago
Bryan Biedenkapp
8ba9e5c846
fix up Catch2 tests (these are woefully maintained...); add support for RC4-type encryption;
2 years ago
Bryan Biedenkapp
cb5329b2ca
simplify poll implementation;
2 years ago
Bryan Biedenkapp
dbe1f69071
if the control the beginning of a call has valid crypto data, use the MI for the HDU;
2 years ago
Bryan Biedenkapp
47d89febdf
fix various valgrind reports;
2 years ago
Bryan Biedenkapp
22d13e4c77
decrease the modem status polling delays to 125ms idle, 75ms active;
2 years ago
Bryan Biedenkapp
355db0c9cc
[This commit contains highly-experimental and possibly unstable alterations to core archeitcture on dvmhost] deprecate ThreadFunc (using C++ lambda's was a bad idea to begin with); refactor some startup messages; refactor use of ThreadFunc in FNE; refactor how threads were created in the FNE; [EXPERIMENTAL] refactor the host architecture to use threading for modem clocking and protocol readers;
2 years ago
Bryan Biedenkapp
4ba65c5bab
fix issue where when *decoding* a EXT_FNCT the src and dst would be inverted resulting in bad logging;
2 years ago
Bryan Biedenkapp
89f255d8e3
fix issue with P25 packet lengths being potentially truncated;
2 years ago
Bryan Biedenkapp
e66365f3f4
add support to sleep for shorter periods of time;
2 years ago
Bryan Biedenkapp
7ec138ed13
hide debug messages unless DEBUG_P25_PDU_DATA is set;
2 years ago
Bryan Biedenkapp
07d6d3c91f
fix issue where next MI wouldn't be calculated from the HDU MI if we received a valid HDU; fix issue with first superframe LDU1 containing a non-standard MFID resulting in incorrect destination IDs (if this happens and we've received a valid HDU, attempt to use the HDUs destination ID);
2 years ago
Bryan Biedenkapp
da2f6130a8
[NOTICE: this commit is *EXPERIMENTAL* and implements *very* early data support, it is expected to be buggy, incomplete or broken] implement VTUN interface (fne0) on the dvmfne (this requires dvmfne to be run as root on Linux system [untested on non-Linux] to create the tun interface); implement VIFace random MAC generation; implement P25 TIA-102.BAEB SCEP ARP (SCEP is always used for conventional data) on dvmfne; refactor P25 packet status bits (this may break things else where, beware!); properly implement P25 status bit flipping on inbound channel activity; implement functionality in the P25 and DMR DataHeader classes to calculate the proper raw PDU frame length; implement dvmfne ARP table creation and maintainence (this is buggy and requires more implementation and test); implement dvmfne VTUN -> PDU and PDU -> VTUN IP traffic forwarding (this is incomplete and requires more implementation and test); correct several issues on dvmhost p25::packet::Data with overlapped buffers;
2 years ago
W3AXL
ac64946b3f
added late call start on VHDR if no start ICW was received
2 years ago
jsb5151
9a214b683a
set shortened frame length to 14 bytes ( #61 )
2 years ago
Bryan Biedenkapp
eb093b3f5f
use epoll for VIFace;
2 years ago
Bryan Biedenkapp
d32e62e3cf
add virtual interface support class;
2 years ago
Bryan Biedenkapp
98f620e48b
split dispatch functions into dispatch and dispatchToFNE; correct variable shadowing in DMRPacketData::processFrame();
2 years ago
Bryan Biedenkapp
dc29208e70
refactor DMR PDU processing to be more in-line with how P25 PDU processing is done; implement support on the FNE to inspect and dispatch DMR PDUs properly;
2 years ago
W3AXL
b343473a87
initial fix to handle non-standard MFID LDU1s
2 years ago
Bryan Biedenkapp
806f950665
add disablePacketData flag to disable the FNE passing packet data;
2 years ago
Bryan Biedenkapp
c9e7dcc11f
make LC_CALL_TERM use dstId;
2 years ago
Bryan Biedenkapp
d467405a01
ensure TDU preamble is sent before voice for late entry;
2 years ago
Bryan Biedenkapp
98ded890f0
more cleanup; fix accidental change for block counting that broke things;
2 years ago
Bryan Biedenkapp
825aaeee06
remove more debug trace;
2 years ago
Bryan Biedenkapp
369c3bee25
remove debug trace log messages (whoops); fix edge case situation where the modem may stop reading because the response state machine is stuck;
2 years ago
Bryan Biedenkapp
0e43cf8918
add logic check to timeout a data call after 60 seconds;
2 years ago
Bryan Biedenkapp
2be4ca2bec
log ARP requests;
2 years ago
Bryan Biedenkapp
c4147ecc5b
ensure exSAP is reset properly;
2 years ago
Bryan Biedenkapp
f3c3cc95ce
refactor P25 PDU extended address handling (this loosely gets a lot of conventional data things working, Moto TMS for example will pass in conventional [although buggy]); pass PDU response data headers (with no block followers) across the network;
2 years ago
Bryan Biedenkapp
197ce833ac
correct Trellis symbol skipping logic for DMR for 3/4 Trellis; enhance DMR short LC bits; correctly identify short LC for data and CSBK; correct buffered PDU repeat logic (when header has no blocks following);
2 years ago
Bryan Biedenkapp
1e25fff1ed
send these packets in the immediate queue;
2 years ago
Bryan Biedenkapp
88b619c71f
implement initial logic to provide PDU processing on the FNE;
2 years ago
Bryan Biedenkapp
96ea9269be
don't transmit trailing TDUs;
2 years ago
Bryan Biedenkapp
a9bc150da7
add IP address column to RID tables (this is *NOT* used yet, and is for future use);
2 years ago
Bryan Biedenkapp
93e1531308
whoops confirmed packets always require acknowledgement;
2 years ago
Bryan Biedenkapp
d281844c74
byte reverse IP addresses returned for P25's OTA; fix conventional registration packets not properly transmitting; continued work on P25 data refactoring;
2 years ago
Bryan Biedenkapp
6dad7186c4
don't make *all* AMBT's goto the immediate queue, only do this for AUTH_DMD;
2 years ago
Bryan Biedenkapp
ca3fc407c0
add helper to convert an IP in std::string to a uint32_t; add calculateLength() function to P25 PDU DataHeader to more easily calculate data header fields for a packet; correct missing DAC and MDPCO fields on SNDCPCtxActAccept; correct missing MDPCO field on SNDCPCtxActRequest; implement support for Control::writeRF_TDU to be sent to the immediate queue; implement support for Data::writeRF_PDU and Data::writeRF_PDU_User to send data to the immediate queue; add some TDU leader and trialers to PDU handling; enhance the AUTH_DMD by forcing the AMBTs to the immediate queue; continued enhancements to the SNDCP support;
2 years ago
Bryan Biedenkapp
345231fcf6
update hotspot and modem submodules;
2 years ago
Bryan Biedenkapp
5db4f58ab6
update hotspot and modem firmware submodules; fix some bad commenting;
2 years ago
Bryan Biedenkapp
6a040b6bec
correct issue with P25 deregistrations always generating a U_REG_CMD instead of only generating a U_REG_CMD for registration timeouts;
2 years ago
Bryan Biedenkapp
5159c6f8c7
convert monitor to Doxygen;
2 years ago
Bryan Biedenkapp
d9c6447563
fire off a U_REG_CMD when performing stale unit deregistration to force a SU to re-register itself when the inactivity timer is hit;
2 years ago
Bryan Biedenkapp
580f26a478
convert dfsi to Doxygen documentation format;
2 years ago
Bryan Biedenkapp
882c2564ca
correct double spaced formatting of CPP files in common; convert dvmhost to Doxygen documentation format; convert dvmfne to Doxygen documentation format; convert dvmcmd to Doxygen documentation format;
2 years ago
Bryan Biedenkapp
10e1e12be0
add doxygen configuration for dvmhost project; add doxygen output directory; convert common static library to use doxygen style commenting and documentation;
2 years ago
Bryan Biedenkapp
4137db2399
remove AUTHORS.md; update README.md to reflect dvmdfsi; fix spacing issue for dvmdfsi command line help; update hotspot and modem submodules;
2 years ago
Bryan Biedenkapp
3861559f87
add support to send SNDCP disabled annoucement messages properly;
2 years ago
Bryan Biedenkapp
dc0838e0c3
whoops swapped reject values;
2 years ago
Bryan Biedenkapp
f23d3931f4
add initial support to process SNDCP control PDU data;
2 years ago
Bryan Biedenkapp
d18b4c2b4e
fix issue with SNDCP packets not having the site IDEN table set;
2 years ago
Bryan Biedenkapp
e90350d350
begin implementing some basic SNDCP handling logic (this isn't complete, and this doesn't make SNDCP work *yet*), however until the implementation is complete, this should prevent channels from becoming grant locked (hopefully);
2 years ago
W3AXL
6b8e889ea6
debug cleanup
2 years ago
Bryan Biedenkapp
63f3f9e499
fix oopsie copy and paste error;
2 years ago
Bryan Biedenkapp
1388863371
ensure the host doesn't attempt to retransmit rogue OSP_SNDCP_CH_GNT;
2 years ago
Bryan Biedenkapp
45efd99801
support decoding rogue OSP_SNDCP_CH_GNT (even tho on DVM you can *enable* this you shouldn't because there's no SNDCP application that will respond);
2 years ago
Bryan Biedenkapp
ecda6b13d3
cowardly refuse to transmit OSP_SNDCP_CH_GNT across the network;
2 years ago
Bryan Biedenkapp
35c07715bc
don't use HUGE as a SiteModel because certain versions of GCC are awful;
2 years ago
Bryan Biedenkapp
9050ad7885
this should address the issues with #53 , dvmhost and dvmdfsi *should* transparently pass unknown non-standard MFId LCs in the voice LDU1 frames; correct some logging irregularities in dvmdfsi;
2 years ago
Bryan Biedenkapp
55b1670121
update copyright dates;
2 years ago
Bryan Biedenkapp
673289c764
add more constant/enum documentation from specification documents;
2 years ago
Bryan Biedenkapp
eacbc27143
add marking of whether an inbound CAC is long or short; fix issue with short CAC not properly building a puncturing buffer (even tho short CAC doesn't do puncturing, its needed for NXDN convolution); correct CAC getData() return; remove deprecated code causing decoding offsets to be wrong resulting in invalid RCCHs;
2 years ago
Bryan Biedenkapp
51bd9e749d
implement CAC long puncturing for NXDN; correct issues with NXDN site information data;
2 years ago
Bryan Biedenkapp
5fde17f879
fix stupid GCC 4.9.3 for ARMHF non-sense;
2 years ago
Bryan Biedenkapp
d702eeae9a
update byte packing documentation on some headers/functions for -- future generations;
2 years ago
Bryan Biedenkapp
67429e3e34
use localtime instead of gmtime for logs;
2 years ago
Bryan Biedenkapp
92e9e2d8b0
correct toString() for CSBK_BROADCAST;
2 years ago
Bryan Biedenkapp
cb0500b2e7
treewide: refactor constant variables into proper enumerations where appropriate (this applies to DMR, P25 and NXDN, and may introduce gremlins);
2 years ago
Bryan Biedenkapp
41b36a491d
fix issue where parrot originating was not muting the initial call to other peers;
2 years ago
Bryan Biedenkapp
36c04a74ec
move the NET_FUNC* and NET_SUBFUNC* constants into proper namespaced enums;
2 years ago
Bryan Biedenkapp
e512fd388f
add FSC frame classes;
2 years ago
Bryan Biedenkapp
81ef9129b6
cleanup CMakeLists;
2 years ago
Bryan Biedenkapp
f0f1d489d1
add TIA frame types (for future use); remove extraneous handling for DMR and NXDN (these are shut off in the network code, which makes the code in Dfsi pointless to have); remove g_hideMessages and logging from Dfsi class (for P25 this is actually instrumented by the debug flag in the SerialService (and when it exists UDPService) class, no need to duplicate this; add support for "null" modem mode for the SerialService, this allows basic code flow to be tested without any V.24 interface attached to the dvmdfsi instance, a "portType" parameter was added to the configuration file for this, by default it should always be "uart" but for null modem testing it can be set to "null"; add commenting and function definition commenting;
2 years ago
W3AXL
ba8067c55c
fixed deletes on invalid pointers, cleaned up serial initialization, added timeouts for call flags, other small QoL tweaks
2 years ago
Bryan Biedenkapp
e5e5462473
fix #54 , this should fix issue #54 in dealing with segmented/fragemented HTTP requests; enhance debug messaging from REST API server;
2 years ago
Bryan Biedenkapp
ad4aa9ac1f
(lets see if this breaks things and W3AXL yells at me) refactor some of the frame classes to use the __PROPERTY mechanism for building get/set based properties for some class fields vs raw variables; cleanup some cases where we may run afoul heap allocations and get memory leaks;
2 years ago
Bryan Biedenkapp
26f733d8ff
fixup copyright display;
2 years ago
Bryan Biedenkapp
562712f8a6
fixup copyright display;
2 years ago
Bryan Biedenkapp
feb3c84694
remove old dev command line arguments; add missing copyright lines;
2 years ago
Bryan Biedenkapp
dcb25cfb58
fix missing help information for --syslog;
2 years ago
Bryan Biedenkapp
1d0c8da331
bump project version to R04A01; remove extraneous files;
2 years ago
Bryan Biedenkapp
0fc2b0bf59
fix issue with hotspot submodule;
2 years ago
Bryan Biedenkapp
4b24c1e356
fix issue with modem submodule;
2 years ago
Patrick W3AXL
0bbc69d237
Basic implementation of dvmdfsi in dvmhost C++ ecosystem ( #59 )
...
* initial bootstrap of CPP dvmdfsi
* more work on serial service, the basics are there now
* updated TODOs
* more work on dfsi, getting there, just a few more things to implement
* rough code finished, totally untested, hope it works
* fixes for malloc errors, still not totally working
* almost working, P25 voice from FNE is garbled but we're getting there
* verified v24 decode/encode is working, still cleaning up serial TX
* dvmdfsi ready for beta testing! A few gremlins to find but it works.
* added configurable source flag option
* fixed diu source flag config entry name
* small update to Mot VHDR1
* fixed serial initialization, flags work now, config & code cleanup
* log cleanups, added basic call collision logic, fixed kid being truncated to uint8_t
* fixed LDU2 MI not getting copied properly
* bring add-dvmdfsi up-to-date with master;
* Add syslog and some project file cleanup (#58 )
* initial bootstrap of CPP dvmdfsi
* more work on serial service, the basics are there now
* updated TODOs
* more work on dfsi, getting there, just a few more things to implement
* rough code finished, totally untested, hope it works
* fixes for malloc errors, still not totally working
* almost working, P25 voice from FNE is garbled but we're getting there
* verified v24 decode/encode is working, still cleaning up serial TX
* dvmdfsi ready for beta testing! A few gremlins to find but it works.
* added configurable source flag option
* fixed diu source flag config entry name
* small update to Mot VHDR1
* fixed serial initialization, flags work now, config & code cleanup
* log cleanups, added basic call collision logic, fixed kid being truncated to uint8_t
* fixed LDU2 MI not getting copied properly
* add support for syslog logging in dvmdfsi;
* add useSyslog parameter to log section of configuration file;
* project cleanup: split MotRtpFrames.cpp/.h into separate files properly; ensure decode() functions pass the pointer as const to prevent accidental modification of input buffer; move common enums to a separate RtpDefines.h header; reuse MotRtpFrames.h (renamed RtpFrames.h) as a quick way of including all the RTP frames;
---------
Co-authored-by: W3AXL <29879554+W3AXL@users.noreply.github.com>
---------
Co-authored-by: W3AXL <29879554+W3AXL@users.noreply.github.com>
Co-authored-by: Bryan Biedenkapp <gatekeep@gmail.com>
2 years ago