Microphone (Analog) to Ethernet (Digital) to Speaker (Analog) system

AI Thread Summary
To create a system that converts an analog microphone signal to a digital Ethernet signal and back to an analog speaker signal, a microcontroller or Raspberry Pi can be utilized for the A-to-D and D-to-A conversions. The choice of Ethernet protocol is crucial, as it affects data interpretation and sound quality, necessitating careful planning around latency, audio quality, and bandwidth issues. The discussion highlights the importance of defining the project's goals, such as whether the system will handle multiple audio sources or require real-time processing. Suggestions include exploring wireless options for future scalability and using existing programmable controllers to simplify the implementation. Ultimately, the project requires a clear understanding of the desired outcomes and the technical requirements to achieve them.
bergen89
Messages
11
Reaction score
0
Hi,

I would really like to make a system who takes a Microfone(Analog signal) convert it to a Ethernet(Digital signal) and in the end convert it back to Speaker(Analog signal).

How would be the best way to do this? I have thought about using a raspberry pi or a micro controller.

But do anyone have proposal for the best way to do this?

A picture is added who shows in the rectangle what I would like to do.
 

Attachments

  • Micro.jpg
    Micro.jpg
    13.1 KB · Views: 575
Engineering news on Phys.org
bergen89 said:
How would be the best way to do this? I have thought about using a raspberry pi or a micro controller.
The A-to-D and D-to-A conversions are fairly trivial. The problem starts at the Ethernet interface. What protocol are you going to use? Choose the right protocol, and the receiver will have no problem of interpreting the data (and recreate the sounds). Choose the wrong protocol, and you will have to a lot of defining and documenting to do.

Hint: Take a look at http://www.dmn.tzi.org/ietf/mmusic/.
 
  • Like
Likes bergen89
What you drew requires
1. A micro controller to convert microphone data to ethernet
2. An ethernet connection, generally through a router or a switch.
3. A microcontroller to convert ethernet data back to audio to drive a speaker
4. Define any audio processing requirements (EQ, compression, volume, etc)

There will be latency in the process, so you need to specifiy how much latency you can handle. (ethernet and processor delays may be an issue for realtime mic data)
You need to define audio quality requirements. (sample rate and signal to noise ratio)
What kind of microphone and what kind of audio levels (premap levels to an amplifier, maybe?)
You need data buffering to deal with bandwidth issues.

What are you trying to do, exactly, and why over ethernet? Why are you converting to digitial? (are you processing audio? storing audio?, multiple sources or receivers?)

There are many ways to approach this, but it depends on what you are actually trying to accomplish.
 
  • Like
Likes bergen89
Do you want to send it over an Ethernet network (perhaps shared with other traffic) or just send it some distance using Ethernet cable?

The first is harder than the second.
 
CWatters said:
Do you want to send it over an Ethernet network (perhaps shared with other traffic) or just send it some distance using Ethernet cable?

The first is harder than the second.
He doesn't even need to use Ethernet. A simple synchronous serial or parallel digital link would prove the point and would not involve any complicated protocol at all. His line, joining ADC and DAC could just be a piece of wire with, perhaps, a cheat wire to carry some timing information.
The question, as it stands, is as long as a piece of string and needs a bit more detail before it can be addressed.
 
If you think about what is happening in a skype conversation (or similar), there it all is, ethernet and all
Easily implemented and with (somewhat jerky) realtime video as a bonus if you want it.
 
  • Like
Likes sophiecentaur
sophiecentaur said:
He doesn't even need to use Ethernet.
Maybe he doesn't even need to digitize the data
 
meBigGuy said:
Maybe he doesn't even need to digitize the data
Or he could just shout across the room?
A project like this needs to be defined, planned carefully and with every link in the chain taken care of. Is this to be a hardware or mainly software exercise? What does the OP actually want to achieve? My suggestion of not using Ethernet was not ridiculous. People built useful digital links that didn't involve packet data (still do, I imagine) and it avoids many extra layers of complexity and understanding. As with so many of this type of thread, more details are needed about the actual requirement before we can usefully contribute.
Perhaps we should wait for the OP to respond before getting into an argument about what he really needs.
 
meBigGuy said:
What are you trying to do, exactly, and why over ethernet? Why are you converting to digitial? (are you processing audio? storing audio?, multiple sources or receivers?)

There are many ways to approach this, but it depends on what you are actually trying to accomplish.

I never said your suggestion was ridiculous. Mine isn't either. Why does he need digital? What is he trying to do.
 
  • #10
Thanks a lot for your responses. I have created a new drawing that's shows better what I would like to accomplish.The reason I would like to use Ethernet is because I would like to learn more about ethernet, and it is easy to connect more devices on both side, and I would also like to learn more about microkontroller or raspberry pi. Depens on what would be the best to use for this system.
It would also be cool to get more out of the man/woman with different kind of sensors it the future after i have created to link and the communication with the man/woman. Thats why i would like to use a microkontroller or raspberry pi.

What I been thinking about to now:
  • Using a raspberry pi because it has ethernet included. And then it would easy to get a link. Maybe I could install a operating system and use the connection on it for mic/speaker. But when i connect to the raspberry pi it would be like I am on that computer, so it will maybe be hard to get the communication(Mic/speaker) with the man/woman(raspberry pi) and the PC.
  • Would it maybe be better to use microkontroller? If so, and suggestion for the best one to use?
 

Attachments

  • Picture.jpg
    Picture.jpg
    19.9 KB · Views: 602
  • #11
meBigGuy said:
What you drew requires
1. A micro controller to convert microphone data to ethernet
2. An ethernet connection, generally through a router or a switch.
3. A microcontroller to convert ethernet data back to audio to drive a speaker
4. Define any audio processing requirements (EQ, compression, volume, etc)

There will be latency in the process, so you need to specifiy how much latency you can handle. (ethernet and processor delays may be an issue for realtime mic data)
You need to define audio quality requirements. (sample rate and signal to noise ratio)
What kind of microphone and what kind of audio levels (premap levels to an amplifier, maybe?)
You need data buffering to deal with bandwidth issues.

What are you trying to do, exactly, and why over ethernet? Why are you converting to digitial? (are you processing audio? storing audio?, multiple sources or receivers?)

There are many ways to approach this, but it depends on what you are actually trying to accomplish.
Thanks a lot for your respond.
2 is easy and I have found a way to to this.
1 and 2 what kind of micro kontroller do you suggest? How hard is this to program, or is it micro kotroller who is ready to use?
I have programmed micro kontroller before, but it has been easy program's.

I see that it are some issues I have to deal with; latency, audio quality, amplifier and bandwidth issue. I have some knowledge on all of that, but to you think it is some kind of similer system out there who I can adjust more to what I would like, or to I have to to all that myself.

I would like it to go tru ethernet because i would like to get more out if the link in the future, but start with the communication link. I would like to communicate with a person, and than it is easy on the other side to just change computer if another would like to communicate with a peron. I have added a new picture who shows a better what i would like to accomplish
 
  • #12
  • #13
Here is an amazing little board with embedded wireless (wifi and bluetooth) on board. It also has a USB interface which could connect to a cheap soundcard such as http://www.cnx-software.com/2015/02/01/connect-speakers-to-any-mini-pcs-with-a-1-usb-sound-card/

http://nanopi.io/nanopi2.html
http://wiki.friendlyarm.com/wiki/index.php/NanoPi_2#Resources compares to raspPi

I think wireless makes more sense than wired ethernet given your ultimate goals.

Also, neat comparison of all the single board devices:
https://en.wikipedia.org/wiki/Comparison_of_single-board_computers
 
  • Like
Likes donpacino
  • #14
it seems meBigGuy has beaten me to it...
i would recommend using a rasPi with an ethernet board at the transmitting end. That would be one of the simplest ways to implement this system while still learning a LOT and making it yourself.

On the receiving end...
you can use another rasberry pi system
you can use a typical computer, if you make the code compatible with a standard wifi router and able to communicate with OS.
You can buy a FPGA dev board (like a spartan board) and try your hand at FPGA VHDL/Verilog design.
 
Back
Top