Using xScope without xTimeComposer?

Technical discussions around xCORE processors (e.g. xcore-200 & xcore.ai).
Post Reply
User avatar
asid61
Active Member
Posts: 36
Joined: Sat May 31, 2014 6:39 am
Contact:

Using xScope without xTimeComposer?

Post by asid61 »

I love using xScope for its low-latency data transfer, but I can't figure out how to integrate it into my app without downloading the entire xTimeComposer suite on every computer I run my final application on. I was wondering:
1. How can I flash xScope-utility programs into an XMOS so I can run xScope-using programs from any computer without running from the command line?
2. Is it possible to get the xScope functions working without the xTimeComposer?


peter
XCore Addict
Posts: 230
Joined: Wed Mar 10, 2010 12:46 pm

Post by peter »

You should be able to create a binary which links against the xscope library shipped with the tools. This should then run anywhere without requiring the tools to be installed. Check out this tutorial for how to do it:

https://www.xmos.com/download/private/A ... rc1%29.pdf
User avatar
asid61
Active Member
Posts: 36
Joined: Sat May 31, 2014 6:39 am
Contact:

Post by asid61 »

Perfect, that seems to work!
I am running into one more problem however. I'm using a Startkit and I'm not sure if the Flash function is working correctly. If I just run the program from the command line on the XMOS, it works fine and transmits over xScope, but if I try and flash it, remove it, and plug it in again, it doesn't work anymore. What's the proper way to run an xScope application on an XMOS board?
peter
XCore Addict
Posts: 230
Joined: Wed Mar 10, 2010 12:46 pm

Post by peter »

Unfortunately, booting from flash and then connecting to xSCOPE is not the intended way to use the tools. xSCOPE has been designed as a debug aid which allows for high throughput to the host. However it is designed to be used with xrun/xgdb or xTIMEcomposer. The tools ensure that the link between the xTAG and the device is established and that data intended to go over xSCOPE is sent at runtime.

I see how it would be very good to enable this use-case as it is effectively giving you a USB connection on a second xCORE when you have an xTAG connected. I will have to see whether there is any work-around that can be done to establish this connection, but it is unlikely to be possible without changes to the tools.
User avatar
asid61
Active Member
Posts: 36
Joined: Sat May 31, 2014 6:39 am
Contact:

Post by asid61 »

If that's the case, what is the purpose of being able to make an xScope endpoint if you still need the tools to use it?
peter
XCore Addict
Posts: 230
Joined: Wed Mar 10, 2010 12:46 pm

Post by peter »

You can make an xSCOPE endpoint to make your own applications for debug/evaluation. In a full product you could move the data to be transported over USB or ethernet, but this allows for quick prototyping.
Post Reply