[aprssig] slightly OT talking about 9k6

Ross Whenmouth ross at topwire.co.nz
Mon May 9 05:04:37 CDT 2016

Hi Jason,

No ETA at this stage (this is just a hobby for me...)

No, you can use multiple I2S audio devices on a Raspberry Pi. I believe 
that the Raspberry pi only has a single I2S audio port, the short answer 
is that this limits you to full-duplex stereo.
The long answer is that you might be able to do a dirty hack and 
multiplex more than two channels over the I2S interface (eg run the 
Raspberry pi's I2S interface in 32bit sample mode and use the high word 
of a sample for one 16 bit channel and the low word for another) - this 
of course would require special "non-standard" drivers to make ALSA etc 
mux two logical sound cards to the one physical I2S interface, and some 
custom logic between the I2S interface and the codec chips, so that the 
16 bit samples from each codec are muxed/demuxed to/from the correct 
word in each 32bit I2S sample.

Eliminating the VOX function (PTT control only by GPIO) would reduce the 
requirements for the microcontroller on my audio adaptor to that of a 
simple PTT watchdog timeout (I specified the STM32F301 as it has a fast 
I2S port that can be used to snoop on the I2S stream to determine if a 
channel is transmitting). At the cost of increasing complexity (add an 
I2S clock generator and run the codec in slave mode), a true DC RX 
response could be obtained (instead of rolling off below about 4 Hz).

If the isolation barrier between the Raspberry Pi and the codec was 
removed, and instead an isolated 5V supply was provided to the Raspberry 
Pi (eg isolated 13.8V to 5V PSU), then the design of my board would be 
greatly simplified, with the downside that connection of any 
non-isolated peripherals to the Raspberry Pi (eg a non-isolated 
USB-RS232 converter, connected to say a hardware TNC) would risk 
creating a ground loop. The Raspberry pi's ethernet interface would 
probably be safe to use though, as it is transformer isolated. This is 
of course quite similar to the UDRC: 
http://nwdigitalradio.com/wp-content/uploads/2012/04/UDRCDS.pdf except 
that as far as I can tell (maybe I am wrong?), the UDRC does not have 
balanced audio I/O, an isolated power supply, or good common mode rejection.

Another approach, which I have thought about, but have not expended any 
design effort on, is to replace the Raspberry pi with a 32bit micro with 
ethernet and I2S interface (eg STM32F4xx or LPC43xx). Run JACKAUDIO and 
Ser2Net (RFC2217) servers on the embedded micro to allow software on 
Linux/Windows/MacOSX machines (Raspberry Pi, Odroid, Beaglebone, or full 
blown PC) to use the audio interface and control the PTT via ethernet. 
This is similar to the SignaLink USB, except with better audio IO and 
ethernet comms instead of USB. Of course, if someone was sufficiently 
inclined, I am sure that it would be feasible to program the embedded 
micro to function as a full-blown 1k2/9k6/56k/etc TNC with an ethernet 

Ross Whenmouth

> From:
> Jason KG4WSV <kg4wsv at gmail.com>
> Date:
> 09/05/16 02:26
> To:
> Brian D Heaton <ky9k-lists at ky9k.org>, TAPR APRS Mailing List 
> <aprssig at tapr.org>
> ETA?
> Is the design such that the units can be stacked for multiple units on a single Pi?
> -j
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.tapr.org/pipermail/aprssig/attachments/20160509/83bda730/attachment.html>

More information about the aprssig mailing list