this program is used to drive a DSP like ADAU1452 from Analog Device Sigmastudio GUI; that's useful for rapid development.
this program is supposed to run on a middleman board with these links:
- an IP connection toward the PC running Sigma Studio
- an I2C bus connected to the DSP board
in my use case, we have running it on a Cubieboard with ARM32 Allwinner A10 SOC running kernel 4.11.xx with buildroot OS (a topic out of scope here..)
this src is loosely based on sample code from: https://wiki.analog.com/resources/tools-software/linux-software/sigmatcp
i've used Sigma Studio 3.14.1 Build 1675 on windows 7 toward an ADAU1452 board
you can have a look at my setup and running test here: https://drive.google.com/open?id=0B9QRW6Oy0Gmea2dDNmpIRjZyOVk
it's pretty simple.
- clone the repo: git clone https://github.com/aventuri/sigma_tcp.git
- cross compile the source in the final single bin sigma_tcp
- eventually adjust the BASEDIR var in Makefile to match your local environment
- copy the binary in your SBC root fs
- execute as ./sigma_tcp i2c /dev/i2c-1 0x3b, some verbose print tells you about IP and port
- get to Sigma Studio, cfg the prj to lookup for IP connection (with param from above)
- open connection (the tool will spit out some messages)
- link compile download youre DSP design into the DSP (lot's of prints on tool..)
example of this invocation:
# ./sigma_tcp i2c /dev/i2c-1 0x3b
Utility for driving ADAU1452 over IP/I2C using SigmaStudio
License GPL v3 or later
Andrea Venturi <be17068@iperbole.bo.it>
current development at https://github.com/aventuri/sigma_tcp
inspired by https://wiki.analog.com/resources/tools-software/linux-software/sigmatcp
Using i2c backend
i2c: Initalized for device /dev/i2c-1-3b
Waiting for connections on port 8086...
IP addresses:
eth0: 192.168.0.103
how to connect the board to the Arm SBC is out of scope, here, but you can check it works with a simple test:
# i2cdetect -y 1
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- 3b -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
usually the DSP has i2c address 0x3b
i've been using a pretty cheap board from aliexpress (..of course i've no economic interest with this vendorI). you can find the schematic of this board (together with a daughter board wih ADC/DAC features thanx to AD1938 IC).
i gladly invite everybody to test this setup and eventually give me feedback, here in gihub or at this forum thread
i'm course open to hear about custom development, as i have made some pretty experience om this stuff!
of course the current release is just a working starter.
i plan surely to test if it works ok with another DSP, the ADAU1701 workhorse, as i have another pretty cheap devel board.
if there are other interests, please elaborate!
have fun