Other Parts Discussed in Thread: IWR1642
Hi,
I am trying to issue a commands to run the DCA1000EVM from software (similar to the lua script in mmwave studio). However, I never get the expected response back. It is always a copy of the transmitted command which doesn't match the expected response from any of the docs such as the user guide or other post .
- I'm connecting to address 192.168.33.30 and port 4096.
- The switch sw2.5 is positioned at pin 12.
- I've tried to issue various commands but for simplicity here just attempting the READ_FPGA_VERSION_CMD_CODE (code 0x0E).
- The command I'm issuing is: a55a000e0000eeaa (I've converted this from bytes to hex for visualisation).
- When I read back from the port I expect bytes 5+6 to have the version number in.
When I try to read from the UDP connection though all I ever get back is the exact same message I sent? I've also tried issuing the command as little endian (5aa50e000000aaee) but still just get the same response back.
Any help very much appreciated as I really want to start doing some signal processing with the data in live environments.
Thanks
Just for completeness the code I'm using to send and receive for the version command :
# Setup the configuration socket. sockConfig = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) config_address = ('192.168.33.30', 4096) sockConfig.bind(config_address) # Get FPGA version. header = (0xA55A).to_bytes(2,byteorder='big',signed=False) cmdCode = (0x0E).to_bytes(2,byteorder='big',signed=False) dataSize = (0).to_bytes(2,byteorder='big',signed=False) footer = (0xEEAA).to_bytes(2,byteorder='big',signed=False) fpgaVersion = header + cmdCode + dataSize + footer sockConfig.sendto(fpgaVersion, config_address) # Sleep just to give time for code to be processed. time.sleep(1) # Receive data from the socket (up to 4096 bytes). msg, server = sockConfig.recvfrom(4096) # Print the sent and received message as hex. print(fpgaVersion.hex()) print(msg.hex())