Hi guys, I have a problem with flashing the 8soundsUSB_REV3 board.
I have :
- 8SoundsUSB_REV3 Board : https://sourceforge.net/p/eightsoundsus ... Main_Page/
- XTAG-3 : https://www.xmos.com/support/boards?product=19480
- XtimeComposer IDE v. 14.2.4
- 8soundsUSB_REV3.xe binary file.
I can clearly debug this file but when i flash, i get an error : target-xn-v0-bdf0fc09: Error: XN11192 Incomplete network configuration (no direction specified for link "4" on node "0")
I did some several changes to .xn file but nothing changed.
I will be pleasure if you help me,
Thanks.
8 sounds usb Rev3 flashing firmware xe Topic is solved
-
- Member
- Posts: 8
- Joined: Wed Mar 01, 2017 11:25 pm
It's an issue with the XN file that was used to build the XE.
Suggest you start with a working standard one at add your modifications, whatever they may be.
Suggest you start with a working standard one at add your modifications, whatever they may be.
-
- Member
- Posts: 8
- Joined: Wed Mar 01, 2017 11:25 pm
How can I find the true xn file ?
The processor on the board is : XS1-L02A-QF124-C4
But i cant select this target when I create a new project. Can I use this one instead of XS1-L02A-QF124-C4 ? : XS1-L16A-128-QF124-C8
But any changings on the 2 xn files dont make any different reaction on the error. It still gives the XN11192 error.
What is the true xn file ?
The processor on the board is : XS1-L02A-QF124-C4
But i cant select this target when I create a new project. Can I use this one instead of XS1-L02A-QF124-C4 ? : XS1-L16A-128-QF124-C8
But any changings on the 2 xn files dont make any different reaction on the error. It still gives the XN11192 error.
What is the true xn file ?
The XN file describes the network of chips on the board, clocking and support hardware etc. Ideally you should get the working XN file from the author of the board. Though reverse engineering is probably quite an easy task.
ibocakir06, I can generate a new firmware for you. Do you know what is causing the error? We use XS1-L16A-128-QF124-C8 devices now. Did you build the board yourself?
Code: Select all
<?xml version="1.0" encoding="UTF-8"?>
<Network xmlns="http://www.xmos.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.xmos.com http://www.xmos.com">
<Type>Device</Type>
<Name>XS1-L2A-QF124</Name>
<Declarations>
<Declaration>core tile[2]</Declaration>
</Declarations>
<Nodes>
<Node Id="0" Type="XS1-L1A" oscillator="13Mhz" systemfrequency="500Mhz" referencefrequency="100MHz">
<Core Number="0" Reference="tile[0]">
<!-- SPI Ports -->
<Port Location="XS1_PORT_1A" Name="PORT_SPI_MISO"/>
<Port Location="XS1_PORT_1B" Name="PORT_SPI_SS"/>
<Port Location="XS1_PORT_1C" Name="PORT_SPI_CLK"/>
<Port Location="XS1_PORT_1D" Name="PORT_SPI_MOSI"/>
<!-- Standard USB Audio Ports -->
<!-- <Port Location="XS1_PORT_1K" Name="PORT_SPDIF_IN"/> --> <!-- coax -->
<!--<Port Location="XS1_PORT_1J" Name="PORT_SPDIF_IN"/> --> <!-- opt -->
<!--<Port Location="XS1_PORT_1J" Name="PORT_ADAT_IN"/> --> <!-- opt -->
<Port Location="XS1_PORT_1L" Name="PORT_MCLK_IN2"/>
<Port Location="XS1_PORT_1M" Name="PORT_USB_RESET"/>
<!--<Port Location="XS1_PORT_4E" Name="PORT_PLL_CLK"/> -->
<Port Location="XS1_PORT_32A" Name="PORT_MCLK_COUNT"/>
</Core>
<Boot>
<Source Location="SPI:bootFlash"/>
<Bootee NodeId="1"/>
</Boot>
</Node>
<Node Id="1" Type="XS1-L1A" oscillator="13Mhz" systemfrequency="500MHz" referencefrequency="100MHz">
<Boot>
<Source Location="XMOSLINK"/>
</Boot>
<Core Number="0" Reference="tile[1]">
<!-- Standard USB Audio Ports -->
<Port Location="XS1_PORT_1A" Name="PORT_I2S_ADC3"/>
<Port Location="XS1_PORT_1B" Name="PORT_I2S_ADC2"/>
<Port Location="XS1_PORT_1C" Name="PORT_I2C_SDA"/>
<Port Location="XS1_PORT_1D" Name="PORT_I2C_SCL"/>
<Port Location="XS1_PORT_1E" Name="PORT_I2S_LRCLK"/>
<!-- <Port Location="XS1_PORT_1F" Name="PORT_I2S_DAC3_NOT"/> -->
<!-- <Port Location="XS1_PORT_1G" Name="PORT_I2S_ADC0_NOT"/> -->
<!-- Port Location="XS1_PORT_1H" Name="PORT_I2S_DAC2_NOT"/> -->
<Port Location="XS1_PORT_1I" Name="PORT_I2S_BCLK"/>
<!-- J: Optical, K: Coax -->
<Port Location="XS1_PORT_1J" Name="PORT_I2S_ADC0"/>
<Port Location="XS1_PORT_1K" Name="PORT_I2S_ADC1"/>
<Port Location="XS1_PORT_1L" Name="PORT_MCLK_IN"/>
<Port Location="XS1_PORT_1M" Name="PORT_I2S_DAC0"/>
<Port Location="XS1_PORT_1N" Name="PORT_I2S_DAC1"/>
<Port Location="XS1_PORT_1O" Name="PORT_MIDI_OUT"/>
<Port Location="XS1_PORT_1P" Name="PORT_MIDI_IN"/>
<Port Location="XS1_PORT_4A" Name="PORT_AUD_CFG"/>
<Port Location="XS1_PORT_4E" Name="PORT_PLL_REF"/>
<Port Location="XS1_PORT_4F" Name="PORT_GPIO"/>
<Port Location="XS1_PORT_8B" Name="PORT_LED"/>
</Core>
</Node>
</Nodes>
<Links>
<Link Encoding="5wire" Delays="0,1">
<LinkEndpoint NodeId="0" Link="4"/>
<LinkEndpoint NodeId="1" Link="7"/>
</Link>
<Link Encoding="5wire" Delays="0,1">
<LinkEndpoint NodeId="0" Link="5"/>
<LinkEndpoint NodeId="1" Link="6"/>
</Link>
<Link Encoding="5wire" Delays="0,1">
<LinkEndpoint NodeId="0" Link="6"/>
<LinkEndpoint NodeId="1" Link="5"/>
</Link>
<Link Encoding="5wire" Delays="0,1">
<LinkEndpoint NodeId="0" Link="7"/>
<LinkEndpoint NodeId="1" Link="4"/>
</Link>
<Link Encoding="2wire" Delays="4,4" Flags="XSCOPE">
<LinkEndpoint NodeId="0" Link="X0LA" />
<LinkEndpoint RoutingId="0x8000" Chanend="1" />
</Link>
</Links>
<Packages>
<Package ID="0" Type="XS1-L2A-QF124">
<Component NodeId="0" InPackage="0"/>
<Component NodeId="1" InPackage="1"/>
</Package>
</Packages>
<ExternalDevices>
<Device NodeId="0" Core="0" Class="SPIFlash" Name="bootFlash" Type="AT25DF041A">
<Attribute Name="PORT_SPI_MISO" Value="PORT_SPI_MISO"/>
<Attribute Name="PORT_SPI_SS" Value="PORT_SPI_SS"/>
<Attribute Name="PORT_SPI_CLK" Value="PORT_SPI_CLK"/>
<Attribute Name="PORT_SPI_MOSI" Value="PORT_SPI_MOSI"/>
</Device>
</ExternalDevices>
<JTAGChain>
<JTAGDevice NodeId="0"/>
<JTAGDevice NodeId="1"/>
</JTAGChain>
</Network>
@Ross, Just quick questions :
1) What happens when we specify systemfrequency="500MHz" on XS1-L16A-128-QF124-C8 (Max 400MHz) devices ? Is the device overclocked and operates above rating?
2) What is the best way to distribute firmware files (xe) so the user have minimum hassle with them?
Best regards,
Dominic
1) What happens when we specify systemfrequency="500MHz" on XS1-L16A-128-QF124-C8 (Max 400MHz) devices ? Is the device overclocked and operates above rating?
2) What is the best way to distribute firmware files (xe) so the user have minimum hassle with them?
Best regards,
Dominic
I have added information for the firmware here:
https://sourceforge.net/p/eightsoundsusb/wiki/Firmware/
https://sourceforge.net/p/eightsoundsusb/wiki/Firmware/
- infiniteimprobability
- XCore Legend
- Posts: 1126
- Joined: Thu May 27, 2010 10:08 am
- Contact:
It will probably work just fine on the bench. In fact, you could probably go a fair bit beyond 500.. However, we can't guarantee that all -C8 devices will run faster than 400MHz over temperature and voltage.1) What happens when we specify systemfrequency="500MHz" on XS1-L16A-128-QF124-C8 (Max 400MHz) devices ? Is the device overclocked and operates above rating?
Depends how users are going to use it. xe is fine for people using xtag to program the code2) What is the best way to distribute firmware files (xe) so the user have minimum hassle with them?
@infiniteimprobability
Thanks for the precision.
Dominic
Thanks for the precision.
Dominic
-
- Member
- Posts: 8
- Joined: Wed Mar 01, 2017 11:25 pm
Hi doumdi, thank you for your answer.doumdi wrote:ibocakir06, I can generate a new firmware for you. Do you know what is causing the error? We use XS1-L16A-128-QF124-C8 devices now. Did you build the board yourself?
Code: Select all
<?xml version="1.0" encoding="UTF-8"?> <Network xmlns="http://www.xmos.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xmos.com http://www.xmos.com"> <Type>Device</Type> <Name>XS1-L2A-QF124</Name> <Declarations> <Declaration>core tile[2]</Declaration> </Declarations> <Nodes> <Node Id="0" Type="XS1-L1A" oscillator="13Mhz" systemfrequency="500Mhz" referencefrequency="100MHz"> <Core Number="0" Reference="tile[0]"> <!-- SPI Ports --> <Port Location="XS1_PORT_1A" Name="PORT_SPI_MISO"/> <Port Location="XS1_PORT_1B" Name="PORT_SPI_SS"/> <Port Location="XS1_PORT_1C" Name="PORT_SPI_CLK"/> <Port Location="XS1_PORT_1D" Name="PORT_SPI_MOSI"/> <!-- Standard USB Audio Ports --> <!-- <Port Location="XS1_PORT_1K" Name="PORT_SPDIF_IN"/> --> <!-- coax --> <!--<Port Location="XS1_PORT_1J" Name="PORT_SPDIF_IN"/> --> <!-- opt --> <!--<Port Location="XS1_PORT_1J" Name="PORT_ADAT_IN"/> --> <!-- opt --> <Port Location="XS1_PORT_1L" Name="PORT_MCLK_IN2"/> <Port Location="XS1_PORT_1M" Name="PORT_USB_RESET"/> <!--<Port Location="XS1_PORT_4E" Name="PORT_PLL_CLK"/> --> <Port Location="XS1_PORT_32A" Name="PORT_MCLK_COUNT"/> </Core> <Boot> <Source Location="SPI:bootFlash"/> <Bootee NodeId="1"/> </Boot> </Node> <Node Id="1" Type="XS1-L1A" oscillator="13Mhz" systemfrequency="500MHz" referencefrequency="100MHz"> <Boot> <Source Location="XMOSLINK"/> </Boot> <Core Number="0" Reference="tile[1]"> <!-- Standard USB Audio Ports --> <Port Location="XS1_PORT_1A" Name="PORT_I2S_ADC3"/> <Port Location="XS1_PORT_1B" Name="PORT_I2S_ADC2"/> <Port Location="XS1_PORT_1C" Name="PORT_I2C_SDA"/> <Port Location="XS1_PORT_1D" Name="PORT_I2C_SCL"/> <Port Location="XS1_PORT_1E" Name="PORT_I2S_LRCLK"/> <!-- <Port Location="XS1_PORT_1F" Name="PORT_I2S_DAC3_NOT"/> --> <!-- <Port Location="XS1_PORT_1G" Name="PORT_I2S_ADC0_NOT"/> --> <!-- Port Location="XS1_PORT_1H" Name="PORT_I2S_DAC2_NOT"/> --> <Port Location="XS1_PORT_1I" Name="PORT_I2S_BCLK"/> <!-- J: Optical, K: Coax --> <Port Location="XS1_PORT_1J" Name="PORT_I2S_ADC0"/> <Port Location="XS1_PORT_1K" Name="PORT_I2S_ADC1"/> <Port Location="XS1_PORT_1L" Name="PORT_MCLK_IN"/> <Port Location="XS1_PORT_1M" Name="PORT_I2S_DAC0"/> <Port Location="XS1_PORT_1N" Name="PORT_I2S_DAC1"/> <Port Location="XS1_PORT_1O" Name="PORT_MIDI_OUT"/> <Port Location="XS1_PORT_1P" Name="PORT_MIDI_IN"/> <Port Location="XS1_PORT_4A" Name="PORT_AUD_CFG"/> <Port Location="XS1_PORT_4E" Name="PORT_PLL_REF"/> <Port Location="XS1_PORT_4F" Name="PORT_GPIO"/> <Port Location="XS1_PORT_8B" Name="PORT_LED"/> </Core> </Node> </Nodes> <Links> <Link Encoding="5wire" Delays="0,1"> <LinkEndpoint NodeId="0" Link="4"/> <LinkEndpoint NodeId="1" Link="7"/> </Link> <Link Encoding="5wire" Delays="0,1"> <LinkEndpoint NodeId="0" Link="5"/> <LinkEndpoint NodeId="1" Link="6"/> </Link> <Link Encoding="5wire" Delays="0,1"> <LinkEndpoint NodeId="0" Link="6"/> <LinkEndpoint NodeId="1" Link="5"/> </Link> <Link Encoding="5wire" Delays="0,1"> <LinkEndpoint NodeId="0" Link="7"/> <LinkEndpoint NodeId="1" Link="4"/> </Link> <Link Encoding="2wire" Delays="4,4" Flags="XSCOPE"> <LinkEndpoint NodeId="0" Link="X0LA" /> <LinkEndpoint RoutingId="0x8000" Chanend="1" /> </Link> </Links> <Packages> <Package ID="0" Type="XS1-L2A-QF124"> <Component NodeId="0" InPackage="0"/> <Component NodeId="1" InPackage="1"/> </Package> </Packages> <ExternalDevices> <Device NodeId="0" Core="0" Class="SPIFlash" Name="bootFlash" Type="AT25DF041A"> <Attribute Name="PORT_SPI_MISO" Value="PORT_SPI_MISO"/> <Attribute Name="PORT_SPI_SS" Value="PORT_SPI_SS"/> <Attribute Name="PORT_SPI_CLK" Value="PORT_SPI_CLK"/> <Attribute Name="PORT_SPI_MOSI" Value="PORT_SPI_MOSI"/> </Device> </ExternalDevices> <JTAGChain> <JTAGDevice NodeId="0"/> <JTAGDevice NodeId="1"/> </JTAGChain> </Network>
At your recommendation, now I want to blink the "GEN LED" on the board, and I can do it. 1000ms LOW and 1000ms HIGH.(In Run Mode).
When I want to flash it, i got a different error :
Error on tile[0]: failed to connect to flash device. Please verify that SPI type is supported and that the correct SPI ports are defined within your xn file.
I double checked the SPI ports :(according to the datasheet)
SPI MISO -> 1A
SPI MOSI -> 1D
SPI CLK -> 1C
SPI SS -> 1B