Giter Club home page Giter Club logo

Comments (6)

rjonaitis avatar rjonaitis commented on July 19, 2024
  1. Consider the case where multiple STREAM boards are attached VIA USB. We need a way to select a specific board. It looks like currently the Cypress API supports this using the device index, but the libusb API uses a VID/PID lookup that may be ambiguous with multiple boards.

This can be solved by using libusb_get_device_list, it's currently used in ConnectionSTREAMEntry::enumerate function to collect device PID&VID and usb speed modes. So device index can be used with libusb as well, to get device handle from that list, which would be used for opening device instead of PID&VID.

  1. Consider the case using simultaneous stream boards where someone may use two STREAM connections in the same process. In addition to 1), It also looks like the Cypress API implementation shares a device pointer for all open devices. So its currently limited to one device at a time.

Cypress API is not limited to single open device, multiple devices can be opened by creating additional CCyUSBDevice objects.

from limesuite.

guruofquality avatar guruofquality commented on July 19, 2024

So device index can be used with libusb as well, to get device handle from that list, which would be used for opening device instead of PID&VID.

Sounds good. I was thinking: Is there a unique ID associated with the stream board that we could query: like a serial number or even the mac address? An index might change when a new board is inserted, which could make the ConnectionHandle refer to the wrong device. A unique ID would prevent this.

Cypress API is not limited to single open device, multiple devices can be opened by creating additional CCyUSBDevice objects.

Gotcha. I just meant that the current StreamConnection only uses a single CCyUSBDevice.

from limesuite.

rjonaitis avatar rjonaitis commented on July 19, 2024

Is there a unique ID associated with the stream board that we could query: like a serial number or even the mac address?

Currently there is no way of uniquely identifying boards.

from limesuite.

guruofquality avatar guruofquality commented on July 19, 2024

I see. If there was a register or field that could be read/written in the FX3 that would persist for as long as the device was powered (could be permanent); then the host could load this field with a "UUID1" -- for the same purpose. :-)

from limesuite.

guruofquality avatar guruofquality commented on July 19, 2024

Make use of the new readback ID: #28

from limesuite.

guruofquality avatar guruofquality commented on July 19, 2024

Completed serial level filtering this commit: da9ab76

from limesuite.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.