DSO203 GCC APP - Community Edition (2.51+SmTech1.8+Fixes)

Thanks Wildcat again for the updates.
I've asked MiniDSO for details about HW v2.82 this is what i've got:
"HW2.82 is only a small part of the layout is different, the same hardware"

I also asked about DFU v3.46C and got they said it is HW2.81 compatible. They also provided the rom to flash the STM like i requested:

I have now updated to DFU v3.46C from v3.45C and here's the funny part:
Before as you know on my main intel i7 win10 laptop when copying your application it would disconnect the DFU drive while copying making it impossible to install your application. (smaller files like FPGA are able to installed normally)
That's why i've used and old winxp desktop machine which worked fine because it will copy the files without disconnecting the DFU drive.
A week or so ago i installed your v6.1 when it was running DFU v3.45C with that winxp system.
Today i updated to DFU v3.46C and while the app1.hex copies fine like expected, it will always give .ERR and the application will not install. I've tried different versions and stuff, always giving the same .ERR on app files, but then i went to my brother's core duo laptop running win10, and guess what? It installed it without an issue.
I got this idea because i saw a post with someone with a hw v2.82 having the same issue here, and he made a thread over minidso forums, saying he successfully installed your app on a win10 machine.

So from what i understand they managed to f**k up DFU even more that before. What do you recommend to do with this issue since more people are having this type of incompatibility with different systems. I suggest that i make a thread over minidso to get their attention hopefully to get it fixed with a newer DFU update. What do you think? You might say update is difficult but with a cheap USB to RS232 adapter and the tutorial i made it is very easy for anyone.

I wouldn’t be too hard on the factory guys, Microsoft likely changed, on purpose just to screw things up, the way these (to them obsolete) volumes are accessed in their new Windows versions.

It would seem though there should be some way the DFU could probe the host system to find out what version of Windows is accessing it, then readjust itself accordingly. Or simply have a menu so the user can select the proper Windows version.

Not sure though how many users are willing to open their devices, solder some pins and attach a serial connection to their PC in order to do this. On a bricked unit, yes, but on a perfectly good device it seems much simpler (and safer) to just find an older computer to upgrade with.

DFU always has been kind of funny. I once had a problem (not with wildcat, but with gabonator) reinstalling: always got an .err. Needed to reinstall because by accident I overwrote part of the code. Solution was: install something completely different into the same slot, and then try again. Which in fact solved the problem!

Was not Win10 though, but Win XP (my older 2.70 device with DFU 3.11C). So in case reinstalling whatever doesn’t work, one could possibly succeed by following that procedure.

Have fun :slight_smile:


Yes i get your point, but it is really weird that only this specific device has such an incompatibility problem, where you saw it doesn’t seem to be OS specific but rather than system specific. Also it will still affect new devices sold to customers, and i think they might not being even aware of this issue. I thing i should just make a thread to see what they have to say about it at least :stuck_out_tongue:

Yes i was thinking to do something like this but couldn’t find the original app on that (winxp) system so i happened to try the other win10 system and it worked. If i remember i will try this next time to see if it makes a change or not :slight_smile: Another thing worth noting though, it actually required me to re-install the fpga after installing wildcat on that win10 system, where i had already installed it multiple time successfully on the winxp system multiple times. What’s up with that?:stuck_out_tongue:

The DFU update you downloaded from the MiniDSO site is a complete ROM update, including the V1.64 Sys and the original FPGA and LOGO, along with their APP, that’s why the FPGA reverted to the original.

Yes that’s correct, i know this, that’s why i installed your FPGA first before attempting to install the APP. However after successfully installing your APP i needed to re-install the FPGA again even though i installed it successfully. I know it sounds weird because it is.

Hi guys! Hello Wildcat!

Is there a way to rename saved configs and display custom titles for the configs on the screen?

I have 9 or 10 different config files set up, each tuned to handle a different task, but it can be quite difficult remembering which config is for which task. I’ve used a sticky-note to keep track but I change these configs enough sometimes that it’s easy to get confused or lose track of these configs.

But it would be great if I could rename these config files to something else in order to get a better idea of what they’re for.


Would require a rather extensive rewrite and expansion of the config file access function. I agree it would be a nice touch. Memory is getting pretty low though, specially with the older devices. Will keep it in mind.

With regards to other suggestions made, one was automatic saving of config files: gave this some thought, one problem is that this would disrupt the display for a second or two while saving, so if done often enough on a time basis to be effective, could become annoying as well as result in lost data. Likewise if done after menu changes: It would have to be continually saving configs after changing settings to be effective enough to save the last configuration. Otherwise, when would you have the config save itself?

As far as a past suggestion to change the shortcuts, I’m reluctant to do this. I suspect most users are by now familiar with the operation as it is, changing things would likely lead to frustration.


Great job on the latest update (v6.1). I really like Chart Mode now.

On suggestions for added features…

It would be really nice to have a DC offset feature on CHA and CHB. This would allow adding or subtracting a fixed value of vertical offset in DC mode. This is a feature provided on more advanced oscilloscopes and allows observation of small variations of signals with large DC offsets. There is a hardware work around by using channel C’s A-B mode and external adjustable DC source. Alternatively switching AC coupling on removes DC bias, but there can be reasons for wanting to see the DC bias along with the signal.

The hardware is not designed to be able to do this. The only software access to the signal path is at the output of the preamp, at the unity gain inverter that drives the ADC, so while you can shift the wave up/down, any DC applied to the input beyond one screen’s height will clip at the top just the same, so if you shift the wave down you will just see the clipped signal.

This has already been observed with some devices that clipped at a lower level than the top of the screen, and required the ADC “window” shifted down to hide the clipping.

Likewise, using ChD’s A-B mode with what I presume you mean is a DC signal on the B channel balancing the wave on ChA, if DC on ChA is large enough it will still still clip the waveform at the same level (roughly at the top of the screen), even though it may appear at a lower position. The A-B mode is mixed by the software, after the ADC has processed the signal, so it has no real effect on either ChA or ChB’s DC offsets.

To work properly, DC compensation for this purpose needs to be done at the input, so that the preamp doesn’t “see” it, and there is no provision for this in the device. Otherwise the very small dynamic range of these devices, limited to just about one screen’s height will just not allow it.

This is a compromise that must be made to keep power consumption down when running on batteries, voltage levels must be kept low, limiting dynamic range.

I guess a hardware circuit could be how those advanced scopes are handling the DC offset function.

Is it possible to set the ADC’s upper and lower reference voltages? I was thinking you might be able raise the lower reference voltage while still keeping the higher reference voltage above the signal level.

This excellent youtube.com video doesn’t discuss clipping, but explains the usage of oscilloscope offset function with DC offset waveforms.


The only thing you can change with the software is the DC offset going into the ADC by varying the bias of the op-amp that drives it. This is what you do when you change the Ypos control. However, this is only limited to the height of the screen. When you have a DC level at the input that moves the signal up above the top of the screen, you will be clipping, thus losing the signal in the PREVIOUS op-amp that drives the ADC section.

So nothing you can do around the last op-amp/ADC section (which is the only access point for the software) will help because the signal will have been lost in the previous stage, clipped to either the power supply rail or ground, depending on the polarity of the DC offset.

The solution is to inject a DC current at the INPUT of the first op-amp, balancing and “neutralizing” the DC offset at the input, so that the first op-amp doesn’t “see” this large DC offset, restoring the signal position to within the screen.

This could be done by adding a PWM output from the microprocessor, filtering it into a DC level, then feeding it to the INPUT stage, like the one at the output does now to adjust the waveform’s vertical position. This is essentially the difference between position controls and DC offset controls. The position controls adjust the signal at the ADC input, while the DC offset controls balance out the DC at the input of the first stage, before it can get amplified and cause mayhem by overloading subsequent stages. Remember that the preamp stages in these things only run at 3 or 4 volts, giving a +/- 1.5 V range, barely enough to clear the top/bottom of the screen. Special op-amps, so called “rail to rail” needed to be used to operate within such a narrow window.

So to implement this properly, you would need to have a spare PWM port available from the processor, construct the proper connections and filter network on the circuit board, and add the proper software function to adjust this, along with some display for the compensating voltage value. An additional series of steps to calibrate this would likely be needed in the calibration routine. Also, careful attention would need to be given as to exactly where and how this is injected at the input so as to not disrupt the attenuator calibration for the various ranges.

Thanks for the consideration, Wildcat.

I rewrote my little sticky note list of configs, as I reset my configs and reordered them. I’m thinking of laminating that sticky note. My DSO203 came with a nice little pouch so I have the sticky note there.

Automatic saving? Seems a bit too… If you set this up, then I’m sure there will be others asking you to give them the option to turn it off. (I would)

Changing the shortcuts? I’m used to this DSO by now. So you’re right. I wouldn’t want it. Unless it was obviously superior and ergonomic.

The more I thought about this the more I believe it would be very useful, not only for configs but all file formats. So started work on new file access routines. Working on a directory list function, hoping to implement a pop up display of filenames to load and a “writeable” save function so files can be renamed while saving.

Thinking about possibly displaying the present config name in a vertical row at the top left of the screen, under the cursor/channel pointers, just below the battery icon (about the only place available…) Also, no reason to limit configs to only 10, this was done so a single digit would fit in the display.

Only in the very early stages of this, running into some weird restrictions in the rather simple file access of the system, like only supporting filenames with 7 characters + extension, so renaming may be mandated to have 7 chars. Will be working on this (and a few other minor updates) as time and health permits.

Wow. The prospect of this upgrade makes me speechless, Wildcat. It is beyond awesome. You would, yet again, take this scope to a whole new level of usability. I don’t need to tell you this, but, please, take as long as you need on this! There is no urgency here.

But I definitely appreciate how elemental you have been. When I needed the inverted function, you came through, and that was no small upgrade. So thanks again.

Testing to see if I can get this topic into current forum

Update V5.3 / V6.2:

-Added file list and file name editing directory functions. Filenames for all types can be created and filelist displayed.

-Fixed Delta T/freq cursor display not working correctly while in chart mode (did not work after changing chart mode to oversampling). Delta time display over 120 sec. will now display in minutes.

-Fixed FFT to update properly while in hold mode at the slower timebases or after loading BUF file.

-Eliminated the delay at the end of auto reset used in persistence mode.

-Changed VDC meters to read inverted value if in ChA or B invert mode with OS buffers rather than non inverted input value to bring in line with rest of meter displays while in invert mode.

-Changed “save IMG” to “save ROM”. This saves a 512KB binary image of the complete ROM, including bootloader, licence, SYS, all apps, FPGA and logo in .BIN format for restoring device via internal header if ever necessary. Filename is set to ROM_IMG.BIN and cannot be changed. Apparently, some users thought this saved a different kind of “image”. Make sure enough space is available on drive before using this, specially on 2MB devices, if there isn’t the system’s file access functions leave the failed entry behind and uses up the remaining space.

-Removed the requirement for early (2MB) units that CFG files exist before they can be written.

Both versions still leave slot 4 open for an additional program, as well as the area at the start of the second half or the ROM where Alterbios and Pawn store some code.

Some notes on new directory functions:

-Select file type first in file menu to be displayed in list for loading or to edit name before saving.

-Read dir list or access filename edit function with file sub menu (button 4) (file save/load > file number > file type > dir list/name edit) If file load is selected list will be displayed, if file save is selected filename edit function will be displayed.

-Files are listed in sequence found in file allocation table.

-Select file to load in list with left toggle, press center button to load blinking highlighted file. List will scroll up/down when reaching top/bottom. Right toggle can be used to quickly shift list one page up/down at a time for reading large number of entries.

-Last loaded file will remain highlighted in list as reference until extension type in file menu is changed.

-BMP and BUF file selection will advance for quick loading in sequence with left toggle center or previous with right toggle center as with original number system.

-Before saving, edit filename with left toggle to change characters, right toggle to select next/previous character. Press center left toggle to save. Config files can be saved with button 3.

-Characters available are, in sequence: misc symbols > 9-0 > space > A-Z with spaces as default. Short press right toggle center button to reset selected character to space. Long press right toggle center button to reset all characters to spaces.

-Spaces can be left in name, the program will change mid-name spaces to underscores and remove all leading spaces to be compatible with DOS file naming.

-Fully compatible with previous file numbering system, old numbering system still functional.

-Config files selected from list will have name displayed in a vertical row at top left of screen, except in spectrograph and MAP modes. Numbered config files loaded in previous manner will only show number in original place in notification area under Ch C menu.

-Boot config 0 will not be displayed in list, as this is actually a WPT file. Save/reload this in original fashion since it uses the device’s serial number as file name.

-If files are named from a Windows PC, any file name containing mid-name spaces or of greater length than 8 chars will write an additional long filename entry in the Quad’s file table, and while these will be displayed in a Windows machine, only the DOS version with show in the program. These are abbreviated and end with a tilde “~” which will be displayed as a dot in the list, followed by a number. Any other allowed filename characters not in the Quad’s character table will also be displayed as a dot.

Please be aware that the program size for both versions has grown to a point where if loaded onto the wrong hardware version, it will attempt to overwrite some part of the system area. Specifically, if V6.2 is loaded onto pre-HW 2.81 devices, it will overwrite the FPGA, which will require it to be reloaded. If V5.3 is loaded onto a HW 2.81 or later device, it will attempt to overwrite some system code on the second half of the ROM. While there appears to be some measure in the DFU to prevent this from happening, I can’t guaranty this for all DFU versions, and could require the DFU to be reloaded via internal headers. MAKE SURE YOU ARE USING THE CORRECT VERSION FOR YOUR HARDWARE!





The attachments below don’t seem to work any more - download from the above links.


I have tried to update but when restarting the dso, the application version is still 6.1,

what can I do to solve this problem even the application is well loaded?

My DSO is :

SYS 1.64

HW 2.81

Thank you for your help in advance.

Something must have gone wrong with the way it was updated. Just to make sure, I just downloaded V6.2 I posted from the forum and loaded it onto a device with the same HW and SYS version as yours which I reverted to 6.1, and it updated fine…

There have been some issues with later versions on Windows having trouble with copying these files to the DFU. If you have one available, maybe try another computer. There are a number of recent posts in this thread that deal with this problem. Make sure you extract the files with Winzip and not from a Windows folder created from the Zip archive. Look for the RDY file after uploading.

I have had problems myself with what I believe may be dirty USB contacts, sometimes after uploading, with a unit that has been sitting around for a while, the DFU volume does not reappear. After shutting the device down, working the USB connector in and out a few times and reloading, it then works fine. Haven’t tried to start the device before re-uploading when that happens, just assumed the upload failed, so I don’t know if it would have just started the previous version or not…

Thank you very much for your fast answer, I have used WinRar to extract the archive and after that every thing is OK.

Now the revision is 6.2 as expected.

I will investigate this new version and will report the result.

Thanks again for your help.