Open zigsphere opened 7 months ago
I have multiple units running both local icecast and broadcastify feeds and don't see this on a few that I checked. All of mine are running on pi 4s however, so I wonder if that is a factor . . .
In addition to multiple_output_threads = true
you can also use multiple_demod_threads = true
, this will run a different thread for each dongle and will help keep up with the raw data rate. I think on the pi 3 both ethernet and USB share the same bus, so perhaps a backlog there could cause issues?
If you recompile with native
instead of armv7-generic
that will tune to the hardware you're building on (presumably the pi itself), not sure if that will impact anything or not.
There are a bunch of stats captured and can be written to a file using stats_filepath = "/tmp/radio.prom"
, enabling that and watching for changes when the disconnects happen may be interesting.
Sounds good. Thank you. I also just received a new PI5. With that being the case, what would be the best platform to use when compiling? Ill give your suggestions a shot.
If you are compiling on the machine you will be running on, use native as the platform.
What I have noticed is a buffer overrun count:
# HELP channel_activity_counter Loops of output_thread with frequency active.
# TYPE channel_activity_counter counter
channel_activity_counter{freq="122.800",label="Roseburg Regional Airport (122.800)"} 0
channel_activity_counter{freq="155.700",label="Douglas County Sheriff Law 1 (155.700)"} 44
channel_activity_counter{freq="155.550",label="Douglas County Sheriff - Law 2"} 0
channel_activity_counter{freq="155.775",label="Oregon Department of Transportation District 7 (155.775)"} 0
channel_activity_counter{freq="154.815",label="Oregon State Police - Roseburg Station"} 0
channel_activity_counter{freq="154.370",label="Douglas County Fire Dispatch"} 0
# HELP channel_noise_level Raw squelch noise_level.
# TYPE channel_noise_level gauge
channel_noise_level{freq="122.800",label="Roseburg Regional Airport (122.800)"} 0.091
channel_noise_level{freq="155.700",label="Douglas County Sheriff Law 1 (155.700)"} 0.286
channel_noise_level{freq="155.550",label="Douglas County Sheriff - Law 2"} 0.286
channel_noise_level{freq="155.775",label="Oregon Department of Transportation District 7 (155.775)"} 0.285
channel_noise_level{freq="154.815",label="Oregon State Police - Roseburg Station"} 0.283
channel_noise_level{freq="154.370",label="Douglas County Fire Dispatch"} 0.250
# HELP channel_dbfs_noise_level Squelch noise_level as dBFS.
# TYPE channel_dbfs_noise_level gauge
channel_dbfs_noise_level{freq="122.800",label="Roseburg Regional Airport (122.800)"} -48.739
channel_dbfs_noise_level{freq="155.700",label="Douglas County Sheriff Law 1 (155.700)"} -38.829
channel_dbfs_noise_level{freq="155.550",label="Douglas County Sheriff - Law 2"} -38.826
channel_dbfs_noise_level{freq="155.775",label="Oregon Department of Transportation District 7 (155.775)"} -38.870
channel_dbfs_noise_level{freq="154.815",label="Oregon State Police - Roseburg Station"} -38.915
channel_dbfs_noise_level{freq="154.370",label="Douglas County Fire Dispatch"} -39.979
# HELP channel_signal_level Raw squelch signal_level.
# TYPE channel_signal_level gauge
channel_signal_level{freq="122.800",label="Roseburg Regional Airport (122.800)"} 0.109
channel_signal_level{freq="155.700",label="Douglas County Sheriff Law 1 (155.700)"} 0.300
channel_signal_level{freq="155.550",label="Douglas County Sheriff - Law 2"} 0.317
channel_signal_level{freq="155.775",label="Oregon Department of Transportation District 7 (155.775)"} 0.309
channel_signal_level{freq="154.815",label="Oregon State Police - Roseburg Station"} 0.320
channel_signal_level{freq="154.370",label="Douglas County Fire Dispatch"} 0.300
# HELP channel_dbfs_signal_level Squelch signal_level as dBFS.
# TYPE channel_dbfs_signal_level gauge
channel_dbfs_signal_level{freq="122.800",label="Roseburg Regional Airport (122.800)"} -47.194
channel_dbfs_signal_level{freq="155.700",label="Douglas County Sheriff Law 1 (155.700)"} -38.404
channel_dbfs_signal_level{freq="155.550",label="Douglas County Sheriff - Law 2"} -37.945
channel_dbfs_signal_level{freq="155.775",label="Oregon Department of Transportation District 7 (155.775)"} -38.159
channel_dbfs_signal_level{freq="154.815",label="Oregon State Police - Roseburg Station"} -37.853
channel_dbfs_signal_level{freq="154.370",label="Douglas County Fire Dispatch"} -38.412
# HELP channel_squelch_counter Squelch open_count.
# TYPE channel_squelch_counter counter
channel_squelch_counter{freq="122.800",label="Roseburg Regional Airport (122.800)"} 0
channel_squelch_counter{freq="155.700",label="Douglas County Sheriff Law 1 (155.700)"} 1
channel_squelch_counter{freq="155.550",label="Douglas County Sheriff - Law 2"} 0
channel_squelch_counter{freq="155.775",label="Oregon Department of Transportation District 7 (155.775)"} 0
channel_squelch_counter{freq="154.815",label="Oregon State Police - Roseburg Station"} 0
channel_squelch_counter{freq="154.370",label="Douglas County Fire Dispatch"} 0
# HELP channel_squelch_level Squelch squelch_level.
# TYPE channel_squelch_level gauge
channel_squelch_level{freq="122.800",label="Roseburg Regional Airport (122.800)"} 0.274
channel_squelch_level{freq="155.700",label="Douglas County Sheriff Law 1 (155.700)"} 0.904
channel_squelch_level{freq="155.550",label="Douglas County Sheriff - Law 2"} 0.904
channel_squelch_level{freq="155.775",label="Oregon Department of Transportation District 7 (155.775)"} 0.900
channel_squelch_level{freq="154.815",label="Oregon State Police - Roseburg Station"} 0.895
channel_squelch_level{freq="154.370",label="Douglas County Fire Dispatch"} 0.792
# HELP channel_flappy_counter Squelch flappy_count.
# TYPE channel_flappy_counter counter
channel_flappy_counter{freq="122.800",label="Roseburg Regional Airport (122.800)"} 0
channel_flappy_counter{freq="155.700",label="Douglas County Sheriff Law 1 (155.700)"} 0
channel_flappy_counter{freq="155.550",label="Douglas County Sheriff - Law 2"} 0
channel_flappy_counter{freq="155.775",label="Oregon Department of Transportation District 7 (155.775)"} 0
channel_flappy_counter{freq="154.815",label="Oregon State Police - Roseburg Station"} 0
channel_flappy_counter{freq="154.370",label="Douglas County Fire Dispatch"} 0
# HELP channel_ctcss_counter count of windows with CTCSS detected.
# TYPE channel_ctcss_counter counter
channel_ctcss_counter{freq="122.800",label="Roseburg Regional Airport (122.800)"} 0
channel_ctcss_counter{freq="155.700",label="Douglas County Sheriff Law 1 (155.700)"} 13
channel_ctcss_counter{freq="155.550",label="Douglas County Sheriff - Law 2"} 0
channel_ctcss_counter{freq="155.775",label="Oregon Department of Transportation District 7 (155.775)"} 0
channel_ctcss_counter{freq="154.815",label="Oregon State Police - Roseburg Station"} 0
channel_ctcss_counter{freq="154.370",label="Douglas County Fire Dispatch"} 0
# HELP channel_no_ctcss_counter count of windows without CTCSS detected.
# TYPE channel_no_ctcss_counter counter
channel_no_ctcss_counter{freq="122.800",label="Roseburg Regional Airport (122.800)"} 0
channel_no_ctcss_counter{freq="155.700",label="Douglas County Sheriff Law 1 (155.700)"} 0
channel_no_ctcss_counter{freq="155.550",label="Douglas County Sheriff - Law 2"} 0
channel_no_ctcss_counter{freq="155.775",label="Oregon Department of Transportation District 7 (155.775)"} 0
channel_no_ctcss_counter{freq="154.815",label="Oregon State Police - Roseburg Station"} 0
channel_no_ctcss_counter{freq="154.370",label="Douglas County Fire Dispatch"} 0
# HELP buffer_overflow_count Number of times a device's buffer has overflowed.
# TYPE buffer_overflow_count counter
buffer_overflow_count{device="0"} 0
buffer_overflow_count{device="1"} 0
# HELP output_overrun_count Number of times a device or mixer output has overrun.
# TYPE output_overrun_count counter
output_overrun_count{device="0"} 0
output_overrun_count{device="1"} 9
The bandwidth for my feeds are set to 5000. Is that too big? There are only two dongles currently, but I plan to add a third.
Also, just as an update, this is now running on the PI5. Values multiple_output_threads = true
and multiple_demod_threads = true
have been set. Would the overrun count cause this?
When the drop occurred on icecast, I saw:
# HELP output_overrun_count Number of times a device or mixer output has overrun.
# TYPE output_overrun_count counter
output_overrun_count{device="0"} 0
output_overrun_count{device="1"} 48
Perhaps this is the culprit, but Im trying to understand why.
Thanks
Using a Raspberry PI 3 and using the armv7-generic platform. 2 RTLSDR devices connected to a USB hub (powered)
I'm using the latest version 4.2.0 of rtl_airband. Raspbian GNU/Linux 12 (bookworm)
What happened?
I am getting random disconnects / reconnects to broadcastify and other icecast endpoints I am using. I am currently running 2 rtlsdr dongles and recently discoverd the multithreading - that is enabled. I am trying to understand why the disconnects happen. My internet has no issues - constantly pinging google as an example - no issues. Perhaps there is something I can adjust in my airband configuration? The connection drops 15 - 30 minutes after running. Load, CPU, memory are also fine on the PI.
What you expected to happen? Run rtl_airband and have no disconnects to broadcastify / other platforms for outputs.
Steps to Reproduce Start rtl_airband and just wait.
Additional context
Your rtl_airband.conf file