ΣSigmaStudio Ask AI Русский Log in

TCPIP1701 protocol (broken??)

SigmaDSP & SigmaStudio futuredesign Aug 30, 2018 00:00 6 replies Original on forum ↗
Subscribe
futuredesign Question
Aug 30, 2018 00:00

Hi AD,

I'm trying to implement the TCPIP1701 protocol and so far I have Block Write and Safeload write working. However I can't get Readback to work and I can't find proper documentation anywhere.

The question have been asked before, however AD has not answered yet.

Could someone PLEASE provide the structure for the readback-response packet?

Pretty please.....

So far I have figured out, that the read back structure looks something like this:

typedef struct SigmaTcpReadRequest
{
uint8_t controlValue = CommandRead;
uint8_t totalLength1 = 0;
uint8_t totalLength0 = 0;
uint8_t chipAddress = 0;
uint8_t dataLength1 = 0;
uint8_t dataLength0 = 0;
uint8_t addressHigh = 0;
uint8_t addressLow = 0;
}

However the response is totally black-box!

I started disassembling SigmaStudio just to find that maybe TCPIP1701 is not working at all.

I have tested responses with this structure:

typedef struct SigmaTcpReadResponse
{
uint8_t controlValue = CommandReadResponse;
uint8_t totalLength1 = 0;
uint8_t totalLength0 = 0;
uint8_t success = 0;
}

When SigmaStudio receives the response then it UTF8 decodes it and saves the UTF8 length. Now it copies my response, but only the number of chars returned by the UFT8 decoder. What means that if there are any bytes in my response greater than 127 then the UTF8 decoder will interpret the char as a wide and skip the next char. It means that as long as my response does not contain any value greater than 127 everything is fine... however bytes start missing if that is not the case.

For me it seams that the TCPIP1701 response parser is broken... because WHY... WHY would you UFT8 decode a binary stream?

I really hope that AD will respond to this question and help me find a solution.

Ps. My tool is a wifi connected realtime programmer for the SigmaDSP''s and will be opensource so hopeful many other developers can enjoy it.

/Jan

Audio Signal Processors

protocol

TCP1701

SigmaDSP Audio Processors

adau1701

Rocha Reply
Aug 20, 2019 00:00

Hi, i have sucessfull patched tcp.dll ( i can do a full readback ), so i will start a new thread about this problem, AD will know how to solve, if they want ( All versions of Sigma Studio have this bug, also all ADAUs family, is not only ADAU1701 affected.

analogd@lancop.nl Reply
Jul 23, 2020 00:00

Do je have any progress on this matter. (it is different from the 1024 byte problem from Rocha)

I working on the same problem writing over tcp no problems but reading data stalles the connection (restart of sigma studio needed)

Benno

Rocha Reply
Jul 23, 2020 00:00

Hi analogd@ncop.nl, see the folowing threads, you will find what you want.

ADAU1701 TCP/IP detailed Protocol

TCPi Interface for Sigma Studio, using ESP8266 or ESP32

ADAU1701 TCP/IP Emulator

ADAU1701 TCP/IP bug Report

analogd@lancop.nl Reply
Jul 24, 2020 00:00

Thanks will look into this

Benno

analogd@lancop.nl Reply
Jul 24, 2020 00:00

Ok looks like my code was right.

Read all registers in sigma studio works, but if you add a level detector and activate it (flip the switch to on)

Then the TCP connection comes to a halt (also tested with your windows dsp simulator)

Benno

pastedimage1595581017167v1.png
pastedimage1595581017167v1.png
Rocha Reply
Jul 24, 2020 00:00

Hi Benno, i have asked about this a few days, DaveThib gives a good anwser, see this thread Missing Parameter on VU Meter

But i think Sigma Studio will not receive/process this information over TCP/IP without bug corrections/improvements.