hello bobtidey and Wildcat,
Thanks for your help. The bug is fixed with the new software.
Thank you!
For anyone interested, here’s an update to the revision I posted last year. A number of functions have been added and much of the code has been updated. Some of the added functions include: Cursor selection for all meters to enable measuring different parts of a waveform, on screen chart for button functions, jitter stabilization for the fastest timebases, additional configurable large meters, A&B mode to enable triggering on 2 different waveforms simultaneously, ability to save/recall 10 different configurations files, trigger holdoff for timebases up to 1Ms/div, hold mode for Vmax and Vmin and selective updating to prevent waveform disturbances on the slower timebases while changing X,Y positions, cursors or menu items. Meter accuracy and calibration has also been improved, including compensation for battery voltage changes affecting DC offsets and accuracy, quantization error compensation for the analog channels to improve resolution of frequency and period meters, summing of all data transfers included in meter readouts rather than just using the last frame and the ability to compensate for the main CPU clock frequency if a frequency counter is available.
See Readme.TXT for complete list and further info.
Using V1 to read frequency of horizontal NTSC video signal sync pulses in
cursor defined meter function while simultaneously triggering on sine wave
of unrelated frequency in A&B trigger mode.
Using T1 and T2 to read color burst parameters of NTSC video signal in cursor
defined meter function.
Thanks Wildcat for that very comprehensive set of improvements.
Great Update - thank you very much!
I am new, and a little confused about what is the latest community edition software.
We have 1.29 that is posted in the beginning of this thread.
Then we have Wildcat 2 that is based on 1.7. But, is a lot newer.
Does Wildcat version have all the fixes/features of 1.29 ?
I think it has most of the fixes but the feature set is not exactly the same because they are based on different branches. So the Wildcat version has the extra stuff in he posted, but it doesn’t have everything in. For example, I don’t think it has the FFT spectrum display.
At the moment I run the Wildcat version.
I am thinking of getting a second DSO203 but it looks like most come with the 8MB flash disk now. Even the one’s on Amazon labelled as 2MB apparently seem to come with 8MB.
I know the 8MB one’s need a different SYS (1_6) to run the different flash whereas the Community App normally uses SYS25116.
I have started trying to check out what the potential differences are between these 2 SYSs as I’d be reluctant to get a 2nd Model that didn’t allow running these other versions. So far I can see differences in the Ext_Flash code and the FAT12 and 2FAT12 modules which is understandable given the differences in the flash operation, page sizes etc.
What I don’t know at the moment is how these affect the operation of the APP.
I have a number of questions for anybody else who is looking into this.
- Has anybody tried running the Community APP under the 8MB compatible SYS_1.6 with a 8MB model? Did it work OK? If yes, then that’s great and the other questions are not important.
- Does anybody know what bits of the APP may be affected by change in EXT_Flash calls (buffer sizes etc.)
- Does anybody know what was changed in the SYS25116 originally to make it more suitable for the Community App over the regular stock as originally supplied? I do have stock SYS1.50 source, so I guess I could compare that against SYS25116 source.
- Assuming something needs to be changed to make it compatible, I guess the best way forward is to base it on SYS1_6 with full 8MB capability, make any small adjustments to the SYS (equivalent to anything done in SYS25116), and adjust the APP if there are any specific buffer or call dependencies. I know how to build the APP, but I have never done the SYS and the supplied source looks as though it is compiled differently. Anybody have any experience of building the SYS?
********************* Update***************************
Investigating differences between SYS 1.50, 25116 and 1.60 a bit further
Apart from the actual extflash code differences which I think are internal to the SYS and probably don’t affect the App I found the following main differences between 25116 and the 1.50 / 1.60 variants
a) Few cosmetic changes regarding output of hardware and version text
b) SYS 1.60 adds a new FIFO control constant. What was FIFO_START is now called FIFO_READY and a new FIFO_START is defined with a new number. FIFO_START as defined in the APP BIOS retains the same number (2) and will still behave the same even though it now invokes the FIFO_READY function in SYS.
c) The Config in SYS25116 sets up the DMA_CNDTR4 and TIM7_PSC registers differently to 1.5/1.6. That seems to be something to do with DMA refresh but I don’t think directly affects the App code
d) SYS25116 has an extra system parameter ANALOG_PSC which sets the TIM7_PSC (Prescale value). This one is interesting as it does seem to be one of the main dependencies of the normal Community App on SYS25116. It is used in the signal waveform generator piece of code. However, the Wildcat version comments these lines out and specifically says these would have required the SYS25116 version to work. So I think that means the Wildcat version doesn’t use this whereas the normal Community app does try to set this. The Wildcat version effectively uses the same prescale value for all frequencies which has a small effect on limiting the top frequency which seems a small price to pay to avoid using a special SYS.
With that I think there is at least a decent chance that the Wildcat version will work with SYS1.60 and 8MB Flash. I also suspect the standard community one would mostly function as the ANALOG_PSC call will just be ignored with maybe a change in signal gen function and some frequencies incorrect.
I’d therefore be very interested in anybody with a 8MB version who has tried one of these Apps.
The other thing worth noting here is that SYS 1.60 seemed to start out being written to support either 2MB or 8MB with auto-detection but then got hard coded in places to 8MB.
Now thats bad programming. that should be sortet out!
I wish i could help, but my programming skills are kinda low.
Maybe it would be possible to switch the community app to use AlterBIOS fatfs calls instead? I have already implemented support for 8MB devices there.
The 8MB version requires 4kB sector buffers, so that might cause some trouble. Especially if you are short on memory already.
Using AlterBios sounds like a good long term plan. But I still think this might work in the short term by just using Community App with SYS 1.6. The signal generator of the regular Community App would be screwed up but that could be fixed on the app side by using the Wildcat approach.
Hi there,
I got the last version from ebay, 2.72 too, HW v2.7b and tried many things to get a better app because of really bad accuracy regarding tensions. (zero and Abs values)
The selling brand is different than seedstudio -it wasn’t available here when I purchased it.
I tried the community app with all the resource required : it worked, but can’t save parameters (was discovering 8m Flash memory)
I reinstalled the SYS_B160.hex system, and the app had problems (graphical and functional, sorry I didn’t remind exactly what, but i can make another test).
So I tried Gabonator version, with the 2.61 fgpa but kept my Sys_B160 fmw, and it worked partially, I can save parameters and (better) calibration settings, but failed to save data (bmp, dat, csv) and corrupts seriously the memory if I try.
So, actually I have it on slot 1, reinstalled my original V110 app on slot 3 working on a mixed system :
Fgpa 2.61, SysB160, gabonator (can’t save bmp), and original app V110 (not community) which works well despite the bad accuracy.
I tried altbios04 : Can’t install it, tried altbios03 : memory chip corrupted.
It costed me a lot of time to calibrate these applications, but Gabonator gave me really better results.
Really sad I can’t use the community app, I saw in the release notes a better calibration handling and all others good stuffs…
Can I help more ?
Thanks.
I forgot to mention Quadpawn to jpa: (great work really impressive, thanks a lot!)
It works, but the process to install it is not conventionnal, because when I drop the hex file on the virtual disk, I don’ t get another instance with the .rdy extension, it just became busy while copying the file.
But If I power off/on, the application is ok with my configuration, it is able to write calibration.
Hello all,
I just bought a DSO and right now I am really happy with it. The finishing and the hardware is very great for such a low price.
Anyway, I would like to participate in the software developpment, I really like to code and this project is challenging.
My questions are, could anyone summarize to me which firmware/APP/FPGA are the ‘best’ and the most used by developpers here ?
From my reading on this forum, which is from my side a bit messy, I believe that the best firmware is the one from Marco => Where can I find the latest source code ? I am not sure if the one I got is the right one.
For the APP it seems this one from Gabonator is the one to use. Right ?
What about the FPGA ?
Thanks a lot everyone !
Flo
Flo: It seems that we are trying to figure out what can be ran on the new 8MB 2.72HW units. (BTW: Don’t go above 35V)
fflan: I tried to install QuadPawn as well. My setup is not modified at all: Stock everything from the store.
It has HW version 2.72, SYS 1.60, App (PLUS A1) 1.10.
I held button 4, starting copying PAWN_011.HEX. It set for a while and then said that USB Drive disconnected.
I turned it on and off and QuadPawn came up. So, so far, same results as you (no .rdy file)
Howewer, I don’t see calibration.ini file after running the Calibration app.
Looking at the Calibration app, save_calibration() should create this file. Do you have it ?
EDIT: I see CALIBRAT.INI now. I needed to unplug the cable and replug it.
In early November, Petteri Aimonen, made a few changes related to 8M devices. Some of the comments were:
“Upgrade to AlterBIOS 0.4 to make it work on 8M devices.” and “Add support for 8M flash chip”
So, it is strange that you can’t get this bios to work. Although, I didn’t try.
Yes, pawn is ok for me too !
I have two files : CALIB.DAT and CALIBRAT.INI (which I saved elsewhere)
I think they are for APP110 and Pawn when I have it (APP110 is now installed on slot 3 and it uses slot 3/4, so I don’t have pawn working anymore : not surprising.)
My problem is actually with SYS1.6, alterbios seems to not install anything. (How to be sure it is installed ?)
I have tried Sys1.52 and the community app wasn’t saving anything…
I don’t remember if I tried at this moment AlterBios, but I think I did.
Pehaps the good combination is the older SYS, alterbios0.4 and the community app : to be tried…
My other concern is gabonator, really good and working with sys 1.6 (I can save parameters, but others files corrupts the memory, and I lose calibration, and because It is not stored on the flash memory, I can’t restore it.
<LINK_TEXT text=“http://www.seeedstudio.com/forum/viewto … 441#p18441”>http://www.seeedstudio.com/forum/viewtopic.php?p=18441#p18441</LINK_TEXT>
An ideal configuration would be (for me) : Gabonator and the community APP fully working, with or without Pawn
OR
Gabonator and Pawn
OR
Community APP and Pawn
The main fault on the origina APP is tension and zero V accuracy, ridiculous…and well adressed by the two others;…
Thanks for your help
Thanks to recent posters for running the tests on the 8MB hardware which do show that there are problems with running the alternative software on this model. I, for one, am keen we get this resolved as I don’t want to get stuck with the supplied software on the second 8MB model I am getting when my existing 2MB model can run all the alternate apps without problems.
Here is my attempt at a summary of software sources to be considered. Please correct, add as needed.
There are 4 main apps plus the Pawn scripting apps.
Standard APP as supplied by manufacturer
Gabonator, Different UI approach, source at https://github.com/gabonator/DS203
Community App, many improvements, source at https://github.com/pmos69/dso203_gcc
Wildcat - Branch of Community App, not all features but some nice improvements, Zip of code is in post here <LINK_TEXT text=“http://www.seeedstudio.com/forum/viewto … cat#p18218”>http://www.seeedstudio.com/forum/viewtopic.php?f=26&t=2957&p=18218&hilit=Wildcat#p18218</LINK_TEXT>
Then there are 3 main current versions of SYS
SYS1.50 as supplied by manufacturer 2MB support, can be used with Wildcat, source at https://github.com/Seeed-Studio/DSOQuad_SourceCode
SYS252116 small modification to standard SYS (2MB) to support more signal gen range, used by Community App, source is in this post <LINK_TEXT text=“http://www.seeedstudio.com/forum/viewto … 116#p16851”>http://www.seeedstudio.com/forum/viewtopic.php?f=26&t=2957&p=16851&hilit=SYS25116#p16851</LINK_TEXT> although it is labelled as 1.6
SYS1.6 as supplied by manufacturer and supports only 8MB, source is <LINK_TEXT text=“http://kapsi.fi/~jpa/stuff/other/dso_qu … ources.rar”>http://kapsi.fi/~jpa/stuff/other/dso_quad_8M_version_sources.rar</LINK_TEXT>
SYS1.6 and 1.5 mainly differ around the ExtFlash support. Logically the API looks the same which is why I thought that the alternate apps might have worked. My current theory is that because the 1.6 SYS has much bigger Flash buffers then there may be a problem with the RAM memory footprint of the SYS and the APPs overlapping because of that. I don’t know at the moment what sets the memory base addresses of the app and the SYS to see if the apps can be adjusted to avoid any conflict.
It is possible that Alterbios could be used with the older SYS but I can’t find any good explanation of Alterbios operation other than it can take over the standard Bios calls, but there was a comment that the App also has to be adjusted to use this.
And which of these will work with latest Hardware revision 2.72 and 8M flash? The list itself is not new, we need to know which of these support the hardware, or are working on supporting it.
@bobtidey : Good summarize…
I’ve seen a source code managing the two memory chipset, but I don’t remember which app it was.
I have just tried that (the community pack) :
SYS 1.50 1.6 from Marco Sinatti ( http://pmos69.net/dso203/SYS25116.hex )
APP_G251.hex
FPGA 2.61
The device is recognized like having a 2Mo, you can’t format, you can’t access or save, but the app starts.
Alterbios 0.4 does not install (or I don’t know how, because it kept copying for ever)
So actually we need Sys1.6 on this device.
I put SYS_B160 and restart with community app : “parameter record not found” before starting.
But now I can format and I can save calibration parameters (dummy test)
I get a file 9222D88A.WPT.
I succeed to save ONE BMP of 47k and ONE BUF, but after that, the next files are 0 ko, I get ERR with all the next trials.
After a new quick format I can save another bitmap (you must disconnect/reconnect usb to see it)
In either case, the bitmap is readable but not… nice, for the less…
I can’t access to the timing under AUTO triggering : the field is empty
I can’t access to frequency above 50khz in square mode…
…
So, it’s useless like that…
I can try the Wildcat version under Sys1.6, but I’m sceptic. Edit: Confirmed, it is worse, when saving the second bitmap, it crashes.
@rapp.chr : read my previous post, APP110 (original for v2.7, the only one good for saving bmp etc), gabonator (with the restiction of saving wav, bmp…) and quadpawn are working with system 1.6 on my quad.
edit : Forgot to mention the dfu version v3.12c, and I miss a logo (grey frame)
Thanks, I must have missed that
Hello everyone,
Thanks for the summarize, it helps!
I am looking at the source code, and I think I will work on the SYS to start with the basics, and after on the community APP. The Gabonator one does not seem to need any improvment .
For the 2MB/8MB story, I guess you mean the external flash ? I saw on the schematic that the ext flash is a 16MB. Even if I guess few MB are used to load the FPGA (normally less than 1mb should be enough), to what needs are the left ones?
However I saw with disappointment that the JTAG port on the STM32 is used by other stuff and is not available for debug . I was expecting to debug it using an Rlink and Ride (similar to ST link).
Thanks!