How to use the rigol 1042CD

Op 14 juli 2007 11:42:04 schreef madwizard:
Via de USB device poort (is dat de achterkant?) kan de DG2000 (functiegenerator) blijkbaar wel de hele buffer uitlezen. Op blz 83 van de DG2000 manual staat dat deze apparaten naadloos kunnen samenwerken, en dat alle 512K punten uitgelezen worden.

Ik weet niet helemaal zeker of de DG2000 nou host of device is in dit geval, het lijkt erop dat ie host is en dus een PC hetzelfde zou moeten kunnen.

Hmm, dit deed me denken aan de reference waveform (blz 2-16 ds1000). Die zien er dus vergelijkbaar uit als de waveform (wfm) files. Alleen in de ref staat maar 1 kanaal, dus of ch1 of ch2 of math of de LA.
Misschien maakt de dg2000 gebruik van zo'n reference waveform?
Ik heb zelf nog niks met de usb commuicatie (scpi) geprobeerd, als er een commando is om de files op te vragen, hebben we volgens mij alles wat nodig is.

[Bericht gewijzigd door droid op zaterdag 14 juli 2007 13:34:53 (41%)

Do Androids Dream of Electric Sheep?

Op 14 juli 2007 13:33:24 schreef droid:
Misschien maakt de dg2000 gebruik van zo'n reference waveform?

Dan zou je eerst een reference waveform moeten maken op de DS1000, lijkt me ook onhandig dus ik denk dat die DG2000 gewoon direct het geheugen leest.

Het gaat vast gewoon via SCPI maar het vervelende is dat dit in de firmware van de DG2000 zit en niet in z'n software (waarschijnlijk). Helaas ook geen firmware te downloaden voor de scopes, dat zou ook schelen.

Ik heb rigol een mailtje gestuurd of er een SCPI commando is voor het uitlezen van het geheugen. Geen idee of ze reageren op e-mail en hier op ingaan maar het is het proberen waard.

Voor de windows gebruikers is hier een quick&dirty SCPI test tooltje: rigol_scpi.zip . Typ een SCPI commando in (let op hoofdletters!) en druk op enter. Is het een commando dan zie je niets verder, is het een query krijg je de resultaten als hex & ascii terug.
Typ quit of exit om het programma te verlaten.
edit: even wachten met downloaden, zit nog een klein foutje in. fixed.

OK. Ik kan de hele waveform uitlezen... (huidige implementatie leest 510k uit, omdat dat altijd kan, ook als je 2 kanalen aan hebt staan).

http://prive.bitwizard.nl/rigol/rigol-0.1rew3.tgz

Of de DG2000 dezelfde truuk gebruikt als ik weet ik niet...

Ik stop de aquisitie, dan reken ik uit wat de timescale moet zijn om 50 samples per divisie te krijgen. Vervolgens zet ik de offset zodanig dat ik helemaal links in de waveform zit. Vervolgens vraag ik de scherm-data op, en gaan we een schermpje naar rechts, netzolang dat de hele waveform is uitgelezen.

Ik plot de boel in gnuplot met:

code:

plot '<./raw2gp < ch1.dump'

Gnuplot is dan wel even aan het rekenen.....

Madwizard: Vind je het erg om je source te publiceren? Met een beetje mazzel kunnen wij dan de boel samenvoegen, en voortaan 1 source gebruiken om op beide besturings systemen te werken.... Als we dat VOOR vanochtend hadden gedaan hadden de windowsgebruikers nu ook de hele buffer kunnen uitlezen... :-)

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

Op 14 juli 2007 14:19:40 schreef rew:
Of de DG2000 dezelfde truuk gebruikt als ik weet ik niet...

Ik denk het niet, echt netjes is het zo niet en volgens mij duurt het ook vrij lang (25 seconden ofzo, klopt dat een beetje met jouw tooltje?).

Madwizard: Vind je het erg om je source te publiceren? Met een beetje mazzel kunnen wij dan de boel samenvoegen, en voortaan 1 source gebruiken om op beide besturings systemen te werken.... Als we dat VOOR vanochtend hadden gedaan hadden de windowsgebruikers nu ook de hele buffer kunnen uitlezen... :-)

Ik wil de source wel vrijgeven hoor, deze is op de DLL gebaseerd dus vrij eenvoudig en zonder USB gedoe. Ik wil er nog wel een keer een maken die niet meer van de DLL afhankelijk is, en een non-blocking write en read gerbuikt (wat beter binnen windows past).
Zal de code een beetje opschonen.

Je tooltje werkt bij mij niet, krijg de fout melding:

De toepassing kan niet worden gestart omdat de configuratie van de toepassing onjuist is. Het opnieuw installeren van de toepassing kan dit probleem oplossen.

Moet ik iets misschien installeren, om het USB gedoe te ondersteunen?

Do Androids Dream of Electric Sheep?

Zojuist getimed. Het kost 28 seconden om de hele buffer uit te lezen...

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

Op 14 juli 2007 14:11:06 schreef madwizard:
Dan zou je eerst een reference waveform moeten maken op de DS1000, lijkt me ook onhandig dus ik denk dat die DG2000 gewoon direct het geheugen leest.

De DG2000 zou toch via SCPI commando's de ref file kunnen laten maken, dat lijkt lijkt me het meest logische.

Do Androids Dream of Electric Sheep?

Op 14 juli 2007 14:54:41 schreef droid:
De toepassing kan niet worden gestart omdat de configuratie van de toepassing onjuist is. Het Op nieuw installeren van de toepassing kan dit probleem oplossen.

Heb je geen verdere details bij de foutmelding?

Moet ik iets misschien installeren, om het USB gedoe te ondersteunen?

Ja, je moet in ieder geval UltraScope geinstalleerd hebben.

Op 14 juli 2007 15:00:20 schreef droid:
De DG2000 zou toch via SCPI commando's de ref file kunnen laten maken, dat lijkt lijkt me het meest logische.

Maar dan is je referentie overschreven terwijl je dat misschien helemaal niet wil. En wat voor moeite is het nou ook om gewoon zo'n uitlees commando erin te zetten. Ik denk dat het er echt wel in zit.

Source code

Op 14 juli 2007 14:54:41 schreef droid:
Je tooltje werkt bij mij niet, krijg de fout melding:

De toepassing kan niet worden gestart omdat de configuratie van de toepassing onjuist is. Het opnieuw installeren van de toepassing kan dit probleem oplossen.

Moet ik iets misschien installeren, om het USB gedoe te ondersteunen?

zelfde hier

Met geld moet je creativiteit bekopen.

Misschien dat jullie de C runtime libs niet hebben, download de zip even opnieuw. Het is nu een versie die verder geen runtime DLLs nodig heeft. Wel UltraScope (of preciezer, de rigol USB dll in system32).

Do Androids Dream of Electric Sheep?

Mooi. Ik weet niet of iemand dit al gedaan had maar ik heb ook het formaat van de screendumps. Ultrascope doet eerst een ":HARDCOPY" en vervolgens een ":LCD: DATA?" om een screemdump te maken. Wat de hardcopy precies doet weet ik niet, alleen het LCD data commando lijkt ook te werken maar misschien dat deze dan niet refresht.

De teruggeven data is 74880 bytes, oftewel 1 byte per pixel (320x234). Elke byte heeft RGB data in zich, met 2 bits voor rood en 3 voor blauw en groen:

code:


bit   76 543 210
kleur RR GGG BBB

Dit is bijvoorbeeld met zo'n php scriptje uit te lezen:

code:

<?
    $file = fopen("screen_dump", "rb");
    $data = fread($file, filesize("screen_dump"));
    $img = imagecreatetruecolor(320, 234);
    $k = 0;
    for ($y=0;$y<234;$y++)
    {   
        for ($x=0;$x<320;$x++)
        {
            $p = ord($data{$k++});
            
            $r = ($p >> 6) & 0x3;
            $g = ($p >> 3) & 0x7;
            $b = ($p >> 0) & 0x7;
            
            $r <<= 6;
            $g <<= 5;
            $b <<= 5;
            
            $c = ($r << 16) | ($g << 8) | $b;
            
            imagesetpixel($img, $x, $y, $c);
        }
    }
    
    header("Content-Type: image/png");
    imagepng($img);
?>

Dit geeft dan zo'n resultaat:
http://www.madwizard.org/extern/rigol/screendump.png

Screendump had ik al getest, zit in het testprogje van mij. De methode
had ik aan rew doorgegeven.

Gebruik jij de bijgeleverde DLL?

[Bericht gewijzigd door williewortel op zaterdag 14 juli 2007 18:13:33 (15%)

Op 14 juli 2007 18:11:38 schreef williewortel:
Screendump had ik al getest, zit in het testprogje van mij. De methode had ik aan rew doorgegeven.

Ik wist het commando ook wel, alleen het exacte formaat had ik nog niet gezien hier geloof ik.

Gebruik jij de bijgeleverde DLL?

Ja, dat was even het makkelijkst om te testen. Maar met de setup API en DeviceIoControl/Read/Writefile kan het ook prima.

WW, ik had gezien dat je de commandos in mijn wiki had gezet. Ik had ze nog niet begrepen: Ik kreeg het niet zomaar aan de praat. Mogelijk iets met niet eerst "HARDCOPY" doen, voor LCD:DATA?, dat ie het dan voorlopig niet meer doet of zo.

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

De usb stick (Flash voyager) wordt niet herkend

Is een usb 2.0 ding (geformateerd FAT32 en FAT)
beide doen het niet

Als ik hem aansluit aan de voorkant zegt de rigol wel een usb connected.... maar voor de rest niets
'external' storage wordt niet vrijgegeven.

Welke usb sticks hebben jullie aan de gang gekregen?
Is toch een probleem dat het apparaat niet goed werkt met usb sticks

Wat is hier aan de hand?

[Bericht gewijzigd door The Puma op zaterdag 14 juli 2007 19:54:33 (18%)

Dat kan beter in het ervaringen-topic denk ik, maar bij mij werkt een 256MB stickje ook niet terwijl een CF-reader er weer wel in werkt. M'n printer erop trouwens ook niet maar ik weet niet precies wat de eisen daarvoor zijn.

[Bericht gewijzigd door madwizard op zaterdag 14 juli 2007 19:56:35 (25%)

free_electron

Silicon Member

Op 14 juli 2007 11:26:44 schreef rew:
Agilent heeft kennelijk aan Rigol gevraagd of ze de firmware op bepaalde punten konden aanpassen. Ik gok dat dit is omdat Agilent dan minder aan HUN windows software hoeft aan te passen om de boel aan de praat te krijgen.

het verhaal wat ik gehoord heb (rechtstreeks van een ontwerper van Agilent scoops ):

is dat Rigol ene reeks scoops gemaakt heeft. ( rigol is ene OEM fabrikant geval. zij maken x aantal varianten van een platform en gaan dan zien wie er geinteresseerd is.

Agilent was op zoek naar ene low cost machiene.
Agilent heeft hun keuze gemaakt en geholpen met de firmware ( de firmware en menu systemen komen in grote trekken overeen met de 546xx reeks van agilent . dat ding was ook een 2 + 16 kanaal machiene. ik heb er op het werk zo ene staan naast mij)

de agilent firmware heeft wel een aantal zaken die de 'andere' rigol machienes NIET hebben ( speciaaltjes die gepatenteerd zijn ) maar das allemaal software / fpga code

De andere modellen die niet door agilent geslecteerd zijn om onder hun naam te verkopen, verkoopt rigol nu onder hun eigen merk of onder nog andere merken ( ik heb al iwatsu en wittig gezien )

- einde van het verhaal uit betrouwbare bron -

De rigol is trouwens gebaseerd op een Blackfin processor van analog devices. en altera levert de fpga die het snelle werk moet doen.

heel waarschijnlijk zijn de moederborden in al die scoops identiek. alleen de firmware is anders. de sampler kaart is ook specifiek per machiene.

voor mensen met usb memory stick problemen:

smijt stomweg op die usb stick eens een dom .TXT bestand en ene lege directory. ( houd je aan de 8.3 naamgeving , gebruik geen long filenames. )
tis maar een gedacht ... ik heb ooit zo eens iets gezien onder win2000 met een memorystick die niet gemount kon worden. op een andere computer er een paar files op gezet en het werkte plots wel ...

Professioneel ElectronenTemmer - siliconvalleygarage.com - De voltooid verleden tijd van 'halfgeleider' is 'zand' ... US 8,032,693 / US 7,714,746 / US 7,355,303 / US 7,098,557 / US 6,762,632 / EP 1804159 - Real programmers write Hex into ROM

Op 14 juli 2007 20:41:58 schreef free_electron: De rigol is trouwens gebaseerd op een Blackfin processor van analog devices. en altera levert de fpga die het snelle werk moet doen.

Klopt.
De blackfin is de ADSP-BF531SBSTZ400.
De FPGA's zijn Altera Cylcones EP1C6Q240C8N en EP2C5Q208C8 (LA).

heel waarschijnlijk zijn de moederborden in al die scoops identiek. alleen de firmware is anders. de sampler kaart is ook specifiek per machiene.

Dat denk ik persoonlijk niet. Externe aansluitingen zitten namelijk niet op de zelfde plaats en ze zitten wel rechtstreeks onboard, dus daarom ook ander board.
Er is ook geen aparte samplerkaart in de Rigols. Alles zit op 1 bordje, behalve bediening, voeding en LA.

Op 14 juli 2007 22:14:42 schreef K-Ray:

FPGA die het snelle werk moet doen.

[...]
De FPGA's zijn Altera Cylcones EP1C6Q240C8N en EP2C5Q208C8 (LA).

Ehh. dat zijn de langzaamste speedgrade die je kunt krijgen van de FPGAs.

Als de scope op 400MHz kan samplen, dan is dat nog lastig met een Cyclone 1. Zeker als je de langzaamste speedgrade neemt. Zou het datapad buiten de altera blijven? Of zou de 400->200 demux in dedicated hardware plaatsvinden?

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

GLOEIENDE......

Als je time/div op 2.5 us per divisie instelt is dan rapporteert hij terug dat ie dat gedaan heeft...

Het display bevat echter de data voor 5us per divisie. Ook met het opvragen van de data via SCPI.

Kan iemand dit reproduceren met de windows software?

Op 1ms/div een "plaatje schieten" (gebruik de aquire toets om te zien dat ie 20Ms/sec heeft gedaan), druk op "run/stop", en zoom in tot 2.5 us/div.

Mogelijk zit die optie (2.5us/div) niet in de stapjes. Kan je in ultrascope een "willekeurige waarde" invoeren? Kan ik een "analoge" aanpassing doen van de timebase? Bij de voltage scale kan ik analoog aan het knopje draaien als ik er 1x op druk, maar bij de timebase gaat ie dan in delayed timebase....

Via de toetsen krijg ik 2.5 us/div niet voor mekaar. Kan je dat in Ultrascope wel selecteren?

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

Als je met :TIMEBASE:OFFSET de offset instelt, en daarna met :WAV:DATA? De data uit de buffer opvraagt, dan krijg je de oude data. 500ms wachten is genoeg om de nieuwe data te krijgen. 20ms is niet genoeg. Zucht.

[edit] 23ms is OK, 22ms is niet ok.

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

Jongens, het is stil in dit topic.

Allemaal op vakantie?

Is niemand meer bezig om de data in te lezen (protocol analyzer voor SPI/IC2 data)

Shiptronic

Overleden

iemand al iets werkend ? protocol

Wie de vraag stelt, zal met het antwoord moeten leren leven.