error XN11192 with xTAG3 Topic is solved

If you have a simple question and just want an answer.
danielpinheiro
Junior Member
Posts: 7
Joined: Wed Feb 24, 2016 3:37 pm

error XN11192 with xTAG3

Post by danielpinheiro »

Hi there,


I have bought a xTAG3 and I'm trying to update a device firmware.
I'm using the xTIME Composer Command Prompt v14.1.2, and I have this error "XN11192 Incomplete network configuration"
This is what I'm doing:

C:\xmos>update usbtracker-608.xe
C:\xmos>cmd /c xrun --io readserial.xe 2>serial.txt
C:\xmos>type serial.txt
SERIAL00002DF8
C:\xmos>xflash --boot-partition-size 0x40000 --data serial.txt --factory usbtracker-608.xe
target-xn-v0-70c95a48: Error: XN11192 Incomplete network configuration (no direction specified for link "4" on node "0")
C:\xmos>


Anyone can help me on this?

Daniel


View Solution
User avatar
infiniteimprobability
XCore Legend
Posts: 1126
Joined: Thu May 27, 2010 10:08 am
Contact:

Post by infiniteimprobability »

Not sure how much you know about the tools and binary images..so will explain the basics.

The XN file contains info about network setup (numbers/types of processor tiles/nodes and how they are connected) as well as clock frequency for setting up the PLL on boot and info about connected flash.

Inside every XE binary file, you get a copy of the XN file included in addition to the binary and debug info.

So it looks like the XN file contained within your binary has some incorrect data which the run parser doesn't like..

Where was usbtracker-608.xe created? Was it the same tools version as you are using?

I'm wondering if usbtracker-608.xe is valid..

What happens if you just do xrun (or xsim) usbtracker-608.xe? Does it load and run as expected?

If you're keen to debug the XN file issue, you can extract the XN (as well as the elfs for boot and run for each node, nice info summary about PLL and resource in program_info.txt) by doing:

Code: Select all

xobjdump -s <myfile.xe>
danielpinheiro
Junior Member
Posts: 7
Joined: Wed Feb 24, 2016 3:37 pm

Post by danielpinheiro »

Hi infiniteimprobability,

thanks for the reply.

I'm not an expert in this. In fact, I'm new in xmos programming. I know, not much, C language but it's a school thing.
I work in a repair center and this is new for all of us.

The usbtracker-608.xe is a firmware (version 6.08) to an audio USB device. The manufacturer gave us this file so I believe that the file is ok. I have tried also with an older version.
I have the correct JAVA, I don't know if is something missing (software, dll...) in Windows 7 PC.

I run the xrun and nothing hapens. The xsim gave me this:

Code: Select all

C:\Xmos>xsim usbtracker-608.xe
assertion "PLL_REGRD(0x03) == 0x07" failed: file ".././src/pll/pll.xc", line 64
Unhandled exception: ECALL, data: 0x00000000
C:\Xmos>
I extracted the XN file but I don't know how to debug it.
the program_info.txt gave me:

Code: Select all

Application id number: 0x00000000
Application id string: "".
stdcore[0] (node "0", tile 0) stack usage,  upper bound: 5136
stdcore[0] (node "0", tile 0) program size,  upper bound: 60100
stdcore[0] (node "0", tile 0) free memory,  lower bound: 300
stdcore[0] (node "0", tile 0) thread usage,  upper bound: 6+
stdcore[0] (node "0", tile 0) unused threads,  lower bound: 2
stdcore[0] (node "0", tile 0) timer count,  upper bound: 6+
stdcore[0] (node "0", tile 0) unused timers,  lower bound: 4
stdcore[0] (node "0", tile 0) channel end usage,  upper bound: 29+
stdcore[0] (node "0", tile 0) unused channel ends,  lower bound: 3
 (node 32768, tile 0) stack usage,  upper bound: 6088
 (node 32768, tile 0) program size,  upper bound: 35712
 (node 32768, tile 0) free memory,  lower bound: 23736
 (node 32768, tile 0) thread usage,  upper bound: 7
 (node 32768, tile 0) unused threads,  lower bound: 1
 (node 32768, tile 0) timer count,  upper bound: 8
 (node 32768, tile 0) unused timers,  lower bound: 2
 (node 32768, tile 0) channel end usage,  upper bound: 18
 (node 32768, tile 0) unused channel ends,  lower bound: 14
stdcore[0] (node "0", tile 0) uses port XS1_PORT_1J
stdcore[0] (node "0", tile 0) uses port XS1_PORT_1K
stdcore[0] (node "0", tile 0) uses port XS1_PORT_1L
stdcore[0] (node "0", tile 0) uses port XS1_PORT_32A
stdcore[0] (node "0", tile 0) uses port XS1_PORT_1M
stdcore[0] (node "0", tile 0) uses port XS1_PORT_1H
stdcore[0] (node "0", tile 0) uses port XS1_PORT_8C
stdcore[0] (node "0", tile 0) uses port XS1_PORT_8D
stdcore[0] (node "0", tile 0) uses port XS1_PORT_1N
stdcore[0] (node "0", tile 0) uses port XS1_PORT_1O
stdcore[0] (node "0", tile 0) uses port XS1_PORT_1P
stdcore[0] (node "0", tile 0) uses port XS1_PORT_8A
stdcore[0] (node "0", tile 0) uses port XS1_PORT_8B
 (node 32768, tile 0) uses port XS1_PORT_1F
 (node 32768, tile 0) uses port XS1_PORT_1M
 (node 32768, tile 0) uses port XS1_PORT_1N
 (node 32768, tile 0) uses port XS1_PORT_1B
 (node 32768, tile 0) uses port XS1_PORT_1A
 (node 32768, tile 0) uses port XS1_PORT_1G
 (node 32768, tile 0) uses port XS1_PORT_1P
 (node 32768, tile 0) uses port XS1_PORT_1O
 (node 32768, tile 0) uses port XS1_PORT_1H
 (node 32768, tile 0) uses port XS1_PORT_1E
 (node 32768, tile 0) uses port XS1_PORT_1I
 (node 32768, tile 0) uses port XS1_PORT_1L
 (node 32768, tile 0) uses port XS1_PORT_4D
 (node 32768, tile 0) uses port XS1_PORT_1D
 (node 32768, tile 0) uses port XS1_PORT_1C
 (node 32768, tile 0) uses port XS1_PORT_1K
 (node 32768, tile 0) uses port XS1_PORT_8B
 (node 32768, tile 0) uses port XS1_PORT_4B
 (node 32768, tile 0) uses port XS1_PORT_4E
 (node 32768, tile 0) uses port XS1_PORT_4F
 (node 32768, tile 0) uses port XS1_PORT_4C
 (node 32768, tile 0) uses port XS1_PORT_1J
Node "0" routing id =  0x0000
Node "0" PLL configuration register value =  0x0003e70c
Node "0" reference clock divider register value =  0x00000004
Node "0" system frequency (Hz) =  500000000
Node 32768 routing id =  0x8000
Node 32768 PLL configuration register value =  0x0003e70c
Node 32768 reference clock divider register value =  0x00000004
Node 32768 system frequency (Hz) =  500000000
You need more info?
thanks in advance.
henk
Respected Member
Posts: 347
Joined: Wed Jan 27, 2016 5:21 pm

Post by henk »

Hi Daniel,

Is it possible that the XE file is made with a different version of the tools than the one that you are using?

Cheers,
Henk
danielpinheiro
Junior Member
Posts: 7
Joined: Wed Feb 24, 2016 3:37 pm

Post by danielpinheiro »

Hi Henk,

I have no clue...

I have reported this problem to the audio device manufactor, and they told me to try in another PC.
I have tryied and I have the same problem.
After that, they told me to try with another xTAG3 but I have to buy another...
Is it a hardware problem?

Thanks for trying to help.

Daniel
User avatar
infiniteimprobability
XCore Legend
Posts: 1126
Joined: Thu May 27, 2010 10:08 am
Contact:

Post by infiniteimprobability »

I don't think changing PCs or xtag will help (we know they are OK because xrun --io readserial.xe 2>serial.txt worked) . I think you need to find out from the author of the software what version of tools you need to install to be compatible with the binary they have supplied you..
User avatar
infiniteimprobability
XCore Legend
Posts: 1126
Joined: Thu May 27, 2010 10:08 am
Contact:

Post by infiniteimprobability »

I just remembered - there's a way of finding out which compiler version was used to compile the binary..

Try

Code: Select all

xobjdump --notes <mybinary.xe>
srinie
XCore Addict
Posts: 158
Joined: Thu Mar 20, 2014 8:04 am

Post by srinie »

infiniteimprobability wrote:I just remembered - there's a way of finding out which compiler version was used to compile the binary..

Try

Code: Select all

xobjdump --notes <mybinary.xe>

This is indeed a very helpful hint - thanks!
Can this be added to any quick lookup section, say a separate QnA if that format still holds good for new website layout?
danielpinheiro
Junior Member
Posts: 7
Joined: Wed Feb 24, 2016 3:37 pm

Post by danielpinheiro »

Hi there,

The compiler version:

Code: Select all

C:\Xmos>xobjdump --notes USBTracker-608.xe
USBTracker-608.xe: file format: xcore-xe

Loadable 1 for stdcore[0] (node "0", tile 0):

        Core note: "XS1"
        Core revision note: "REVB"
        Tools identifier note: "11.11.1 (build 4707)"

Loadable 1 for stdcore[1] (node "1", tile 0):

        Core note: "XS1"
        Core revision note: "REVB"
        Tools identifier note: "11.11.1 (build 4707)"

Loadable 2 for stdcore[0] (node "0", tile 0):

        Core note: "XS1"
        Core revision note: "REVB"
        Tools identifier note: "11.11.1 (build 4707)"

Loadable 2 for stdcore[1] (node "1", tile 0):

        Core note: "XS1"
        Core revision note: "REVB"
        Tools identifier note: "11.11.1 (build 4707)"

C:\Xmos>
I hope this helps.
henk
Respected Member
Posts: 347
Joined: Wed Jan 27, 2016 5:21 pm

Post by henk »

Hi,

The binaries is made with the 11.11.1 tools.
You will want a similar version of xrun.

Try xrun --version to see which one that reports.
Post Reply