Commit Graph

67 Commits (538763c203ff25843974e3d5ebc75024717177ce)

Author SHA1 Message Date
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 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 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 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
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
Bryan Biedenkapp 65fa91b7cb
[THIS MAY BREAK THINGS, BE AWARE] Merge Win32 support and C++ dvmbridge into master. (#67)
2 years ago
Bryan Biedenkapp 617c889d1a
Merge DFSI host changes into master (#63)
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 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 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 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 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 2f918d759d implement support to send logs to the syslog;
2 years ago
Bryan Biedenkapp 3be3366e5f enhance FNE notification of CC voice channels; implement support to maintain mapping of CC <-> VC relationships at the FNE;
2 years ago
Bryan Biedenkapp 2c560dc3ce add support to report host status JSON blob to FNE for storage in InfluxDB;
2 years ago
Bryan Biedenkapp 01b92641fd run the loop watchdog timer properly during CW;
2 years ago
Bryan Biedenkapp 9b828fe7a4 ensure the lookup table thread is named; don't display the not transmitting CC messages unless the test timer is not paused; add aggressive watchdog logging for when timers exceed 1s intervals; split adj. site and affiliation updating into a separate thread (huge adj. site updates could be the cause of main loop processing delays); ensure threads are properly shutdown; increase P25 adj site update timer from 30 seconds to 60 seconds (5 minutes of no updates will now FAIL an adj. site);
2 years ago
Bryan Biedenkapp 01af69a954 make sure the data length for P25 is twice the PDU length; add support to log if a dedicated CC stops transmitting from the host perspective (the logic for this is: is host in appropriate digital mode for CC, is the modem reporting no Tx, has the modem reported its status initially, and is the CC in a running state);
2 years ago
Bryan Biedenkapp e4aca9fc4f don't register a CC with itself; be more clear in the config YAML that the controlChannel block should be left at defaults for dedicated control channels;
2 years ago
Bryan Biedenkapp e0b6da51fb make the network presence announcment (VC -> CC and CC -> FNE) timing configurable (this value is in seconds); refactor RF channel enumeration, RF channels are now enumerated in their own class ChannelLookup instead of being integrated into AffiliationLookup, this allows the flexibility to update and change channel information at runtime; add support for VC -> CC presence/registration to tell the CC what the REST information is for that VC, this makes the restAddress and restPort entries for the voiceChNo list in the config.yml optional, the only mandatory fields are channelId, channelNo and restPassword;
2 years ago
Bryan Biedenkapp 0f7eabff82 implement support for peers that identify themselves as "conventional" to ignore affiliated talkgroup rules and be able to receive all traffic if the FNE is configured to allow promiscuous operation; implement extremely preliminary support to allow a CC to claim a VC peer, allowing for appropriate grouping of peers for trunked sites;
2 years ago
Bryan Biedenkapp 4d776f6314 add support for DMR T3 adjacent site broadcast;
2 years ago
Bryan Biedenkapp 5571a71e4e replace manual lock/unlock with lock_guard to ensure a lock is held in a scope, and released when a scope is closed;
2 years ago
Bryan Biedenkapp 9dadc06130 I was asked for ASCII art, and I deliver, thus, ASCII art;
2 years ago
Bryan Biedenkapp 5a5104ba2f treewide: perform general refactor of file headers, I've modified the file headers to follow rules from: https://www.kernel.org/doc/html/next/process/license-rules.html, this trims/compresses the file header section a bit reducing the number of lines at the top of every file quite a bit, going forward all new files should follow this new format (if its good enough for the Linux kernel, its good enough for me);
2 years ago
Bryan Biedenkapp d9e2458722 implement support for low-level TCP sockets; deprecate and remove new_unique macro and use appropriate std::make_unique; apply various clang linting;
2 years ago
Bryan Biedenkapp f7ecb54b86 during shutdown ensure the log network pointer is cleared (prevents a shutdown/exit SEGFAULT);
2 years ago
Bryan Biedenkapp 0e705f74a6 report whether or not the host is transmitting CW;
2 years ago
Bryan Biedenkapp 6a2e9f8876 whoops used wrong boolean for DMR TSCC dedicated check;
2 years ago
Bryan Biedenkapp 71f28d13a7 split DMR writers into separate threads, one for slot 1 and one for slot 2 so they can write independantly; fix issue with cuts in Tx due to the DMR Tx timer not being properly canceled for TSCC enabled hosts;
2 years ago
Bryan Biedenkapp 2d809e0a61 complete the job Faulty started and remove remnants of deprecated ENABLE_DMR, ENABLE_P25 and ENABLE_NXDN compiler options;
2 years ago
Bryan Biedenkapp 97af96a6ad be verbose in cmake output when enabling various debugs; correct issue with startup messages;
2 years ago
Bryan Biedenkapp 1379482fcc reorganize entire codebase structure; move common classes, files into a compile time static library; reorganize CMake files to make use of common static library to reduce compile time;
2 years ago
Bryan Biedenkapp d1b2b19c08 refactor how we clock ADJ_STS_BCAST; correct wrongly used site data for ADJ_STS_BCAST;
2 years ago
Bryan Biedenkapp b76334dbb4 ugh -- I missed the broadcast timer too, oops;
2 years ago
Bryan Biedenkapp d107bdd679 ensure CW doesn't go out of the channel is an NXDN control channel;
2 years ago
Bryan Biedenkapp addf751999 remove threading for protocol readers (this didn't make sense, as the data for Rx is queued by the Modem class, so reading can't really happen till after a modem clock anyway);
2 years ago
Bryan Biedenkapp 07084269aa add support to textually name threads;
2 years ago
Bryan Biedenkapp 2e65458008 refactor Host.cpp into more partial clas files for better code organization;
2 years ago
Bryan Biedenkapp 5a1f672dfe ensure threads die immediately if the g_killed flag is set when the threads are started; block clocking operations when performing CW;
2 years ago
Bryan Biedenkapp 7a90f953fd add proper mutex locking to prevent thread clobbering during clocking (i.e. attempts to make modem and protocol clocking thread safe); split frame read nad write operations into their own threads;
2 years ago
Bryan Biedenkapp 629c2fe75e initial commit for dvmhost 3.55 dev branch; add support for std::function<> based lambdas as threads; split DMR, P25 and NXDN frame processing into their own source files for the host (Host.DMR.cpp, Host.P25.cpp, Host.NXDN.cpp) these files will contain host-level processing code for the specific protocols; implement protocol frame processors as their own running threads;
2 years ago

Powered by TurnKey Linux.