USB Oszilloskop “SainSmart DDS120” 2-Kanal 20MHz 50Msps (Buudai/Rocktech BM102)

Für derzeit ca. 50€ (10.09.2014)  bietet SainSmart ein 2-Kanal-USB-Oszilloskop mit 20MHz analoger Bandbreite bei max. 50Msps (Megasamples pro Sekunde) an. Baugleiche Modelle sind die “BM102” von Rocktech/Buudai.

Die technischen Daten lesen sich wie folgt:

Interface USB 2.0
Kanäle 2
Abgleichsignal 1kHz, 3.25V Rechteck
Bandbreite (analog) 20MHZ
maximale Samplingrate 25Msps (1 Kanal), 50Msps (2 Kanäle)
Auflösung (vertikal) 8 bit
Eingangsspannung ±5v, ± 50v (1:10), ± 500v (1:100)
Rauschen ±25mv bei 500mv/div
±10mV bei 200mv/div
±8mV bei 100mv/div
±4mV bei 50mv/div
Trigger coupling AC AC-coupled, DC DC-coupled
Triggering Trigger level + rising / falling-edge trigger
Trigger Auto, Normal, Single Shot
Eingangsimpedanz 1M / 25pf
Speichertiefe 1K-2M
Leistungsbedarf < 2 W
Gewicht < 400g
Automessung Vmax, Vmin, Vpp, Vavg, Vrms, Frequenz
Rise time, Tastverhältnis
Abmessungen 12 cm X 7.5cm X 2.5 cm

Im Lieferumfang enthalten sind des Weiteren 2 Tastköpfe (1:1, 1:10, 60MHz – ohne Kompensation), ein USB-Kabel sowie Software auf CD-ROM. Letztere ist “schön” anzusehen, in der Umsetzung leider inkonsequent – es gibt zahlreiche Bugs und Unzulänglichkeiten.

Hardware

  • Analog Devices AD9288BSTZ-40 (2-Kanal ADC)
  • Cypress CY7C68013A FX2LP – EZ-USB 100 Pin (Controller/Interface)
  • Microchip 24LC64 (8KByte I2C Serial EEPROM)
  • Analog Devices AD8065 (Opamp)
  • Texas Instruments CD4052B (2x 1:4 Multiplexer)

Software

SainSmart proklamiert “Open-Source Software Interface”, davon ist bislang wenig/nichts zu sehen. Das beigefügte “SDK” bzw. die Demoprogramme sind undokumentiert und fehlerhaft.

Hacking/Funktion/Sonstiges

Das Oszilloskop basiert auf dem EZ-USB FX2LP ” High-Speed USB Peripheral Controller”. Derzeit sind folgende Kontrollbefehle bekannt (ermittelt via USBPCAP + Wireshark):

CommandCodeBitmaskeKanalBeschreibung
0x240x000000 00001AC-Kopplung
0x240x080000 10001DC-Kopplung
0x250x000000 00002AC-Kopplung
0x250x010000 00012DC-Kopplung
0x220x080000 1000150mV/div
-6dB Input
+10dB Gain (x3.5)
0x220x040000 01001100mV/div
-6dB Input
+3.3dB Gain (x1.46)
0x220x000000 00001200mV/div
-6dB Input
-4.4dB Gain (x0.6)
0x220x060000 01101500mV/div
-20dB Input
+3.3dB Gain (x1.46)
0x220x020000 001011-5V/div
-20dB Input
-4.4dB Gain (x0.6)
0x230x200010 0000250mV/div
-6dB Input
+10dB Gain (x3.5)
0x230x100000 10102100mV/div
-6dB Input
+3.3dB Gain (x1.46)
0x230x000000 00002200mV/div
-6dB Input
-4.4dB Gain (x0.6)
0x230x120000 11002500mV/div
-20dB Input
+3.3dB Gain (x1.46)
0x230x020000 001021-5V/div
-20dB Input
-4.4dB Gain (x0.6)
0x940x110001 0001 240kHz Samplerate
0x940x010000 00012.4MHz Samplerate
0x940x100001 000048/50MHz Samplerate
0x340x000000 0000Scope-Mode
0x340x010000 0001*Logic-Analyzer-Mode
0x620x000000 0000*Signalgenerator
(Rechteck)
0x600x000000 0000*Signalgenerator
(Sinus)
0x610x000000 0000*Signalgenerator
(Dreieck)
0x330x000000 0000Datenabruf(Polling)

Ein großes Problem liegt in der festen Polling-Zeit (100/200ms), mit welcher die Daten vom ADC abgefragt werden. Je nach Zeitbasis/Samplingrate ergeben sich verschieden große Datenpakete welche, logischerweise, verschiedene Transferzeiten haben. Ebenfalls ist das Oszilloskop während der Datenübertragung “blind”. In Konsequenz stürzt die Software über kurz oder lang ab. Diesen Sachverhalt zeigt nachfolgende Tabelle (getestet mit Rocktech Version 1.2):

TimebaseSamplerateRequests pro Sekunde
(rps)
Pakete pro Sekunde (pps)Paketgröße (Bytes)
50ns-1us50MHz10101024
4us2.4MHz10102048
20us2.4MHz10104096
200ns2.4MHz5565536
500ns2.4MHz5565536
1ms-5ms240kHz5565536
10ms240kHz53.7131072
20ms240kHz51.85262144
100ms240kHz50.91524288
200ms240kHz50.4591048576

Wie man leicht sieht, werden bei Zeitbasen >= 10ms mehr Anfragen pro Sekunde gestellt als beantwortet werden können.

 

TBC.

Das könnte Dich auch interessieren...

2 Antworten

  1. angel sagt:

    can i get recorded waveform of dds120 (.dds120)

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

* Die DSGVO-Checkbox ist ein Pflichtfeld

*

Ich stimme zu

This website stores some user agent data. These data are used to provide a more personalized experience and to track your whereabouts around our website in compliance with the European General Data Protection Regulation. If you decide to opt-out of any future tracking, a cookie will be set up in your browser to remember this choice for one year. I Agree, Deny
686