Beta version of c# scope app.

Re: Pre alpha version of c# scope app.

Postby shop » Fri Aug 31, 2018 10:12 am

No, I haven't DSO 112A. I have only DSO068. It would be very pleased If you will send me a dso112a. :)
shop
 
Posts: 47
Joined: Thu Jan 11, 2018 3:01 pm

Re: Pre alpha version of c# scope app.

Postby jye1 » Fri Aug 31, 2018 2:42 pm

Please send you address to jyetech@163.com. We'll send the sample as soon as possible.

We also tested the app with DSO068. Please see attachment. It was found much more reliable.

DSO068-1.pdf
(401.13 KiB) Downloaded 227 times
jye1
 
Posts: 1221
Joined: Wed Feb 20, 2013 4:58 pm

Re: Pre alpha version of c# scope app.

Postby shop » Fri Aug 31, 2018 9:10 pm

Hello. Thank you for reply. I must admit that timebase is changeable. Blank timebase is only because there is a bug in this app causing possibly infinity loop while connecting with scope. So to avoid this, first state is set to none. After connection you can freely change timebase with limitation described in first post. I sent you my adress in e-mail you provided.
shop
 
Posts: 47
Joined: Thu Jan 11, 2018 3:01 pm

Re: Pre alpha version of c# scope app.

Postby shop » Tue Sep 04, 2018 6:51 pm

Hello, I have simple question. How is the correct way to retrieve correct voltage level from raw data in buffer? In original jyeLab i found :
Dup0 = osc->oscCh[0].BufDupA;
Dup1 = osc->oscCh[1].BufDupA;
// tmp2 = osc->oscCh[0].VPosOfs;
// tmp3 = osc->oscCh[1].VPosOfs;
tmp2 = osc->oscCh[0].Reference;
tmp3 = osc->oscCh[1].Reference;
// Determine transform factor for Ch 1 and Ch2
ddtmp1 = AnsiString(VSenInMicroVolt[osc->oscCh[0].Sen]).ToDouble();
ddtmp2 = AnsiString(VSenInMicroVolt[osc->oscCh[0].SenOrig]).ToDouble();
ftmp = ddtmp1/ddtmp2;
ddtmp1 = AnsiString(VSenInMicroVolt[osc->oscCh[1].Sen]).ToDouble();
ddtmp2 = AnsiString(VSenInMicroVolt[osc->oscCh[1].SenOrig]).ToDouble();
ftmp1 = ddtmp1/ddtmp2;
tmp0 = 0;
while(tmp0 < osc->oscRecLen) {
// *Dup0 = (sSIZE)((float)(*Dup0 + tmp2 - V0)/ftmp) + V0 - tmp2;
// *Dup1 = (sSIZE)((float)(*Dup1 + tmp3 - V0)/ftmp1) + V0 - tmp3;
*Dup0 = (sSIZE)((float)(*Dup0 - tmp2)/ftmp) + tmp2;
*Dup1 = (sSIZE)((float)(*Dup1 - tmp3)/ftmp1) + tmp3;
Dup0++;
Dup1++;
tmp0++;
}
// }
break;
Something messy is happening here. Maybe there is a simple formula. Thanks for help.
shop
 
Posts: 47
Joined: Thu Jan 11, 2018 3:01 pm

Re: Pre alpha version of c# scope app.

Postby jye1 » Wed Sep 05, 2018 3:09 am

The real voltage level can be calculated with the parameters obtained by the GetParam command.

1 ) VPos + VPosOfs is corresponding to 0V level. Both VPos and VPosOfs are signed value. When VPos + VPosOfs = 0 it is corresponding to value 128 (the center) of ADC output.

2 ) With sensitivity (Volt/div) and vertical display resolution (point/div, this value is 25 for DSO112A and 10 for DSO068) we can get the (volt/point). The real volage (v) for an ADC output (V) can be calculated by

v = (V - (VPos + VPosOfs)) * (volt/point)

The codes in jyeLab were kind of mess because the grid resolutions are different between scope screen and PC screen. Some conversions are required.
jye1
 
Posts: 1221
Joined: Wed Feb 20, 2013 4:58 pm

Re: Pre alpha version of c# scope app.

Postby shop » Wed Sep 05, 2018 6:47 pm

New update! Many changes underhood. Now data is scaled:
((rawData - (128)) * (_voltPerDiv / ScopeConfig.PointsPerDiv));

I tried use v = (V - (VPos + VPosOfs)) * (volt/point) but maybe I'm lost something. I understand that (VPos + VPosOfs) is for calculating correct voltage while trace is moved away from zero offset. But I don't really understand how to calulate VPosOfs.
shop
 
Posts: 47
Joined: Thu Jan 11, 2018 3:01 pm

Re: Pre alpha version of c# scope app.

Postby jye1 » Sun Sep 09, 2018 4:35 pm

Thank you for the new version. We will test it as soon as possible.

VPosOfs was set by performing VPos alignment by user. It is used to correct VPos error caused by opamp errors. By default its value is zero.
jye1
 
Posts: 1221
Joined: Wed Feb 20, 2013 4:58 pm

Re: Pre alpha version of c# scope app.

Postby jye1 » Wed Sep 12, 2018 12:46 am

We tested the new version with DSO068. At the first run it was very good. All major features worked without problem. But later when we re-ran it it pop out an exception message at connecting to scope. See attachment. The message said something like "index exceeds array limit" (translated from the sentence in Chinese). But the scope showed connection was established.

This problem happened again and again even after the computer re-booted. We couldn't do further tests.

PCscope_0.png
jye1
 
Posts: 1221
Joined: Wed Feb 20, 2013 4:58 pm

Re: Pre alpha version of c# scope app.

Postby shop » Wed Sep 12, 2018 5:10 am

That's strange. Please try restore default settings to DSO068. I observed that there are some bugs in DSO068 (or maybe in my app) that may cause to froze scope. And in that situation received frames are corrupted. I'm also curious if this app works more reliable with DSO112A.
shop
 
Posts: 47
Joined: Thu Jan 11, 2018 3:01 pm

Re: Pre alpha version of c# scope app.

Postby shop » Thu Sep 27, 2018 7:11 pm

Hi there. I finally got into my hands DSO112. I've already commit some changes to github code. Stay tuned for more info. And as always, feel free to review code on github and make your own changes,
shop
 
Posts: 47
Joined: Thu Jan 11, 2018 3:01 pm

PreviousNext

Return to jyeLab

Who is online

Users browsing this forum: No registered users and 1 guest