I've been trying to connect some startkits together, but with no success so far. I suspect the link wires might not work due to length or bad soldering, but it is kind of hard to check using the method described in this Q&A topic.
What I actually want to do insert some debug messages into the processes on the startkit tiles to see if anything comes through. Using the flash images method described I cannot see how to do this.
Is there a way to either
- Create a multi-tile app and then create 2 "xrun-able" images to which a console can be attached?
- Create a single tile app with an open channel and to wich another single tile app can link?
The idea is to first load a "receiver" app on one startkit on one tile with console to see it actually running and then load a "sender" on another startkit which starts sending data over the link.
From what I've read in the assembly manual this certainly seems feasible, but can this be done using c or xc?
Seperate load images & open channel ends
-
- XCore Addict
- Posts: 161
- Joined: Sun Jun 12, 2011 11:47 am
-
- XCore Expert
- Posts: 589
- Joined: Wed Feb 29, 2012 10:03 am
Have you tried the startKIT example which is explained in the Q&A section? You should power cycle both the devices at the same time. The Link connections should be as follows:
GND --> GND
1OU --> 1IN
0OU --> 0IN
0IN --> 0OUT
1IN --> 1OUT
The example which I have added in the above Q&A section is tested on startKIT by following the steps that are explained in the answer.
Sethu.
GND --> GND
1OU --> 1IN
0OU --> 0IN
0IN --> 0OUT
1IN --> 1OUT
The example which I have added in the above Q&A section is tested on startKIT by following the steps that are explained in the answer.
Sethu.
-
- XCore Addict
- Posts: 161
- Joined: Sun Jun 12, 2011 11:47 am
I power-cycled by disconnecting the USB hub all the startkits are connected to.
Link connections are as you stated, but I'm using 20cm jumpers which I suspect might be too long. That's why I want do do that extra debugging. I did check the soldering point for shorts and they seem ok.
I did create a working 2 tile dummy application on the slicekit without channel communication which I then tried out on the startkits to just show some leds blinking, but apart from the single flashing led on on powerup it doesn't seem to do anything on the startkits.
That brings me to another question. If the links are specified in the XN does that mean something happens during boot? I.e. might the problem be that the startkits are trying to talk to each other over the links and freeze because the jumper wires are too long?
Regardless of this particular issue I'm just curious if I can create "xrun-able" applications with open channel ends. For instance I'd want to run a server process on device id 0 which dumps debug output to the console and then load and debug a client process on device id 1 which connects to that server.
Link connections are as you stated, but I'm using 20cm jumpers which I suspect might be too long. That's why I want do do that extra debugging. I did check the soldering point for shorts and they seem ok.
I did create a working 2 tile dummy application on the slicekit without channel communication which I then tried out on the startkits to just show some leds blinking, but apart from the single flashing led on on powerup it doesn't seem to do anything on the startkits.
That brings me to another question. If the links are specified in the XN does that mean something happens during boot? I.e. might the problem be that the startkits are trying to talk to each other over the links and freeze because the jumper wires are too long?
Regardless of this particular issue I'm just curious if I can create "xrun-able" applications with open channel ends. For instance I'd want to run a server process on device id 0 which dumps debug output to the console and then load and debug a client process on device id 1 which connects to that server.
-
- XCore Expert
- Posts: 589
- Joined: Wed Feb 29, 2012 10:03 am
Yes, When multi tile device boots up, they communicate hello message between the tiles using xCONNECT links which are specified in the XN file. If you have specified the Links in XN file and if you have not connected the Links, the devices does not boot up.pstnotpd wrote: That brings me to another question. If the links are specified in the XN does that mean something happens during boot? I.e. might the problem be that the startkits are trying to talk to each other over the links and freeze because the jumper wires are too long?
Sethu.
-
- XCore Addict
- Posts: 161
- Joined: Sun Jun 12, 2011 11:47 am
Ok, that explains things. I'll try to shorten the jumper wires first and re-check the soldering.sethu wrote:Yes, When multi tile device boots up, they communicate hello message between the tiles using xCONNECT links which are specified in the XN file. If you have specified the Links in XN file and if you have not connected the Links, the devices does not boot up.
The original question still stands. Can links be set up dynamically using xc or c, or must I drop to assembly (or something like sire) to do that.
-
- XCore Expert
- Posts: 589
- Joined: Wed Feb 29, 2012 10:03 am
I don't think links can be setup dynamically. In a multi tile system on boot up, routing information is carried between the links and the resource id is added in the routing table of each device. Once this is done, the device boots up as multi tile device. This might be possible in assembly, but not sure as I haven't tried.
Sethu.
Sethu.
-
- XCore Addict
- Posts: 161
- Joined: Sun Jun 12, 2011 11:47 am
Well the root cause for this question is fixed. Using a derivative if mio's Q&A topic I finally got 2 startkits talking to each other.
The 20cm jumper cables were indeed too long so at last I've got 2 startkits communicating with each other using link wires shortened to about 5 cm. Added note: When power cycling both boards through USB it seems unstable. It works better by connecting the 5V pin 13 on J8 together.
Further experiments will surely follow, including trying to answer my own OT questions :o)
The 20cm jumper cables were indeed too long so at last I've got 2 startkits communicating with each other using link wires shortened to about 5 cm. Added note: When power cycling both boards through USB it seems unstable. It works better by connecting the 5V pin 13 on J8 together.
Further experiments will surely follow, including trying to answer my own OT questions :o)