Rigol DS10xxZ firmware re-write - Page 1
Forum section: electronics / projects

author: tmbinc
author_rank: Frequent Contributor
timestamp: April 26, 2017, 06:09:29 pm
content: As outlined inhttps://www.eevblog.com/forum/buysellwanted/wtb-broken-rigol-ds10xxz-scopemainboard/, I started to look into re-writing the RigolDS10xxZ firmware. The goal is to provide new software for the iMX as well as for the FPGA so we have an open-source (software) scope that's easily hackable. To be very plain: this hasn't happened yet. But I still want to open this thread in case other people want to work with me.MotivationThe motivation for this effort is that the Rigol DS10xxZ is a dirt-cheap scope with okay-ish hardware that's hackable. Other scopes either have inferior hardware, are more expensive, have weird application processor architectures for which no open toolchains (compiler, debugger, infrastructure in general) exist, or use ASICs. The DS10xxZ is in sweet spot where it's affordable, uses off-the-shelf chips, ARM architecture, Xilinx Spartan-6 FPGA (for which a free toolchain exists), and is decently-spec'ed. I understand there are other scopes which are similar, but it seems the Rigol one is most popular.(It is a valid question whether a Zynq-based scope would be a better target, and I would immediately say "yes" if availability for these wouldn't be so poor at a sub-400EUR price point.)What I have todayI can boot Linux, which means we have:USBLCD/FramebufferEthernetFrontpanel LEDsFrontpanel buttonsu-boot is here:https://github.com/tmbinc/rigol-ubootI load u-boot via JTAG/OpenOCD and then boot from USB-storage, I haven't yet looked into writing u-boot to flash. I'm not saying that Linux is the ideal choice, but it's a good test vehicle to validate that the hardware works.There's a lot of things to figure out - including the whole "scope" part, the FPGA pinout, the FPGA<>iMX communication.I can add more information if other people are interested in this.

author: Kilrah
author_rank: Unknown
timestamp: April 26, 2017, 06:12:04 pm
content: NICE!

author: bitseeker
author_rank: Super Contributor
timestamp: April 26, 2017, 07:14:31 pm
content: Thanks for starting a dedicated thread for this project. It certainly deserves it. Definitely continue adding info and progress updates to pique interest.

author: Aigor
author_rank: Contributor
timestamp: April 27, 2017, 08:51:31 am
content: Nice Projectas far you know, there are some possibility to add support for logic analyzer?Many thanks

author: tautech
author_rank: Super Contributor
timestamp: April 27, 2017, 10:05:40 am
content: Link in OP doesn't work as it's got a comma embedded at the end of the URL.Fixed:https://www.eevblog.com/forum/buysellwanted/wtb-broken-rigol-ds10xxz-scopemainboard/

author: tmbinc
author_rank: Frequent Contributor
timestamp: April 27, 2017, 12:42:58 pm
content: Sorry, fixed it.Here's a random dump of things that need to be done (and with an estimation of difficulty), non-exhaustive of course.S: Figure out JTAG port to Xilinx FPGA pinout(Thank you, JJalling!https://www.eevblog.com/forum/projects/rigol-ds10xxz-firmware-re-write/msg1195497/#msg1195497)S: document findings in more details (frontpanel, IO, ...) in a public wikiS: find a better serial port for debug spew than the frontpanel IOM: Figure out connections between FPGA and iMXM: figure out existing iMX<>FPGA protocotolM: reverse input stage (analog stage etc., similar to what has been done for other scopes)Done, thanks Dave and Ink (https://www.eevblog.com/forum/projects/rigol-ds10xxz-firmware-re-write/msg1202261/#msg1202261)M: figure out, and reverse, role of the Actel FPGAM: figure out FPGA pinout to ADCM: figure out FPGA to memory pinoutM: figure out how to easily (i.e. without risk to brick the thing) run custom code without opening the caseL: reverse full scope PCB to schematicsL: write host demo code to interface with existing FPGA and drive basic scope functionalityL: re-implement FPGA firmwareXL: architect and implement a "scope application"Feel free to grab one of these items and work on it.

author: Lightages
author_rank: Unknown
timestamp: April 27, 2017, 04:17:13 pm
content: Great to see this effort!I will be following this for sure.

author: pelule
author_rank: Frequent Contributor
timestamp: April 27, 2017, 06:12:28 pm
content: Sound promissingI have bookmarked to following this.

author: JJalling
author_rank: Unknown
timestamp: April 27, 2017, 06:13:20 pm
content: Quote from: tmbinc on April 27, 2017, 12:42:58 pmI have attached a picture of the JTAG pinout of the FPGABR Jonas

author: ajb
author_rank: Super Contributor
timestamp: April 27, 2017, 06:16:28 pm
content: Out of curiosity, what in particular would you be looking to improve in an eventual open-source firmware versus the standard firmware? Obviously there's a lot of work to do just to get to parity with the factory firmware, but just curious about your ultimate motivation.

author: Kilrah
author_rank: Unknown
timestamp: April 27, 2017, 07:01:55 pm
content: Same as any open source initiative - the ability for anyone to then modify or implement a feature for his needs.Off the shelf products always do 99% of the things you want, but there's no way to get that last 1% unless the manufacturer happens to add it. If there's a decent open base you can code it yourself.

author: bitseeker
author_rank: Super Contributor
timestamp: April 27, 2017, 07:12:09 pm
content: Quote from: Kilrah on April 27, 2017, 07:01:55 pmThere's also changing the way the manufacturer did things to better suit your requirements, workflow, etc. Granted, an open source project don't always result in something that's on par or better than the original, but it opens the possibility to do more, do it differently, or keep it going longer than the manufacturer wants to support it.

author: DrTune
author_rank: Contributor
timestamp: April 27, 2017, 08:17:24 pm
content: If it was pretty much anyone except Felix Domke behind this project I'd dismiss this as a wildly overambitious pipe-dream... but now I'm excited! :-)

author: james_s
author_rank: Super Contributor
timestamp: April 27, 2017, 08:25:58 pm
content: If it could come anywhere close to the success of the open source firmware available for popular broadband routers then that would really be something. A scope seems a lot more complex, at least on the surface, but perhaps it's actually not. I don't know how much of the "magic" is done in hardware and how much relies on the software.

author: GeorgeOfTheJungle
author_rank: Super Contributor
timestamp: April 27, 2017, 08:34:11 pm
content: Quote from: tmbinc on April 27, 2017, 12:42:58 pmWhat i.MX is that? I'm currently repurposing a kindle 4 as a datalogger (I love that eink display), it's an i.MX508. Amazon has published most of the gpled code and there's a lot of info @ mobileread.com. Have you managed to get any sources? from Rigol perhaps? That would help a lot.

author: tmbinc
author_rank: Frequent Contributor
timestamp: April 27, 2017, 08:37:01 pm
content: It's an i.MX28 (http://www.nxp.com/assets/documents/data/en/data-sheets/IMX28CEC.pdf), so it's really not awesome (and still an ARM926, i.e. ARMv5T).As far as I know, Rigol didn't use any GPL'ed code. Other than that, most of the i.MX28 functionality works - it's rather everything scope-specific that we need to figure out.

author: Cerebus
author_rank: Super Contributor
timestamp: April 27, 2017, 08:48:56 pm
content: Just so there's a reference to it in this thread: There's a wiki that has some schematics and other assorted hardware info for the DS1052, here:http://rigol.codenaschen.de/index.php/Main_Page

author: Fungus
author_rank: Super Contributor
timestamp: April 27, 2017, 08:51:27 pm
content: Quote from: james_s on April 27, 2017, 08:25:58 pmI suspect there will be a fair bit of disassembly and reverse engineering of existing firmware in this project.

author: GeorgeOfTheJungle
author_rank: Super Contributor
timestamp: April 27, 2017, 09:39:30 pm
content: Oh, what a pity, that -to me- sounds like bad news. I can read the sources of the eink driver and not have to figure it all out. Or see exactly how/what does it do to read the battery's mAh from the gas gauge chip, etc.But my project is essentially different because as I'm not trying to use the kindle as a kindle anymore I don't need to use nor understand any of its apps (whose sources aren't available), but you will have to. I have even deleted them already! With the sources headers and configs I can compile my own drivers and apps and be happy.But no sources at all? No, I for one would be totally lost if I were you!

author: GeorgeOfTheJungle
author_rank: Super Contributor
timestamp: April 27, 2017, 10:07:35 pm
content: But I have a Guinea pig ^w^w 1074Z-S. If it can be of any help just let me know :-)

author: cBaer
author_rank: Contributor
timestamp: April 27, 2017, 10:14:09 pm
content: Hi,saw this featured on Hackaday, so i decided to join the party. I call a Rigol MSO1104Z (one with logic analyzer) my own. I like the scope, but i think it could perform better. Its mostly aliasing(REALLY ANNOYING), slow interface responding and an XY-Mode (that is actually a joke) which could be well improved. Try to put oscillofun on it and you see what i mean. Maybe we can add more features like XYZ-Mode, SDR stuff, eye diagrams and others.Since I'm into SDR and Spartan 6 Ill try to help where i can.To the RE:I think theres a chance of getting the firmware and bitstreams of the FPGA, but because of the nature of FPGA's it will be next to impossible to RE the bitstreams. Thats bad because the HDL is directly coupled with the software. I would start with getting the full schematic together and then find out how it is driven and how it performs tasks like calibrating, selftest and so on.Since this is my only scope im not going to tear it apart, maybe ill find another one on ebay.

author: GeorgeOfTheJungle
author_rank: Super Contributor
timestamp: April 27, 2017, 10:21:59 pm
content: With that i.MX sadly I don't think there's much room for improvement in the cpu/performance side of things.

author: bitseeker
author_rank: Super Contributor
timestamp: April 27, 2017, 11:45:45 pm
content: Ah, but once the software is open, then upgrading some of the hardware might be an option. At least one can hope for it.

author: PhiMX
author_rank: Newbie
timestamp: April 28, 2017, 02:46:21 am
content: Cool! This is awesome!I just bought my ds1054z yesterday and now such a thing happens!One might take a look at the DSO quad community firmware (wildcat) which is an OSS app to drive the tiny oscilloscope. It is quite feature-packed compared to theoriginal software and might be easy to port over and be a starting point. The hardware is different (Lattice ICE65) but the verilog code is out there, quite simple and might be also possible to re-target.I am unsure if its a good idea to port it rather than start from scratch, but at least it´s something worth to take a look at.Oscilloscope app overview and download, source included:http://www.seeed.cc/DSO-Quad-community-edition-Wildcat-updates-t-6071.htmlgit for thhe older community app:https://github.com/pmos69/dso203_gccgit for the original source including FPGA source:https://github.com/Seeed-Studio/DSOQuad_SourceCodeAs I already said it is no request to port it over, it´s just a working and open soure embedded oscilloscope app and fpga source that´s worth to be looked at.

author: Redline99
author_rank: Newbie
timestamp: April 28, 2017, 04:12:16 am
content: Sounds like fun tmbincI happen to have one of these too and would love to understand more of its inner workings, even just for the fun knowledge of it.

author: Kilrah
author_rank: Unknown
timestamp: April 28, 2017, 06:55:02 am
content: Quote from: PhiMX on April 28, 2017, 02:46:21 amNice, hadn't noticed it was alive again. Will have to dig mine out again

author: azer
author_rank: Regular Contributor
timestamp: April 28, 2017, 12:14:24 pm
content: Christer Weinigel did something similar for the OWON SDS7102.http://blog.weinigel.se/He got as far as dumping correct ADC data to disk.It's a different architecture, though some of the techniques to reverse engineer the FPGA-SOC and ADC-FPGA connections could be reused.http://blog.weinigel.se/2016/05/29/sds7102-fpga-pins.htmlhttp://blog.weinigel.se/2016/07/08/sds7102-capture.html

author: bitwelder
author_rank: Super Contributor
timestamp: April 28, 2017, 12:40:38 pm
content: I wonder if it would be possible to keep part of the original Rigol code running while it's getting analyzed and block by block replaced with a 'open source' functionally equivalent version of it.

author: hexreader
author_rank: Frequent Contributor
timestamp: April 28, 2017, 01:32:16 pm
content: OK, I am up for it...Have ordered £350 DS1054Z for the job, since I don't want to risk trashing my £1000 MSO1104Z-S.To get me started...1 Does anybody have a link to schematic for input circuitry please? Dave's reverse engineer video shows part schematic, but maybe there is something better since?2 Any hints on disassembling code for FPGA (is disassemble even the correct term) and ARM chip?3 Any other info available that might help me assist with the firmware re-write?4 Do I/we need to be careful about breaking Intellectual Property or Copyright rules?Note that I am well aware that this is a totally pointless exercise, so no need for any negativity. Purely a fun thing for an experienced hobbyist to do with too much free time availableAny hints or assistance appreciated, and hopefully I can contribute to the bigger project in return.Seems to me I need to learn:a) Spartan 6 XC6SLX25 FPGA (the thing with the heatsink). I know nothing of FPGA - is it hard to learn?b) ACTEL ProASIC3 ASP030. I know nothing of ASIC - is it hard to learnc) MCIMX283(DVM4B) freescale ARM 9 - I am familiar with ARM at amateur level - maybe this is where I can add value to this thread?I have multi-meter with continuity function and I am not afraid to use itI will soon have spare Rigol and I am not afraid to break it

author: Cerebus
author_rank: Super Contributor
timestamp: April 28, 2017, 04:46:30 pm
content: Quote from: hexreader on April 28, 2017, 01:32:16 pmSee the link I posted earlier in the thread.

author: BravoV
author_rank: Super Contributor
timestamp: April 28, 2017, 06:38:55 pm
content: Can I make the 1st entry in wish list ?Nothing spectacular, use the whole damn screen just for traces only, I mean horizontally, without those annoying both sides buttons bars.At least not permanently occupying at both sides.

author: hexreader
author_rank: Frequent Contributor
timestamp: April 28, 2017, 08:50:18 pm
content: Quote from: Cerebus on April 28, 2017, 04:46:30 pmThanks Cerebus, I am embarassed that I did not read the earlier thread posts properlyNot sure the schematics for front end apply to DS1054Z, but the other schematics will probably get me off to a good start.Thanks,

author: cBaer
author_rank: Contributor
timestamp: April 28, 2017, 09:30:26 pm
content: Quote from: hexreader on April 28, 2017, 01:32:16 pma: FPGA's are a very different from micro processors. They even need a different type of source code called Hardware Description Language or HDL for short. Verilog and VHDL are the most common. VHDL is more Complicated and more common in europe while Verilog is more simpler and more common in america. Unlike classic programming languages, you are not describing a sequence of Operations. You have to describe a digital circuit instead. (OK, your digital circuit could be a CPU which can then be programmed, but thats off topic). But I have to say the learning curve can be very steep and there are a lot of pitfalls that arent even possible on classic porgramming languages. But dont fear, the internet has a lot to tell you about that.One word to Xilinx/Spartan 6: Xilinx has a lot of Code Generators and other stuff we can use but there are a lot of nasty bugs in it. There are whole books just dedicated to these bugs. The suite we need is the now discontinued ISE from Xilinx. The newer Xilinx Vivado doesnt support Spartan 6 (I'm pretty sure thats on purpose). ISE for that FPGA is free, but it phones home for whatever reasons. And i can recommend emacs for VHDL editing. Besides the good templates the ability to edit the same buffer in two or more windows alone is worth it.I have a different question:A project like this can produce several thousand lines of code (maybe in the millions) among other countless files and documents. How do we organize this? +we need some versioning like SVN or so.

author: james_s
author_rank: Super Contributor
timestamp: April 28, 2017, 11:28:16 pm
content: FPGAs are absolutely fascinating and amazing devices. I'm not actually sure if knowing how to program microcontrollers makes it easier or harder to get started in FPGAs. The thing that is hardest for most people to grasp is that writing HDL is not writing a program. Instead you are describing the function of a digital circuit using a special language that happens to superficially resemble a computer programming language. Tell yourself that over and over until it sinks in.The best beginner resource I found was a free pdf book called Free Range VHDL. In the US Verilog is more popular but I found VHDL makes more sense to me. My advice if you read that book is to first read it through cover to cover and don't worry too much about absorbing it all. Then go back and read it again, this time trying the examples as you go along. Existing projects are a great source of information too, I found Grant Searle's Multicomp to be very helpful.

author: bitseeker
author_rank: Super Contributor
timestamp: April 29, 2017, 03:52:56 am
content: Quote from: cBaer on April 28, 2017, 09:30:26 pmGithub

author: ebclr
author_rank: Super Contributor
timestamp: April 29, 2017, 04:17:29 am
content: "microcontrollers makes it easier or harder"I would say harder because you always think "inside the box", and FPGA is a totally different philosophy, where sequenced thighs must be changed to parallel, Microprocessor is a generic hardware to solve problems with software, FPGA is Pure hardware defined by software tool, but after definition 100% hardware ( except if you define a microprocessor IP )

author: hexreader
author_rank: Frequent Contributor
timestamp: April 29, 2017, 05:37:45 pm
content: Struggling to add photos - but will keep trying...OK, I give in....How do I add a dozen photos of MSO1104Z-S daughter card for Sig Gen?EDIT: found add attachment option, but now get attachment too large.Don't want to play this game any moreDetail shots added, but bigger pictures left out due > 1MBYou will have to use your imagination to guess what the whole board view looks likeI guess that the money shot is the second one, except maybe the glue from the sticker makes chip info hard to read

author: JJalling
author_rank: Unknown
timestamp: April 29, 2017, 05:40:11 pm
content: Dave has taken some photos of the scope already:https://www.flickr.com/photos/eevblog/albums/72157646442125864EDIT: Oh sorry, didn't see that you were adding pictures of MSO1104Z-S.BR Jonas

author: Kilrah
author_rank: Unknown
timestamp: April 29, 2017, 06:06:25 pm
content: There's a "(more attachments)" just below where you posted your first one.

author: cBaer
author_rank: Contributor
timestamp: April 29, 2017, 08:21:09 pm
content: Is that a altera Cyclone?How is the Generator board connected?

author: tautech
author_rank: Super Contributor
timestamp: April 29, 2017, 09:03:17 pm
content: Quote from: Kilrah on April 29, 2017, 06:06:25 pmYep, individuals can't be bigger than 1Mb and the total for a post can't be bigger than 2Mb.For a project like this some need to be hi res and then it's better to add more posts with bigger pics and then all the imagery is on Dave's server where it won't get lost.

author: farzadb82
author_rank: Contributor
timestamp: April 29, 2017, 09:45:42 pm
content: @hexreader, how did you get the lighting such that the chip identifiers are readable?

author: hexreader
author_rank: Frequent Contributor
timestamp: April 29, 2017, 09:49:42 pm
content: Quote from: cBaer on April 29, 2017, 08:21:09 pmYes, Altera Cyclone.Board connects to stake pins right hand side of main board next to piezo buzzer, then 2 flying leads for output to 2 BNCs on daughter board. That is what the bigger pictures would have shown if picture limit was 2 meg instead of 1QuoteJust used USB microscope with built-in light. Sometimes I need to turn off microscope light and shine a torch side-ways onBy the way... I notice that the interesting jumpers next to JTAG connector are 0100100 001 for both DS1074Z-S and for MSO1104Z-s.Dave's pictures for DS1054Z show 0000101 001, while my DS1054Z has 0000100 001Maybe the second jumper from the left sets the "S" option?

author: hexreader
author_rank: Frequent Contributor
timestamp: April 29, 2017, 10:23:06 pm
content: With a bit of cropping.... maybe I can post picture of top of signal generator board...... and most of the bottom of the board, with just a bit lost at lower edge, which luckily has no components on

author: cBaer
author_rank: Contributor
timestamp: April 30, 2017, 12:17:14 am
content: hexreader are the BGAs for the Logic analyser populated on your scope?I looked at daves hi res photos of the PCBs to get an idea of the bootstrapping.https://www.flickr.com/photos/eevblog/15354530840/in/photostream/There are-a 128 MBbyte Flash, i guess it holds the software for the CPU-a 25x4 SPI Flash, i guess the Spartan 6 boots from that-a I2C FRAM(MB85RC16), no idea whats that for-the ACTEL FPGA has build in flashtheres a ic i cant read the part number of, its the "im XSZ ..."Clocking for the hardware is not that hard i think:25 MHz -> ADF4360-7 -> ADC -> FPGA -> maybe others.We need to figure out what clock comes out of the ADF chip.What questions me is that the Spartan 6 has a maximum Speed in the ballpark of 400MHz (if you use a very very veeeeeeeeerrrryyyyyy quick HDL) but it is specified at 1GSa/s. So how did they implement that?

author: hexreader
author_rank: Frequent Contributor
timestamp: April 30, 2017, 01:05:31 am
content: Quote from: cBaer on April 30, 2017, 12:17:14 amNo doubt they are, but I am not willing to pull all of the buttons off of the scope and undo those tiny ribbon connectors to find out.When I get cheap DS1054Z delivered, then I am willing to take more chances. If I break my MSO1104Z-s I will be heart-broken and never recover.QuoteMCIMX283(DVM4B) freescale ARM 9 - which I gained by watching Dave's tear-down video

author: Fungus
author_rank: Super Contributor
timestamp: April 30, 2017, 12:23:31 pm
content: How did you figure out the video driver?

author: luisprata
author_rank: Regular Contributor
timestamp: April 30, 2017, 01:01:46 pm
content: Nice !!!

author: zdun8
author_rank: Newbie
timestamp: May 01, 2017, 08:11:10 pm
content: Hello All,First of all, hello everybody, I'm new to the forum, even though I've watched several of Dave's videos.I think this is a very cool project, I own this scope and I have the skills to help (IMX and FPGA). Maybe we should arrange a jira to organise work?Kind regards,Piotr Zdunek

author: bitseeker
author_rank: Super Contributor
timestamp: May 01, 2017, 09:07:20 pm
content: Welcome to the forum, Piotr!

author: esden
author_rank: Newbie
timestamp: May 01, 2017, 09:31:27 pm
content: Hey everyone,I think this project is very interesting. Might actually push me over the edge so that I finally get one of the Rigol scopes.I really recommend using one of the widely used and proven solutions for open-source project coordination and development like Github organizations or alternatively GitLab to organize code commits and issues. The wiki is maybe not super capable but sufficient for most projects, and allows open coordination of the community effort with good transparency and lot's of useful integrations and tools. I personally would not vote for jira as it will lock the project into the atlassian system, making future migration very difficult. (I speak from experience here)Just my 2cents.Looking forward to progress in this project and maybe even getting my hands dirty.Cheers,Esden

author: Circlotron
author_rank: Super Contributor
timestamp: May 02, 2017, 02:49:59 am
content: Bookmarked.

author: hexreader
author_rank: Frequent Contributor
timestamp: May 02, 2017, 02:11:43 pm
content: OK, Donor DS1054Z has just arrived...How do I remove ribbons from mainboard sockets please?Do I just pull, or do I slide the black plastic retainer first (though gentle persuasion does not release retainer so far)

author: hlavac
author_rank: Frequent Contributor
timestamp: May 02, 2017, 02:39:06 pm
content: Pull out the plastic bit, the cable should pull out easily then

author: hexreader
author_rank: Frequent Contributor
timestamp: May 02, 2017, 02:51:14 pm
content: Quote from: hlavac on May 02, 2017, 02:39:06 pmThanks, that worked.Needed a lot of persuasion though. Not looking forward to removing displayAh.... now I get itjust flip the black plastic up like a piano lid - much easier and less destructiveSo, starting off with the simplest task:Left hand keypad keys top to bottom are: K5 K12 K13 K11 K9 K2 K4 K3 K1Left hand keypad ribbon cable listed top=1 to bottom = 8:ribbon 1 = K5 R , K1 L , K2 L , K3 L , K4 Lribbon 2 =K9 L , K11 L , K12 L , K13 Lribbon 3 = K5 L , K13 Rribbon 4 = ground to button PCB groundribbon 5 = K4 R, K12 Rribbon 6 = K3 R , K11 Rribbon 7 = K2 Rribbon 8 = K1 R , K9 RI make that a 2x5 matrix with:ribbon 1 = row 1 (K1 to K5)ribbon 2 = row 2 (K9 to K13) K10 not fittedribbon 3 = column 5 (K5 K13)ribbon 4 gndribbon 5 = column 4 (K4 K12)ribbon 6 = column 3 (K3 K11)ribbon 7 = column 2 (K2)ribbon 8 = column 1 (K1 K9)Dave's teardown seems to suggest that the 8 way side-connector is related to the 8-way key connector nearby, but continuity test shows that the two are not directly connected. My guess is that the positioning is co-incidence.On to the other keyboard panel with all of the rotary encoders on. I see that there is an ASIC hidden away behind the board, so this board more complex than I first guessed.EDIT: Turns out the two keyboards work as one 6x8 matrix - where row 6 has K41 button (CH4) plus K54 through K59 which are the push function of the rotary switches

author: hexreader
author_rank: Frequent Contributor
timestamp: May 02, 2017, 04:31:54 pm
content: Anyone have any tips on how to get the little black bit of plastic back into the little white connector once it has been ripped out by mistakeThe 8 way ribbon connector that goes to Rigol left-hand buttons.

author: nrxnrx
author_rank: Unknown
timestamp: May 02, 2017, 06:39:58 pm
content: Quote from: hexreader on May 02, 2017, 04:31:54 pmIf something broke, just replace it:http://uk.farnell.com/c/connectors/ffc-fpc-board-connectors?no-of-contacts=8contactsWhat's the pin spacing on connector footprint? What about the cable?If nothing broke, it may be possible to just force the bit of plastic back.Good luck!

author: PhiMX
author_rank: Newbie
timestamp: May 02, 2017, 07:35:07 pm
content: Are there any open source oscilloscope applications readily available?If said software has a proper HAL that can be made working with the (not yet synth´d) FPGA it would be loads and loads less work.At least the said software could be forked to be used with the scope and the whole UI and math part would be already there and to be improved and customized later on.I have already proposed to use the DSO quad stuff for the beginning which comes with some verilog that could be fiddled for the spartan architecture and customized for the dac. That way the software would already be interfaced. But its far from perfect.I will have a look if there are better options... anybody got an idea? Tmbinc, whats your preferred way to do it? Write from scratch? You are the boss

author: tautech
author_rank: Super Contributor
timestamp: May 02, 2017, 11:12:19 pm
content: Quote from: hexreader on May 02, 2017, 04:31:54 pmThere's normally 2 styles, one that pushes home and clamps/secures the cable in place and the other has a swing over type clamping arrangement. Close inspection can identify each. Removal is simply the reverse of locking it home.The "push home" retainers have an infuriating habit of not staying completely open for reinsertion and just a brush will partly close them making the ribbon tricky to insert.You'll work it out.

author: hexreader
author_rank: Frequent Contributor
timestamp: May 03, 2017, 12:04:40 am
content: Quote from: tautech on May 02, 2017, 11:12:19 pmYes I did work out that it is the second type, but not until I broke the socket by assuming it was the first kindWith luck, and the aid of a microscope, I am hoping I can get the black plastic bit back into to white socket.....Else I will have to replace the whole socket, which with my rotten soldering skills and bad eyesight will not be prettyQuote from: nrxnrx on May 02, 2017, 06:39:58 pmCool link - many thanks - I think I see the right connector near the bottom of first page - but don't have scope open right now to measure pitch. Will add some to my next order, just in case I cannot repair the old socket

author: Fennec
author_rank: Regular Contributor
timestamp: May 03, 2017, 01:18:04 am
content: Holy, make a picture

author: hexreader
author_rank: Frequent Contributor
timestamp: May 03, 2017, 01:43:26 am
content: Quote from: Fennec on May 03, 2017, 01:18:04 amDave already posted pictures of Rigol insides, showing the 8-pin key connector - he is not hampered by the picture file size limit that I suffer.Will continue to post close-up pictures in due course as I progress, since these are within the post size limit, but without the bigger picture (literally) they convey limited information.

author: tautech
author_rank: Super Contributor
timestamp: May 03, 2017, 01:49:50 am
content: Quote from: hexreader on May 03, 2017, 01:43:26 amYou'd be surprised how much we can zoom in on even quite low res pics to see the details we need.Everyone has their favourite program for this of course.I commonly reduce/shrink them to 100KB and never been asked for larger.

author: hexreader
author_rank: Frequent Contributor
timestamp: May 03, 2017, 02:02:03 am
content: Fair enough,Close-ups attached.Doesn't look too hopeful to me, but maybe someone else has experienced a similar fix?Is it just the 8 solder joints that need de-soldering, or is there hidden solder joints under connector?Could not get ruler flat to board, but those are 1mm ruler markings, so I guess connector is 1mm pitch?

author: Fungus
author_rank: Super Contributor
timestamp: May 03, 2017, 02:05:14 am
content: Quote from: tautech on May 03, 2017, 01:49:50 amYou could also increase jpg compression ratio on larger images.

author: hexreader
author_rank: Frequent Contributor
timestamp: May 03, 2017, 02:26:45 am
content: And since I now have scope opened and microscope plugged in:Here is the ASIC on the back of "keyboard A" and some kind of identifier...EDIT:Turns out the two keyboards work as one 6x8 matrix - where row 6 has K41 button (CH4) plus K54 through K59 which are the push function of the rotary switchesLook at Dave's close-up picture of main keyboard A:Top two connections on rotary switch are for the push buttonTop left connector is row 6 of keyboard matrixTop right connector goes K59 to column 3, K57 col 4, K58 col 5, K55 col 6, K56 col 7, K54 col 8CH4 button K41 is Row 6 Column 2Bottom 3 connectors are the encoder with centre wired to Row 6, left connector diode to common A, right connector diode to common BK1 to K8 are row 1, col 1-8K9 to K16 row 2, col 1-8K17 to K24 row 3, col 1-8K25 to K32 row 4, col 1-8K33 to K40 row 5, col 1-8Guessing here, but since LEDs look to be individually connected to ASIC, then I imagine key matrix probably connects to ASIC too?Still guessing - I imagine that ASIC handles all buttons and rotary encoders and passes information to Mainboard?

author: Fennec
author_rank: Regular Contributor
timestamp: May 03, 2017, 03:06:48 am
content: Congratulations, the connector is dead. What kind of tools do you use ? Hammer and chisel ?The pitch is 1.27mm

author: ebclr
author_rank: Super Contributor
timestamp: May 03, 2017, 05:08:38 am
content: Let's help with some information consolidationHere Davi's high res picture of Rigol in one rar file 180 Mhttp://www.transmissor.com/Rigol1054Z.rar< Caution 180M on your hard drive compressedI would offer to maintain a WordPress site for the purpose of this project, where information and pictures will be hosted, for an easier sharing. If at least the working members and contributors agree I will create. otherwise, will forget due to lack of interest

author: cBaer
author_rank: Contributor
timestamp: May 03, 2017, 09:49:35 am
content: Quote from: Fennec on May 03, 2017, 03:06:48 amHope that was a jokeThe rework can be easely done if you have the right tools and skills. However if you are not used to it, trying DIY could cause more damage. If you want to try to replace it yourself go get some junk electronics and exercise on that first. You'll need a hot air station (to remove the part), solderwick to clean the pads, smd flux, fine solder (leaded should work), a soldering iron with a very fine tip (to solder the new part on) a good tweezer (so you dont block your sight and dont burn your fingers) and a good microscope would be a good idea. There are a lot of videos on Youtube about that. Look for ipad rehab or Lois Rossmann (Warning he's a New Yorker). Ofc this will not save you from exercise on junk electronic. I think there is nobody in the world who didnt f*ck up on the first try on something like that. Or go find a expert that mastered that kind of stuff.

author: cBaer
author_rank: Contributor
timestamp: May 03, 2017, 10:01:07 am
content: Quote from: hexreader on May 03, 2017, 02:02:03 amthere are two more (left and right outer edge) there are for mechanical stability, there should be no signals on it (GND maybe)

author: Rerouter
author_rank: Super Contributor
timestamp: May 03, 2017, 10:19:57 am
content: Fennec, if you can tell us where you are, someone nearby can probably swap it for you.

author: Cerebus
author_rank: Super Contributor
timestamp: May 03, 2017, 01:30:05 pm
content: Quote from: cBaer on May 03, 2017, 09:49:35 amPlease don't, Louis' technique is terrible and he's the first to say so himself. Not the 'go to' guy for a surface mount soldering tutorial.A soldering iron, flux, wick and solder are all that are strictly necessary. Hot air and a microscope are luxury items unless SMD repair is a regular concern. There is an almost unlimited and inexhaustible supply of existing SMD soldering advice and opinion available on this forum with a simple search, please let's not turn this thread into yet another SMD soldering for newbies tutorial.

author: Mukrakiish
author_rank: Contributor
timestamp: May 03, 2017, 03:03:47 pm
content: Quote from: ebclr on May 03, 2017, 05:08:38 amIf for nothing more than a consolidation of all images (and the context of them) I think would be a great way to keep it all together rather than sifting through numerous posts. All of my favorite project compilations that used WP worked well that way vs endless pages of a thread. Just my 2 cents.

author: JJalling
author_rank: Unknown
timestamp: May 03, 2017, 05:30:43 pm
content: I thinks it's a good idea to collect all the info somewhere. A wiki is preferable IMO. I like the Atlassian tools, but I understand that some people don't.The important thing is that more than one is able to contribute/edit the pages.I can provide a server to host whatever, if needed.BR Jonas

author: bitseeker
author_rank: Super Contributor
timestamp: May 03, 2017, 05:42:22 pm
content: What about using xDevs? Various folks here have tracked and documented their test equipment/electronics projects there.https://dev.xdevs.com/

author: cBaer
author_rank: Contributor
timestamp: May 03, 2017, 11:41:05 pm
content: I did some research.According to Dave the ADC in these Scopes is a HMCAD1511.Datasheet:http://www.analog.com/media/en/technical-documentation/data-sheets/hmcad1511.pdfSince i think we have to write a new FPGA Frimware image i searched for HDL Code for that chip.And found it for the EVAL-Board here:https://ez.analog.com/thread/51904The EVAL-Kit uses a Spartan 6 too.By the way im looking to buy one of these scopes so i can do more for this project, so does anybody know where i can get one (can be a used/defect one to some extend).

author: tmbinc
author_rank: Frequent Contributor
timestamp: May 04, 2017, 12:15:33 pm
content: The frontpanel (both buttons and LEDs) are connected to the UART (AUART0 if i remember correctly); it runs at 1MBit/s.To set the LEDs, you have to send one byte; the upper nibble indicates which LEDs to update, the lower nibble is a bitmask. So, "33" for example would enable SINGLE and REF, but disable MATH and the red RUN/STOP led, and leave the other LEDs alone.Code:1x1rot. button2CH14CH28CH32x1CH42LA4SOURCE8RUN/STOP green3x1SINGLE2REF4MATH8RUN/STOP red4x1trigger single2trigger normal4trigger autoThe button presses are little bit complicated, any pressed button generates a packet starting with "AA", then 9 bytes, and then something that appears to be a checksum. I guess with just a little bit of observation it can be figured out.

author: hexreader
author_rank: Frequent Contributor
timestamp: May 04, 2017, 12:34:06 pm
content: Quote from: tmbinc on May 04, 2017, 12:15:33 pmThanks, that motivates me to decode further. Might take a while, but I will publish the results...By the way, curious, how did you work that out please?

author: tmbinc
author_rank: Frequent Contributor
timestamp: May 04, 2017, 01:25:53 pm
content: Quote from: hexreader on May 04, 2017, 12:34:06 pmI simply observed serial port communication and correlated that with blinking LEDs.Later (from Linux) i've systematically tried all combinations.

author: hexreader
author_rank: Frequent Contributor
timestamp: May 05, 2017, 03:22:19 pm
content: Keyboard A 20 pin connector assuming pin 1 at the top:1 gnd2 gnd3 ?4 ?5 ?6 ?7 gnd8 ? (scope shows 24MHz clock at all times at approx 0 to 3V)9 gnd10 11 12 3.3V13 Row 114 Row 215 Col 516 gnd17 Col 418 Col 319 Col 220 Col 1The five connections marked ? are resistor-terminated and seem to run to a bus that includes mainboard FPGA (with heatsink) and Cyclone chip to it's rightPSU Connections:BRN 50Hz (AC_Trig)ORG Gnd (Fan -)White 9.0V (Fan)Red 5.0V (5V5A)Red 5.0V (5V5A)Blk GndBlk GndYel 7.5V (6.3V)Yel 7.5V (6.3V)Blk GndBlue 17.5VGrey -17.5VBlk GndGrn -7.5VPicture of PSU main chip attached

author: hexreader
author_rank: Frequent Contributor
timestamp: May 05, 2017, 08:55:47 pm
content: Quote from: tmbinc on May 04, 2017, 01:25:53 pmSorry to keep bugging you, but I have not managed to find serial communication signals for keyboard and LEDs. Where can I put scope probe(s) to see the signals each way please?I am slowly getting to grips with how the scope works, but struggling.

author: Ink
author_rank: Newbie
timestamp: May 06, 2017, 01:29:09 pm
content: I have reversed engineering the front end of my DS1000Z too,but not sure if it's right,not confirm yet.Actually,I thought about the same open source scope before,but I know noting about FPGA and Linux,so I give up. :palm:hope you can keep going.If there are anything about analog front end I can help,please let me know.

author: hexreader
author_rank: Frequent Contributor
timestamp: May 06, 2017, 01:42:05 pm
content: Quote from: Ink on May 06, 2017, 01:29:09 pmWow! that is seriously impressiveWhere did you get component numbering from? (U2A, Q4 etc) . My scope mainboard has no component numbers. Did you make them up? or did you have a way to know Rogol numbering. Either way, your schematic will become the standard that the rest of us will follow.Many thanks for posting - maybe there is hope for this project after all....

author: Ink
author_rank: Newbie
timestamp: May 06, 2017, 02:08:53 pm
content: Quote from: hexreader on May 06, 2017, 01:42:05 pmjust ignore the component number,I made them up.

author: hexreader
author_rank: Frequent Contributor
timestamp: May 06, 2017, 02:14:22 pm
content: Quote from: Ink on May 06, 2017, 02:08:53 pmOn the contrary; those component numbers will now become the standard. Somebody had to assign a numbering system, and it seems you are the first.Now needs somebody to invent numbers for the remaining components on the mainboard. I would annotate Dave's pictures with component numbers, but with only 1MB limit on pictures, it is more trouble than I can live with

author: bitseeker
author_rank: Super Contributor
timestamp: May 06, 2017, 07:15:33 pm
content: An alternative to annotating high-resolution photos is to make a component list and corresponding component-finder as is done in many service manuals. The component-finder image would be a line drawing with all the component labels, which should be a much smaller file than a photo.Of course, one could just put large images elsewhere, such as on xDevs, where all the project details can be tracked and documented.

author: rhb
author_rank: Super Contributor
timestamp: May 12, 2017, 08:24:47 pm
content: FWIWIn 2004 David Donoho of Stanford introduced the concept of compressive sensing. There is a 2014 PhD dissertation on a compressive sampling oscilloscope. The dissertation is:https://smartech.gatech.edu/bitstream/handle/1853/.../TZOU-DISSERTATION-2014.pdfTo do this you need to be able to trigger sampling at random times. The granularity of the clock determines the bandwidth of sampling. Typically about 5x increase in BW per sample is achievable, though it takes significant compute, so not for real time yet. But the really cool part is that the random sampling times eliminate aliasing without the expense of an anti-aliasing filter. So a scope that implements compressive sampling is limited only by the BW of the analog front end.The deep buffer on the DS1000Z series makes this especially attractive. Compressive sensing would make it 5x deeper.I'm interested in ANY low cost scope that will allow me to treat the ADC channels as one would those on an MCU. But I've got a DS1102E, so Rigol is a natural path to start down. If someone works out how to trigger a single sample after a user specified delay. I'd *really* like to know.

author: cBaer
author_rank: Contributor
timestamp: May 12, 2017, 11:00:46 pm
content: Did anybody start with the FPGA part yet?

author: affinekinetic
author_rank: Newbie
timestamp: May 30, 2017, 11:50:06 am
content: Quote from: farzadb82 on April 29, 2017, 09:45:42 pmVery delayed reply, and apols for off-topic, buthttps://xdevs.com/guide/hwphoto/is the best guide I've seen for getting high-quality circuit board or component shots.tl;dr, tripod, slow exposure (10s), dark room, wave a torch around the board from all sides to get rid of reflections & shadows.

author: ebclr
author_rank: Super Contributor
timestamp: May 30, 2017, 05:21:56 pm
content: Link did work for meThis one workshttps://smartech.gatech.edu/bitstream/handle/1853/51876/TZOU-DISSERTATION-2014.pdf

author: hexreader
author_rank: Frequent Contributor
timestamp: June 15, 2017, 10:30:35 am
content: Thread seems to have diedI have been working in the background learning about FPGAs, but am afraid to connect either of my FPGA programmers to Rigol Scope.Is there any kind person out there who can tell me how to reliably read FPGA information out of the configuration Flash chips for main Xilinx Spartan chip and Altera Cyclone 2 please.I will be much happier experimenting on FPGAs on DS1054Z when I am confident that I have a "plan B" for restoring scope to working condition.I bought these two JTAG programmers for the job:http://store.digilentinc.com/jtag-hs3-programming-cable/[url=http://hobbycomponents.com/featured/273-altera-fpga-cpld-usb-programmer-usb-blaster-compatible?search_query=fpga&results=2][url=http://hobbycomponents.com/featured/273-altera-fpga-cpld-usb-programmer-usb-blaster-compatible?search_query=fpga&results=2]http://hobbycomponents.com/featured/273-altera-fpga-cpld-usb-programmer-usb-blaster-compatible?search_query=fpga&results=2I also bought logi-pi2 and some cheap Altera FPGA boards to experiment on.My suspicion is that connecting JTAG to scope FPGAs will result in dead scope until I know how recover from bricked FPGAsAny advice or help much appreciated. I have not given up on this project yet, but live in fear of trashing my DS1054Z.

author: stj
author_rank: Super Contributor
timestamp: June 15, 2017, 02:54:17 pm
content: just reading this thread,before you do the big firmware project, it may be handy if you created a small diagnostic program to check scopes for hardware issues.just a thought.

author: Cerebus
author_rank: Super Contributor
timestamp: June 15, 2017, 03:08:02 pm
content: Quote from: stj on June 15, 2017, 02:54:17 pmThat's actually a damn fine idea. Part of the very nature of a diagnostic program is that you absolutely must understand the hardware you're driving to get the correct results. Thus writing a diagnostic program is a good way of proving to yourself that your reverse engineering is correct.Further, reverse engineering often requires quite a lot of trivial test programs to see if a given feature works the way you think it does. Each of those little test programs look a whole lot like the individual tests that go to make up a diagnostic. So a deliberately written diagnostic is going to make a top-notch framework for all those little test routine that will need writing anyway - might as well make them useful in the future and keep them tidily in one place.

author: Fungus
author_rank: Super Contributor
timestamp: June 15, 2017, 05:24:49 pm
content: Quote from: hexreader on June 15, 2017, 10:30:35 amYou could try soldering wires to the chip and driving it directly but it may not work, depending on what else is connected to the PCB traces.You could sniff the bus at startup using a logic analyzer.The only way to be sure is to desolder the chip, read the contents, put it back again. It's a few minutes work if you've got the equipment, a big hassle if you haven't.

author: hexreader
author_rank: Frequent Contributor
timestamp: June 15, 2017, 05:34:14 pm
content: Thanks FungusOption 3 is out of the question. I have neither the equipment or the skill for SMD de-soldering.I will go for option 2 - that looks safest. Will practice on dev boards first to prove the principles.If option 2 does not work, then I will go for option 1.Much appreciated...

author: ali_asadzadeh
author_rank: Super Contributor
timestamp: June 15, 2017, 06:50:17 pm
content: QuoteThanks tmbinc for sharing the project, I'm an experienced Embedded coder with more than 10 years experience, maybe I could help with developing some drivers for you. But I'm not a linux guy, and in all those years I just wanted to know how to build linux and add custom device drivers to it, do you recommend any path?

author: ali_asadzadeh
author_rank: Super Contributor
timestamp: June 15, 2017, 06:56:58 pm
content: QuoteGeorgeOfTheJungle Please send it to me, I will promise you to slay him and used it for the good of the public

author: ali_asadzadeh
author_rank: Super Contributor
timestamp: June 15, 2017, 07:37:41 pm
content: QuotecBaer, please note that,It has a special hardware in it's IO, it's called SEREDES IO, which it can get to 1GHz and down scale the stream to parallel stream with lower clock inside the FPGA core fabric

author: Fungus
author_rank: Super Contributor
timestamp: June 16, 2017, 08:42:54 am
content: Quote from: hexreader on June 15, 2017, 05:34:14 pmIdeally you need hot air bit if it's only an 8-pin chip then removing it with chipquick is probably easier than soldering wires to the pins to sniff the bus:http://www.chipquik.com/store/index.php?cPath=200Putting it back isn't difficult either. You don't solder individual pins with SMD, you just put a bit of solder in the general area and rely on the solder mask to do its job. A lot of people use big screwdriver-shaped soldering tips so they can do several pins at once (faster!).Quote from: hexreader on June 15, 2017, 05:34:14 pm2 is definitely the safest.1 isn't completely without risk - you'll be applying +/- voltages to bus lines. Don't just short pins to ground, make sure you use resistors to limit the currents. Hopefully the FPGA will set its pins to a sensible, high-impedance state after reading the flash but I have no idea if it does or not - read the datasheet.Question: Is it necessary to reprogram the FPGA in the initial phase? Can't you leave the FPGA as-is and just work on the main firmware? The most important thing right now is creating an environment where the compile-update cycle is as short as possible. If it takes five minutes to upload/test each iteration then this will go nowhere.

author: tooki
author_rank: Super Contributor
timestamp: June 16, 2017, 10:07:29 am
content: Quote from: hlavac on May 02, 2017, 02:39:06 pmMaybe this instruction needs to be changed. "Pull out" is wrong, the part isn't supposed to be removed. Just "lift the latch and the cable will release easily."

author: hexreader
author_rank: Frequent Contributor
timestamp: June 16, 2017, 10:45:01 am
content: Quote from: Fungus on June 16, 2017, 08:42:54 amI was thinking that I might output a square wave on each FPGA output to help me trace the wiring - since I cannot get to BGA pins.Where is the main firmware stored? ... and what device is firmware run on please?Many thanks for the help with my understanding, which is improving steadily.By the way..... I have no illusions of writing new scope software - I am simply learning, experimenting and having fun. Sorry to disappoint

author: Rerouter
author_rank: Super Contributor
timestamp: June 16, 2017, 02:04:19 pm
content: Out of curiosity, could you not toggle the pins through a normal jtag boundary scan? rather than trying to re flash it? it would only need to be 2-3Hz

author: hexreader
author_rank: Frequent Contributor
timestamp: June 16, 2017, 05:22:15 pm
content: Quote from: Rerouter on June 16, 2017, 02:04:19 pmNo idea.....Seems you know far more than I doTell me what to do and I will give it a go...I am just a hobby programmer with a lot of enthusiasm and spare time, but limited knowledge and skill.Where is the main firmware stored? ... and what device is firmware run on please? .... many thanks, hexreader

author: Fungus
author_rank: Super Contributor
timestamp: June 16, 2017, 06:43:14 pm
content: You could start by watching this:

author: hexreader
author_rank: Frequent Contributor
timestamp: June 16, 2017, 06:50:54 pm
content: Got it - thanksLooks like there is another dev board to buy and a tool-chain to download.This is a seriously big task

author: dorin
author_rank: Contributor
timestamp: June 17, 2017, 09:10:21 am
content: First of all, I'd like to applaud this initiative, as any ambitious open source project.Now, I don't know if someone mentioned this already but before embarking on such a bold journey I think it's good to understand all its aspects such as to prevent bitter disappointment.Designing good software for an oscilloscope is more complex than designing good hardware. Listen to Siglent CEO answer to Dave's question at 03:23 :https://youtu.be/v9M397sUkEA?t=3m23s

author: mikeselectricstuff
author_rank: Super Contributor
timestamp: June 17, 2017, 09:23:11 am
content: Quote from: Rerouter on June 16, 2017, 02:04:19 pmFPGA code is held externally, so you can load a new bitstream over JTAG for reversing which only lasts until power cycle

author: hexreader
author_rank: Frequent Contributor
timestamp: June 17, 2017, 10:14:06 am
content: Quote from: mikeselectricstuff on June 17, 2017, 09:23:11 amThanks, that works great on dev board, so presumably it will work just as well on scope.I think I will wait until I have a SPI flash image before trying it though - just to be doubly sure.Progress is slow, but headed the right way....

author: mikeselectricstuff
author_rank: Super Contributor
timestamp: June 17, 2017, 10:23:32 am
content: Quote from: hexreader on June 17, 2017, 10:14:06 amDoing an SRAM download won't affect anything

author: theorbtwo
author_rank: Newbie
timestamp: July 26, 2017, 12:55:38 pm
content: Hello, folks!I've recently got a ds1054z, and have been poking in the firmware in IDA, and researching what tidbits of useful information have been posted already. My file full of random notes can be seen athttps://github.com/theorbtwo/rigol-ds1000z-stuff/blob/master/info. A dump of the SCPI command table, along with a bit of code to expand out the tree and attempt to find the command in the documentation, is athttps://github.com/theorbtwo/rigol-ds1000z-stuff/blob/master/commands.pl, and finally the output of that script is athttps://github.com/theorbtwo/rigol-ds1000z-stuff/blob/master/commands3.txt, along with a (very small) amount of notes from reverse-engineering the firmware inline. Undocumented commands are marked with a leading "!". Particularly intersting-looking ones include :vendor:configure (and ?), :system:udevice (and ?), :system:flash:write, :system:information?, :test:{progress,lower,upper,mode,operate}?, with non-? versions of mode and operate, :calibrate:output? and :calibrate:lfstart.Pull requests for information I've missed *very* welcome. Replies to this post with information I have missed are also welcome. Information on how to share my work in IDA without putting myself out on a limb legally *very* welcome. Ideas on what I should be looking for also welcome.

author: ivi_yak
author_rank: Regular Contributor
timestamp: July 27, 2017, 01:20:20 pm
content: hi, i have bricked rigol ds1302 and i am want to test your firmware. How i can upload firmware to oscill ?

author: zl2wrw
author_rank: Regular Contributor
timestamp: August 03, 2017, 10:01:28 am
content: Quote from: theorbtwo on July 26, 2017, 12:55:38 pmI'll admit that I haven't used IDA (but I am aware of what it is and what it does).I am not an IP lawyer, but what about distributing the delta between your commented, reverse engineered IDA file and a plain IDA file of the firmware that anyone can easily produce from their own 'scope?That way you would not be distributing Rigol's copyrighted code, merely a file which contains your comments etc and (machine readable) information on where to insert it into a locally generated file which already contains Rigol's code. Persons using your diff would of course have to obtain their own dump of the same firmware version that you used.Another approach (which works for people without IDA licenses) is to distribute a symbol table of memory addresses and what you think they are used for (variables, subroutines, interrupt handlers, etc), which someone can then use to understand locally produced disassembly of the copyrighted code (again, you do not distribute Rigol's code, just a list of what addresses do what).

author: DC1MC
author_rank: Super Contributor
timestamp: February 04, 2018, 02:07:22 pm
content: Hello everybody, I'm resurrecting this dead thread to ask for your help, I've got somehow a (semi)defective Rigol DS1104Z main board and I would like to reactivate it just for fun.this being the most "low-level" thread that I could found, I want to ask for your help regarding the LCD connector (pinout) and eventually finding a compatible LCD, plus the same for the power-supply.Also if there are some schematics and in the end if somebody has a bricked device and wants to part of front panel, power/supply and case, pleas ePM me.Thanks,DC1MC

author: Datman
author_rank: Regular Contributor
timestamp: February 06, 2018, 09:47:46 pm
content: This topic is about a new firmware. Please open a thread in Repair.

author: RoGeorge
author_rank: Super Contributor
timestamp: April 08, 2018, 08:31:51 am
content: Thank you all for sharing the work.Quote from: tmbinc on April 27, 2017, 12:42:58 pmAwesome news:konnorfound a way for running custom code (plugins) without opening the case:https://www.eevblog.com/forum/testgear/rigol-ds1000z-firmware-patch-plugins/