Repository navigation
Releases: labeth/open-sds1000cml
Release list
open-sds1000cml v1.0.0
Clean-room replacement firmware for the Siglent SDS1000CML+ (validated on the SDS1102CML+).
Install (no build needed)
- Download
open-sds1000cml-v1.0.0-usb.zip. - Format a USB stick as MBR + FAT32 (Windows: Rufus, Partition scheme MBR + FAT32 — the built-in tools can't make FAT32 above 32 GB · macOS: Disk Utility, MS-DOS (FAT) + Master Boot Record · Linux: GParted msdos + fat32).
- Extract the zip so its contents land on the root of the stick — the top level must be
startup.sh,ota/,agent-slots/. On Windows, "Extract All" adds a folder named after the zip: clear it so the destination is just the drive letter (e.g.E:\), then confirmstartup.shsits directly on the drive, not inside a subfolder. - Eject the stick (wait for the flush to finish), plug it into the scope, and reboot the scope. It takes over and serves the web UI within a couple of seconds.
- Open
http://<scope-ip>:8080/: the scope's LCD shows the address at the top (your router's DHCP client list has it too). The phone remote is/r.
Verify a download: sha256sum -c SHA256SUMS (Linux) / shasum -a 256 -c SHA256SUMS (macOS) / CertUtil -hashfile <file> SHA256 (Windows), against SHA256SUMS.
Host controller: grab the matching otactl-<os>-<arch> (first run: macOS chmod +x … && xattr -d com.apple.quarantine …; Linux chmod +x …; Windows SmartScreen → More info → Run anyway). The README's Install, update and remove section covers updating, rolling back and removing the firmware; docs/ has the release notes and known limitations.
⚠️ Experimental firmware for the SDS1000CML+ series only. It takes over whatever SDS1000CML+ you boot it in, at every boot with the stick in; take the stick out for the factory firmware. No warranty.
Full Changelog: v0.0.5...v1.0.0
open-sds1000cml v0.0.5
Clean-room replacement firmware for the Siglent SDS1000CML+ (validated on the SDS1102CML+).
Install (no build needed)
- Download
open-sds1000cml-v0.0.5-usb.zip. - Format a USB stick as MBR + FAT32 (Windows: Rufus, Partition scheme MBR + FAT32 — the built-in tools can't make FAT32 above 32 GB · macOS: Disk Utility, MS-DOS (FAT) + Master Boot Record · Linux: GParted msdos + fat32).
- Extract the zip so its contents land on the root of the stick — the top level must be
startup.sh,ota/,agent-slots/. On Windows, "Extract All" adds a folder named after the zip: clear it so the destination is just the drive letter (e.g.E:\), then confirmstartup.shsits directly on the drive, not inside a subfolder. - Eject the stick (wait for the flush to finish), plug it into the scope, and reboot the scope. It takes over and serves the web UI within a couple of seconds.
- Open
http://<scope-ip>:8080/. Find the IP in your router's DHCP/client list (the vendor network menu is gone once it takes over).
Verify a download: sha256sum -c SHA256SUMS (Linux) / shasum -a 256 -c SHA256SUMS (macOS) / CertUtil -hashfile <file> SHA256 (Windows), against SHA256SUMS.
Host controller: grab the matching otactl-<os>-<arch> (first run: macOS chmod +x … && xattr -d com.apple.quarantine …; Linux chmod +x …; Windows SmartScreen → More info → Run anyway). See the README for full instructions.
⚠️ Experimental firmware for the SDS1000CML+ series only. It takes over whatever SDS1000CML+ you boot it in (editota/agent.envon the stick,OTA_AUTO_TAKEOVER=0, to coexist instead). No warranty.
Full Changelog: v0.0.4...v0.0.5
open-sds1000cml v0.0.4
Clean-room replacement firmware for the Siglent SDS1000CML+ (validated on the SDS1102CML+).
Install (no build needed)
- Download
open-sds1000cml-v0.0.4-usb.zip. - Format a USB stick as MBR + FAT32 (Windows: Rufus, Partition scheme MBR + FAT32 — the built-in tools can't make FAT32 above 32 GB · macOS: Disk Utility, MS-DOS (FAT) + Master Boot Record · Linux: GParted msdos + fat32).
- Extract the zip so its contents land on the root of the stick — the top level must be
startup.sh,ota/,agent-slots/. On Windows, "Extract All" adds a folder named after the zip: clear it so the destination is just the drive letter (e.g.E:\), then confirmstartup.shsits directly on the drive, not inside a subfolder. - Eject the stick (wait for the flush to finish), plug it into the scope, and reboot the scope. It takes over and serves the web UI within a couple of seconds.
- Open
http://<scope-ip>:8080/. Find the IP in your router's DHCP/client list (the vendor network menu is gone once it takes over).
Verify a download: sha256sum -c SHA256SUMS (Linux) / shasum -a 256 -c SHA256SUMS (macOS) / CertUtil -hashfile <file> SHA256 (Windows), against SHA256SUMS.
Host controller: grab the matching otactl-<os>-<arch> (first run: macOS chmod +x … && xattr -d com.apple.quarantine …; Linux chmod +x …; Windows SmartScreen → More info → Run anyway). See the README for full instructions.
⚠️ Experimental firmware for the SDS1000CML+ series only. It takes over whatever SDS1000CML+ you boot it in (editota/agent.envon the stick,OTA_AUTO_TAKEOVER=0, to coexist instead). No warranty.
Full Changelog: v0.0.3...v0.0.4
open-sds1000cml v0.0.3
Clean-room replacement firmware for the Siglent SDS1000CML+ (validated on the SDS1102CML+).
Install (no build needed)
- Download
open-sds1000cml-v0.0.3-usb.zip. - Format a USB stick as MBR + FAT32 (Windows: Rufus, Partition scheme MBR + FAT32 — the built-in tools can't make FAT32 above 32 GB · macOS: Disk Utility, MS-DOS (FAT) + Master Boot Record · Linux: GParted msdos + fat32).
- Extract the zip so its contents land on the root of the stick — the top level must be
startup.sh,ota/,agent-slots/. On Windows, "Extract All" adds a folder named after the zip: clear it so the destination is just the drive letter (e.g.E:\), then confirmstartup.shsits directly on the drive, not inside a subfolder. - Eject the stick (wait for the flush to finish), plug it into the scope, and reboot the scope. It takes over and serves the web UI within a couple of seconds.
- Open
http://<scope-ip>:8080/. Find the IP in your router's DHCP/client list (the vendor network menu is gone once it takes over).
Verify a download: sha256sum -c SHA256SUMS (Linux) / shasum -a 256 -c SHA256SUMS (macOS) / CertUtil -hashfile <file> SHA256 (Windows), against SHA256SUMS.
Host controller: grab the matching otactl-<os>-<arch> (first run: macOS chmod +x … && xattr -d com.apple.quarantine …; Linux chmod +x …; Windows SmartScreen → More info → Run anyway). See the README for full instructions.
⚠️ Experimental firmware for the SDS1000CML+ series only. It takes over whatever SDS1000CML+ you boot it in (editota/agent.envon the stick,OTA_AUTO_TAKEOVER=0, to coexist instead). No warranty.
Full Changelog: v0.0.2...v0.0.3
open-sds1000cml v0.0.2
Clean-room replacement firmware for the Siglent SDS1000CML+ (validated on the SDS1102CML+).
Install (no build needed)
- Download
open-sds1000cml-v0.0.2-usb.zip. - Format a USB stick as MBR + FAT32 (Windows: Rufus, Partition scheme MBR + FAT32 — the built-in tools can't make FAT32 above 32 GB · macOS: Disk Utility, MS-DOS (FAT) + Master Boot Record · Linux: GParted msdos + fat32).
- Extract the zip so its contents land on the root of the stick — the top level must be
startup.sh,ota/,agent-slots/. On Windows, "Extract All" adds a folder named after the zip: clear it so the destination is just the drive letter (e.g.E:\), then confirmstartup.shsits directly on the drive, not inside a subfolder. - Eject the stick (wait for the flush to finish), plug it into the scope, and reboot the scope. It takes over and serves the web UI within a couple of seconds.
- Open
http://<scope-ip>:8080/. Find the IP in your router's DHCP/client list (the vendor network menu is gone once it takes over).
Verify a download: sha256sum -c SHA256SUMS (Linux) / shasum -a 256 -c SHA256SUMS (macOS) / CertUtil -hashfile <file> SHA256 (Windows), against SHA256SUMS.
Host controller: grab the matching otactl-<os>-<arch> (first run: macOS chmod +x … && xattr -d com.apple.quarantine …; Linux chmod +x …; Windows SmartScreen → More info → Run anyway). See the README for full instructions.
⚠️ Experimental firmware for the SDS1000CML+ series only. It takes over whatever SDS1000CML+ you boot it in (editota/agent.envon the stick,OTA_AUTO_TAKEOVER=0, to coexist instead). No warranty.
Full Changelog: v0.0.1...v0.0.2
open-sds1000cml v0.0.1
Clean-room replacement firmware for the Siglent SDS1000CML+ (validated on the SDS1102CML+).
Install (no build needed)
- Download
open-sds1000cml-v0.0.1-usb.zip. - Format a USB stick as MBR + FAT32 (Windows: Rufus, Partition scheme MBR + FAT32 — the built-in tools can't make FAT32 above 32 GB · macOS: Disk Utility, MS-DOS (FAT) + Master Boot Record · Linux: GParted msdos + fat32).
- Extract the zip so its contents land on the root of the stick — the top level must be
startup.sh,ota/,agent-slots/. On Windows, "Extract All" adds a folder named after the zip: clear it so the destination is just the drive letter (e.g.E:\), then confirmstartup.shsits directly on the drive, not inside a subfolder. - Eject the stick (wait for the flush to finish), plug it into the scope, and reboot the scope. It takes over and serves the web UI within a couple of seconds.
- Open
http://<scope-ip>:8080/. Find the IP in your router's DHCP/client list (the vendor network menu is gone once it takes over).
Verify a download: sha256sum -c SHA256SUMS (Linux) / shasum -a 256 -c SHA256SUMS (macOS) / CertUtil -hashfile <file> SHA256 (Windows), against SHA256SUMS.
Host controller: grab the matching otactl-<os>-<arch> (first run: macOS chmod +x … && xattr -d com.apple.quarantine …; Linux chmod +x …; Windows SmartScreen → More info → Run anyway). See the README for full instructions.
⚠️ Experimental firmware for the SDS1000CML+ series only. It takes over whatever SDS1000CML+ you boot it in (editota/agent.envon the stick,OTA_AUTO_TAKEOVER=0, to coexist instead). No warranty.
Full Changelog: https://github.com/labeth/open-sds1000cml/commits/v0.0.1