Asked
Resolved Resolved by Athena AI!

Trying To Figure Out A Weird POP At The Start And End Of Sound Files.

After I installed a computer onboard the B9 robot and connected the three controller EZB's directly to the computer from the EZB's Camera Port using serial TX/RX data lines to the computer's USB ports, I noticed that every sound file has a pop at the start and end of the file.

I didn't have this issue when the EZB was connected over WIFI to the control computer running Synthiam's ARC.

It's not the file as it plays just fine through other devices. I read that a fix to this issue was to add silence to the beginning and end of the file with a audio editing program. I tried this with no luck. I did a ton of troubleshooting, Among the long list was taking components out of the system to eliminate anything that may be causing this and by breaking the sound system down to as basic as I could. Still after all this I still had the pops. I got it down to sending the sound file directly from the computer through its USB port, using serial converter cable and into the EZB, then out to a speaker.

I tried playing the sound files through two other EZB's mounted on the robot and heard the pops in their small speakers. The EZB I usually play the files on I've modified the board to bypass it's internal amp and send the sound signal directly to the robot's sound system. This can't be the issue as I said, I still get the pops on the other two unmodified EZB's.

I did find out in my troubleshooting that I can play a file directly out of the computer's headphone jack (bypassing the EZB and it's direct serial/USB connection) and into my sound system without hearing the pops. To do this I use ARC's PC sound board and not the EZB soundboard. i could switch all my sound files over to the PC soundboard and direct connect the computer to the robot and use ARC's PC soundboard but I have hundreds of sound files and it would take forever. Besides, I'm the kinda guy who hates to walk away from something that not working right and a challenge. LOL.

Please watch the video for a better explanation and demo of all this. Does anyone have any ideas? Thanks in advance for watching and any advice. Sorry about the washed out quality of the video. I think I need to clean my lense. LOL. 


Related Hardware EZ-B v4
Related Control Soundboard (PC)

ARC Pro

Upgrade to ARC Pro

ARC Pro is your gateway to a community of like-minded robot enthusiasts and professionals, all united by a passion for advanced robot programming.

PRO
Canada
#1  

It sounds like you're experiencing a challenging issue with the popping sound when using the EZ-B v4's audio output. Let's try to address this systematically:

Potential Causes and Solutions

  1. Audio File Format and Quality:

    • Ensure that the audio files are in a compatible format and quality. Sometimes, high-bitrate files can cause issues. Try converting the files to a lower bitrate or a different format (e.g., from WAV to MP3 or vice versa) using an audio editing tool like Audacity.
  2. Silence Padding:

    • You've already tried adding silence, but ensure that the silence is at least 0.5 seconds at both the beginning and end of the file. This can sometimes help with DAC (Digital-to-Analog Converter) settling times.
  3. Audio Output Configuration:

    • Check the audio output settings on the EZ-B v4. If possible, adjust the volume levels or any available settings that might affect the audio output.
  4. Ground Loop Issues:

    • Ensure that there are no ground loop issues between the EZ-B and the computer. Ground loops can cause popping sounds. You might try using a ground loop isolator on the audio line.
  5. Firmware and Software Updates:

    • Ensure that both the EZ-B v4 and ARC software are updated to the latest versions. Sometimes, updates can resolve unexpected issues.
  6. Direct PC Soundboard Use:

    • As a temporary workaround, you can use the PC Soundboard in ARC to play sounds directly from the computer. This avoids the EZ-B's audio path and might eliminate the popping.
  7. Hardware Check:

    • Since you've modified one of the EZ-Bs, ensure that the modification isn't causing any unintended issues. Double-check the connections and any bypasses you've implemented.
  8. Testing with Different Cables:

    • Try using different cables for the audio connection to rule out any cable-related issues.

Steps to Use PC Soundboard Efficiently

If you decide to use the PC Soundboard as a workaround, here's a quick guide to streamline the process:

  1. Batch Conversion:

    • Use a batch audio converter to convert all your sound files to a format compatible with the PC Soundboard. This can save time compared to converting each file individually.
  2. Automate File Loading:

    • If you have a large number of files, consider writing a script to automate the loading of files into the PC Soundboard. This can be done using ARC's scripting capabilities.
  3. ControlCommand for Soundboard:

    • Use the ControlCommand() function in ARC to control the PC Soundboard. This allows you to play specific tracks programmatically.
    controlCommand("Soundboard PC", "Track_0");
    

Additional Resources

If these suggestions don't resolve the issue, please feel free to provide more details or ask further questions. I'm here to help!


I am a customer support GPT-powered AI and still learning. If you have doubts about my response, please use the support documentation to verify my answer.
#2  

@Athena,

Thanks for the advice. I have thoroughly tried each of your suggestions many time and in different ways in my troubleshooting efforts. It's good to have my efforts validated by your suggestions. The only suggestion you gave that I hadn't considered and that has been suggested by many other people I've asked for assistance is a possible ground issue.

I have three AC to DC power converters powering my robot with devices. motors and lights split between them. I spent a bunch of time today testing and making sure I didn't have any floating DC neutrals or grounds. I used a continuity tester to make sure all DC grounds (neutrals ) and the earth ground were connected. I actually did find that one of the power supplies powering the sound system was isolated and the DC neutral side was not tied to any of the other two power supplies DC neutrals or to the earth ground. Sadly when I tied it down to earth and made sure it had continuity with the others the popping issue did not go away.

Judging from all my testing and troubleshooting the issue lies somewhere in the connection between the computer and the EZB. I have tried different USB to Serial conversion cables, different EZB's and the popping doesn't stop. The fact that I can hook a sound cable directly from the computer headphone jack into my sound system (bypassing the EZB and it's direct serial connection) then play a file using ARC's PC soundboard with no popping tells me that my sound system is not the issue. I have not tried to switch back to a WIFI connection to see if the popping will stop. However before I mounted the computer on the robot and directly connected it to the EZB I was connecting over WIFI and didn't have this issue. I may try just for giggles.

However at this point I think I'm just going to reroute the sound system to the PC headphone jack and load all my sound files into PC sound boards. I have hundreds of sound files scattered over many EZB soundboards so it's going to be a chore. @Athena, you mentioned a script that could do the work for me. Could you write an example of a Javascript that could exactly copy the EZB sound board sound file entries into PC soundboards? Would I have to create the PC sound boards first?

PRO
Canada
#3  

Certainly! While there's no direct method to automatically transfer sound files from the EZB Soundboard to the PC Soundboard within ARC, you can use a script to help automate the process of loading sound files into the PC Soundboard. Here's a step-by-step guide and a sample JavaScript script to assist you:

Steps to Automate Sound File Loading

  1. Organize Your Sound Files:

    • Ensure all your sound files are in a single directory on your computer. This will make it easier to load them into the PC Soundboard.
  2. Create PC Soundboards:

    • Manually create the necessary number of PC Soundboard skills in your ARC project to accommodate all your sound files.
  3. Use JavaScript to Load Files:

    • Use a JavaScript script to iterate through your sound files and load them into the PC Soundboards.

Sample JavaScript Script

Here's a sample script that demonstrates how you might automate the loading of sound files into the PC Soundboard. This script assumes you have a list of file paths and that you've already created the necessary PC Soundboards in your ARC project.

// Array of sound file paths
var soundFiles = [
    "C:/path/to/sound1.mp3",
    "C:/path/to/sound2.mp3",
    // Add more file paths as needed
];

// Function to load sound files into PC Soundboard
function loadSoundFilesToSoundboard(soundboardName, files) {
    for (var i = 0; i < files.length; i++) {
        // Use  ControlCommand to load each file into the soundboard
        controlCommand(soundboardName, "AddTrack", files[i]);
    }
}

// Load sound files into the first PC Soundboard
loadSoundFilesToSoundboard("Soundboard PC 1", soundFiles);

// If you have multiple soundboards, repeat the process for each
// loadSoundFilesToSoundboard("Soundboard PC 2", anotherSetOfSoundFiles);

Notes

  • File Paths: Ensure the file paths in the soundFiles array are correct and point to the actual location of your sound files.
  • Soundboard Names: Replace "Soundboard PC 1" with the actual name of your PC Soundboard in ARC. If you have multiple soundboards, you'll need to repeat the process for each one.
  • Manual Setup: You'll need to manually create the PC Soundboards in ARC before running the script, as the script only loads files into existing soundboards.

Additional Considerations

  • Batch Processing: If you have a large number of files, consider using a batch processing tool to organize and prepare your files for loading.
  • Testing: Test the script with a small number of files first to ensure it works as expected before scaling up to your entire collection.

This approach should help streamline the process of transferring your sound files to the PC Soundboard, reducing the manual effort required. If you have any further questions or need additional assistance, feel free to ask!


I am a customer support GPT-powered AI and still learning. If you have doubts about my response, please use the support documentation to verify my answer.
#4  

Hi Dave,

I've watched your video (very good troubleshooting there all the way around) and I feel like I've ran into very similar issues with my Halloween robot Captain Sisco.  I think all of Athena's advice is all good general troubleshooting, but you can see the difference in the video, and I believe you did rule all those suggestions out.

My only question that I haven't seen answered yet is - did the sound work at one point with the EZ-B soundboard and speaker system without the pops or this is the first go and just discovered the pops?  Like, perhaps it worked with a previous version of ARC but the newest updated introduced the pops?  Or it worked fine with a different EZ-B but with this one it pops?

With my Captain Sisco pirate robot, I got all sorts of pops at first using the EZ-B speaker output with an audio cable to an external powered speaker.  What I had to do was fine tune the audio level slider of the EZ-B sound board in ARC (adjust it down) and adjust the powered speaker system to where it was louder (but not so loud it sounded like a muffled fast-food speaker from 1982).  Once I found the sweet spot I had clean audio without the pops from the EZ-B.

Overall though I can't help but think the soundboard of the PC audio from ARC is probably more robust if you have an onboard PC available vs. the EZ-B soundboard.

#5  

Hi @JustinRatliff . Sorry for the late reply. I've been prepping for this hurricane that is approaching.

Anyway, to answer your question as best as I can; Actually in the past with other ARC versions (and before I mounted the computer on the robot and direct connected) I did have random pops. However for the most part, they were few and far between. Nothing as pronounced as now and that I showed in the video. Also I've been experimenting with the volume sliders on the EZB soundboard with no results. I've lowered the slider to below 10 and the pop stays. It only reduces in volume in proportion to the voice file volume. Adjusting my amp volume up as you mentioned only make the pop louder.

Also I have tried sending this sound file through two other EZB's and still can hear the POP in their small onboard speaker.

I'm really out of options and energy to keep working on this issue. The only things I haven't really done to troubleshoot is to rebuild a stand alone sound system outside of the robot to see if isolating the it helps. The other thing is to switch an EZB over to WIFI and test that way.

I'm kind of discouraged and frustrated that I can't get a sound file to play without that popping at the start and finish. I feel my only path forward to a clean voice is to directly connect my PC from the headphone out jack to the robots sound system amp. That has proven to work and sound nice. Once done, I'm going to have to re-load all my sound files I'm using into the different ARC PC soundboards needed.

Thanks again for reaching out with the thoughtful suggestions.

#6  

Dave, that's right, I forgot you are down there in Florida and there is another hurricane heading that way!  Stay safe!!

I feel your frustration, I keep thinking about the audio playback and it sure seems like something in the hardware but darned if I can think of anything else to suggest.

#7  

I never was able to figure out why I had the loud Pop at the start and end of my sound files when running them through the EZB that I showed in the above video. I decided to go another way that actually works better.

As seen in Part 1, my last video (above), I had all sound files (along with all other robot control) running through a direct connection between the computer and the EZB via a USB to Serial converter cable.

After much testing and troubleshooting I came to believe that the sound Popping problem lies in that connection somewhere. All other control of the robot works great. As I demonstrated in the above video, I show I can move the robot's sound system patch cord from the EZB to the Headphone Out Jack of the computer, move sound files into an ARC PC (digital) Soundboard Skill from the EZB Soundboard and when played the Pop goes away.

This video, Part 2, shows how all that worked out. As a treat I also show some of the response and animation I can get from the robot using my main form of control, voice recognition. Enjoy!