I'm working on a wireless project and was wondering if there is a way to use the UNO to receive an analog in from a speaker system, convert it to a digital signal to send through a transmitter/receiver, then have a DAC on the receiving end and have it play back on the same type of speaker system at the receiving end with little to no delay. Thoughts?
The "little to no delay" depends on how you define "little". Given typical radio modules on the hobby market, continuous streaming of high quality audio is not possible, as they all transmit short packets at relatively slow over-the-air rates.
First half... Analog input to "digital" output:
https://docs.arduino.cc/built-in-examples/digital/tonePitchFollower/
Forget an Arduino Kludge, It will be cheaper and easier to use existing Bluetooth technology. Search on things like Bluetooth audio transmitter and Bluetooth speaker.
Yor topic has been moved. Please do not post in "Uncategorized"; see the sticky topics in Uncategorized - Arduino Forum.
What quality sound do you want?
Hifi will not be possible.
Walky talky quality csn be done.
Edit after remark @Grumpy_Mike:
Hifi quality cannot be reached because:
The ADC of uno has a max sample rate that is too slow. Also it is only 10 bits.
Thanks
Walky talky is more than sufficient. I have an existing cabled system going floor to floor and need a wireless transmission to an elevator. Im using a tc832 rc832 combo to send to the elevator because of distance but I need a DAC on the receiving end. because its 1000' tall, There will likely be a delay. I dont need a return signal fortunately.
Advice: Get the wireless part to work before even attempting to do the audio part. Chances are pretty slim, unless the distance is measured less than 10 feet and nothing solid in between.
This thread and link to an example could get you started on making a "walkie talkie". The Xiao nRF52840 Sense is powerful enough to make one, and has a built in digital microphone.
No.
You can change the sample rate by changing the pre-scale of the A/D module. For example:-
Pre-scale division for about 36K sps (samples per second) for A/D clock
// set up fast sampling mode
ADCSRA = (ADCSRA & 0xf8) | 0x04; // set 16 times division
Also 10 bits is fine for voice communication, in fact 8 bits will do "telephone quality"