Author Topic: Siglent SDS1104X-E and SDS1204X-E: Bode plot with a non-Siglent AWG  (Read 42026 times)

0 Members and 1 Guest are viewing this topic.

Offline ExHamHack

  • Newbie
  • Posts: 1
  • Country: au
Re: Siglent SDS1104X-E and SDS1204X-E: Bode plot with a non-Siglent AWG
« Reply #100 on: May 12, 2022, 02:33:28 am »
Hi cent,

I have done some work getting this to work with a JDS2800. I suspect it may have a similar command structure to the JDS6600. It is not perfect and my coding ability is not great. I have it working, however I do get a few glitches occasionally. I suspect the JDS2800 gets overrun with the commands some times and misses one every so often, may be local network related too. I Let it run a couple of times and I usually get a clean sweep. 

In my situation I needed a fixed IP address and a pull up resistor on the ESP8266 module Tx pin.
If you point a web browser at the module IP address you should be able to see if it is working and what it is outputting even if its not compatible with your WaveGen

I have posted my updates to a Github fork at  https://github.com/Hamhackin/espBode/blob/master/JDS2800.md , it follow work done by others SQ6SFO and TimKoers.

 

Offline ceut

  • Regular Contributor
  • *
  • Posts: 150
  • Country: fr
Re: Siglent SDS1104X-E and SDS1204X-E: Bode plot with a non-Siglent AWG
« Reply #101 on: May 15, 2022, 09:25:37 am »
Hi cent,

I have done some work getting this to work with a JDS2800. I suspect it may have a similar command structure to the JDS6600. It is not perfect and my coding ability is not great. I have it working, however I do get a few glitches occasionally. I suspect the JDS2800 gets overrun with the commands some times and misses one every so often, may be local network related too. I Let it run a couple of times and I usually get a clean sweep. 

In my situation I needed a fixed IP address and a pull up resistor on the ESP8266 module Tx pin.
If you point a web browser at the module IP address you should be able to see if it is working and what it is outputting even if its not compatible with your WaveGen

I have posted my updates to a Github fork at  https://github.com/Hamhackin/espBode/blob/master/JDS2800.md , it follow work done by others SQ6SFO and TimKoers.

Hello,
Thank you very much for your work !  :-+ :-+
I will try this later this day, as I have removed ESP and all from my JDS :-\


Edit: I have compared your "esp_jds2800.cpp" and the JDS6600 Communication Protocol PDF: it seems you have right  ;)
All commands starts with "w" and a number to, then, set the right value
Will post the result  :-+


Edit2: It works !
My JDS6600 seems to receive the good command, I have checked the voltage in Vpp and Vrms mode, and also frequency  :-+  It seems that this happens at about 1 time per second ?
Now I have to learn how to use it correctly and try to check a Focal speaker filter  :D

Also, I have not find any webserver on the ESP IP, so I don't know how to check the output ? ???
« Last Edit: May 15, 2022, 10:24:10 pm by ceut »
 

Offline ceut

  • Regular Contributor
  • *
  • Posts: 150
  • Country: fr
Re: Siglent SDS1104X-E and SDS1204X-E: Bode plot with a non-Siglent AWG
« Reply #102 on: May 17, 2022, 08:38:50 pm »
Here is my integration on the back of my JDS6600.
My router is at about 4 meters, but the signal is weak, the integrated antenna is very small, I think I have to mod that now :-\

Maybe some of you have some (simple) ideas for modding this little PCB antenna ?  ???


Edit: I have switched my wifi to channel 13 and I have a lot better response from the ESP now  :-+
(from the ping cmd)
I will check but I think I don't have to mod the antenna now  8)
« Last Edit: May 17, 2022, 10:16:12 pm by ceut »
 

Offline ganevson

  • Contributor
  • !
  • Posts: 25
  • Country: bg
Re: Siglent SDS1104X-E and SDS1204X-E: Bode plot with a non-Siglent AWG
« Reply #103 on: November 09, 2022, 07:40:29 pm »

Hello
Does anyone have experience with a Bode plot between the SDS1104X-E and the PSG9080?
Thanks
 

Offline NickKUK

  • Contributor
  • Posts: 10
  • Country: gb
Re: Siglent SDS1104X-E and SDS1204X-E: Bode plot with a non-Siglent AWG
« Reply #104 on: November 10, 2022, 12:38:57 pm »
Hi,
I have used the 1104x-e bode plot with a standard Apple Mac mini phono jack before using a software AWG I wrote as an extension to a GitHub python project. I've dug out the python code and attached to the post. I suspect the same mechanism can be used to connect to any sound card and let the scope control the pitch (sorry no amplitude or other swanky features). On the Mac mini 2019 this worked from 5Hz to 20KHz before the active filters hit the sound.



I've since got a SDG1032X hacked to 60MHz so I've not used it for a bit.
« Last Edit: November 10, 2022, 12:40:35 pm by NickKUK »
 
The following users thanked this post: arvidb

Offline OsciX

  • Contributor
  • Posts: 16
  • Country: us
Re: Siglent SDS1104X-E and SDS1204X-E: Bode plot with a non-Siglent AWG
« Reply #105 on: January 17, 2023, 02:06:56 am »
Do you think that support for the Sony/Tektronix AWG2021 can be added? I understand this is a bit older than some of the generators here, so I'm mainly wondering if it's *technically* possible. I've done a fair bit of SCPI, and I wouldn't mind forking it to add my function generator :)
 

Offline istvan

  • Newbie
  • Posts: 3
  • Country: ro
Re: Siglent SDS1104X-E and SDS1204X-E: Bode plot with a non-Siglent AWG
« Reply #106 on: April 29, 2023, 06:32:10 pm »
Hello, I read your post, I also have a jds6600 signal generator, and a siglent sds 2202x-e oscilloscope, I try to write the sketch on esp=01 (esp8266) via usb programmer, but every time a compilation error appears. can you help me, I don't know where I'm going wrong. how did you proceed step by step I'm not familiar with programming and I don't know where I'm going wrong. I followed the steps posted by Tim
here is massage: In file included from C:\Users\dell\Downloads\espBode-master (1)\espBode-master\espBode\esp_parser.h:5,
                 from C:\Users\dell\Downloads\espBode-master (1)\espBode-master\espBode\esp_network.cpp:4:
C:\Users\dell\Downloads\espBode-master (1)\espBode-master\espBode\esp_fy6800.h:91:8: warning: extra tokens at end of #endif directive [-Wendif-labels]
   91 | #endif _ESP_FY6800_H_
      |        ^~~~~~~~~~~~~~
In file included from C:\Users\dell\Downloads\espBode-master (1)\espBode-master\espBode\espBode.ino:4:
C:\Users\dell\Downloads\espBode-master (1)\espBode-master\espBode\esp_fy6800.h:91:8: warning: extra tokens at end of #endif directive [-Wendif-labels]
   91 | #endif _ESP_FY6800_H_
      |        ^~~~~~~~~~~~~~
C:\Users\dell\Downloads\espBode-master (1)\espBode-master\espBode\espBode.ino: In function 'void loop()':
C:\Users\dell\Downloads\espBode-master (1)\espBode-master\espBode\espBode.ino:54:43: warning: 'WiFiClient WiFiServer::available(uint8_t*)' is deprecated: Renamed to accept(). [-Wdeprecated-declarations]
   54 |         rpc_client = rpc_server.available();
      |                                           ^
In file included from C:\Users\dell\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/ESP8266WiFi.h:40,
                 from C:\Users\dell\Downloads\espBode-master (1)\espBode-master\espBode\espBode.ino:1:
C:\Users\dell\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiServer.h:85:14: note: declared here
   85 |   WiFiClient available(uint8_t* status = NULL) __attribute__((deprecated("Renamed to accept().")));
      |              ^~~~~~~~~
C:\Users\dell\Downloads\espBode-master (1)\espBode-master\espBode\espBode.ino:64:43: warning: 'WiFiClient WiFiServer::available(uint8_t*)' is deprecated: Renamed to accept(). [-Wdeprecated-declarations]
   64 |         lxi_client = lxi_server.available();
      |                                           ^
In file included from C:\Users\dell\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/ESP8266WiFi.h:40,
                 from C:\Users\dell\Downloads\espBode-master (1)\espBode-master\espBode\espBode.ino:1:
C:\Users\dell\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiServer.h:85:14: note: declared here
   85 |   WiFiClient available(uint8_t* status = NULL) __attribute__((deprecated("Renamed to accept().")));
      |              ^~~~~~~~~
C:\Users\dell\Downloads\espBode-master (1)\espBode-master\espBode\esp_network.cpp: In function 'uint8_t handleVxi11(uint8_t*, WiFiClient)':
esp_network.cpp:222:1: error: control reaches end of non-void function [-Werror=return-type]
  222 | }
      | ^
cc1plus.exe: some warnings being treated as errors
exit status 1
control reaches end of non-void function [-Werror=return-type]
 

Offline jemarro12

  • Contributor
  • Posts: 21
  • Country: es
Re: Siglent SDS1104X-E and SDS1204X-E: Bode plot with a non-Siglent AWG
« Reply #107 on: October 16, 2023, 07:26:30 pm »
As some users said previously, i'd like to use RIGOL DG911 as AWG.
I know some basic C from the programming course in University but certainly i´m really lost in pthon.
Could a more advanced programmer if it will be possible nor difficult to do that?
Thanks guys!
 

Offline switchleg

  • Newbie
  • Posts: 2
  • Country: ca
Re: Siglent SDS1104X-E and SDS1204X-E: Bode plot with a non-Siglent AWG
« Reply #108 on: December 06, 2023, 12:32:37 am »
For anyone using a JDS6600 I have fixed the 0hz bug where the AWG does not take the desired frequency causing spikes in the bode plot.  Also supports ESP32 boards.

https://github.com/Switchleg1/espBode
 

Offline bigpriap

  • Newbie
  • Posts: 1
  • Country: ro
Re: Siglent SDS1104X-E and SDS1204X-E: Bode plot with a non-Siglent AWG
« Reply #109 on: February 08, 2024, 08:27:09 pm »
2008274-02008280-1 [ Specified attachment is not available ] [ Specified attachment is not available ]  If you are like me, attracted by the idea of controlling FY6900-60M with Siglent,, as many succeeded, beware of the new models! bought one SDS1104X-E SW V 6.1.37R10, Uboot-OS V 8.3, FPGA V 2021-11-08 HW V 09-06 and one FeelElec FY6900-60M Version V1 .5 .5 .1. 3.I tried many versions of the espbode codes from Github, none works. Voltage settings are OK but if I set frequency, to say, 28Hz on Siglent the AWG is interpreting as 20 Mhz! So I can only run Bode plots betewwn 1 to 60 MHz., not exactly audio domain 😊
I believe is the same problem as I read about FY6900-100M, maybe a frequency digit more that its not backward compatible. I was trying to divide the frequency output on ESP sketch with no results. I am not good enough to modify the software without help but I am ready to test any ideas. Thank you.
P.S. Using the code posted in the previous post by by: switchleg  decimals works, so maybe THIS IS THE WAY. Thank U @by: switchleg!


« Last Edit: February 08, 2024, 09:02:45 pm by bigpriap »
 

Offline switchleg

  • Newbie
  • Posts: 2
  • Country: ca
Re: Siglent SDS1104X-E and SDS1204X-E: Bode plot with a non-Siglent AWG
« Reply #110 on: February 28, 2024, 04:16:51 pm »
You are very welcome. Yes, I fixed multiple bugs and cleaned up the code a bit.
 

Offline bateau020

  • Frequent Contributor
  • **
  • Posts: 263
  • Country: fr
Re: Siglent SDS1000X-E and SDS800X-HD: Bode plot with a non-Siglent AWG
« Reply #111 on: May 01, 2024, 02:02:31 pm »
The SDS800X-HD (SDS804X-HD/SDS814X-HD/SDS824X-HD) changed the initialization phase (uses UDP instead of TCP for the port mapping phase, and requires VXI port changes), and as a result, the original script does not work on that scope.
In case you "upgraded" your scope and still want to use the script, see my repo https://github.com/hb020/sds1004x_bode/

I based my fork on the work from Don Becker, and went from there. It includes the following improvements:

* Python 3 migration (Python 2 is dead)
* AD9910 Arduino Shield (thanks Don Becker)
* Rigol DG800/DG900 series AWGs over Ethernet or USB. In theory, you might even be able use this implementation to connect to other Ethernet or USB connected SCPI 1992.0 standard compatible devices.
* Unit-T Uni-Trend UTG1000x (thanks alfredfo) (since 2024-06-27)

Opened a PR into the original repo.

EDIT: updated to latest content, since I got a PR on my fork. Will keep doing so if/when they arrive, and will add dates.
« Last Edit: June 27, 2024, 08:32:12 pm by bateau020 »
 

Offline Knutselaar

  • Newbie
  • Posts: 3
  • Country: nl
Re: Siglent SDS1104X-E and SDS1204X-E: Bode plot with a non-Siglent AWG
« Reply #112 on: May 25, 2024, 06:06:28 pm »
Hi All,

This is my first post of EEVblog, and I thank everybody for the real work they have done to make this possible.

I have only been shopping here, combined all and made some minor changes.

I've been struggeling with connecting FY6900 SWVersion 1.5.5.1.3 (delivered nov 2023) to my SDS1104X-E SWVersion 6.1.37R10 (delivered may 2024):

The result of my struggle:


I use the espBode-master date 08-12-2020

I had to add ESP_Telnet to my library

I use in the Arduino IDE: the library ESP8266 by ESP8266 community version 2.7.4

In SDS1104X-E Utility--page2/4--I/O--IP Set-- DHCP Disabled

I have discovered that the SDS1104X-E only remembers the first 9 charachters of the WiFi PSK after power down!

I use the TL-WN725N WiFi adapter from TP-LINK for my SDA1104X-E, the WiFi signal must be strong, otherwise you have no steady connection!

I use a 3V3 regulator in my adapter between the ESP01S and FY6900. The uP in de FY6900 has a 3V3 interface. The CH340 has also a 3V3 interface.

In my FY6900 the resistors between CH340 and TTL connector and uP are:
R30 and R32 are 300 Ohm between TTL and uP, R19 and R20 are 2k between CH340 an uP, no need to change!

In esp_config.h change:
*******************************************************************
#define WIFI_MODE_AP
//#define WIFI_MODE_CLIENT

/* WiFi credentials */
#define WIFI_SSID             "wlan_ssid"
#define WIFI_PSK              "wlan_key"

/* Comment this for DHCP. However you'll need to obtain IP somehow. */
#define STATIC_IP
*******************************************************************
 
Into

*******************************************************************
//#define WIFI_MODE_AP
#define WIFI_MODE_CLIENT

/* WiFi credentials */
#define WIFI_SSID             "Your_wlan_ssid"
#define WIFI_PSK              "Your_wlan_key"// no more than 9 charachters, otherwise you have to change your password of your network first

/* Comment this for DHCP. However you'll need to obtain IP somehow. */
//#define STATIC_IP
*******************************************************************
 

The compilerfault:
esp_network.cpp:222:1: error: control reaches end of non-void function [-Werror=return-type]
  222 | }

I inserted quick and dirty an extra line with return 0; in the file esp_network.cpp at line 222, and had no problems afterwards.

Original code: in file "esp_network.cpp" at end of function: "uint8_t handleVxi11(uint8_t *packet, WiFiClient client)"
*******************************************************************
         client.write((uint8_t*)&write_response, sizeof(rcpresp_devReadWrite));
        return 0;
        break;
    }
 }
*******************************************************************
Inserted line with return 0; at line 222:
*******************************************************************
         client.write((uint8_t*)&write_response, sizeof(rcpresp_devReadWrite));
        return 0;
        break;
    }
    return 0;
}
*******************************************************************

The problem of frequency adjustment in the new FY6900 60MHz mentioned by bigpriap a few posts back:

I have changed in esp_fy6900.cpp line 64 and 73 from

snprintf(command, 19, "WMF%08lu000000\n", frequency);

 Into

snprintf(command, 19, "WMF%08lu\n", frequency);


In order to see the IP adress of your ESP01S you have to remove the slashes on line 56 of esp_config.h
//#define DEBUG_PRINTS
becomes:
#define DEBUG_PRINTS

Compile and write to the ESP01S

Start the EPS01S an look at the Serial monitor.

After reading and writing down the IP adress (to be used in the bode plot-menu of the SDS1104X-E), put the slashes back:

//#define DEBUG_PRINTS

and compile and write to the ESP01S and the ESP01S is ready to be used.



Ik hope that this information helps others to get it working.


 

Offline Knutselaar

  • Newbie
  • Posts: 3
  • Country: nl
Re: Siglent SDS1104X-E and SDS1204X-E: Bode plot with a non-Siglent AWG
« Reply #113 on: May 29, 2024, 08:38:46 pm »
Some improvements:


I have encountered loss of connection on a following day.
I checked the IP-adress of the ISP01S and it was different than the day before.

So I changed to static IP-adress in the ESP01S in "esp_config.h":
The choice for "192.168.0.155" is because the network gives IP-adresses upwards from
"192.168.0.100", so 155 is not likely to have double IP's in a home network.
****************************************************
#define STATIC_IP

/* Static ip configuration */
#ifdef STATIC_IP
  #define ESP_IP              192,168,0,155 // 192,168,0,??? is equal to your network
  #define ESP_MASK            255,255,255,0
  #define ESP_GW              192,168,0,0   // 192,168,0,??? is equal to your network
#endif
****************************************************
Above changes are implemenred in the new espBode-master.ZIP file below.

Also in the SDS1104X-E I swiched DHCP Off and set the static IP-adress to 192.168.0.150

I have the Amplitude and Frequency of CH2 coupled to CH1.

The SDS1104X-E sends every frequency command twice to CH1, I stopped the second message.

I also added the driver for the FY3224S as signal generator for the bode plot.

Here are the schematic of the ESP01S coupled to the FY3224S and the source-files espBode-master.




 

Offline Knutselaar

  • Newbie
  • Posts: 3
  • Country: nl
Re: Siglent SDS1104X-E and SDS1204X-E: Bode plot with a non-Siglent AWG
« Reply #114 on: May 29, 2024, 08:43:39 pm »
Second attempt attatchment espBode-master.zip
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf