MIL-STD PC Sound Device Modem User Guide · USB AUDIO FRAMEWORK As a USB audio device class, an...
Transcript of MIL-STD PC Sound Device Modem User Guide · USB AUDIO FRAMEWORK As a USB audio device class, an...
MS-PCSDM
User Guide
1
MIL-STD
PC Sound Device Modem
User Guide
Current for firmware:
Av1.01 Build 1.0.0.0
POC for this document is:
The information contained herein is subject to change
without prior notice.
MS-PCSDM
User Guide
2
OVERVIEW
This document provides information regarding the MIL-STD PC Sound Device Modem (MS-PCSDM)
firmware project which targets specific devices within the TI C5000 16-bit fixed point math DSP device
family.
Also provided are the steps required in configuring the targeted TI DSPs host boards for out-of-the-box use
of the MS-PCSDM firmware.
The use of MS-PCSDM with the target C5000 host boards is pretty much the same as any other USB
AC’97 PC Sound Device that you may have used with MARS-ALE and MS-DMT or any other software
used in support of MARS communications. You simple plug it into the selected USB port on the PC and it
is all plug and play with the standard USB audio drivers on your computer operating system being used.
The host board needs to be wired up your HF radio for audio input/output and either CAT PTT or RS-232
based PTT must be used separately from the host board at this time. The end user will also need to
configure some sort of enclosure for their host board. As this is all DIY by the end users these subjects are
touched upon with some ideas in the last section of this document.
USB AUDIO FRAMEWORK
As a USB audio device class, an audio interface is provided in firmware on the C5000 target device on the
host board which allows it to act as a generic USB audio device. Most operating systems provide native
support for generic audio class devices which means that no operating system specific drivers are required.
The generic USB sound driver under MS-Windows, Linux and MAC OS X have all been found to work,
potentially it should work with any host operating system that natively supports USB audio class devices.
The AIC3204 codec on the C5000 host boards being targeted provides for 24 and 32 bit support at greater
than 48kHz which the USB audio device class framework is not currently programmed to provide and not
required for our needs. The MS-PCSDM USB audio device class currently provides 16-bit recording and
playback interface over a range of sample rates of 8kHz to 48kHz and provides for both input and output
volume and mute control.
The C5000 devices being targeted can be configured to boot from Flash memory, USB port or Micro SD
card. However the MIL-STD PCSDM project firmware shall only configured to boot from the Micro SD
card as other uses of the SD card shall be made at boot time.
MS-PCSDM
User Guide
3
The MS-PCSDM audio interface for Audio Input and Output shall be detailed herein for each target host
board. This will require custom cabling between the host board and the HF SSB transceiver to be used.
This may require audio isolation transformers if isolation is not provided by the HF transceiver, such as
with a TS-480SAT.
The AIC3204 provides Signal to Noise Ratio of DAC = 100db SNR and ADC = 93db SNR and Dynamic
Range of DAC = 95db SNR and ADC = 90db SNR and Jitter performance 50 pico sec. (ps) RMS (10kHz
to 20MHz). The screen capture of Spectrum below was using MS-PCSDM connected to an IC-7200 on a
dummy load using a Dell Latitude E6420 running Windows 7.
In comparison, below is the same Dell computer using its internal AC’97 sound device. Note the increased
noise floor and artifacts with the same IC-7200 still connected to the dummy load.
MS-PCSDM
User Guide
4
Lastly, below is the same Dell computer with a COTS radio interface plugged into the same USB port that
was used with MS-PCSDM in the first image. Note the severely increased noise floor and artifacts mainly
due to poor USB port D.C. line filtering with the same IC-7200 still connected to the dummy load.
The AIC3204 codec supports both single ended and differential audio pairs, however as a fully compliant
USB Audio Device in application only single ended shall be initially supported.
As previously stated, at this time there is no interface provided via the C5000 host boards for either radio
remote control (CAT) or hardware PTT keying lines. However the HID can be used for command and
control of on board hardware General Purpose I/O (GPIO) to interface with and control radio equipment
via computer software so modified for such command and control. At this time there are no plans to do so
however.
There is no Man Machine Interface (MMI) for a so called “front panel control” interface using the OLED
display and buttons or other MMI hardware of the host board for MS-PCSDM as to level control or any
other applicable selections. All configuration of levels, sample clock selection is handled via the Windows
(or other) operating system sound device panel.
There is the potential of using the C5000 host board GPIO and on-board UART for interfacing with
supporting electronic (audio isolation transformers, opto-isolator for GPIO based PTT, RS-232 ports,
jumpers to select between single ended or differential audio I/O, etc.) components via the host board
expansion connector(s) with a daughter board (PCB) that would need to be designed for any or each target
host C5000 board. Such efforts can be undertaken by interested parties in support of MS-PCSDM or later
in support of potential embedded modem application.
In the case of the C5535 eZdsp board detailed later herein, such a daughter board could be attached at a 90
degree angle to the C5535 eZdsp edge connector and would provide for real world interfacing via
connectors on the daughter PCB its rear that will protrude through the enclosures rear panel. Then too the
on-board wireless connectors could be used for another daughter board for GPIO interfacing for an optional
front panel MMI along with a larger LCD when we move into embedded hardware modem development.
The photo below serves as an example of using such daughter PCB’s connected to the C5535 eZdsp.
MS-PCSDM
User Guide
5
HOST DSP BOARDS
There are a number of TI products featuring their low power consumption, low cost C5000 DSPs, however
not all of their products have the right mix of features or framework and library support with today’s TI
Code Composer Studio (CCS) development tools. For example the C5502 eZdsp board with its 600 MIPS
of processing power, 10/110 Ethernet PHY and controller with an evaluation IP stack that stills sells for
$90USD would have been nice to use. However it’s just not supported any longer by TI for our needs.
As such the target C5000 (TMS320C5535 or TMS320C5545) devices and the host boards that are suitable
and still fully supported by TI are what we must have to support the USB Audio Class host operation.
When running the MS-PCSDM firmware to provide a High Speed USB 2.0 and compliant Composite USB
Human Interface Device (HID), provide Sound Device support of professional grade audio processing.
The selection of C5000 devices was also based on the desire to undertake the efforts required to develop
embedded MIL-STD modem cores targeting a C5000 class device. The idea being that the first use is as a
USB AC’97 compliant sound device, where a firmware update will transition the host C5000 board from
PCSDM to MIL-STD hardware modem. However this will not be without its challenges. The
C5535/C5545 DPSs at 200/240 MIPS respectfully are more powerful than the older C5000 DSP device
used in the Harris RF-5710A data modem which supports MS110A waveforms and MS110B Appendix C
waveforms.
However the RF-5710A modem does not just use a single DSP processor. The RF-5710A uses a pair of
older TMS320C549 16-bit DSPs where each device provides 100 MIPS at 100Mhz, less than haft that of
the TMS320C5535/C5545 at 100Mhz. The two DSPs are used for respective RX and TX operation support
full duplex operation. However in the RF-5710A modem design also features an IBM PowerPC CPU as the
Modem Control Processor (MCP) to provide all functions aside from waveform generation/modulation and
demodulation etc., which takes the load off the DPSs. Furthermore the DSP firmware is loaded into each
DSP by the MCP whenever the given modem mode selection is changed, this reduces the DSP memory
foot print. In my planned use of the C5535 for a standalone embedded modem there shall be only one and
no MCP involved.
In addition the TMS320C549 DSPs also have a Viterbi coprocessor, however I have no idea if Harris used
it in their implementation or used discrete code for Viterbi. Certain TI DSPs provide coprocessors for
certain communications application needs. The TMS320C5535/C5545 for example provides an FFT
coprocessor, or as they call it an “FFT Hardware Accelerator” that supports 8 to 1024-point (in power of 2)
real and complex-valued FFT’s, which is a bit limited for our FFT requirements.
C5535 eZdsp
The TI TMDX5535EZDSP developer kit (C5535 eZdsp) board is a 6 layer G10 epoxy printed circuit board
(PCB) measuring only 3.35 x 2.65 inches excluding protruding connectors.
It provides a 16-bit TMS320C5535AZHHA10 100 Mhz (200 MIPS) processor and an on board JTAG
debugger USB port, additional UART port, with 16x2 (96 x 16-pixel) OLED display, input switches and
MicroSD card slot, with plenty of interfaces, such as I2S, SPI, USB2 and more and full documentation.
MS-PCSDM
User Guide
6
As originally developed, the $99USD TI C5535 eZdsp development board was the only target host board
for the MS-PCSDM project. However in mid 2018, after many years of selling the C5535 eZdsp at
$99USD, TI arbitrarily increased the selling price to $249USD. Due to increase in cost, the C5535 eZdsp
board can no longer be recommended for purchase.
However, after a lot of research I have identified other TI C5535 compatible boards for our needs that are
priced at and below that $100USD mark. There are two boards currently available from TI MSP432™
Microcontroller (MCU) LaunchPad development kit product line and one previous created in conjunction
with Stanford University as an Arduino C5535 DSP Shield.
The C5535 eZdsp shall continue to serve my development efforts due to the onboard emulator and JTAG
debugger. Those who own eZdsp boards can rest assured of continued support in my development efforts.
MS-PCSDM
User Guide
7
C5000 Audio Capacitive Touch BoosterPack
The LaunchPad C5000 Audio Capacitive Touch BoosterPack (430BOOST-C55AUDIO1) board is an add-
on product for the MSP430™ Value Line LaunchPad development kit (MSP-EXP430G2).
It is NOT a developer kit board, as such it is not fully documented for such use and does not provide all the
features of a developer kit, such as emulator and JTAG debugger. However I have re-purposed this C5535
based device for standalone use with the MS-PCSDM firmware and it has proven to work 100% as desired.
In addition the board currently costs only $10USD.
NOTE: For potential embedded modem use I may pair it with the $10USD MSP-EXP430G2 board as seen below for which it
was designed to mate for the added MMI and other hardware features provided.
The Capacitive Touch interface would make for a nice Man Machine Interface (MMI) in conjunction with
the LCD display for configuration and selection of parameters for potential embedded modem application
where any external terminal software being used does not support the remote control command interface.
MS-PCSDM
User Guide
8
Here is a video of the capacitive interface being used with the MP3 firmware:
https://www.youtube.com/watch?v=1pWKCLE7ebo
This board has a lot of potential for future use as far as interfacing is concerned. However not all aspects of
the hardware are provided on the header connectors or even enabled. There is a lot of study of the
schematic and PCB required with good magnification scope out all the details.
However from what I can see with the bare eyes, there is even a location for a JTAG header, however
according to many TI comments there is no support provided in the C5535 DSP device for emulation and
JTAG, yet the PCB has the pads for the header as seen below. Then there is the missing U10 device on the
rear of the PCB which is likely for an FTDI FT2232 dual port chip. One of the FT2232 ports is configured
for UART and the other for JTAG.
There are also points on the PCB with various labels such as Test Points (TPn) and others that provide
access to pins on the devices not being used in the design. There are also pads for the needed missing
components such as resistors required to enable various features when in place for D.C. bias.
For example, four GPIO lines can be wired for use via a ribbon cable to a cluster of test points to the right
of the C5535 DSP on the PCB.
MS-PCSDM
User Guide
9
C5545 BoosterPack
In addition there is the LaunchPad C5545 BoosterPack (BOOST5545ULP) board which features a
TMS320C5545 DSP processor that is 100% firmware compatible with the TMS320C5535 DSP but having
a few less pins and GPIO lines. The C5545 running at 120Mhz provides 240 MIPS of processing power.
In addition to the features of the C5535 eZdsp, an on-board CC2650BLE radio and on-board SimpleLink™
Bluetooth® low energy CC2640 wireless microcontroller is provided. It connects to the MSP432™ MCU
LaunchPad development kits via expansion headers for combined projects or used standalone. The C5545
BoosterPack connected with an MSP432P401R LaunchPad is a common combination.
At present it is priced at $100USD. Due to its cost, I have not purchased and tested it with MS-PCSDM,
and thus shall not document it for use with the MS-PCSDM firmware, although it should work just fine.
The board features an OLED display and on board switches to create an MMI interface and then too it
features the CC2650BLE for a wireless MMI.
MS-PCSDM
User Guide
10
C5535 DSP Shield
The C5535 DSP Shield is designed to be both a “Shield” (i.e.daughter card) for the Arduino Open-
Hardware family of microcontroller (uC) boards and also a Stand-Alone development board. Why TI never
designed a similar product as a Beaglebone Black Cape is beyond my grasp!
The TI DSP Shield board is no longer available from TI or anyone that I can find even though it only
debuted in 2013. However it can be used standalone without an Arduino should anyone have one or happen
to come across one. I have the full documentation on the board for anyone that may need it, however the
boards details for use with MS-PCSDM will not be detailed herein. As it is C5535 based and has an SD
card slot and is a developer kit board with all the features of the C5535 eZdsp and should work just fine
with MS-PCSDM.
The block diagram below provides all the details on the DSP Shield capabilities.
MS-PCSDM
User Guide
11
OUT-OF-THE-BOX SETUP C5000 Audio Capacitive Touch BoosterPack
Due to its $10USD price tag of the C5000 Audio Capacitive Touch BoosterPack (C5000 ACTB) board, it
is now the main choice as the MS-PCSDM host board. The C5000 ACTB as I like to call it (get it? “Act
B”) is quite a bargain for its cost. However the down side is that it is not as fully documented as a
developer board as it is basically meant to be used as an-add on product to the MSP-430 launchpad to get
familiar with Capacitive Touch interfacing.
The C5000 ACTB board comes packaged with the board, a Quick Start Guide, Micro SD card and adapter,
TRRS Mic/Headset and USB cable and pre-programmed MSP-430G255 MCU as seen below. However the
MSP-430G255 board also seen in the TI stock photo is an optional purchase item that the C5000 ACTB
plugs into.
The Micro SD card with all MP3 player demo files shall not require and can be deleted or saved elsewhere
if the SD card provided shall be used with MS-PCSDM. The MSP-430 MCU shall not be required for MS-
PCSDM use either, it is meant to replace the MCU on an MSP-430 MCU board when configured as an
MP-3 player. The headset is not require for MS-PCSDM use, but can be used for testing the board as a
USB composite sound device as desired when the MS-PCSDM firmware is booted.
The C5000 ACTB board is meant to plug into the MSP-430G255 MCU board will not power on when
plugged into the computer’s USB when not attached to an MSP-430G255 MCU board if it is not modified.
After reviewing the board schematic I determined that there are two ways to address this, one is to add a
4.7k ohm resistor to SMD pads for R55 which is not populated on the PCB. Doing so will complete the
circuit and power the board when plugged into the computer’s USB port.
MS-PCSDM
User Guide
12
The use of a fine tip 15 watt soldering iron with very thin .38mm or .55mm 60/40 lead/tin solder is
required. A 4.7K ohm SMD resistor such as a Peavey P/N 30200165 would be the proper resistor to use,
but an axial lead ¼ watt resistor could be pressed into use.
I tested this by holding an axial lead resistor across the pins. If soldered into place a resistor would prevent
normal operation when used with a MSP-430G255 MCU board.
The other approach is a jumper wire between P3-3 to P4-1 that will allow for powering the board from the
USB port when not attached to the MSP430G255 MCU board as it will simulate the presence of the MCU
board and is a much easier approach as well. A single male/male standard-pitch 0.1" (2.54mm) header
jumper works great and allows for easy use of the MSP-430G255 board in my future efforts.
MS-PCSDM
User Guide
13
Alternatively an insulated wire could also be soldered at the PCB solder pads circled in RED above, for the
header connectors between inside or outside of the header connector pins at the PCB as desired, which
would require removal should the board be plugged into the MSP-430G255 board or even perhaps our own
DIY PCB for future radio interfacing.
Once modified to power from the USB port as a standalone board the MS-PCSDM firmware boot.img file
needs to be copied onto an empty Micro SD card and inserted into the SD card reader slot. The first step is
to remove the Micro SD card and use the SD card adapter to insert the media into your PC SD card slot to
over write the distribution “bootimg.bin” file with the MS-PCSDM firmware bootimg.bin file. The most
recent MS-PCSDM boot image file will always be found in the “Current Boot Image” folder of the files
section in this projects group.io forum.
The naming convention of the file shall be “MS-PCSDM_A_Vn.nnBnnnn.zip” where “_A_” is for Alpha
code, “Vn.nn” is for Version and “Bnnnn” is for the Build.
For example, the first firmware released was found in the file: MS-PCSDM_A_V1.01B1000.zip
The default jumpers from the factory are fine for our needs when using the board standalone.
Next attach the micro USB cable and the headset/mic if you desire, then plug the USB cable into the
computer.
MS-PCSDM
User Guide
14
The Windows OS drivers for USB sound device will install for the support of the MS-PCSDM firmware.
When the USB cable is plugged into the computer and booted. The MS-PCSDM version and build number
will scroll on the display as seen below.
At this point the operating system will install its generic USB sound device drivers, once completed the
board is immediately available for use with any software you may want to test it with using the
headset/mic.
The next step is wring up for radio audio input/output or use of an adapter with existing 3.5mm cabling.
The board uses a 4 conductor TRSS jack that is standard for many devices these days, such as my Dell
laptops. The pinout for the boards jack is seen below.
*NOTE: There is a TI TS3A225E Headset Detection & Switch on the board that will flip pins 3 and 4 as required when MIC
and GND are reversed on different headsets. I did not find this to be an issue in testing the board where MIC input was being
used.
A standalone plug to make with the jack is wired as follows.
An adapter cable to existing 3.5mm stereo cabling can also be used.
MS-PCSDM
User Guide
15
NOTE: I can highly recommend these sold in a pair of two, isolators. I started working with them in my baseband HF Channel Simulator along with other tools. These COTS Ground Loop Isolators with Male/Female 3.5mm connectors are $6 each. The unit uses
600 ohm 1:1 isolation transformers. Below is a photo of the item and the URL link:
http://www.uneeksupply.com/MINI-35MM-NOISE-FILTER-GROUND-LOOP-ISOLATOR-CAR-AUDIO_p_6814.html#
MS-PCSDM
User Guide
16
C5535 eZdsp
The C5535 eZdsp USB board with 2GB Micro SD card installed is also packaged with Quick Start Guide,
mini CD, SD card adapter, Mic/Headset and USB cable as seen below.
The only items of real interest to the non-developer is the C5535 eZdsp board, USB cable, Micro SD card
and adapter.
The C5535 eZdsp is a developer board vs. a consumer product, as such it is not even shipped with standoffs
to keep the board away from the surface that you rest it upon. That surface should be a clean laboratory
grade anti-static mat or other clean anti-static non-inductive surface if at a minimum standoffs are not used.
The anti-static bag that the board is shipped in can be used as a anti-static mat if you desire at first.
If you don’t have any laying around, the only widely available source of real standoffs on local basis that is
the proper size is at Radio Shack and overpriced, part number 276-1381.
http://www.radioshack.com/radioshack-10mm-insulated-standoffs-4-pack/2761381.html
However many things can be substituted, especially nylon or plastic screws and nuts depending on what
you or the local hardware store may have.
The C5535 eZdsp PCB has points of connection and interest that pertain to our focus on both the front and
rear of the PCB.
As seen below the “J1” USB connector is used via the supplied USB Type-A to USB Mini-B cable to
connect the board to the computer for normal USB sound device operation. In the layout of the front of the
board further below “J1” is located about 12 o’clock, whereas the “J2” USB plug used for development and
MS-PCSDM
User Guide
17
debugging is located at 9 o’clock. A USB 2.0 or USB 3.0 port is required on the PC when the board is
ready for use.
Also near the top edge of the board about 1 o’clock is Dip Switch “SW3” which must be properly
configured for our use of the board. Where SW3-1 = OFF, SW3-2 = ON, SW3-3 = OFF and SW3-4 = ON.
These switches should be in the correct positions as shipped.
The 3.5mm Audio Input and Output ports are located on the bottom edge of the board about 5 and 6
o’clock as seen above.
MS-PCSDM
User Guide
18
There are also two momentary pushbuttons, “SW1” and “SW2” and the 2-line 16 character LCD display on
the bottom edge of the board about 7 ‘clock as seen above. The LCD will be used for status messages
during and after development. The pushbuttons at present are being used to control audio levels and
muting. As seen below, when the Micro SD card is inserted into the SD card connector, it can be seen
extending beyond the edge of the board under pushbutton switch “SW2”.
The Micro SD connector can be clearly seen about 6 o’clock on the rear view of the board below and the
LCD display connector is near the edge of the board at 4 o’clock.
MS-PCSDM
User Guide
19
The Expansion Edge Connector about 9 o’clock provides 60 points of contact for such things as the
General Purpose IO (GPIO) and UART interfacing. A SAMTEC Mini Edge Card Socket such as part
number MEC1-130-02-S-D-A seen below is required when breaking out to a bread board for development
or interfacing to any future PCB breakout board for radio interfacing.
AUDIO INTERFACING The jack closest to the corner mounting hole is used for Audio Output as seen in the close up below,
whereas the jack toward the center is audio in.
These 3 wire 3.5 jacks are wired for stereo where, as always is the case, the Tip, the Left Audio Channel is
used for our modem needs on each port.
There are no audio isolation transformers on the DSP board, thus if you are not interfacing to a radio like
the Kenwood TS-480SAT which provides such isolation you will need to do so in your cabling to deal with
ground loops.
MS-PCSDM
User Guide
20
NOTE: I can highly recommend these sold in a pair of two, isolators. I started working with them in my baseband HF Channel
Simulator along with other tools. These COTS Ground Loop Isolators with Male/Female 3.5mm connectors are $6 each. The unit uses 600 ohm 1:1 isolation transformers. Below is a photo of the item and the URL link:
http://www.uneeksupply.com/MINI-35MM-NOISE-FILTER-GROUND-LOOP-ISOLATOR-CAR-AUDIO_p_6814.html#
The C5535 eZdsp low impedance audio out can be driven down to a 16 ohm load for full output. While the audio input high
impedance which is currently at 10k ohm and can be programmatically selected at 10k, 20k or 40k ohm via the AIC3204 codec.
Please keep impedance matching and loading in mind when using audio isolation transformers with for your radios particular input
and output impedances. The common practice of using 600 ohm or 1,000 ohm 1:1 transformers can hamper the full range of level control due to impedance mismatch, 10,000 ohm 1:1 would be better.
Below is a section of the board schematic that details the circuitry between the AIC3204 and the input/output jacks.
The AIC3204 actually supports six single ended Left and Right channel or 3 fully differential analog inputs
and either 4 or 2 outputs respectfully. In the above block diagram of the AIC3204 with ADC input to DAC
output depicted from left to right. However As can be seen in the above schematic fragment, the C5535
eZdsp designers choose to only make use of the AIC3204 Headset audio ports and not the line ports, which
as to the PCB runs to the existing jacks we are stuck with using in either single ended or differential
application.
MS-PCSDM
User Guide
21
BOOTIMG NOTE: The C5535 eZdsp supplied 2GB Micro SD card “bootimg.bin” firmware for testing the board upon receipt is the TI distribution C5000 USB Sound Device Framework. However, you DO NOT want to use it. It really sucks, the sample clock accuracy
is very poor and if you use it, you will register the board as a USB device with the TI Vendor and Product ID’s and their naming
conventions and you will not be able to re-register the board as a USB device using my firmware properly until you delete it from your system while running their firmware. To change the VID and PID to be unique to MS-PCSDM requires fees be paid and waiting for
USB drivers to be updated to identify the board as a USB sound device. If you do run their distribution framework the LCD display
will scroll “Play Audio From Your PC” and the four LED’s below the display will always be lit as seen below. Just go into your device manager and delete the device and then reboot the device with the MS-PCSDM firmware for proper operation.
The first step is to remove the Micro SD card and use the SD card adapter to insert the media into your PC
SD card slot to over write the distribution “bootimg.bin” file with the MS-PCSDM firmware bootimg.bin
file. The most recent MS-PCSDM boot image file will always be found in the “Current Boot Image” folder
of the files section in this projects support forum.
The naming convention of the file shall be “MS-PCSDM_A_Vn.nnBnnnn.zip” where “_A_” is for Alpha
code, “Vn.nn” is for Version and “Bnnnn” is for the Build.
For example, the first firmware released was found in the file: MS-PCSDM_A_V1.01B1000.zip
When the C5535 eZdsp is booted with MIL-STD PCSDM firmware, its version and build number will
scroll on the display as seen below. At this point the operating system will install its generic USB sound
device for its use.
MS-PCSDM
User Guide
22
Once the given OS has completed its USB driver install process the board is immediately available for use.
ONCE BOOTED When interfaced for use in either a base band test bed or to an HF transceiver for testing, after booting the
board it can be used with any communications software as to audio processing.
As depicted in the image below of MS-DMT and the “PC Sound Device Setup” dialog, the board will show
up as “Headset Microphone MIL-STD USB” as the input device where “Mic In” needs to be selected. As
the output device it will appear as “Headset Earphone MIL-STD USB”.
The scrolling MS-PCSDM version banner will cease to be displayed as soon as either the board is accessed
by controlling software for use as with Linux or when the first sound block data is sent to the board for
playing or rather transmitting in our application.
At present, as coded in the TI C5000 framework, the on-board push buttons, SW1 and SW2 control sound
levels and mute. However their use is subject to change in the future.
SAMPLE RATE ERROR
I have tested the current firmware release on a number of PC’s using CHECKSR.EXE for comparison. The
current firmware is providing sample rate error within the 20ppm tolerance reference crystals predicated on
the PC tested on. The readings taken on various PC’s using the same board are all rather close where the
PC and its USB driver and USB port in question being the deciding factor.
I have two Dell laptop PC’s that are the same make model where they both read just about the same. As
seen in the screen caps below, we have one of the Dell laptops and the other image my WinBook tablet,
where the output reading is half that of the laptops.
MS-PCSDM
User Guide
23
A second C5535 board just received is it providing even better sample clock performance than the first
board running the same firmware build. Below is a screen cap from the Winbook tablet where for the first
time in the testing any sound device the result is 0ppm error. This is solely attributed the batch of reference
crystals used for this board.
Due to both USB driver and USB port induced errors, a planned MS-PCSDM firmware feature shall be
sample rate calibration. This will be achieved by testing with CHECKSR or perhaps another tool, with the
results entered into MARS-ALE and MS-DMT in the dialog when the MS-PCSDM is the selected as the
sound device modem. The entered factors will be communicated to the firmware for use in sample clock
generation.
SAMPLE CLOCK CALIBRATION
There shall be a Sample Clock Calibration file created on the SD card, details and firmware
support are TBD.
MS-PCSDM
User Guide
24
DIY ENCLOSURE
As stated up front this is a DIY approach, which includes the enclosure to house your host board.
In the future when/if any carrier or daughter boards are created for embedded modem application
of the host board there shall likely be a recommended enclosure.
Depending on your RF environment the enclosure may require some shielding. In my operations
to date I have no found that to be needed. However I have a roll of aluminum duct tape on hand
just in case. Metalized paint for plastic is another approach.
The enclosure its can be some re-purposed plastic or metal container or perhaps a sample from
some vendor of enclosures.
Here is one of my C5535 eZdsp boards inside a re-purposed Sara Lee premium meats container
where I have used an exacto knife to pass through the cables as required. The clear plastic allows
for viewing of the OLED display and LED’s during my development use of the board.
Here is the C5000 430BOOST-C55AUDIO1 board in a Raspberry Pi 3 case that I am told is a
decent starting point fit.
MS-PCSDM
User Guide
25
Here Brad Morris has modified his C5535 eZdsp by removing the onboard 3.5mm stereo jacks
and wiring in place an EZdigi kit kit by KF5INZ with an 4N25 opto-coupler for PTT, audio
isolation transformers and supporting components on a small PCB, which is very popular among
MS-PCSDM users.
The KF5INX kit components are seen below, being a kit, it requires assembly and then
interfacing for PTT and audio I/O and testing by the end user. In Brad’s effort he also added
common chokes to the cabling and wired the KF5INZ kit to a chassis D connector.
Here is the schematic, a real RS-232 port or a USB TTL adapter with DTR or RTS lines are
require for PTT.
MS-PCSDM
User Guide
26
I too have a KF5INZ kit and find it to be a high quality kit for less than $10USD. The various kits
can be ordered via https://www.ebay.com/usr/cliffordwareham?_trksid=p2047675.l2559 or via
direct email to: cliffordwareham1@juno dot com or kf5inzares@gmail dot com