Is there a GCS that gives audio feedback on rate of climb?
Audio feedback of changing total energy (potential plus kinetic) would be better.
I would very much like to see this on HK GCS but HK is quite busy with other features already.
Is anyone else interested in this feature?
Thanks for the logfile.
I tested this on the desktop and the netbook. I am almost certain that the netbook does not have the capacity to run the vario. The instruments move correctly but the sound is very delayed.
I find it remarkable that the netbook can run google earth but fails to make beeps at the right time.
More processing power required.
Perhaps the problem is the multi-threading. I was noticing that the beeps were inconsistant and would stop while the inbound message was being parsed. So I split it out to another thread with just a timer, the beep API and some very simple math. But on a single processor computer this might not help....
Here's something to try, go into File, Settings, Instruments and turn off everything but Vertical Speed. Make sure that the "smoothing" checkboxes are unchecked. Then go to the serial tab on the main screen and change the rates to None for everything but GPS. Try changing that to somewhere between 1 and 3. Soo if it has any better performance. I'm just wondering if less drawing and fewer messages will make it work better.
I tried your suggestion. It was not noticeably improved.
I tried turning off google earth tracking and shrinking the view to smallest possible. When the GE view is shrunk, GE zooms way out into space to show a tiny earth in space. Minimal processing power required for this view.
For this setup the response time was improved but still not usable.
Can you increase the thread priority?
Performance on the desktop is now excellent.
Performance on the netbook is slightly improved but still not smooth enough.
Win7 is reporting high CPU use from GE. Maybe a no GE option is the only way for single core atom netbooks to do this.
Can you make sure that the Hz in File, Settings, Google Earth is set to 1Hz? Also, I'm working on the HK GCS - Pro version which will offline maps which I'm hoping will be far less overhead for the processor.
The netbook was set to 1Hz.
The Core2 duo 2GHz machine ran a better with delay 1-2 seconds from the vertical rate meter.
Offline version sounds promising.
Is it possible to remove GE completely or is some other part of the system dependent on it?
I can't help the feeling that there should be a lower resource way to make sound. Maybe a constant tone at 1Hz update would take less resources than trying to modulate speaker beeps.
DirectSound allows you to modulate the frequency that a sound buffer is played at. Maybe little wav chirp sounds that are repeated at varying frequency. Different chirps could be used for rising and falling.
I can't say for sure about offline maps. I'm investigating 4 options.
The way I'm generating sounds is the lowest level there is. The Beep API call is the most basic function call you can have. I'll take a look at Direct Sound, but I don't know how it can be a lower level call than the Beep API....
What rates did you have selected on the Serial tab? Did you try setting GPS to 1 and the others to None?
Forgot to say, all rates set to lowest. GPS to 1Hz, GE 1Hz, others none.
Noticed another feature running the test file on the Core2 Duo laptop. The beeps were good until a limit was reached, then no sound apart from the odd random beep. The limit was around +-200ft/min. It felt like the system was overloaded at that point.
Directsound works pretty well with 3D games. It is not far from the functionality we are trying to achieve.
I was hoping that some kind of directsound hardware accelerator could take over the sound generation and repeating a sound buffer. This way it would only need an update at 1Hz, not at every beep.
I have been hacking away at DirectX, DirectSound, .NET framework, SlimDX and Xaudio2. It is a mess.
SlimDX seems to be taking over from DirectX. Documentation is almost none existent. There are samples in c# which need converting to VB. This works for VB 2008 and 2010 and maybe 2005.
SlimDX does not appear to have a working loop function so it does not help us at all. Additionally, the audio source needs to be re-done every time there is a frequency change. Much overhead!
DirectX has not worked for me at all on VB 2008 pro and 2010 express. There is a confusion of .NET versions and DirectX versions that I could not fit together.
Why is this so ridiculously difficult?
Starting to think that a PIC on a serial port could do this much easier.