Easy programming for the DSO Quad

Moderators: lily.li, violet, jeremy882, crail.lyu969

jpa
Elementary-2
Elementary-2
Posts: 215
Joined: Wed Nov 02, 2011 4:06 am
Are you a staff member of seeedstudio?: no
Which products/projects are your favorite?: DSO Quad

Easy programming for the DSO Quad

Post by jpa » Mon May 07, 2012 7:29 pm

I have made a scripting language environment for the DSO Quad:
http://essentialscrap.com/dsoquad/pawn.html

Image

There is something for the non-programmers also; the example programs include a servo tester, voltage meter and a new version of the frequency response app.

tormod
Elementary-2
Elementary-2
Posts: 271
Joined: Mon Oct 18, 2010 1:18 am

Re: Easy programming for the DSO Quad

Post by tormod » Tue May 08, 2012 5:42 am

That's the coolest thing I ever saw on a DSO! I wonder if it could be ported to the DSO Nano as well, although RAM is more tight there. And the sampling HW is completely different, but I still think it would be possible to make some compatible applets. And the Nano is not limited to a 32k slot for its runtime library...

jpa
Elementary-2
Elementary-2
Posts: 215
Joined: Wed Nov 02, 2011 4:06 am
Are you a staff member of seeedstudio?: no
Which products/projects are your favorite?: DSO Quad

Re: Easy programming for the DSO Quad

Post by jpa » Tue May 08, 2012 2:35 pm

tormod wrote:That's the coolest thing I ever saw on a DSO! I wonder if it could be ported to the DSO Nano as well, although RAM is more tight there. And the sampling HW is completely different, but I still think it would be possible to make some compatible applets. And the Nano is not limited to a 32k slot for its runtime library...
Yeah, I have been thinking about that also. I see no reason why, it would just have a few limitations for the applications (like wavein_samplerate(72000000) will fail etc.), but simple applications like voltage meter and similar should be portable.

jaqb
Pre-kindergarten
Pre-kindergarten
Posts: 9
Joined: Sun Oct 02, 2011 5:16 pm
Are you a staff member of seeedstudio?: no
Which products/projects are your favorite?: DSO Quad

Re: Easy programming for the DSO Quad

Post by jaqb » Fri May 11, 2012 6:31 am

Great job!
I've found minor bug in calibtarion app. Do You want to be informed about that? (and where?)

jpa
Elementary-2
Elementary-2
Posts: 215
Joined: Wed Nov 02, 2011 4:06 am
Are you a staff member of seeedstudio?: no
Which products/projects are your favorite?: DSO Quad

Re: Easy programming for the DSO Quad

Post by jpa » Fri May 11, 2012 1:42 pm

jaqb wrote:Great job!
I've found minor bug in calibtarion app. Do You want to be informed about that? (and where?)
Here: https://github.com/PetteriAimonen/QuadPawn/issues

pmos69
Elementary-1
Elementary-1
Posts: 134
Joined: Fri Feb 17, 2012 10:51 am
Are you a staff member of seeedstudio?: no
Which products/projects are your favorite?: dso203

Re: Easy programming for the DSO Quad

Post by pmos69 » Sun May 13, 2012 3:29 am

Brilliant.
Thank you.
Image

firehopper
Pre-kindergarten
Pre-kindergarten
Posts: 3
Joined: Mon May 07, 2012 10:36 pm
Are you a staff member of seeedstudio?: no
Which products/projects are your favorite?: dso quad

Re: Easy programming for the DSO Quad

Post by firehopper » Sun May 13, 2012 7:10 am

I love pawn :) keep up the good work :)

bobtidey
Elementary-1
Elementary-1
Posts: 174
Joined: Sun May 13, 2012 9:39 am
Are you a staff member of seeedstudio?: no
Which products/projects are your favorite?: DSO Quad

Re: Easy programming for the DSO Quad

Post by bobtidey » Sun May 13, 2012 9:45 am

I have just got my DSO Quad and the ability to load new firmware and functionality was one of the major factors why I chose this. The hardware with the metallic case I got actually performs very well and seems to calibrate well and have good bandwidth.

The Pawn scripting method for enhancing further is definitely an area I will be exploring.

paf
Pre-kindergarten
Pre-kindergarten
Posts: 40
Joined: Tue Jan 03, 2012 4:12 am
Are you a staff member of seeedstudio?: no
Which products/projects are your favorite?: DSO Quad

Re: Easy programming for the DSO Quad

Post by paf » Mon May 14, 2012 3:15 pm

Petteri, your development is great, thank you!

A small bug and a little technical question:
- on my DSO203, the battery symbol is not displayed correctly (the contents of the battery is shifted half out of the shelf)
- why do we have to push two keys to quit an application (one to close and one to quit)?

Is there anywhere a description about how the whole thing works:
- the programs reside on the flash memory and remain only there?
- what is the limitation on the number of programs on flash, only flash capacity (which is how big)?
- is a program completely loaded in RAM at runtime? is it compiled, interpreted, or does it use something like p-code which is then interpreted by the PAWN_APP.HEX?
- what is the limitation on the size of a single program?
- is there somewhere a list of all functions calls and all parameters which can be used?

Regards
Patrick

bobtidey
Elementary-1
Elementary-1
Posts: 174
Joined: Sun May 13, 2012 9:39 am
Are you a staff member of seeedstudio?: no
Which products/projects are your favorite?: DSO Quad

Re: Easy programming for the DSO Quad

Post by bobtidey » Tue May 15, 2012 7:50 am

This scripting add on is going to be great for the Quad. I've got my dev environment set up and have a few ideas to try out and will post further hopefully when I have progressed a bit more.

The next bit is just pure speculation to see what the longer term possibilities of this environment are.

I am running the Community main app which seems to take APP1 and a bit of APP2. I am wondering what the technical feasibility of integrating the PAWN environment into the same build with the idea of making it even easier to switch back and forth between them and even potentially allow PAWN scripts to work directly with data gathered from the main host app and enhance that further. I could imagine a loose integration where a key or menu item would allow switching between the two environments. I guess a tighter integration where a PAWN script could be running in parallel may be harder to achieve as the PAWN interpreter would need to be running at the same time as the main app. Apart from making it easier to add specialised measurement calculations, it might be possible to have scripts doing further management functions like battery monitoring.

A variant on this would be whether it would be feasible to create the environment where a PAWN front end gave similar functionality to the community scope app.

Post Reply