If you have a problem or need to report a bug please email : support@dsprobotics.com
There are 3 sections to this support area:
DOWNLOADS: access to product manuals, support files and drivers
HELP & INFORMATION: tutorials and example files for learning or finding pre-made modules for your projects
USER FORUMS: meet with other users and exchange ideas, you can also get help and assistance here
NEW REGISTRATIONS - please contact us if you wish to register on the forum
Users are reminded of the forum rules they sign up to which prohibits any activity that violates any laws including posting material covered by copyright
Debugging Tool V006
19 posts
• Page 1 of 2 • 1, 2
Debugging Tool V006
Seasons greetings, everyone.
Couldn't let the Xmas holidays go by without posting up a little present for you all - so here's a little tool I've been working on that I hope you'll find useful.
You know that thing - you're trying to debug a schematic, so you put in a load of little boxes so that you can read some values. But they're all on different levels of the schematic, so you can't see them just at the critical moment, and miss the very event you were looking out for as you stumbled in and out of nested. sub-nested, sub-sub-nested modules.
GRrrrr....
So how about a little window that you can stick elsewhere on your desktop that can show you your 'test probe' values no matter where you are looking in the schematic....
DOWNLOAD:
NB) Before downloading, you might want to read THIS.... If you need the ability to monitor running vst or exe exports, this is still the version to use - but it is not 100% reliable. A better version, but only for monitoring schematics within the FS editor, is on its way soon.
There are five modules included...
1) Debugger Window. Export this as an .exe file, then open the .exe and stick it somewhere visible whenever you need to do some de-bugging.
2) Debug Probe (green). Stick one of these anywhere in your schematic that you want to test a 'green' value. Don't worry about the string input; most other data types will automatically convert to strings, so other types aren't really needed. Each one has a 'Tag' box where you can name it for easy identification - individual probes are always 'unique' even if the names are the same, and you can rename at any time. The probe output is usually just a copy of the input, but you can also type values in the main Debug application and have them sent as 'test signals'. You can use just the module's input or output, or use both together.
3) Debug Probe (stream). Just the same for streams, except there's a little on/off LED, and a setting for how fast you want the stream values to be sampled.
4) Debug Probe (MIDI) - sends a text description of incoming MIDI messages. Extra data (e.g. velocity, channel) can be seen if you examine a message in the 'Value' viewer window. To send midi from the main application use either a comma separated list 'status,channel,data1,data2', or enter a SysEx hex string (including the F0 and F7).
The Debug .exe application starts a network server, to which each sender connects - so that data can be sent regardless of position in the schematic.
5) Debug Probe (Ruby) - this acts as a 'gateway' for other Ruby instances to communicate with the de-bugger. It adds a new Ruby module called "Debug" with methods for outputting values to the Debug events list, and for linking a Ruby instance to the 'Ruby Console' from where you can execute commands in the context of any chosen 'linked' Ruby editor.
The main app' also has a couple of other tricks up its sleeve...
CURRENT VALUES window
- The 'Current Values' area shows the values of all currently monitored 'senders'.
- And a count of how many events have been received - clear either main view window to reset the counts to zero.
- Click the labels bar to clear the list and start afresh.
- Click tag names in the list to select them. CTRL and SHIFT can be used for regular windows style multiple selections. The Events list (see below), will now filter the incoming events to show only the selected values.
- R-click the tag names area to remove the selection, and see incoming events without filtering.
- The latest incoming value is still shown in the 'Current Values' even for filtered out data.
- Click a value in the 'Values' column to enter a new value, which will be sent to the probes output connector.
EVENTS window
- Shows incoming events, timetamped with the system time when they happened.
- Click the label bar to clear the current data.
- Some values aren't going to fit inside the little columns (e.g. arrays, long strings). No problem - click a value to highlight it, and it will appear in all its glory within the large 'Value' window.
- Max.events sets how far back you want data to be remembered.
RUBY CONSOLE
- If you have a Ruby probe module inside your schematic, you can then link any Ruby editor to the console using the method "Debug.link('TagName',@this)". A reference to this Ruby instance will then appear on the Console's drop down list of Ruby ID's. You can now enter a short chunk of Ruby code into the upper of the two Ruby console windows. The code will be executed in the context of the chosen linked Ruby instance, and any return values or error messages are directed to the lower console window.
For example - typing "output 0,'Hello'" and sending this to a linked Ruby instance will output 'Hello' on the first output of the targeted Ruby editor.
I've tested on both my machines without any problems - though bear in mind that your firewall settings etc. could disrupt the network link - and I have very little experience with these kind of connections!! If you get a pop-up box warning you about opening the connection, click to allow the connection and this should be remembered for next time.
A small file and folder is saved inside your 'Application Data' folder - this is used to store the IP address allocated to the main program, so that the senders are able to find the correct IP and port addresses.
All bug reports and suggestions for improvements will be gratefully received - just post a reply to this thread, or PM me.
Best Wishes
Trog Luddite
Couldn't let the Xmas holidays go by without posting up a little present for you all - so here's a little tool I've been working on that I hope you'll find useful.
You know that thing - you're trying to debug a schematic, so you put in a load of little boxes so that you can read some values. But they're all on different levels of the schematic, so you can't see them just at the critical moment, and miss the very event you were looking out for as you stumbled in and out of nested. sub-nested, sub-sub-nested modules.
GRrrrr....
So how about a little window that you can stick elsewhere on your desktop that can show you your 'test probe' values no matter where you are looking in the schematic....
DOWNLOAD:
NB) Before downloading, you might want to read THIS.... If you need the ability to monitor running vst or exe exports, this is still the version to use - but it is not 100% reliable. A better version, but only for monitoring schematics within the FS editor, is on its way soon.
There are five modules included...
1) Debugger Window. Export this as an .exe file, then open the .exe and stick it somewhere visible whenever you need to do some de-bugging.
2) Debug Probe (green). Stick one of these anywhere in your schematic that you want to test a 'green' value. Don't worry about the string input; most other data types will automatically convert to strings, so other types aren't really needed. Each one has a 'Tag' box where you can name it for easy identification - individual probes are always 'unique' even if the names are the same, and you can rename at any time. The probe output is usually just a copy of the input, but you can also type values in the main Debug application and have them sent as 'test signals'. You can use just the module's input or output, or use both together.
3) Debug Probe (stream). Just the same for streams, except there's a little on/off LED, and a setting for how fast you want the stream values to be sampled.
4) Debug Probe (MIDI) - sends a text description of incoming MIDI messages. Extra data (e.g. velocity, channel) can be seen if you examine a message in the 'Value' viewer window. To send midi from the main application use either a comma separated list 'status,channel,data1,data2', or enter a SysEx hex string (including the F0 and F7).
The Debug .exe application starts a network server, to which each sender connects - so that data can be sent regardless of position in the schematic.
5) Debug Probe (Ruby) - this acts as a 'gateway' for other Ruby instances to communicate with the de-bugger. It adds a new Ruby module called "Debug" with methods for outputting values to the Debug events list, and for linking a Ruby instance to the 'Ruby Console' from where you can execute commands in the context of any chosen 'linked' Ruby editor.
The main app' also has a couple of other tricks up its sleeve...
CURRENT VALUES window
- The 'Current Values' area shows the values of all currently monitored 'senders'.
- And a count of how many events have been received - clear either main view window to reset the counts to zero.
- Click the labels bar to clear the list and start afresh.
- Click tag names in the list to select them. CTRL and SHIFT can be used for regular windows style multiple selections. The Events list (see below), will now filter the incoming events to show only the selected values.
- R-click the tag names area to remove the selection, and see incoming events without filtering.
- The latest incoming value is still shown in the 'Current Values' even for filtered out data.
- Click a value in the 'Values' column to enter a new value, which will be sent to the probes output connector.
EVENTS window
- Shows incoming events, timetamped with the system time when they happened.
- Click the label bar to clear the current data.
- Some values aren't going to fit inside the little columns (e.g. arrays, long strings). No problem - click a value to highlight it, and it will appear in all its glory within the large 'Value' window.
- Max.events sets how far back you want data to be remembered.
RUBY CONSOLE
- If you have a Ruby probe module inside your schematic, you can then link any Ruby editor to the console using the method "Debug.link('TagName',@this)". A reference to this Ruby instance will then appear on the Console's drop down list of Ruby ID's. You can now enter a short chunk of Ruby code into the upper of the two Ruby console windows. The code will be executed in the context of the chosen linked Ruby instance, and any return values or error messages are directed to the lower console window.
For example - typing "output 0,'Hello'" and sending this to a linked Ruby instance will output 'Hello' on the first output of the targeted Ruby editor.
I've tested on both my machines without any problems - though bear in mind that your firewall settings etc. could disrupt the network link - and I have very little experience with these kind of connections!! If you get a pop-up box warning you about opening the connection, click to allow the connection and this should be remembered for next time.
A small file and folder is saved inside your 'Application Data' folder - this is used to store the IP address allocated to the main program, so that the senders are able to find the correct IP and port addresses.
All bug reports and suggestions for improvements will be gratefully received - just post a reply to this thread, or PM me.
Best Wishes
Trog Luddite
Last edited by trogluddite on Fri Dec 28, 2012 5:04 pm, edited 4 times in total.
All schematics/modules I post are free for all to use - but a credit is always polite!
Don't stagnate, mutate to create!
Don't stagnate, mutate to create!
-
trogluddite - Posts: 1730
- Joined: Fri Oct 22, 2010 12:46 am
- Location: Yorkshire, UK
Re: Xmas Prezzie - Debugging Tool
NetXmas to you !!! Dubug
-
digitalwhitebyte - Posts: 106
- Joined: Sat Jul 31, 2010 10:20 am
Re: Xmas Prezzie - Debugging Tool
Cheers DWB, whatever it was that you meant!
Next version now available in the top post.
- Trigger counters for each variable. Clear either main window to reset the counts to zero.
- MIDI sender module that gives a text description of incoming MIDI messages. More detailed info for each message can be seen if you select an event for viewing in the 'Value' window.
Next version now available in the top post.
- Trigger counters for each variable. Clear either main window to reset the counts to zero.
- MIDI sender module that gives a text description of incoming MIDI messages. More detailed info for each message can be seen if you select an event for viewing in the 'Value' window.
All schematics/modules I post are free for all to use - but a credit is always polite!
Don't stagnate, mutate to create!
Don't stagnate, mutate to create!
-
trogluddite - Posts: 1730
- Joined: Fri Oct 22, 2010 12:46 am
- Location: Yorkshire, UK
Re: Xmas Prezzie - Debugging Tool
PS) Just tested....
If you leave the 'senders' in your schematic when you export, they continue working - so you can still use the main debug application to view your 'probe' data while you are using your design in context.
Make sure to delete them before you share your final export with the world - the unusual network activity might scare people!
If you leave the 'senders' in your schematic when you export, they continue working - so you can still use the main debug application to view your 'probe' data while you are using your design in context.
Make sure to delete them before you share your final export with the world - the unusual network activity might scare people!
All schematics/modules I post are free for all to use - but a credit is always polite!
Don't stagnate, mutate to create!
Don't stagnate, mutate to create!
-
trogluddite - Posts: 1730
- Joined: Fri Oct 22, 2010 12:46 am
- Location: Yorkshire, UK
Re: Xmas Prezzie - Debugging Tool
trogluddite wrote:Seasons greetings, everyone.
Couldn't let the Xmas holidays go by without posting up a little present for you all - so here's a little tool I've been working on that I hope you'll find useful.
Hey, that's great. I started something similar, but never found the time to make it nice and sexy.
Thanks for saving my time
Have a nice Christmas time.
Tom
- TomC
- Posts: 13
- Joined: Fri Jul 16, 2010 10:38 pm
Re: Xmas Prezzie - Debugging Tool
trogluddite wrote:Make sure to delete them before you share your final export with the world - the unusual network activity might scare people!
Just add a global 'Off' switch to disable them.
Tom
- TomC
- Posts: 13
- Joined: Fri Jul 16, 2010 10:38 pm
Re: Xmas Prezzie - Debugging Tool
Merry XMas Trog,
awesome work - again...
This is the new Analysis tool 4 me/us...
Dunno where u get the time 4 this perfect tool(s).
Best wishes
Walter
awesome work - again...
This is the new Analysis tool 4 me/us...
Dunno where u get the time 4 this perfect tool(s).
Best wishes
Walter
-
Walter Sommerfeld - Posts: 249
- Joined: Wed Jul 14, 2010 6:00 pm
- Location: HH - Made in Germany
Re: Xmas Prezzie - Debugging Tool
@trog: After I recovered my mind, from a party night alcoholic.
DWB_MOD
Proposes the use of Broadcast IP and udp data type.
The broadcast ip ensure data is propagate to all local network.
The udp type is preferable for data that does not need to be verified.
This can also make the module "IP store", an extra option only for debugging,
but not necessary for the senders, to guarantee for future connections.
Happy Christmas to all !!!
DWB_MOD
Proposes the use of Broadcast IP and udp data type.
The broadcast ip ensure data is propagate to all local network.
The udp type is preferable for data that does not need to be verified.
This can also make the module "IP store", an extra option only for debugging,
but not necessary for the senders, to guarantee for future connections.
Happy Christmas to all !!!
- Attachments
-
- Debug Window 003_DWB_MOD_Proposing_Broadcast_IP_&_UDP.fsm
- (171.79 KiB) Downloaded 1121 times
-
digitalwhitebyte - Posts: 106
- Joined: Sat Jul 31, 2010 10:20 am
Re: Xmas Prezzie - Debugging Tool
Thanks all!
@DWB) Aha, yes I am showing my lack of knowledge about network setup
Will look into this suggestion some more, to make the next version more simple to use; many thanks.
@DWB) Aha, yes I am showing my lack of knowledge about network setup
Will look into this suggestion some more, to make the next version more simple to use; many thanks.
All schematics/modules I post are free for all to use - but a credit is always polite!
Don't stagnate, mutate to create!
Don't stagnate, mutate to create!
-
trogluddite - Posts: 1730
- Joined: Fri Oct 22, 2010 12:46 am
- Location: Yorkshire, UK
19 posts
• Page 1 of 2 • 1, 2
Who is online
Users browsing this forum: No registered users and 102 guests