The sound is good enough that I can actualy tell it is me speaking. But I need help getting rid of the embedded noise.
The attached zip includes the original WAV and a recording of the PIC playing back the sound.
I am unsure what the noise is.
Is it normal BTC noise that the RC should be filtering out?
Could it be a flaw in the playback code I wrote?
The noise seems to cover a wide range of freqs such that I could not get rid of it using an equalizer. (testing to see what cuttoff I needed for the low pass filter)
This is what the BTC software indicates for the RC filter. I need to add an amp which will also require a low pass filter as I understand it.
; Size 62708 bits (7838 bytes)
; Sound encoded at 44100 bits/sec
; using BTc16 1.5bit Algorithm to be decoded on
; the following circuit:
; R = 1596 ohms
; each 2R = 3192 ohms
;
;
; Digital ----------2R-----,
; |
; Digital ----------2R-----*----- Analogue
; | out
; |
; |
; C = 0.22 uF
; |
; |
; |
; Gnd
I used a 220000 pF cap. 2.7K resistors each followed by a 1K pot. None of it seems to be critcial (work?). Changing the cap value does not seem to change the sound. It works about the same without one.
More details.
The PIC is a 16F1330 running on the internal OSC with the PLL with an effective clock of 32MHz. The BTC data is stored in a 24LC512.
The playback code is a modified version of Microchips C18 code used to read I2C EEPROMs. The only real change is that I wait for a bit period to elapse prior to outputing the bit and reading the next from the EEPROM.
If anyone thinks it is my code I will post it.
Any ideas where to go from here ?
The attached zip includes the original WAV and a recording of the PIC playing back the sound.
I am unsure what the noise is.
Is it normal BTC noise that the RC should be filtering out?
Could it be a flaw in the playback code I wrote?
The noise seems to cover a wide range of freqs such that I could not get rid of it using an equalizer. (testing to see what cuttoff I needed for the low pass filter)
This is what the BTC software indicates for the RC filter. I need to add an amp which will also require a low pass filter as I understand it.
; Size 62708 bits (7838 bytes)
; Sound encoded at 44100 bits/sec
; using BTc16 1.5bit Algorithm to be decoded on
; the following circuit:
; R = 1596 ohms
; each 2R = 3192 ohms
;
;
; Digital ----------2R-----,
; |
; Digital ----------2R-----*----- Analogue
; | out
; |
; |
; C = 0.22 uF
; |
; |
; |
; Gnd
I used a 220000 pF cap. 2.7K resistors each followed by a 1K pot. None of it seems to be critcial (work?). Changing the cap value does not seem to change the sound. It works about the same without one.
More details.
The PIC is a 16F1330 running on the internal OSC with the PLL with an effective clock of 32MHz. The BTC data is stored in a 24LC512.
The playback code is a modified version of Microchips C18 code used to read I2C EEPROMs. The only real change is that I wait for a bit period to elapse prior to outputing the bit and reading the next from the EEPROM.
If anyone thinks it is my code I will post it.
Any ideas where to go from here ?