How to use the rigol 1042CD

regels voor dit topic:

- je commentaar/vraag moet gaan over de Rigol DS1042CD
- post duidelijke vragen, en ondersteun dit waar mogelijk met screenschots.

plaatje van de scoop:

http://k-ray.vranken.org/journal_files/rigol/rigol06.jpg

Handige links:

- ...

Geschreven routines

- ...

[Bericht gewijzigd door Jeroen Boere op 24 juni 2007 16:25:52 ]

IF you can't convince them, then confuse them!

In de handleiding staat wel dat je de data van de analoge poorten as bitmap/txt/csv etc op kunt slaan. We weten niet zeker of dat met de data van de Logic Analyzer ook kan.

Als dat wel kan zouden we graag zo'n bestandje (liefst CSV ofzo, geen bitmap) met een testsignaal of live communicatie hebben :)

Voor zover ik kan achterhalen neemt de software de bediening van het toestel over en kan je plaatjes maken van hetgeen op het scherm komt.
Verder kan je ook de nodige meetgegevens bewaren.
Voorbeeldje van het testsignaal dat de scoop zelf aanbiedt om de probes af te regelen:

Rigol Technologies,Inc. -[Measure]
CH1 500mV 500,0us 100,0kSa [Date:21/06/2007]
Vpp 3,10V
Vmax 3,06V
Vmin -40,0mV
Vavg 1,52V
Vamp 3,01V
Vtop 3,02V
Vbase 11,0mV
Vrms 2,14V
Vover 1,07%
Vpre 0,48%
Frequency 1,000kHz
Rise Time 40,00us
Fall Time 40,00us
Period 1,000ms
Pulse Width+ 500,0us
Pulse Width- 500,0us
Duty+ 50,0%
Duty- 50,0%

Een derde optie is om de data op te slaan.
Volgens mij is dit gewoon de meting per sample.
Hieronder een klein stukje:

Rigol Technologies,Inc. -[Data]
CH1 500mV 0.000s 100,0kSa Size=600 [Date:21/06/2007]
NO. Time Voltage
1 -3,00E00 3,02E+03
2 -2,99E00 3,04E+03
3 -2,98E00 3,04E+03
4 -2,97E00 3,04E+03
5 -2,96E00 3,02E+03
6 -2,95E00 3,04E+03
7 -2,94E00 3,04E+03
8 -2,93E00 3,06E+03
9 -2,92E00 3,06E+03
10 -2,91E00 3,04E+03

Je kan verder nog de instellingen opslaan (controller) en je hele meting of zo (databrowser).

Ik heb het testsignaal ook eens langs de LA (Logic Analyzer) aangesloten. Daar kan je dus alleen bedienen en plaatjes schieten. Dat kan je zelf ook reeds zien als je de software installeert. Bij Waveform krijg je het beeld van de scoop met de optie om ch1, ch2 en LA in te schakelen.
Bij measure en data heb je enkel ch1 en ch2.

De software op de CD is trouwens identiek aan hetgeen je kan downloaden.
De inhoud van de CD is
usb-driver
Ultrascope
handleiding

Dat de software hetzelfde was als de te downloaden versie twijfelde ik al niet meer aan.
Het is wel ERG jammer dat die LA data niet opgeslagen kan worden, althans, met UltraScope niet. Echter kun je de data wel zien op je (PC) scherm, dus moet het over het USB-lijntje gaan. Even een vrijwilliger vinden dus die zelf wat gaat programmeren daarvoor? :)

If you want to succeed, double your failure rate.

Het is heel jammer dat de LA gegevens niet opgeslagen kunnen worden. HEEL jammer.

Wat gebeurt er als je twee kanalen opslaat, krijg je dan 2 files, of alleen een kolom er bij in het bestandje?

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/

Op 22 juni 2007 10:13:10 schreef rew:
Het is heel jammer dat de LA gegevens niet opgeslagen kunnen worden. HEEL jammer.

De data gaat wel over de usb, dus misschien valt daar wat mee te doen.
De data in de usb-stream is in ieder geval verschillend bij gebruik van de LA.
Wat ik kunnen achterhalen heb tot nu toe:
het opvragen van een beeld (Wave) of data (Data) lijkt dezelfde usb datastream op te leveren.
Deze geeft eerst de instellingen en daarna 972 samples van 8 bit resolutie. Ik ben het allemaal nog aan het uitzoeken, maar voorlopig deze gegevens:
De 256 mogelijke waarden per sample worden niet allemaal weergegeven op het scherm. Elke bit komt wel overeen met een pixel. Er zijn 200 zichtbare pixels gaande van 19h (bovenaan) tot E1h (onderaan). Even vreemd, maar een hoge sample waarde is dus een lage spanning!
Zo zijn er ook maar 300 pixels horizontaal zichtbaar tegenover 972 samples in de datastream. Er zijn 2 samples per pixel in de datastream. Waar het zichtbare begint en eindigt weet ik nog niet.

Wanneer 2 kanalen zichtbaar zijn, worden 2 volledige datastreams achter elkaar verzonden.

De 'measure' levert een andere datastream op, maar die heb ik nog niet in detail bekeken.

De LA-stream levert 1984 samples op, maar verder ben ik nog niet geraakt.
[EDIT]
Het zijn 998 16bit samples waarvan telkens ook weer 2 samples per zichtbare pixel. Het zichtbare beeld start ergens bij de 93ste sample.
[/EDIT]

Er is imo meer mogelijk met de datastream dan Ultrascope te bieden heeft. Maar daarvoor zullen we dus zelf aan de slag moeten gaan.

Wat gebeurt er als je twee kanalen opslaat, krijg je dan 2 files, of alleen een kolom er bij in het bestandje?

Je kan maar 1 kanaal gelijk kiezen en exporteren, dus het worden twee bestanden.

K-Ray: valt er zelf wat te schrijven met de USB verbinding, is het iets standaards of zijn het allemaal custom drivers?

Op 24 juni 2007 14:40:51 schreef madwizard:
K-Ray: valt er zelf wat te schrijven met de USB verbinding, is het iets standaards of zijn het allemaal custom drivers?

Dan stelt zich de vraag: wat is standaard?
Ik ken zeer weinig van interne usb-keuken. Ik heb gewoon een usb sniffer gedownload en alles gelogd. Hier heb ik de datastream uitgevist.

Op die manier, ik dacht dat je een andere methode had om de datastroom uit te lezen. Met standaard bedoelde ik zoiets als een FTDI chipje (dat zal niet in dit geval, maar er zijn natuurlijk meer USB chipjes) of iets wat herkend wordt als seriele poort ofzo.

Heb net even naar de software gekeken, zo te zien gebruiken ze een eigen driver, maar het tooltje is weer in visual basic gemaakt die via rigolusb1000_ui.dll de driver benadert.

Nog een aardigheidje.
Wanneer je de 'virtual panel' aanschakelt in Ultrascope komt er een continue datastroom over de usb. Je ziet ook het virtual panel steeds refreshen. De datastroom die daarbij over de usb gaat is heel anders dan bij de andere functies.
Ik heb me zitten rotpiekeren over wat dat nu eigenlijk voorstelde. Eindelijk heb ik het. Tot nu toe was er telkens een paar korte data reeksen met een groot datablok erachter die dan de samples omvatte.
Dit echter zijn 18 grote blokken van 4096 8bit waarden die samen een 320x230 beeld voorstellen. De 8bit waarde is telkens een kleur. Ik ben er nog niet volledig uit, maar ik heb de waarden via php laten voorstellen door gekleurde X-jes. Dit erg verkleind gaf het volgende beeld:
http://k-ray.vranken.org/journal_files/rigol/rigolX.jpg
Veel nut zullen we daar allicht niet uit kunnen halen.

Op 24 juni 2007 15:15:30 schreef madwizard:
Op die manier, ik dacht dat je een andere methode had om de datastroom uit te lezen. Met standaard bedoelde ik zoiets als een FTDI chipje (dat zal niet in dit geval, maar er zijn natuurlijk meer USB chipjes) of iets wat herkend wordt als seriele poort ofzo.

Intern zit een Philips ISP1362BD Single-chip Universal Serial Bus On-The-Go controller. Ben je daar wat mee?

De data via de RS-232 heb ik nog niet getest.

Op 24 juni 2007 14:26:49 schreef Jochem_S:dus als ik het goed begrijp gaat niet het hele sample-geheugen over de USB-lijn? Ik heb wat moeite je verhaal te begrijpen, dus correct me if I'm wrong.

Wel laat ik het even illustreren.
Eerste beeld is een videosignaal dat ik binnengehaald heb met de functie 'wave':

http://k-ray.vranken.org/journal_files/rigol/rigolvideo1.jpg

Als ik de data van bovenstaand beeld via een usb sniffer uit de usbstream haal, deze omreken naar leesbare waarden vervolgens in een rekentabel plak en daar een grafiekje van trek krijg ik beeld 2:

http://k-ray.vranken.org/journal_files/rigol/rigolvideo2.jpg

Let op het op-z'n-kop beeld.
Brengt dit wat duidelijkheid?
De datastream bevat dus net iets meer data dan het weergegeven beeld.

[UPDATE]
Voor zover ik het zelf begrijp. Bovenaan in beeld van het panel staat het geheugen (de golfjeslijn). Het kadertje in het midden stelt de momentele weergave voor. De usb-stream bevat net iets meer dan de weergave op scherm, maar dus zeker niet het volledige geheugen.
http://k-ray.vranken.org/journal_files/rigol/rigolpanel.jpg
[/UPDATE]

Verder lijkt het me handig dat ik mijn bevindingen bij elkaar sprokkel op een website, want we gaan het topic hier vervuilen.
Of misschien is een ander topic nuttiger.

Hallo Moderators?

[Bericht gewijzigd door K-Ray op 24 juni 2007 16:19:12 ]

welk programma gebruik je als usb-sniffer? ik heb hier nog een usb-gpib dingetje liggen waar nauwelijks bruikbare software bijzit (alleen een demo-programmatje, geen libraries)

Op 24 juni 2007 16:03:42 schreef K-Ray:
[...]
Wel laat ik het even illustreren.
Eerste beeld is een videosignaal dat ik binnengehaald heb met de functie 'wave':

[afbeelding]

Let op het op-z'n-kop beeld.

Het op z'n kop zal wel te maken hebben met het feit dat punt 0,0 linksboven zit bij een beeldscherm. Een normale grafiek moet je altijd ondersteboven plotten om op een scherm een correct beeld te krijgen.

Hoe zit het met de commando's in de USB stroom? Zijn het leesbare tekst commando's of is het allemaal binair? Kan je misschien een stukje van de USB communicatie posten?

Zou het aantal pixels dat je per x-waarde op de tijd-as krijgt afhangen van hoever je in/uit zoomt?

Ik bedoel dus als je maximaal uitzoomt (indien mogelijk) totdat het hele geheugen in beeld staat. Afzonderlijke pulsjes, stijg/daal flanken zullen niet meer afzonderlijk zichtbaar zijn, maar ze zijn er natuurlijk nog wel. Als je dit exporteerd, krijg je misschien wel het hele geheugen overgestuurd?

Do Androids Dream of Electric Sheep?

Voor zover ik kan zien zonder de scope daadwerkelijk te hebben wordt het SCPI protocol gebruikt voor de scope, zoals free_electron al eerder zei, dit zowel voor de seriële als de USB verbinding. Heb je die ook voorbij zien komen K-Ray? Dus iets met een ": DURATION:TIME"-achtige syntax.

Gezien de seriele communicatie bij Ultrascope op maximaal 38400 baud kan lijkt me die verbinding niet al te snel. Bovendien is een USB verbinding natuurlijk veel handiger. Eigen software schrijven voor de USB verbinding moet volgens mij wel kunnen alleen is dat misschien juridisch wat lastiger gezien er toch wel wat reverse engineering bij komt kijken (al trekt China zich daar zelf soms ook weinig van aan ;)).

Zelf software knutselen zonder winst in gedachten, moet toch bijna altijd wel mogen ?

Nouja je gebruikt dan wel een deel van hun software. De driver in ieder geval maar waarschijnlijk ook nog de extra DLL die bij Ultrascope zit. En gezien daar geen documentatie van is zul je dat zelf moeten gaan uitvissen en dat is een wat grijs gebied.

Rigol lijkt hun site geupdate te hebben, er staat ook een nieuwe driver versie op (hier) maar ik vraag me af of die geschikt is voor de DS1000 serie. Het staat er wel bij maar de driver heeft een totaal andere VID/PID combinatie en heet ook 'DG series'.

K-Ray, zou je voor de gein eens iets kunnen proberen met de software van Agilent/HP, die is ook te downloaden. Dan wel voor die "rigol-modellen" natuurlijk.
Wie weet werkt dat maar zomaar (weinig kans :D) maar zo niet dan kun je misschien nog wat uit het USB-verkeer afleiden?

If you want to succeed, double your failure rate.

@madwizard
Dit is een voorbeeldje van wat er zoal voorbij komt:
: T R I G G E R : S T A T U S ?
: M A T H : D I S P L A Y ?
: F F T : D I S P L A Y ?
: S Y S T E M : D A T A ?
: T R I G G E R : M O D E ?
: T I M E B A S E : F O R M A T
: C H A N N E L 2 : S C A L E ?
: C H A N N E L 2 : O F F S E T
: T I M E B A S E : S C A L E ?
: T I M E B A S E : O F F S E T
: W A V E F O R M : D A T A ?

Helaas vandaag geen tijd om te spelen.
Hopelijk morgen wel om wat bestanden online te zetten waar jullie verder mee kunnen.

Dat ziet er inderdaad uit als SCPI. Kan je eens kijken of die nieuwe driver van Rigol ook werkt?
edit: welke sniffer gebruik je trouwens?

[Bericht gewijzigd door madwizard op 26 juni 2007 23:46:08 ]

Op 26 juni 2007 20:42:46 schreef Mr GAmba:
Zelf software knutselen zonder winst in gedachten, moet toch bijna altijd wel mogen ?

Wij wonen in de EU. Reverse engineering om compatibele software te maken is toegestaan. Zelfs als je die compatibele software wilt gaan verkopen.

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/

Daar zullen vast wel de nodige condities aan hangen ook. USB traffic analyseren is weer wat anders dan de code disassemblen. Van wat ik gelezen heb lijkt dat in Europa ook wel te mogen maar het blijft allemaal een beetje grijs gebied. Ook weet ik niet of de moderators dat wel willen op het forum.

mwa, we gaan immers het apparaat gebruiken, het geeft die functionaliteit, dus waarom zou het niet mogen?

IF you can't convince them, then confuse them!