Rachus / SDS200A

A repository about the SDS 200A oscilloscope
Other
6 stars 2 forks source link

SDS 200A with OS X #2

Closed DinBan closed 8 years ago

DinBan commented 8 years ago

Hello, first of all I wish to ask you about schematics of SDS200A? may be you have it? This link "Schematics for the sds200a can be obtained from www.fcc.gov/oet/fccid - FCCID is PO6SDS200A" replay -There are no applications on file that match the search criteria specified: Product Code: PO6SDS200A Also I have a question about software for use SDS200A with OS X and Android, mya be you have any solution? Thank you in advance!

DinBan commented 8 years ago

Sorry, got it using google search - https://fccid.io/PO6SDS200A

Rachus commented 8 years ago

Well, I had no problems obtaining the schematics from the FCC. I tried to clarify the way to get the files.

About your other question I have to remark that the software is far from being ready. But the stubs available should work, by compiling them and having libusb (or a compatible library) installed.

DinBan commented 8 years ago

Just try it one more time right now on FCC - look at the pictures.... 2016-01-19 20 53 44 2016-01-19 20 54 21

Rachus commented 8 years ago

PO6SDS200A is both, the Grantee Code AND the Product Code. It is meant to be put into the fields this way: 2016-01-19-195717_459x347_scrot

DinBan commented 8 years ago

Sorry, my lag.... in this way it's works! Thanx! Do you planing to do this software complete and fully functional?

noctux commented 8 years ago

Hey Din,

I'v updated the link to the one you found via google, which certainly simplifies accessing the resources. Thank you for the hint.

> Do you planing to do this software complete and fully functional?

At the moment, neither @Rachus nor me have access to an SDS200A any more, so the answer is more or less a definite "no". But maybe I should explain what the current state is:

Most of the work done in this repository is protocol-reversing, which had however stalled at some point. As you might see in the schematic/images at fcc, the sds200a uses a USB-Controller from Cypress Semiconductors (AN213QC) for the USB communication. The actual dsp-processing is done by an Altera EP1K30TC144-1-FPGA. If you now take a look at some parts of the configuration, you will hit the usb-codes 0xb1 and 0xb3 (see time/div in configurations.md), where some, to our knowledge very unstructured, statusword is pushed to the sds200a. Our guess is that this word is actually an vector of internal contol signals in the fpga, so we reason that reversing that part would require either some luck or knowledge about the code synthesized to the fpga.

The windows driver that came with the provided host software was autogenerated by a driver-sdk where you can click together the messages and the rest of the configuration protocol does not look like a cleanly designed interface (e.g. the explicit setting of the internal relays, etc.pp.), so most likely we are right with our assumption on the transferred statuswords being internal signals.

To make matters worse, the sds200a posesses persistent, internal state. So ones best bet to create a driver might be to produce a "safe state" with the original host-software, caputre the trace that produces this state, and replay it to initialize the device, and than only apply deltas as described in configurations.md.

Sorry for the accumulation of "might"s and "guesses" above, but this is what a reversed protocol looks like, so information in this repo should be treated with care. So the TL;DR of the state of this repo is: The code is mostly untested/experimental, the main value is in the documentation/the reversed protocol.

If you posess an sds200a however and want to develop a driver/continue development, by all means, go for it. If you do so, the markdown files und the tools/ folder should provide you the most value. Furthermore, if you have any questions, feel free to ask, we might be able to help.

DinBan commented 8 years ago

@Rachus nor me have access to an SDS200A any more, so... I'll get this device in my hands in next few weeks and if it can help, I can do any tests? just let me know what to do...

and want to develop a driver/continue development, by all means.... yes, I wish to help with this, but my knowledge is not enough for this :(

One more question, can you make sigrok(https://sigrok.org) patch to add support of this device(SDS200A) in sigrok for use it with Mac OS X. The problem is SoftDSP and Kenwood(same device is PCS-3200) both offer Windows SoftScope at all and there is no any OS X support. Thank you in advance!

P.S. There is few almost same models from SoftDSP(SDS200 & SDS200A) and KENWOOD PCS-3200.

DinBan commented 8 years ago

Does it use a "standard" protocol like SCPI or some binary protocol that only the vendor knows?

noctux commented 8 years ago

Yeah, we know of the different models. To our knowledge, all of them do actually use the same protocol. The protocol is a definitely binary. As configuration.md shows, the protocol is definitely binary. As commands exist to switch individual relays on the board, I very much doubt that it is any standard protocol and it definitely is no common protocol we know of.

We are not able to produce a sigrok-patch, as we have not found a safe state that we can deterministically restore by replacing/reconfiguring all settings. So to complete the work, one would need to invest some more time, create more traces, etc.pp.. This work would require a sds200a or compatible device and a developer with some time on his/her hands :D

(An alternative would be a full spec by the original product developer, but I highly doubt that this would be within reach...)

Might I ask where your interest stems from? Are you an sds200a owner who simply wants to use his device, or do you plan to continue reversing the protocol, or is your goal something completely different?

DinBan commented 8 years ago

invest some more time, create more traces, etc.pp.

I hope I can do it, I'll try to constantly devote some time to do it.

require a sds200a or compatible device and a developer with some time on his/her hands :D

sds200a must came to me in next few weeks, I have 2 hands :) developer.... 50x50

a full spec by the original product developer

I'm do not believe in that, but I'll try to contact with softDSP and Kenwood/TEXIO...

Might I ask where your interest stems from?

Sure, "owner who simply wants to" - yes I am, "do you plan to continue reversing the protocol" - I'll try, "your goal something completely different?" - nope

DinBan commented 8 years ago

So, today I'm get this device. And I'm ready to try what is done on OS X and Linux, also I'm ready to help with this project, I'll do my best...

DinBan commented 8 years ago

Is there any way to install this driver on OS X?

Rachus commented 8 years ago

I don't have much time, so just a short version:

DinBan commented 8 years ago

Ok, got it! Thanx! Already have Brew & libusb installed. Will try to compile now... Tank you for early, shot but informative replay!