Skip to content

Troubleshooting

KP edited this page May 18, 2025 · 1 revision

This page lists common issues and resolutions for toc-lp-kit deployments.


1. RTL-SDR Not Detected

Symptom:

  • rtl_test -t fails or shows “No supported devices found.”

Fix:

  • Confirm the device is plugged into a USB 3.0 port.

  • Ensure the DVB kernel driver is blacklisted:

    lsmod | grep dvb_usb_rtl28xxu
    # If present:
    echo 'blacklist dvb_usb_rtl28xxu' | sudo tee /etc/modprobe.d/rtl.conf
    sudo reboot
    
  • Re-run detection:

    rtl_test -t
    

2. No Audio in JS8Call

Symptom:

  • JS8Call waterfall is blank or no decode peaks appear.

Check:

  • Confirm SDR pipeline is running:

    docker logs toc_sdr
    
  • Verify PulseAudio loopback:

    pactl list sinks short
    pactl list sources short
    

Fix:

  • Restart PulseAudio modules:

    pactl unload-module module-null-sink
    pactl unload-module module-loopback
    pactl load-module module-native-protocol-unix socket=/tmp/pulse/native
    pactl load-module module-null-sink sink_name=js8loop
    pactl load-module module-loopback source=rtl_src monitor_sink=js8loop
    
  • In JS8Call → File → Settings → Audio, select “Monitor of js8loop”.


3. Clock Drift & Time-Slot Errors

Symptom:

  • Decoded messages cross green time-slot lines or decode failures due to time misalignment.

Check:

  • Chrony logs:

    docker logs toc_timesync | grep -E 'Freerun|System clock'
    

Fix:

  • Allow chrony to step large offsets:

    In chrony/chrony.conf, ensure:
      makestep 1.0 3
    
  • If off-grid with GPS, configure:

    Add to chrony.conf:
      refclock SHM 0 offset 0.5 refid GPS
    
  • Restart chrony container:

    docker restart toc_timesync
    

4. Container Startup Failures

Symptom:

  • docker-compose up exits with error.

Check & Fix:

  • View logs for each service:

    docker-compose logs sdr   # for SDR pipeline errors
    docker-compose logs js8call
    docker-compose logs toc_timesync
    
  • Rebuild affected container:

    docker-compose build <service-name>
    docker-compose up -d <service-name>
    
  • Verify file permissions on mounted volumes:

    ls -l /var/lib/docker/volumes/js8-log/_data
    

5. GUI Won’t Launch

Symptom:

  • Running js8call inside container does not display on host.

Check:

  • Host allows X11 forwarding:

    echo $DISPLAY
    
  • PulseAudio socket permissions:

    ls -l /tmp/pulse/native
    

Fix:

  • On host, allow local X connections:

    xhost +local:root
    
  • Ensure docker-compose.yml mounts /tmp/.X11-unix and sets DISPLAY.


Return to Home

Clone this wiki locally