Forum: PC Hard- und Software Neue Open Source Software macht aus deinem Oszilloskop einen Logik Analysator


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Elmü M. (elmue)



Lesenswert?

Hallo

Hast du ein Oszilloskop, das sich über USB mit dem Computer verbinden 
kann oder das CSV Dateien auf einem USB Stick speichern kann?
Dann teste meine neue Open Source Software "Oszi Waveform Analyzer", die 
dein Oszi in einen Logic Analysator verwandelt.

Siehe angehängtes Bild OsziWaveformAnalyzer.png, das das Forum mir nicht 
erlaubt hier einzufügen.

Ein Tooltip zeigt Details über das Signal an und kann z.B. eine 
unbekannte Baudrate auf einen Blick ermitteln.

Oszi Waveform Analyzer hat mehrere A/D Konverter, die ein analoges 
Signal in ein digitales umwandeln können.

Das digitale Signal kann dann von einem der eingebauten Dekoder 
analysiert werden: UART, SPI, I2C, CAN bus (auch CAN FD).

Ein Rechtsklick auf einen Kanal zeigt ein Menü mit allen vorhandenen 
Operationen.

Siehe angehängtes Bild RightClickMenu.png, das das Forum mir nicht 
erlaubt hier einzufügen.


Als Beispiel einer dekodierten SPI Kommunikation siehe angehängtes Bild 
SPI_Mode_0_Communication.png

Dieser Screenshot zeigt den bi-direktionalen SPI Transfer eines Teensy 
Boards mit einem Philips PN532 RFID + NFC Transmitter Chip.

Die dekodierten UART, SPI oder I2C bytes können weiter analysiert werden 
mit einem Post Dekoder, der die Bedeutung der übertragenen Bytes 
anzeigt.

Ein Beispiel Post Dekoder für den PN532 Chip siehe Bild 
PostDecoderPn532Spi.png

Die übertragenen SPI Bytes werden analysiert und Details über die RFID 
Karte, die der PN532 erkannt hat, werden extrahiert.

Mein Open Source Project erlaubt es, eigene Dekoder oder Post Dekoder 
zuzufügen.

Der CAN Bus Dekoder ist eine große Hilfe beim Analysieren von Problemen 
mit dem CAN Bus (CAN Classic oder CAN FD). Er implementiert eine volle 
Fehlererkennung: Sample Point Timing Errors, Stuff Bit Errors, Parity 
Bit Errors und CRC Errors.

Außerdem kann Oszi Waveform Analyzer den bidirektionalen Half-Duplex 
Transfer auf einer Datenleitung aufsplitten in 2 getrennte Rx und Tx 
Kanäle. Ich zeige das am Beispiel der Kommunikation eines Pinpad mit 
einer Smartcard.

Oszi Waveform Analzyer hat noch viel mehr Features als das.
Eine detallierte Beschreibung und der Download sind hier zu finden:
https://netcult.ch/elmue/Oszi-Waveform-Analyzer/

Elmü

: Bearbeitet durch User
Beitrag #7832399 wurde von einem Moderator gelöscht.
Beitrag #7832402 wurde von einem Moderator gelöscht.
von Wegstaben V. (wegstabenverbuchsler)


Lesenswert?

Elmü M. schrieb:
> meine neue Open Source Software "Oszi Waveform Analyzer", die
> dein Oszi in einen Logic Analysator verwandelt.

nett. Schaue ich mir gerne an

> ... netcult.ch
Wer hats erfunden? Die Schweizer!   ;-)

: Bearbeitet durch User
von Pat A. (patamat)


Lesenswert?

Elmü M. schrieb:
> Mein Open Source Project erlaubt es, eigene Dekoder oder Post Dekoder
> zuzufügen.

Funktioniert das mit den Sigrok-Decodern (und Deviraten) oder sind die 
'proprietär'?

: Bearbeitet durch User
von Jens K. (jensky)


Lesenswert?

Ist das überhaupt zulässig?
Dem Hersteller entgeht somit viel Geld wenn jeder kostenlose Software 
nutzt

von Motopick (motopick)


Lesenswert?

Jens K. schrieb:
> Ist das überhaupt zulässig?
> Dem Hersteller entgeht somit viel Geld wenn jeder kostenlose Software
> nutzt

Die "Verluste" waeren noch viel groesser, wenn die Software aus
einem Logikanalyzer ein Oszilloskop machen wuerde!

von Pat A. (patamat)


Lesenswert?

Jens K. schrieb:
> Ist das überhaupt zulässig?
> Dem Hersteller entgeht somit viel Geld wenn jeder kostenlose Software
> nutzt

Sigrok ist Open Source "licensed under the terms of the GNU GPL, version 
3 or later" ;-)

von Elmü M. (elmue)


Lesenswert?

> Dem Hersteller entgeht somit viel Geld wenn jeder kostenlose Software
> nutzt

Ich weiß nicht von welchem Hersteller du sprichst.
Aber was mein Rigol angeht verdienen die Geld mit dem Verkauf der 
Oszilloskope aber nicht mit der zusätzlichen Software UltraScope, denn 
die ist kostenlos (und grotten primitiv).

Elmü

von Frank E. (Firma: Q3) (qualidat)


Lesenswert?

Beeindruckende Features.

Schade nur, dass man so ein Projekt nicht so programmiert, dass es auch 
für andere Systeme compilerbar ist (Mac, Linux). Der Aufwand wäre 
überschaubar, wenn man vom Anfang an so gedacht hätte (Java, C++, Xojo 
uva.).

Und jetzt komme bitte keiner, der meint, als Open Source könne man doch 
alles selber Compileren. Ja und nein: Das Projekt ist so komplex, da 
kann man es auch gleich neu schreiben, also eher nicht. Und die Sourcen 
sind voll mit Win-spezifischen Calls, die alle umgestrickt bzw. 
"gewrapppt" werden müssten.

Ich finde das Projekt und die darin investierte Energie trotzdem 
bewundernswert ...

von Thomas G. (thomas_g760)


Lesenswert?

Frank E. schrieb:
> Beeindruckende Features.
>
> Schade nur, dass man so ein Projekt nicht so programmiert, dass es auch
> für andere Systeme compilerbar ist (Mac, Linux). Der Aufwand wäre
> überschaubar, wenn man vom Anfang an so gedacht hätte (Java, C++, Xojo
> uva.).

Zitat von der Webseite:
Windows 7 was the best operating system that Microsoft has ever 
released. Many people are still using it (like me).

Ja, sicher, auch jede Menge Hausfrauen und HausX benutzen das. Im 
professionellen Bereich koennte man auch an die Nutzer mit -nix 
basierten Systemen denken, die duerften da ueberwiegen.

Aber trotzdem, vollen Respekt, die SW sieht gut aus, wuerde die gern mal 
testen.

von Elmü M. (elmue)


Lesenswert?

Hallo

Ein .NET Projekt kann auch auf Mono laufen.
Ein paar kleine Anpassungen wären allerdings nötig.
Aber die halten sich in überschaubaren Grenzen.

Ich kann das nicht machen, da ich von Linux keine Ahnung habe und es 
mich auch absolut nicht interessiert.

>> Polemik - Begin

Abgesehen davon gibt es DAS Linux ja gar nicht. Es gibt Hundert 
Distributionen. Soll ich auf all denen testen? Wie viele Festplatten 
brauche ich um nur die Linuxe alle zu installieren?

Und Java ist so ziemlich das aller primitviste, was gegen das powervolle 
.NET Framework nich annährend anstinken kann. Abgesehen davon dass es 
grotten lahm ist. Also wer mir hier mit Java ankommt, der hat noch nie 
was ernsthaftes programmiert.

Und der Kommtar von wegen C++ ist einfach nur albern. C++ ist also 
Plattform unabhängiger als .NET? What? Davon habe ich noch nie gehört.

Polemik - Ende <<


Also wenn du so begeiterst bist von deinem Linux, dann könntest du dazu 
beitragen Oszi Waveform Analzyer auf Mono ans Laufen zu kriegen.

_____________________________________

Gehen wir mal in die Details:

Was ist da an Windows - spezifischem Code drin?

Zuerst mal brauchst du einen USB TMC Treiber.
Der Treiber, den ich benuzte, ist von der IVI Foundation. Ich weiß nicht 
ob die auch einen für Linux haben, und wenn ja für welche der hundert 
Linuxe.

Wenn du also erst mal den Treiber hast, mußt du dann noch die 
Kommunikation mit dem Treiber schreiben. Es sollte dir einleuchten, dass 
die direkte Kommunikation mit einem Treiber IMMER Plattform abhängig 
ist. Die muß für Windows, MAC und Linuxe selbstverständlich getrennt 
geschrieben werden, da ein Plattform unabhängiges Framework für SCPI 
Kommunikation nicht exisitiert.

Aber zum Glück ist SCPI ein extrem primitives Prokoll. Das sollte in 
einer kleinen Klasse in Linux programmierbar sein.

In Windows sind dafür lediglich acht API Aufrufe in den Kernel nötig um 
die gesamte Kommunikation mit dem Oszilloskop zu machen.

Dann ist da noch der Code, der die angeschlossene USB Geräte auflistet.
Der muß natürlich auch neu geschreiben werden. Ich benötige dafür gerade 
mal 70 Zeilen Code und schon habe ich die Liste der verbundenen 
Oszilloskope. Wenn Linux so toll ist sollte das kein Problem sein.


Anderer Windows spezifischer Code ist das Erstellen eines Shortcuts zum 
Programm im Startmenü.

Die Funktion CreateShort() benötigt gerade mal 6 Zeilen Code. Also 
lächerlich.

Und das Regitrieren der Dateiendung .OSZI, so dass beim Doppelklick auf 
eine OSZI Datei automatisch das Programm gestartet wird besteht aus 5 
Zeilen Code. Also lächerlich.


Eine andere Windows spezifische Sache ist das Öffnen des Browsers und 
Anzeigen der HTML Hilfe, wenn der User ein LinkLabel klickt.

Das siend weniger als 20 Zeilen Code. Also lächerlich.

Ich weiß nicht wie Linux RTF Code anzeigt im .NET RichTextBox Control?
Ich habe da einen Workaround eingebaut, der auf Linux nicht nötig ist, 
wenn  Mono die Bugs von Microsoft nicht übernommen hat. Der Workaround 
kann wahrscheinlich einfach übersprungen werden.

Und das war es dann auch schon!

Ich würde sagen, für jemanden, der Ahnung von Linux hat, ist das 
durchaus und relativ schnell machbar.


Das große Klagen von wegen
> und die Sourcen sind voll mit Win-spezifischen Calls,
ist also totaler Unfug.


Ich würde gern mal sehen wie DU eine Software, die ein USB Protokoll 
implementiert, so schreibst, dass sie vollkommen Plattform unabhängig 
auf allen Windows, allen MAC und allen Linux Versionen läuft. Und wie 
viele Monate du allein zum Testen brauchst.


> wenn man vom Anfang an so gedacht hätte (Java, C++, Xojo uva.).

ist so ziemlich einfach nur bla bla.

: Bearbeitet durch User
von Hippelhaxe (hippelhaxe)


Lesenswert?

Jens K. schrieb:

> Ist das überhaupt zulässig?

Nein! Keinesfalls!


> Dem Hersteller entgeht somit viel Geld wenn jeder
> kostenlose Software nutzt

Auch Klavierunterricht ist Förderung der Kriminalität
und daher schon seit Jahren verboten; das wird engmaschig
von der Musikpolizei überwacht.

Schließlich schmälert jedes selbst geklimperte Stück
den Profit der Musikindustrie.

"Making music is killing music!"

von Scyte R. (scyte)


Lesenswert?

Sieht ja auf den ersten Blick echt cool aus!
Wo finde ich den Sourcecode?
Mit dem Handy könnte ich nichts auf der Seite finden. Vielleicht Stelle 
ich Mich aber auch zu blöd an 😄

von Mi. W. (mikuwi)


Lesenswert?

Jens K. schrieb:
> Ist das überhaupt zulässig?
> Dem Hersteller entgeht somit viel Geld wenn jeder kostenlose Software
> nutzt

Bitte beim nächste mal "Bedenkenträgerdenke posten" die Smilies nicht 
vergessen, sonst nimmt das hier jemand tatsächlich ernst...

von Jens K. (jensky)


Lesenswert?

Mi. W. schrieb:
> Jens K. schrieb:
>> Ist das überhaupt zulässig?
>> Dem Hersteller entgeht somit viel Geld wenn jeder kostenlose Software
>> nutzt
>
> Bitte beim nächste mal "Bedenkenträgerdenke posten" die Smilies nicht
> vergessen, sonst nimmt das hier jemand tatsächlich ernst...

ja, den hab ich vergessen :-)
Aber nett zu sehen wie sich die Altherren wieder aufpusten.

von Alexander S. (alesi)


Lesenswert?

Scyte R. schrieb:
> Wo finde ich den Sourcecode?

Auf der Seite https://netcult.ch/elmue/Oszi-Waveform-Analyzer/ ist im 
Abschnitt "Download & New Versions" der source code auf github verlinkt:
https://github.com/Elmue/Oszi-Waveform-Analyzer

von Herbert Z. (herbertz)


Lesenswert?

Jens K. schrieb:
> Aber nett zu sehen wie sich die Altherren wieder aufpusten.

Ich schätze mal, du willst alt werden. Willkommen dann im Club der 
"Altherren".... wenn dein Schicksal keine andere Planung vorsieht...
MFG

von Jens K. (jensky)


Lesenswert?

Herbert Z. schrieb:
> Jens K. schrieb:
>> Aber nett zu sehen wie sich die Altherren wieder aufpusten.
>
> Ich schätze mal, du willst alt werden. Willkommen dann im Club der
> "Altherren".... wenn dein Schicksal keine andere Planung vorsieht...
> MFG

Naja, ich will alt werden. Aber nicht engstirnig ;-)

von Sherlock 🕵🏽‍♂️ (rubbel-die-katz)


Lesenswert?

Elmü M. schrieb:
> Abgesehen davon gibt es DAS Linux ja gar nicht. Es gibt Hundert
> Distributionen. Soll ich auf all denen testen?

Die unterscheiden sich im wesentlichen darin, welche Programme im 
Lieferumfang enthalten sind und wie sie vorkonfiguriert sind. Es reicht, 
wenn du auf einer gängigen Distribution (z.B Debian oder Ubuntu) 
testest. Mit 99% Wahrscheinlichkeit läuft das Programm dann auch auf 
allen anderen. Wahrscheinlich sogar auf Mac OS.

> Es sollte dir einleuchten, dass
> die direkte Kommunikation mit einem Treiber IMMER Plattform abhängig
> ist. Die muß für Windows, MAC und Linuxe selbstverständlich getrennt
> geschrieben werden

Nicht immer. Libusb gibt es z.B für Linux, Windows, Mac OS und Android. 
Viele Werkzeuge für Elektroniker (z.B Programmieradapter und Debugger) 
nutzen diesen.

von Peter D. (fenstergucker)


Lesenswert?

Hallo Elmü,

danke für das Programm und den Quellcode.
Ich habe mir für mein eigenes Programm und dem RTB2000 jetzt auch das 
OSZI-Format für das Speichern der Daten programmiert. Vorerst nur für 
die Logikkanäle mit RLE-Kompression. Ein Test mit UART-Dekodierung hat 
gut funktioniert.
Planst du noch mehr Möglichkeiten für die Benutzeroberfläche, wie z.B. 
ein Menü für das Laden von Daten, oder Zoom-Funktion mit Mausrad? Mit 
der Farbwahl der Daten tue ich mir auch schwer beim Lesen. Mit schwarzen 
Hintergrund und relativ dunklen Texten plage ich mich. Dein Programm 
werde ich sicher noch öfter verwenden, gefällt mir.

Peter

von Elmü M. (elmue)


Lesenswert?

Ich sehe dass hier kaum jemand daran interessiert ist,
konstruktiv an einer Version für Linux mitzuarbeiten.

> Schade nur, dass man so ein Projekt nicht so programmiert, dass es auch
> für andere Systeme compilerbar ist (Mac, Linux).

Kritisieren ist immer einfach.
Konstruktiv brauchbaren Code schreiben ist da viel schwieriger.


> @Sherlock:
> Libusb gibt es z.B für Linux, Windows, Mac OS und Android.

Als ich angefangen habe, die USB Kommunikation zu schreiben habe ich 
auch an fertige Bibliotheken wie WinUSB und Konsorten gedacht. Aber ich 
habe das dann verworfen, weil das SCPI Protokoll so extrem primitiv ist 
und diese Biliotheken totaler Overkill sind.
Im Grunde müssen nur Datenpakete über eine USB Bulk Verbinding gesendet 
werden. Windows macht das mit 3 API Commands: WriteFile(), 
WaitForSingleObject() und GetOverlappedResult(). Die selben API Befehle, 
die Windows verwendet, um eine Datei zu schreiben, könnnen auch über USB 
senden. (Das Gleiche gilt natürlich für das Lesen)

Schau in den Sourcecode:
https://github.com/Elmue/Oszi-Waveform-Analyzer/blob/main/SourceCode/Transfer/SCPI.cs

Die Funktion SendTmcPacket() baut erst das TMC Paket zusammen und sendet 
es dann an das Oszilloskop. Es nur 19 Zeilen extrem simpler Code dafür 
nötig:
1
int s32_BytesWritten;
2
if (!WriteFile(mh_Device, i_Transfer.ToArray(), i_Transfer.Count, 
3
               out s32_BytesWritten, ref mk_Overlap))
4
{
5
    int s32_Error = Marshal.GetLastWin32Error();
6
    if (s32_Error != ERROR_IO_PENDING)
7
        throw new Win32Exception(s32_Error);
8
        
9
    if (WAIT_TIMEOUT == WaitForSingleObject(mk_Overlap.EventHandle, s32_Timeout))
10
    {
11
        CancelIo(mh_Device);
12
        throw new Exception("Timeout sending command to device");
13
    }
14
15
    if (!GetOverlappedResult(mh_Device, ref mk_Overlap, out s32_BytesWritten, false))
16
    {
17
        s32_Error = Marshal.GetLastWin32Error();
18
        throw new Win32Exception(s32_Error);
19
    }
20
}

Und dafür soll ich eine ganze Bibiothek einbauen?
Außderm sehe ich auf der LibUsb Seite, dass ein zusätzlicher Treiber 
erforderlich ist. Dort steht:

> libusb-win32 is a Windows-only project which provides a libusb-0.1 API
> compatible library for Windows and the associated kernel driver
> libusb0.sys

Ich soll also statt einem jetzt zwei Treiber benötigen?

Mein Programmier Konzept ist und war immer das KISS Prinizip:

Keep It Simple, Stupid!

https://en.wikipedia.org/wiki/KISS_principle

Je komplizierter der Code und je mehr Abhängkeiten, desto mehr Memory 
Usage, desto langsamer und vor allem desto mehr Bugs.

Wenn du meinen Code studierst wirst du feststellen, dass er in jeder 
Zeile optimiert ist, so simpel und so schnell wie möglich zu sein.

Wenn ich einen Code von 19 Zeilen benötige um ein Datenpaket an das 
Oszilloskop zu senden, glaube ich kaum, dass das in Linux viel mehr Code 
benötigt. Ich kenne die Linux Kernel Befehle nicht, aber ich vermute, 
dass es ähnlich simpel ist.

Statt LibUsb zu verwenden wäre es wesentlich einfacher und sinnvoller 
diese 19 Zeilen in Linux Code umzuschreiben und keinen zweiten Treiber 
zu benötigen und keine zusätzlichen Abhängigkeiten einzubauen.

_______________________________

Aber das Haupt Thema bleibt bestehen. Dazu hat keiner der Linux Freaks 
hier etwas geantwortet: Gibt es einen USB TMC Driver für Linux der 
ähnlich simpel zu bedienen ist? Falls ja, hat den jemand mal getestet?

von Martin S. (strubi)


Lesenswert?

Elmü M. schrieb:
> Ich sehe dass hier kaum jemand daran interessiert ist,
> konstruktiv an einer Version für Linux mitzuarbeiten.

Das mag daran liegen, dass wir Linuxer bereits an die Features diverser 
sigrok und Wireshark-Features gewohnt sind. Seit Jahren...

Elmü M. schrieb:
> Keep It Simple, Stupid!

Und dann nutzt du einen Wasserkopf von einem .net-Framework und C# um 
Decoder zu entwickeln? Kann man schon machen, aber die 
Wiederverwertbarkeit entspricht nicht KISS.

> Aber das Haupt Thema bleibt bestehen. Dazu hat keiner der Linux Freaks
> hier etwas geantwortet: Gibt es einen USB TMC Driver für Linux der
> ähnlich simpel zu bedienen ist? Falls ja, hat den jemand mal getestet?

Ja, ich nutze seit ca. 15 Jahren USBTMC per Python, um eine gepimpte 
alte Rigol-Schwarte als Datenlogger/Analyzer zu missbrauchen.

Wenn du dein Programm salonfaehig im Sinne von CI/CD mit Tests und 
automatischem Bauen fuer die gaengigen Linuxversionen machen wolltest, 
muesstest du ueber eine geeignete, plattformunabhaengige Architektur 
nachdenken, so in etwa wie es Wireshark und diverse VCD-Tools machen. 
Dann laesst es sich wiederverwerten und Leute schreiben dann auch 
Plugins. Sonst bleibt es yet-another-Bastlitool, alle Arbeit in Ehren.

von Harald K. (kirnbichler)


Lesenswert?

Mag jemand versuchen, mir den Reiz eines Logikanalysators mit gerade mal 
vier Kanälen zu erklären?

von Norbert (der_norbert)


Lesenswert?

Harald K. schrieb:
> Mag jemand versuchen, mir den Reiz eines Logikanalysators mit
> gerade mal
> vier Kanälen zu erklären?

Gern. Wenn man zB. drei Kanäle messen/aufzeichnen möchte, dann hat man 
noch einen in Reserve. ;-)

von Harald K. (kirnbichler)


Lesenswert?

Oh, wow, da wäre ich ja nie drauf gekommen. Der wahne Nacktsinn!

von Norbert (der_norbert)


Lesenswert?

Hehe, so isses.
Aber im Ernst, habe meinen Selbstgeklöppelten zwar auch für 16 Kanäle 
ausgelegt, aber bis jetzt nur einmal 6 gebraucht (4bit SD bus).
Sonst zumeist 2, 3, selten 4.
Das ist jetzt erst einmal natürlich nur für mich von Belang, aber im 
Hobby-Bereich kann ich mir ähnliche limitierte Szenarien durchaus 
vorstellen.

von Hippelhaxe (hippelhaxe)


Lesenswert?

Mi. W. schrieb:

> Jens K. schrieb:
>> Ist das überhaupt zulässig?
>> Dem Hersteller entgeht somit viel Geld wenn jeder
>> kostenlose Software nutzt
>
> Bitte beim nächste mal "Bedenkenträgerdenke posten"
> die Smilies nicht vergessen,

Statt dessen einfach was wirklich Witziges zu posten,
das der Smilies nicht bedarf, wäre wohl zu einfach...?!

von Hippelhaxe (hippelhaxe)


Lesenswert?

Elmü M. schrieb:

> Ich sehe dass hier kaum jemand daran interessiert ist,
> konstruktiv an einer Version für Linux mitzuarbeiten.

Ich bin beeindruckt.
Das siehst Du genau woran?

von Alexander S. (alesi)


Lesenswert?

Elmü M. schrieb:
> Ich sehe dass hier kaum jemand daran interessiert ist,
> konstruktiv an einer Version für Linux mitzuarbeiten.

Der Oszi Waveform Analyzer ist in C# geschrieben und nutzt .NET von 
Microsoft.

"Sponsored by Microsoft, Mono is an open source implementation of 
Microsoft's .NET Framework as part of the .NET Foundation and based on 
the ECMA standards for C# and the Common Language Runtime."*

Warum sollte jemand daran interessiert sein, an einer Version für Linux 
mitzuarbeiten?


*) https://www.mono-project.com/

von Andreas B. (bitverdreher)


Lesenswert?

Elmü M. schrieb:
> Ich sehe dass hier kaum jemand daran interessiert ist,
> konstruktiv an einer Version für Linux mitzuarbeiten.

Na ja, es ist ja ein schönes Projekt und gut umgesetzt (mal abgesehen 
von der Toolchain und der Programmiersprache).
Aber welchen Mehrwert bringt es mir gegenüber einen 10€ 8-CH 24MHz China 
LA und Pulseview?
Die wenigen Fälle, wo ich das Oszisignal zum LA sehen muß, klemme ich 
das Oszi halt mir dran.
Ich habe ein Rigol und fände es bestimmt interessant, das auch mal als 
LA verwenden zu können, aber Arbeit da reinstecken? Nein, so wichtig ist 
mir das nicht. Also bleibt diese SW eine (proprietäre) Windowslösung.

von Vanye R. (vanye_rijan)


Lesenswert?

> Ich sehe dass hier kaum jemand daran interessiert ist,
> konstruktiv an einer Version für Linux mitzuarbeiten.

Naja, ich hab mal kurz auf deine Seite geschaut und zu lesen
aufgehoert als ich C#/Net gelesen habe. Das scheint mir keine unter
Linux sinnvoll einzusetzende Sprache zu sein, gar nicht davon zu
reden das ihre Kenntnis under Linuxusern sowas wie eine Art von
Verbreitung hat. Wir benutzen naemlich Linux weil wir nicht in
den Hintern von Mikrosoft wollen!

> Aber das Haupt Thema bleibt bestehen. Dazu hat keiner der Linux Freaks
> hier etwas geantwortet: Gibt es einen USB TMC Driver für Linux der
> ähnlich simpel zu bedienen ist? Falls ja, hat den jemand mal getestet?

in_file= fopen("/dev/usbtmc0", "r+")  Das war einfach! :-)

Es gibt aber auch eine Implementation von RS-Visa.

> Mag jemand versuchen, mir den Reiz eines Logikanalysators mit gerade mal
> vier Kanälen zu erklären?

Naja, fuer die gaengisten Sachen ist das sicher Unsinn weil es ja 
bereits im Oszi eingebaut ist und man dann auch auf Adressen oder Daten 
triggern kann und das triggern ist ja so ziemlich das wichtigste. 
Auswertung im Nachhinein ist IMHO etwas bemueht.
Andererseits kann man so natuerlich auch Sachen dekodieren die einem der 
Hersteller nicht mitgeliefert hat. Das mag schon mal praktisch sein.

Was die Begrenzung auf vier Kanaele angeht, ich hab sowohl fuer mein 
HMO2022 wie auch meinem RTB2004 die Logictastkoepfe da. (teurer wie 
viele einfache Rigols .-) ) Aber nutzen tue ich die so 1-2x im Jahr weil 
man heute fast nur noch serielle Busse hat. Nutzen tue ich sie 
allerdings wenn ich zusaetzlich zum digitalen Bus noch ein Verhalten auf 
den analogen Leitungen sehen muss.

Vanye

von Peter D. (fenstergucker)



Lesenswert?

Die analogen Daten von meinem RTB2000 kann ich jetzt auch im OSZI-Format 
speichern. Es gibt nur eine Einschränkung bei dem Format, es müssen alle 
Kanäle die gleiche Anzahl an Samples haben. Das betrifft z.B. den 
Math-Kanal mit einem Filter, oder einen Ref-Kanal mit danach geändeter 
Zeitbasis. Oder man liest nicht die Bildschirmdaten sondern aus dem 
Speicher. Ich ignoriere jetzt einmal einfach automatisch die nicht 
passenden Kanäle, oder speichere sie extra.
Ich finde das Programm gut für die Dokumentation, es benötigt keine 
Installation und ist schnell.
Nochmals danke an Elmü.

Peter

: Bearbeitet durch User
von Matthias 🟠. (homa)


Lesenswert?

Versuch mit Hantek 2072 
(https://www.hantek.com/uploadpic/hantek/files/20211231/DSO2000%20Series%C2%A0SCPI%C2%A0Programmers%C2%A0Manual.pdf). 
Trotz Treiber Installation bekomme ich kein Gerät unter Capture Detected 
USB Device angezeigt um die SCPI Commands zu testen.

: Bearbeitet durch User
von Hans (ths23)


Lesenswert?

Thomas G. schrieb:
> Im
> professionellen Bereich koennte man auch an die Nutzer mit -nix
> basierten Systemen denken, die duerften da ueberwiegen.
Das ist wohl eher Dein Wunschdenken. Der Desktopbereich wird von Windows 
und MacOS mit zusammen 86% dominiert. Linux lieg bei etwa 3,7% (Zahlen 
von Ende Januar 2025). Den Rest teilen sich die anderen Systeme. Die 
Zahlen zeigen recht eindeutig was da überwiegt.

von Harald K. (kirnbichler)


Lesenswert?

Hans schrieb:
> Das ist wohl eher Dein Wunschdenken. Der Desktopbereich wird von Windows
> und MacOS mit zusammen 86% dominiert.

Das wiederum ist Dein Wunschdenken; Du kannst mit Sicherheit davon 
ausgehen, daß sich das Bild anderes darstellt, wenn man nur die 
Zielgruppe der Oszilloskopanwender ansieht.

Diese Zielgruppe dürfte doch deutlich anders strukturiert sein als der 
Durchschnitt, zu dem immerhin auch reine Office-Anwender, 
Hochleistungsgamer und Internetkommentatoren gehören. Viele von diesen 
Leuten wissen noch nicht mal, was ein Oszilloskop ist.

Man bedenke: Hier im Forum ist mit Jörg W. auch ein FreeBSD-Entwickler 
an Bord.

von Peter D. (fenstergucker)


Lesenswert?

Hallo Elmü,

ich habe eine Frage zu der Sortierung der Kanäle. Ich speichere die 
sortierten Nummern der Kanäle, aber die Reihenfolge im Programm ist 
anders.

Gespeicherte Reihenfolge der Kanaldaten in der Datei:
0 Ch1
1 Ch2
2 Ma1
3 Re1
4 D0

Positionen am Oszilloskop, von oben nach unten:
2 Ma1
1 Ch2
4 D0
3 Re1
0 Ch1

Die sortierten Werte der Positionen stehen auch so in der Datei:
2 1 4 3 0

Die Darstellung im Programm ist aber durcheinander:
4 D0
1 Ch2
0 Ch1
3 Re1
2 Ma1

Sortiere ich die Kanäle im Programm und speichere die Datei, wird beim 
Öffnen die richtige Reihenfolge der Kanäle angezeigt, aber die Werte in 
der Datei sind durcheinander.

Gespeichert - Angezeigt
0 Ch1 - 2 Ma1
1 Ch2 - 1 Ch2
3 Re1 - 4 D0
4 D0 - 3 Re1
2 Ma1 - 0 Ch1

Ich verstehe die Sortierung nicht. Im Quellcode habe ich noch nichts 
gefunden was mir weiterhilft.

Peter

von Franko S. (frank_s866)


Lesenswert?

Elmü M. schrieb:
> ist so ziemlich einfach nur bla bla.

ja vor allem dein ahnungslos-dummes Geschwätz.

von Sherlock 🕵🏽‍♂️ (rubbel-die-katz)


Lesenswert?

Hans schrieb:
> Linux lieg bei etwa 3,7%

Im Schnitt ist das wohl so. Unter Entwicklern sieht es nach meiner 
Erfahrung im Job anders aus. Und auch privat: Von meiner Homepage wird 
die Linux Version vom Arduino+ESP8266 Bundle viel öfter abgerufen, als 
die Windows Version.
1
Monat       Windows   Linux
2
===========================
3
Feb 2025:   38        161
4
Jan 2025:   11        128
5
Dez 2024:   9         225
6
Nov 2024:   17        71

: Bearbeitet durch User
von Elmü M. (elmue)


Lesenswert?

Hallo allerseits

Ich habe gerade eine neue Version hochgeladen, wo sich jetzt alles 
Windows spezifische in einer einzigen Datei befindet. Für Mono habe ich 
eine Template Datei angelegt. Es sind nur ein paar wenige Funktionen 
darin. Wenn jemand von Linux Ahnung hat, sollte es  nicht länger als 3 
Stunden dauern, die Funktionstemplates mit Code zu füllen.

Ich habe inzwischen gelesen dass der TMC Treiber der IVI Foundation  in 
Linux seit Kernel version 4.20 bereits integriert ist.

https://www.ivifoundation.org/Shared-Components/default.html#usbtmc-kernel-driver-packages-for-linux

@Vanye R:
> in_file= fopen("/dev/usbtmc0", "r+")  Das war einfach! :-)

Na dann sollte der Rest ja ein Kinderspiel sein.

___________________________________________

@Harald K.
> Mag jemand versuchen, mir den Reiz eines Logikanalysators
> mit gerade mal vier Kanälen zu erklären?

Mein Oszilloskop hat 4 analoge + 16 digitale Kanäle.
Wenn du dir natürlich ein Einsteigermodell kaufst, kannst du auch nicht 
viel erwarten.

Allerdings habe ich im realen Elektronik Alltag noch nie mehr als 4 
Kanäle gebraucht. Für SPI brauche ich Clock, MISO, MOSI und ChipSelect. 
Anonsten brauche ich sogar weniger Kanäle.

__________________________________________

@Peter D.
> Es gibt nur eine Einschränkung bei dem Format, es müssen alle
> Kanäle die gleiche Anzahl an Samples haben.

Warum sollten die Kanäle unterscheidliche Anzahl von Samples haben? Du 
meinst, dass ein Kanal in der Mitte einfach aufhört, während die anderen 
weiter Daten haben ?

__________________________________________

@Matthias
> Hantek: Trotz Treiber Installation bekomme ich kein Gerät unter Capture
> Detected USB Device angezeigt um die SCPI Commands zu testen.

Da müßtest du mal etwas mehr Details liefern.
Was wird für dein Oszi in der Systemsteuerung im DeviceManager 
angezeigt? (Screenshot)
Ich habe eine Webseite gefunden wo die Installation für ein Hantek Oszi 
erklärt ist und die verwenden den IVI Treiber. Ich wüßte also nicht 
warum das nicht funktionieren sollte.

https://www.hantek.com/Product/DSO3000(A)/DSO3000(A)_QuickGuide_EN.pdf

Installier dir mal USBlyzer (www.usblyzer.com) Das Programm läuft in der 
Demo Version kostenlos 30 Tage. Dann suchst du links im Baum dein 
Oszilloskop. Wenn du es auswählst siehst du unten den USB Descriptor. 
Den kannst du rechts-klicken und in eine HTML Datei exportieren. Poste 
die Datei mal hier.

__________________________________________

@Peter D.
> ich habe eine Frage zu der Sortierung der Kanäle. Ich speichere die
> sortierten Nummern der Kanäle, aber die Reihenfolge im Programm ist
> anders.

Was meinst du mir "Reihenfolge im Programm"?
Du meinst die Reihenfolge von oben nach unten auf dem Bildschirm?

Was auf dem Oszilloskop oben oder unten ist hängt davon ab, wo du die 
Kanäle mit den Einstellknöpfen hinschiebst. Mein Programm überträgt die 
Kanäle in der Reihenfolge Analog Channel 1, Analog Channel 2, Analog 
Channel 3, etc.. Digital Channel 1, Digital Channel 2, Digital Channel 
3, etc..
So erscheinen sie immer bei dir nach dem Capture. Dann kannst du im 
Rechts-Klick Menü deine eigene Reihenfolge definieren. Und die wird auch 
so in der OSZI Datei gespeichert.

> aber die Werte in der Datei sind durcheinander.

Ich vestehe nicht was du damit meinst.
Die Datei hat nur binäre Daten, wie schaust du dir die an und woran 
siehst du was in welcher Reihenfolge in der Datei steht? In einem Hex 
Editor? Und wieso ist es für dich relevant in welcher Reihenfolge die 
Daten in der Datei stehen?

Beim Speichern in einer Oszi Datei werden die Kanäle in deiner selbst 
gewählten Reihenfolge gespeichert. Allerdings werden zuerst die analogen 
und dann die digitalen Känäle gespeichert weil die digitalen gemeinsam 
komprimiert werden, zumindest im Mask Mode. Deine original Reihenfolge 
wird dann beim Laden der OSZI wiederhergestellt, da die Reihenfolge auch 
mitgespeichert wird.

Elmü

: Bearbeitet durch User
von Peter D. (fenstergucker)


Lesenswert?

Elmü M. schrieb:
> @Peter D.
>> Es gibt nur eine Einschränkung bei dem Format, es müssen alle
>> Kanäle die gleiche Anzahl an Samples haben.
>
> Warum sollten die Kanäle unterscheidliche Anzahl von Samples haben? Du
> meinst, dass ein Kanal in der Mitte einfach aufhört, während die anderen
> weiter Daten haben ?

Beim RTB2000 sind z.B. die Envelope-Daten immer nur 1200 Samples, oder 
ein Math-Kanal mit einem Low-Pass-Filter beginnt nicht mit dem ersten 
Sample am Bildschirm. Dafür müsste man die Eigenschaften jedes Kanals 
speichern und beim Anzeigen berücksichtigen.
Das war aber nur eine Bemerkung und keine negative Kritik. Mir ist es 
aufgefallen beim Testen mit meinem Programm und dem Speichern der Kanäle 
im Oszi-Format. Eine Alternative wäre die Kanaldaten vorher passend 
umzurechnen, vielleicht mache ich das noch.


Elmü M. schrieb:
> @Peter D.
>> ich habe eine Frage zu der Sortierung der Kanäle. Ich speichere die
>> sortierten Nummern der Kanäle, aber die Reihenfolge im Programm ist
>> anders.
>
> Was meinst du mir "Reihenfolge im Programm"?
> Du meinst die Reihenfolge von oben nach unten auf dem Bildschirm?

In deinem Oszi-Format gibt es im File Header die 'Channel Order'-Bytes. 
Ich dachte damit kann ich die Reihenfolge der Kanäle beim Anzeigen im 
Programm vorgeben. Der erste gespeicherte Kanal in der Datei hat den 
Index 0. Wenn ich den Index 0 in z.B. die dritte Position in 'Channel 
Order' speichere, sollte der Kanal eben als dritter von oben im Programm 
angezeigt werden. Aber das funktioniert nicht, die Reihenfolge ist beim 
Anzeigen eine andere.

Ich habe mir jetzt Visual Studio 2013 installiert, damit kann ich dein 
Programm kompilieren. Es ist das erstemal das ich mir ein C#-Programm 
anschaue, ist ein schöner Code.

Peter

von Hans (ths23)


Lesenswert?

Sherlock 🕵🏽‍♂️ schrieb:
> Unter Entwicklern sieht es nach meiner
> Erfahrung im Job anders aus.
Bei kleinen Fricklern (nicht negativ gemeint) wird das wohl so sein. In 
großen Firmen wurden die *nixe successive abgeschafft. In der Firma 
(46000 Angestellte) wo ich bis zur Rente gearbeitet habe, wurden die 
letzten Unixsysteme vor gut 15 Jahren abgeschafft und durch Windows 
ersetzt. Es gab dann noch einen SW-Entwickler der seine HP Workstation 
noch ein paar Jahre länger in Benutzung hatte. Die Entwicklung von 
Unixsoftware für unsere Geräte wurde vor 25 Jahren eingestellt und der 
Support für selbige vor 20 Jahren. Das hat zwar ganz sicher nicht jedem 
gefallen, ist aber eben der Lauf der Zeit.

von Alexander S. (alesi)


Lesenswert?

Hans schrieb:
> In
> großen Firmen wurden die *nixe successive abgeschafft.

Das hängt von der Art der Software ab.
Z.B. bei EDA (Cadence) "dominiert" eher Linux
https://www.cadence.com/en_US/home/support/computing-platform-support/support-road-map-2023x-2026x.html

von Vanye R. (vanye_rijan)


Lesenswert?

> Bei kleinen Fricklern (nicht negativ gemeint) wird das wohl so sein. In
> großen Firmen wurden die *nixe successive abgeschafft.

Das ist falsch. Ich bin in einer grossen Firma. Da gibt die Firma dir 
natuerlich das Betriebssystems deines Arbeitsrechner vor und das ist 
LEIDER Windowskram.

Aber ausserhalb des Arbeitsrechners, die vielen kleinen Embeddedsysteme 
fuer alles und jedes, Produktion, Testaufbauten, was auch immer, haben 
so gut wie immer Linux drauf. Teilweise auch anderes Unix. Ich bin mir 
nicht ganz sicher weil ich damit nicht direkt zutun habe, aber ich 
glaube die Bestueckungsautomaten arbeiten mit HP-UX oder sowas. Ich 
meine wuerdest du dir fuer ernste zeitkritische Sachen etwas von 
Microsoft an Knie nageln? noway!

Jemand der also in der Entwicklung arbeitet hat automatisch 
Linuxkenntnisse/Kontakte und das erklaert natuerlich wieso diese Gruppe 
ploetzlich auch privat ein gewisses Interesse daran entwickelt.

Vanye

p.s: Ich glaube sogar unsere Kaffeemaschinen booten ein Linux und die 
Oberflaeche ist dann interpretiertes Java welches vom Lispinterpreter in 
Emacs ausgefuehrt wird. Anders kann ich mir jedenfalls diese peinliche 
Geschwindigkeit nicht vorstellen mit der sich der Hersteller der 
Kaffeemaschine zum Kunden traut. Hm..oder doch noch WinCE? :-D

von Hans (ths23)


Lesenswert?

Vanye R. schrieb:
> Ich glaube sogar unsere Kaffeemaschinen booten ein Linux und die
> Oberflaeche ist dann interpretiertes Java welches vom Lispinterpreter in
> Emacs ausgefuehrt wird.
Ich habe weder von irgendwelchen Geräten, embedded Systemen, Raspi & Co. 
oder ähnlichen geredet. Ja auf diesen ist i.d.R. unixoides System drauf. 
Ich sprach aber eher vom Desktop und da spielen die Unixoiden eben eine 
untergeordnete Rolle. Wir hatten früher in der Firma viele Desktops mit 
HP-UX und Solaris. Die wurden aber alle durch Windows PC's ersetzt.

von Peter D. (fenstergucker)


Angehängte Dateien:

Lesenswert?

Matthias 🟠. schrieb:
> Versuch mit Hantek 2072
> 
(https://www.hantek.com/uploadpic/hantek/files/20211231/DSO2000%20Series%C2%A0SCPI%C2%A0Programmers%C2%A0Manual.pdf).
> Trotz Treiber Installation bekomme ich kein Gerät unter Capture Detected
> USB Device angezeigt um die SCPI Commands zu testen.

Ich habe bei einem eigenen USBTMC-Gerät den IVI-Treiber installiert. Das 
Oszi-Programm zeigt bei der Auswahl nur die Seriennummer des Geräts an. 
In dem Handbuch vom Hantek sind Screenshots ohne Herstellername und 
Seriennummer abgebildet, es ist nur die Modelbezeichnung und 
Firmwareversion vorhanden. Darum wird wahrscheinlich auch nichts zur 
Auswahl angezeigt.

Edit: Es wird die Seriennummer von dem 'Geräteinstanzpfad' angezeigt.

Peter

: Bearbeitet durch User
von Peter D. (fenstergucker)


Lesenswert?

Hallo Elmü,

die Frage wegen der Sortierung der Kanäle hat sich erledigt, ich habe es 
jetzt verstanden.
Jetzt verstehe ich auch, warum z.B. bei den CAN-Beispielen der analoge 
und digitale Kanal die gleiche Farbe haben, und sich gemeinsam neu 
positionieren.

Peter

von Sherlock 🕵🏽‍♂️ (rubbel-die-katz)


Lesenswert?

Hans schrieb:
> In großen Firmen wurden die *nixe successive abgeschafft.

Bei Vodafone, QVC, Medion und Telefonica nicht. Sind die groß genug?

Die Entwickler, die einen Windows Desktop vorgesetzt bekamen, haben 
darin primär mit einer Linux VM (heute auch WSL) gearbeitet. Das sind 
zwar keine reinen Linux Rechner, aber auch nicht "abgeschafft".

: Bearbeitet durch User
von Matthias 🟠. (homa)


Angehängte Dateien:

Lesenswert?

Elmü M. schrieb:
> __________________________________________
>
> @Matthias
>> Hantek: Trotz Treiber Installation bekomme ich kein Gerät unter Capture
>> Detected USB Device angezeigt um die SCPI Commands zu testen.
>
> Da müßtest du mal etwas mehr Details liefern.
> Was wird für dein Oszi in der Systemsteuerung im DeviceManager
> angezeigt? (Screenshot)
> Ich habe eine Webseite gefunden wo die Installation für ein Hantek Oszi
> erklärt ist und die verwenden den IVI Treiber. Ich wüßte also nicht
> warum das nicht funktionieren sollte.
>
> https://www.hantek.com/Product/DSO3000(A)/DSO3000(A)_QuickGuide_EN.pdf
>
> Installier dir mal USBlyzer (www.usblyzer.com) Das Programm läuft in der
> Demo Version kostenlos 30 Tage. Dann suchst du links im Baum dein
> Oszilloskop. Wenn du es auswählst siehst du unten den USB Descriptor.
> Den kannst du rechts-klicken und in eine HTML Datei exportieren. Poste
> die Datei mal hier.
>
> __________________________________________

Also hier im Screenshot wie weit ich bin.
Für den Hantek-Treiber musste ich die Kernelisolierung in w11 
abschalten.
Die VISA-Treiber finden das Hantek aber nicht :-(
Den USBlyzer (www.usblyzer.com) kann ich nicht herunterladen, der 
Downloadlink führt immer wieder auf die gleiche Website, kann es sein 
das diese Software nicht mehr gibt/zu erwerben ist?

Danke für den Support.

von Peter D. (fenstergucker)


Lesenswert?

Ich habe einen Fork des Oszi-Projekts erstellt, und eine kleine Änderung 
gemacht. Ich wollte auch die Samplefrequenz in der Infoleiste sehen.
https://github.com/Dreisiebner/Oszi-Waveform-Analyzer/tree/info-sample-frequency

Peter

von Elmü M. (elmue)


Lesenswert?

Hallo Peter

> Beim RTB2000 sind z.B. die Envelope-Daten immer nur 1200 Samples,

Könntest du das mal genauer erklären?
Was sind Envelope-Daten?
Wozu brauchst du die?
Und die werden vom Oszilloskop als eigener Kanal übertragen?


> ein Math-Kanal mit einem Low-Pass-Filter beginnt nicht mit dem ersten
> Sample am Bildschirm.

Wie muß ich mir das vorstellen?
Dass der Kanal später anfängt als die anderen Kanäle und links einfach 
keine Daten sind ?
(Screenshot?)


> Eine Alternative wäre die Kanaldaten vorher passend umzurechnen

Das denke ich auch.
Wenn du dir mal den Code im OsziPanel anschaust, der die Kurven 
zeichnet, der ist schon extrem komplex.
Da jetzt noch Kurven mit anderer Sampleanzahl zu zeichnen und dann auch 
noch in der OSZI Datei jeden Kanal mit eigner Samplerate zu speichern, 
wäre der absolute Überkiller.


> Wenn ich den Index 0 in z.B. die dritte Position in 'Channel
> Order' speichere, sollte der Kanal eben als dritter von oben im Programm
> angezeigt werden. Aber das funktioniert nicht, die Reihenfolge ist beim
> Anzeigen eine andere.

Wenn du es richtig machst, funktioniert das.
Ich verstehe allerdings nicht, warum du an der Kanalreihenfolge 
manipulieren willst?
Du kannst doch viel einfacher im Menü deine Reihenfolge der Kanäle 
definieren und es dann so abspeichern.
Wieso willst du die 'Channel Order'-Bytes ändern?


> ist ein schöner Code.

Yep.
Ist nach dem KISS Prinzip geschrieben.


> Jetzt verstehe ich auch, warum z.B. bei den CAN-Beispielen der analoge
> und digitale Kanal die gleiche Farbe haben, und sich gemeinsam neu
> positionieren.

Es ist der selbe Kanal. Jeder Kanal kann analoge oder digitale Daten 
oder beides speichern.
(Steht auch so in der Hilfe)


> Ich habe einen Fork des Oszi-Projekts erstellt, und eine kleine Änderung
> gemacht. Ich wollte auch die Samplefrequenz in der Infoleiste sehen.

Das ist eine sehr schlechte Idee!
Gerade eben habe ich eine neue Version hochgeladen, die sich auch über 
TCP mit dem Oszilloskop verbinden kann.
Und schon ist dein Fork veralteter Code.
Warum ein komplettes Projekt klonen für eine winizge Änderung?
Warum schreibst du mir nicht eine Email und wenn du eine gute Idee hast, 
baue ich das ein ?

__________________________________________________

Hallo Matthias

An deinem Screenshot aus der Systemsteuerung sehe ich bereits, dass dein 
Hantek nicht den IVI Treiber benutzt.
Denn der würde angezeigt als "USB Test and Measurement Device (IVI)" und 
nicht als "Hantek2xx2"
Deshalb würde ich gern mal den USB Descriptor von deinem Scope sehen.

> Den USBlyzer (www.usblyzer.com) kann ich nicht herunterladen,

Das ist in der Tat seltsam.
Da steht "You can evaluate it free of charge for 33 days", aber der 
Download funktioniert nicht.
Ich habe dir den shareware Installer auf meine Hompage hochgeladen.
https://netcult.ch/elmue/USBlyzer_2.2_Setup.exe

Abgesehen davon kannt du die neue Version von Oszi Waveform Analyzer 
runterladen und versuchen dich über LAN zu verbinden wenn dein 
Oszilloskop auch eine RJ-45 Buchse hat.
Bitte aber unbedingt vorher die Hilfe lesen!
Im Kapitel "Waveform Transfer over TCP" findest du wichtige Hinweise 
dazu.

__________________________________________________

Hallo die anderen

Ich sehe dass dieser Thread von einigen mißbraucht wird als ein 
religöser Kaffeklatsch über Linux.
Warum macht ihr dafür nicht euren eigenen Thread auf?
Die meisten Linux Freaks sind wie die Zeugen Jehovas.
Sie glauben die Wahrheit gefressen zu haben und wollen die Welt von 
ihrer Religion überzeugen.
Aber die Realität zeigt, dass sich nur ein winziger Prozentsatz der 
Weltbevölkerung für dieses Hobby Betriebssytem interessiert.
Fragt doch mal die 99% der Anderen, warum sie lieber Windows benuzten 
als Linux.
Und lernt daraus!
Linux könnte in der Tat eine Alternative sein, wenn es nicht so 
benutzerfeindlich und voller Bugs wäre und wenn es brauchbare 
Dokumentation gäbe.
Ich war ein paar Mal gezwungen für meinen Job mit Linux zu arbeiten und 
ich habe es jedes Mal gehaßt und war jedes Mal super froh wenn ich das 
hinter mich gebracht hatte.


> Wir benutzen naemlich Linux weil wir nicht in
> den Hintern von Mikrosoft wollen!

Das ist so ein DÄMLICHER Kommetar!
Glaubst du etwa, dass es Microsoft darauf angewiesen ist, dass DU 
Windows benutzt?
Du glaubst ja unwahrscheinlich relevant zu sein!
Es ist Microsoft so was von egal, was du mit deinem PC machst.
Die allermeisten Windows Benuzter bezahlen ihr Windows ja sowieso nicht 
und treten Microsoft allein damit in den Hintern.



Da es hier nur 2 Personen gibt die ernsthafte Beiträge schreiben, melde 
ich mich von diesem Kaffeeklatsch ab.
Wenn jemand ernsthaft an meinem Programm interessiert ist, bitte 
schreibt mir eine Email.

Adios....

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Elmü M. schrieb:
> Das ist so ein DÄMLICHER Kommetar!

Sorry, deine Kommentare sind allerdings ganz genauso daneben.

Wenn du sowas in deinem Thread nicht haben möchtest (was ich verstehen 
kann), dann enthalte dich doch bitte selbst entsprechender Polemik. Wie 
du schon richtig festgestellt hast, diese Polemik braucht keiner und 
bringt nichts.

(Ich hatte den Thread mit ein wenig Interesse verfolgt, obwohl ich 
keinen Oszi zum LA umfummeln muss, weil ich schon zwei LAs habe.)

von Vanye R. (vanye_rijan)


Lesenswert?

> Das ist so ein DÄMLICHER Kommetar!

Nein, nur wenn man ihn aus dem Zusammenhang reisst. Denn wie ich dir 
erklaert habe es gibt Gruende warum jemand der Linux nutzt kein 
Interesse an einem Source hat der in einer Microsoftsprache geschrieben 
ist die noch dazu irgendeine Microsoftumgebung vorraussetzt. Sowas 
wuerde ich nicht auf meinem Rechner haben wollen.

Vanye

von Peter D. (fenstergucker)


Angehängte Dateien:

Lesenswert?

Hallo Elmü,

Elmü M. schrieb:
> Wie muß ich mir das vorstellen?
> Dass der Kanal später anfängt als die anderen Kanäle und links einfach
> keine Daten sind ?
> (Screenshot?)

hier ist ein Screenshot von dem R&S RTB2000 mit Analog-, Envelope-, 
Referenze- und Math-Kanal. Anbei auch einige Eigenschaften der Kanäle. 
Die Kanäle haben teils unterschiedliche Samples. Die Envelope-Daten eine 
andere Samplerate, die Startzeit des Math-Kanals ist eine andere.

Peter
1
KANAL1
2
Channel = CH1
3
XStart = -0.00006
4
XStop = 0.0000599984
5
XOrigin = -0.00006
6
XIncrement = 0.0000000016
7
YOrigin = -3.497558594
8
YIncrement = 0.01953125
9
YResolutionBit = 10
10
Samples = 75000
11
ValuesPerSample = 2
12
Source = Screen
13
Samplerate = 625000000
14
15
ENVELOPE+PEAK-DETECT
16
Channel = EV1
17
XStart = -0.00006
18
XStop = 0.0000599
19
XOrigin = -0.00006
20
XIncrement = 0.0000001
21
YOrigin = -3.497558594
22
YIncrement = 0.01953125
23
YResolutionBit = 10
24
Samples = 1200
25
ValuesPerSample = 2
26
Source = Screen
27
Samplerate = 10000000
28
29
MATH+LOWPASS
30
Channel = M1
31
XStart = -0.0000548896
32
XStop = 0.000054888
33
XOrigin = -0.0000548896
34
XIncrement = 0.0000000016
35
YOrigin = -3.49755764
36
YIncrement = 0.01951217651
37
YResolutionBit = 16
38
Samples = 68612
39
ValuesPerSample = 2
40
Source = Screen
41
Samplerate = 625000000
42
43
REFERENCE1
44
Channel = R1
45
XStart = -0.00006
46
XStop = 0.0000599984
47
XOrigin = -0.00006
48
XIncrement = 0.0000000016
49
YOrigin = -3.497558594
50
YIncrement = 0.01953125
51
YResolutionBit = 10
52
Samples = 75000
53
ValuesPerSample = 2
54
Source = Screen
55
Samplerate = 625000000

: Bearbeitet durch User
von Peter D. (fenstergucker)


Lesenswert?

Elmü M. schrieb:
> Wenn du es richtig machst, funktioniert das.
> Ich verstehe allerdings nicht, warum du an der Kanalreihenfolge
> manipulieren willst?
> Du kannst doch viel einfacher im Menü deine Reihenfolge der Kanäle
> definieren und es dann so abspeichern.
> Wieso willst du die 'Channel Order'-Bytes ändern?

Ich kann jetzt mit meinem Programm die Daten in der gleichen Reihenfolge 
bzw. Position wie am Oszilloskop angezeigt, im OSZI-Format speichern. 
Ich muss dann nicht später wieder die 'logische' Reihenfolge im 
Oszi-Programm einstellen. Das macht es für mich einfacher, darum die 
Fragen zu den 'Channel Order'-Bytes.

Peter

von Peter D. (fenstergucker)


Lesenswert?

Elmü M. schrieb:
>> Ich habe einen Fork des Oszi-Projekts erstellt, und eine kleine Änderung
>> gemacht. Ich wollte auch die Samplefrequenz in der Infoleiste sehen.
>
> Das ist eine sehr schlechte Idee!
> Gerade eben habe ich eine neue Version hochgeladen, die sich auch über
> TCP mit dem Oszilloskop verbinden kann.
> Und schon ist dein Fork veralteter Code.

Das macht nichts, mit Git sollte sich das leicht lösen lassen. Für mich 
ist dein Programm ein Grund mehr mit Git zu machen. Bis jetzt habe ich 
es nur einmal für ein anderes Projekt eingesetzt, aber nur nach 
Anleitung verwendet. Verstanden habe ich die ganzen Vorgänge noch nicht. 
Da mich dein Programm interessiert, und ich C# nicht kenne, ist das eine 
nette Möglichkeit damit zu lernen. Sollte ich einmal eine gute Änderung 
zustandebringen, kann ich dir ja einen Pull Request senden.

Peter

von Sherlock 🕵🏽‍♂️ (rubbel-die-katz)


Lesenswert?

Elmü M. schrieb:
> Die allermeisten Windows Benuzter bezahlen ihr Windows ja sowieso nicht
> und treten Microsoft allein damit in den Hintern.

Kann ich mir nicht vorstellen. Die allermeisten Windows Benutzer haben 
das OS zusammen mit dem PC gekauft für einige zig Euro gekauft.

Elmü M. schrieb:
> Linux könnte in der Tat eine Alternative sein, wenn es nicht so
> benutzerfeindlich und voller Bugs wäre und wenn es brauchbare
> Dokumentation gäbe.

Das ist deine Meinung. Es gibt millionen Menschen, die das ganz anders 
sehen. Niemand verlangt, dass die ganze Welt die gleiche Meinung hat.

Falls du konkrete Fragen hast, helfen wir dir gerne, die Lösung oder 
Doku zu finden. Erstelle dafür besser einen neuen Thread mit 
aussagekräftigem Titel.

Wer ein Programm für möglichst viele Entwickler bereit stellen will, der 
sollte Linux nicht auslassen, denn Linux ist ein System von Entwicklern 
für Entwickler. In diesem Benutzerkreis ist der Anteil von Linux hoch 
(ich schätze >= 30%). Außerdem ist die Unterstützung von Mac OS dann 
auch nicht mehr weit. Tatsächlich lassen sich viele Linux Programme ohne 
Anpassung direkt für Mac OS compilieren und ausführen. Insofern ist aus 
meiner Sicht Windows die lästige Ausnahme, nicht die Regel.

: Bearbeitet durch User
von Alexander S. (alesi)


Lesenswert?

Elmü M. schrieb:
> Aber die Realität zeigt, dass sich nur ein winziger Prozentsatz der
> Weltbevölkerung für dieses Hobby Betriebssytem interessiert.
> Fragt doch mal die 99% der Anderen, warum sie lieber Windows benuzten
> als Linux.
> Und lernt daraus!
> Linux könnte in der Tat eine Alternative sein, wenn es nicht so
> benutzerfeindlich und voller Bugs wäre und wenn es brauchbare
> Dokumentation gäbe.
> Ich war ein paar Mal gezwungen für meinen Job mit Linux zu arbeiten und
> ich habe es jedes Mal gehaßt und war jedes Mal super froh wenn ich das
> hinter mich gebracht hatte.

Deutlicher kann man nicht zeigen, dass man zu einer objektiven Aussage 
nicht fähig ist.

von Martin S. (strubi)


Lesenswert?

Elmü M. schrieb:
> Ich sehe dass dieser Thread von einigen mißbraucht wird als ein
> religöser Kaffeklatsch über Linux.
> Warum macht ihr dafür nicht euren eigenen Thread auf?
> Die meisten Linux Freaks sind wie die Zeugen Jehovas.
> Sie glauben die Wahrheit gefressen zu haben und wollen die Welt von
> ihrer Religion überzeugen.

Du scheinst ziemlich beratungsresistent.
Sollte auch nun nach 20 Jahren nicht an dir vorbeigegangen sein, dass 
zumindest, was Embedded, FPGA und Chipdesign angeht, ernsthafte 
Entwickler mit Linux deutlich effizienter arbeiten (koennen). Das hat 
mit Religion so gar nichts zu tun. Es ist schlicht pragmatischer, per 
'apt-get' einen C Compiler zu installieren, und eine Software noch nach 
10 Jahren in der automatisierten Test-Build-Pipeline zu halten. So 
arbeiten ernsthafte alte Hasen, die mit dem Fortschritt gehen und ihre 
wertvolle Lebenszeit sinnvoll einteilen wollen.
Alles andere ist Gefrickel, und du solltest diesbezueglich deinem Code 
eine vernuenftig portable Architektur geben, auch wenn du selbst ganz 
doll davon ueberzeugt bist. Sonst bleibst du damit ein einsamer 
Kaempfer. Kann man machen, aber: Es gab hier schon zig solche 
Labview-Klickibunti-Threads, this is yet another. Wird meistens recht 
schnell still drum.

von Sherlock 🕵🏽‍♂️ (rubbel-die-katz)


Lesenswert?

C und Java Compiler laufen unter Linux übrigens auffällig schneller, als 
unter Windows. Wenn man nur noch 5 statt 15 Minuten warten muss, dann 
kann das sogar rasch finanziell relevant werden.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.