Understanding G7KLJ 2.9.0.11 release

User avatar
Joerg
Posts: 20
Joined: Sat Oct 26, 2019 6:31 pm
Location: Germany / NRW
Contact:

Re: Understanding G7KLJ 2.9.0.11 release

Postby Joerg » Sat Apr 15, 2023 8:43 am

I had installed the version 2.9.0.11 on my computer and operate with it a Red Pitaya 16bit with protocol 2, is displayed under General H/W Select the firmware Ver. 2.7.0 ID: OrionMKII protocol 2 (v3.8).

As radio model I have set Anan-100D.

With the 2.9.0.11 Version I could set 386k sample rate and everything seems to run without problem. After that I installed version 2.9.0.12, now I can't set more than 192k sample rate because the higher ones are not offered anymore.

Also I tried as radio model Anan 7000 or 8000, also here I get in the selection for sample rate max. only 192k displayed.

Of course, it can also be due to the firmware on the Red Pitaya.

Maybe there is a hint where it could be.

73 Joerg, DD8JM
User avatar
NJ2US
Posts: 106
Joined: Sun Oct 29, 2017 9:39 pm

Re: Understanding G7KLJ 2.9.0.11 release

Postby NJ2US » Sat Apr 15, 2023 9:45 am

You must manually set to protocol 2, auto protocol detection doesn’t work. Remove check mark to cycle through the 3 choices.
User avatar
Joerg
Posts: 20
Joined: Sat Oct 26, 2019 6:31 pm
Location: Germany / NRW
Contact:

Re: Understanding G7KLJ 2.9.0.11 release

Postby Joerg » Sat Apr 15, 2023 10:10 am

NJ2US, thanks for the quick reply, unfortunately I can't select Protocoll 2, it then immediately jumps to auto detect, Protocol 1 I can select, but there is no check mark either, just a dash.

Greetings Jörg

PS I managed it now, if protocol 2 is in the window without check mark, I can enter 386k, but when I start Thetis the next time, the sampling rate is again max, 192k.

Don't get confused, when I took the pictures I didn't press the power button, that's why it says Hermes at the bottom, otherwise it says Orion when I pressed the power button.

2023-04-15_12h51_54.jpg
2023-04-15_12h51_54.jpg (8.66 KiB) Viewed 3622 times


2023-04-15_12h01_00.jpg
2023-04-15_12h01_00.jpg (91.72 KiB) Viewed 3633 times

2023-04-15_12h01_15.jpg
2023-04-15_12h01_15.jpg (88.91 KiB) Viewed 3633 times

2023-04-15_12h01_30.jpg
2023-04-15_12h01_30.jpg (90.29 KiB) Viewed 3633 times
User avatar
DH1KLM
Posts: 203
Joined: Fri Dec 29, 2017 10:36 pm
Location: Germany

Re: Understanding G7KLJ 2.9.0.11 release

Postby DH1KLM » Sat Apr 15, 2023 11:43 am

Hello Jörg,

cycle through the protocol list until protocol 2 appears. For protocol 2, the checkbox must not have a tick.
73 de Sigi / DH1KLM
SM3PZG
Posts: 40
Joined: Thu Apr 21, 2022 8:36 am

Re: Understanding G7KLJ 2.9.0.11 release

Postby SM3PZG » Sat Apr 15, 2023 1:37 pm

nobba wrote:Guys,

But I don't want to be an unpaid volunteer for Apache-Labs ad inifinitum. Its not like their radios are a fiver. Great business model for them, thou ;-)

Steve


When someone from the outside enters the forum they discover Apache-Labs flawed business model that relies addicted software users and volunteer free-time coders to develop software and firmware. This is a really bad business model. Without coders no hardware sales. If Thetis would be stable, more user friendly and without bugs that would attract more customers and increased sales.

Its unbelievable that a company with a yearly turnover of 6.3M (2021) and over 25 employees rely on voluntaries for development of software and firmware. Not only that, coders have to purchase their own equipment to test software and firmware.

Apache- Labs should ASAP send G7KLJ the equipment he needs. Also make a financial arrangement. Same goes for Richie.

Apache-Labs needs to start communicating with customers, coders and developers. Before launching a new model ANAN-G2 they should of asked customers and community what functions and changes they would like to see on new hardware.

Bottom line. If Apache-Labs increase price by just a few percent that would easily cover expenses for a couple of part-time coders and developers.

Its thanks to volunteer coders and developers we can enjoy this great software. Its a addictive software and great fun to use. The risk is that coders and developers will run out of patience with Apache-Labs bad business model and stop working for free.
Last edited by SM3PZG on Thu Apr 27, 2023 3:36 pm, edited 1 time in total.
K1LSB
Posts: 639
Joined: Wed Feb 05, 2020 5:25 pm

Re: Understanding G7KLJ 2.9.0.11 release

Postby K1LSB » Sat Apr 15, 2023 2:28 pm

This thread is not the place for that rant.

Mark
User avatar
w-u-2-o
Posts: 5539
Joined: Fri Mar 10, 2017 1:47 pm

Re: Understanding G7KLJ 2.9.0.11 release

Postby w-u-2-o » Sat Apr 15, 2023 4:22 pm

K1LSB wrote:This thread is not the place for that rant.

Mark

I agree, Mark, and I'm tempted to move or delete it. However, I'm going to leave this here merely to serve as a pointer to another topic which discusses the historical aspects of how things got the way they are currently:

https://community.apache-labs.com/viewtopic.php?f=9&t=4531&p=23606

It's perfectly reasonable to discuss the pro's, con's, likes and dislikes of the openHPSDR hardware, software and firmware ecosystem as long as such discussion remains respectful and collegial, but this thread is not the place. The topic referenced above would be a good place to continue that discussion. With an understanding of the long path to how things are the way they are perhaps the situation will be more clear, even if they are not to everyone's satisfaction.

Further posting on these points in this thread will be moved.
User avatar
Joerg
Posts: 20
Joined: Sat Oct 26, 2019 6:31 pm
Location: Germany / NRW
Contact:

Re: Understanding G7KLJ 2.9.0.11 release

Postby Joerg » Sat Apr 15, 2023 6:45 pm

DH1KLM wrote:Hello Jörg,

cycle through the protocol list until protocol 2 appears. For protocol 2, the checkbox must not have a tick.


Hello Sigi,

thanks for the information, I had found it too, unfortunately the protocol setting was not saved. Now I installed the v2.9.0.14 (currently there is only the x86 at Github also under x64 comes the x86) and now it keeps the protocol setting even after a restart. Maybe it was also due to the database.

73 Joerg, DD8JM
nobba
Posts: 24
Joined: Wed Apr 12, 2023 2:47 pm

Re: Understanding G7KLJ 2.9.0.11 release

Postby nobba » Sun Apr 16, 2023 7:30 am

Hello guys! Comments inline if you wish to read them.

K4IBC wrote:All it would take is the developer to put HL2 in the title next to Thetis so everyone would be aware it was developed mainly with Hermes Lite 2 in mind and may or may not work with Anan hardware. Yes the similar revision numbers are very misleading and the practice should be stopped hence forth.
With that said if Ritchie wanted to he could review the change made and adopt them in his version.
Best thing for anyone with an Anan is use Ritchie's versions only. Wait for any any changes to be adopted.

it was developed mainly with Hermes Lite 2 in mind


Wrong. It is forked from Richie's latest, it is NOT the one I made in the past, which was only ever checked on a 100% VAC guy with an ANAN-100 and me on my HL2.
Revision numbers are very misleading and the practice should be stopped hence forth

Says who?
K4IBC wrote:All it would take is the developer to put HL2 in the title next to Thetis


Nope and nope. Software is my day-job. Version numbers are _not_ changing. The _revision_ is changing, kinda like in the rest of the software world. Whenever anything changes, we bump the revision otherwise how can we know which exact revision the 'customer' (in this case the non-paying variety) has issues?.

Revision numbers are very misleading and the practice should be stopped hence forth

So, the 'practice will not be stopped henceforth'. You don't know what you are talking about. Again, I am writing code specifically to merge with Richie's. I don't know if he will merge it or not, but the opportunity is there.
He is busy with family life at the moment, so we do what we can when we can.

The idea is: if I can get you guys to try it out on your expensive radios (I don't have one) and if there are issues, you put them in github issues (https://github.com/sjk7/Thetis-2.9.0/issues) so I can fix them instead of giving Richie another headache or three should he decide to adopt the code.
That said, I think its fair that if I try to integrate my (free) work with Richies (free) work, Thetis will be _better_ because of the collaboration. Two heads and all that ...

It's also for the good of this community, and a fair request to see if you can try it and feedback any bugs that i will never see, and never find, with my HL2.
Should he decide not to merge them when he has time, fair enough, I will give it a completely different name and you will then be very sure of just what you are using. No problem.

Of course if you don't want to use it because perhaps the font is 'wrong' (it is now the system font for Windows 10/11 (but obvs not on skinned controls) or the revision number offends you, then don't use it. It is not compulsory!

Remember to back up your database first!
The download is free, can be peer reviewed at any time (the source code is all public), and is here:
https://github.com/sjk7/Thetis-2.9.0/releases

I don't particularly like the name of the project, i would rather change it to something like Thetis-2.9.xx, but I don't want to change the repo name as it may cause issues if Richie wants to merge it later.

Again, anyone that can take part trying it out for your particular use-case, however odd that may be, please back up your database to somewhere safe, please give this version a try and report any weirdness or bugs to

https://github.com/sjk7/Thetis-2.9.0/issues

I have been updating it several times daily, as time permits, in between real work (!), and I promise to at least feed back to every bug report on GH.
Just some examples of latest issues and resolutions (just to show I am trying to look after ANAN users as well):

High sample rates not working for non-HL2 radios:
https://github.com/sjk7/Thetis-2.9.0/issues/2

Consider old-school users:
https://github.com/sjk7/Thetis-2.9.0/issues/1

Protocol-2 bug:
https://github.com/sjk7/Thetis-2.9.0/issues/5

Auto-start the radio when the software starts up:
https://github.com/sjk7/Thetis-2.9.0/issues/3

Cheers all!

Steve, KLJ
Last edited by nobba on Sun Apr 16, 2023 8:06 am, edited 1 time in total.
GL es 73

Steve, G7KLJ
User avatar
DH1KLM
Posts: 203
Joined: Fri Dec 29, 2017 10:36 pm
Location: Germany

Re: Understanding G7KLJ 2.9.0.11 release

Postby DH1KLM » Sun Apr 16, 2023 8:02 am

It couldn't have been summed up any better.
73 de Sigi / DH1KLM
User avatar
NJ2US
Posts: 106
Joined: Sun Oct 29, 2017 9:39 pm

Re: Understanding G7KLJ 2.9.0.11 release

Postby NJ2US » Sun Apr 16, 2023 11:13 am

Revision 15 (Thetis v2.9.0.15) from G7KLJ is the smoothest release so far, with most, if not all of the initial issues corrected. Master Volume, Gigabit Max Sample Rate, Protocol 1/2 Selection, 64Bit availability, full support of the OE3IDE and MW0LGE "Super Meters", all functioning as expected. I don't fully understand all of the "under the hood" improvements, but I love the faster starts, and a very stable VAC 1/2, all indicating some substantial re-works (read improvements) to the internals.

I'm running Steve's work on the Anan 7000DLE on Windows 11. Thank you Steve (G7KLJ), there was some initial apprehension, because you seemingly came out of no where, but wow, this is a very worthy effort. I hope Ramdor gets some free time back, because a collaboration between you two would be brilliant.

Now we just have to figure how to get you late model radio (100, 200d, 7000) to play with!

https://github.com/sjk7/Thetis-2.9.0/re ... g/v2.9.0.4

73,
Jeff NJ2US
User avatar
Tony EI7BMB
Posts: 651
Joined: Sun Apr 09, 2017 2:31 pm
Location: Dublin
Contact:

Re: Understanding G7KLJ 2.9.0.11 release

Postby Tony EI7BMB » Sun Apr 16, 2023 11:27 am

When I install Steve's version the FFT planning window runs , is this the same for everyone ? Thanks for the work Steve
NC3Z
Posts: 464
Joined: Sun Oct 29, 2017 8:57 pm
Location: Merritt, NC

Re: Understanding G7KLJ 2.9.0.11 release

Postby NC3Z » Sun Apr 16, 2023 11:47 am

Tony EI7BMB wrote:When I install Steve's version the FFT planning window runs , is this the same for everyone ? Thanks for the work Steve


Yes
Gary NC3Z
K4IBC
Posts: 64
Joined: Sun Apr 09, 2017 7:31 pm

Re: Understanding G7KLJ 2.9.0.11 release

Postby K4IBC » Sun Apr 16, 2023 12:27 pm

nobba wrote:Hello guys! Comments inline if you wish to read them.

K4IBC wrote:All it would take is the developer to put HL2 in the title next to Thetis so everyone would be aware it was developed mainly with Hermes Lite 2 in mind and may or may not work with Anan hardware. Yes the similar revision numbers are very misleading and the practice should be stopped hence forth.
With that said if Ritchie wanted to he could review the change made and adopt them in his version.
Best thing for anyone with an Anan is use Ritchie's versions only. Wait for any any changes to be adopted.

it was developed mainly with Hermes Lite 2 in mind


Wrong. It is forked from Richie's latest, it is NOT the one I made in the past, which was only ever checked on a 100% VAC guy with an ANAN-100 and me on my HL2.
Revision numbers are very misleading and the practice should be stopped hence forth

Says who?
K4IBC wrote:All it would take is the developer to put HL2 in the title next to Thetis


Nope and nope. Software is my day-job. Version numbers are _not_ changing. The _revision_ is changing, kinda like in the rest of the software world. Whenever anything changes, we bump the revision otherwise how can we know which exact revision the 'customer' (in this case the non-paying variety) has issues?.

Revision numbers are very misleading and the practice should be stopped hence forth

So, the 'practice will not be stopped henceforth'. You don't know what you are talking about. Again, I am writing code specifically to merge with Richie's. I don't know if he will merge it or not, but the opportunity is there.
He is busy with family life at the moment, so we do what we can when we can.

The idea is: if I can get you guys to try it out on your expensive radios (I don't have one) and if there are issues, you put them in github issues (https://github.com/sjk7/Thetis-2.9.0/issues) so I can fix them instead of giving Richie another headache or three should he decide to adopt the code.
That said, I think its fair that if I try to integrate my (free) work with Richies (free) work, Thetis will be _better_ because of the collaboration. Two heads and all that ...

It's also for the good of this community, and a fair request to see if you can try it and feedback any bugs that i will never see, and never find, with my HL2.
Should he decide not to merge them when he has time, fair enough, I will give it a completely different name and you will then be very sure of just what you are using. No problem.

Of course if you don't want to use it because perhaps the font is 'wrong' (it is now the system font for Windows 10/11 (but obvs not on skinned controls) or the revision number offends you, then don't use it. It is not compulsory!

Remember to back up your database first!
The download is free, can be peer reviewed at any time (the source code is all public), and is here:
https://github.com/sjk7/Thetis-2.9.0/releases

I don't particularly like the name of the project, i would rather change it to something like Thetis-2.9.xx, but I don't want to change the repo name as it may cause issues if Richie wants to merge it later.

Again, anyone that can take part trying it out for your particular use-case, however odd that may be, please back up your database to somewhere safe, please give this version a try and report any weirdness or bugs to

https://github.com/sjk7/Thetis-2.9.0/issues

I have been updating it several times daily, as time permits, in between real work (!), and I promise to at least feed back to every bug report on GH.
Just some examples of latest issues and resolutions (just to show I am trying to look after ANAN users as well):

High sample rates not working for non-HL2 radios:
https://github.com/sjk7/Thetis-2.9.0/issues/2

Consider old-school users:
https://github.com/sjk7/Thetis-2.9.0/issues/1

Protocol-2 bug:
https://github.com/sjk7/Thetis-2.9.0/issues/5

Auto-start the radio when the software starts up:
https://github.com/sjk7/Thetis-2.9.0/issues/3

Cheers all!

Steve, KLJ


Steve I think it is great that you are trying to improve Thetis and you do great work. I am the misunderstanding the whole process. It's like having 2 vendors developing the same software.

What happens to the numbers on Ritchie's GitHub if he merges your changes?

What happens if he doesn't merge your changes?

How are we supposed to know as users if the software isn't merged and you both have same revision number. One guy says he is using revision 15 and another guys says he is running 15 too but his will not do what his buddy's does because they came from two different developers. That dumps the problem in the user's lap. It's already bad enough when users don't know the difference between firmware and software plus pretty soon middleware.

Why not work jointly using one repository?

Before everything moved to GitHub everyone knew to get the latest and greatest from TAPR.

To me it feels like going to two different car dealerships looking at identical color cars but everything on the inside is different.
DO2ZA Erwin
Posts: 115
Joined: Fri Apr 21, 2017 4:49 pm

Re: Understanding G7KLJ 2.9.0.11 release

Postby DO2ZA Erwin » Sun Apr 16, 2023 12:34 pm

Tony EI7BMB wrote:When I install Steve's version the FFT planning window runs , is this the same for everyone ? Thanks for the work Steve


Yes, also at my side.
2.9.0.15 runs very good here, Anan 7000dle MKII, the older Black Face, WIN 10 Build 19044.
The WASAPI-Driver runs very good here! (I have no ASIO here)
VAC runs very stable with WASAPI and WDM-KS with Buffer-Size at 64!

My feeling is that Pure Signal runs better, more stability?? My feeling!

Many thanks to all of the Developers, special to Steve!!

73 Erwin
Anan 7000DLE MK2 black, P.2 v2.1.18, WIN 10, 10.0.18362 (1903), i7-7700 @3.60 Ghz, 2x Monitor 24"@144 Hz and 1x 32" Monitor @120 FPS for Thetis
User avatar
NJ2US
Posts: 106
Joined: Sun Oct 29, 2017 9:39 pm

Re: Understanding G7KLJ 2.9.0.11 release

Postby NJ2US » Sun Apr 16, 2023 12:36 pm

Let me take a stab at this, based on Steve's previous comments.

Steve's collaboration with Ramdor is pending. If they agree to collaborate, Version and Revisioning will increment from 2.9.0.X (presently revision 15).

If Ramdor does not wish to collaborate, Steve has agreed that he will branch off and Rename his releases, to alleviate confusion. The Thetis world is not very complicated at the moment. If you are running 2.9.0.8, you are running Richies work. If you are running 2.9.0.15 and up it’s Steve’s work, but built on Richie’s excellent contributions but with code efficiency improvements, and some other nice things. As of .15, I don’t think anyone has seen a “step backward”. (To be fair, there were a couple stumbles in revisions 9-14) Going forward, It is not likely that Richie would publish work with a revision number that duplicates Steve's efforts, and vice versa. The risk for confusion is minimal IMHO.

Jeff NJ2US
User avatar
w-u-2-o
Posts: 5539
Joined: Fri Mar 10, 2017 1:47 pm

Re: Understanding G7KLJ 2.9.0.11 release

Postby w-u-2-o » Sun Apr 16, 2023 1:25 pm

First and foremost: thank you for contributing, Steve. And please try to forgive the internet :D

Second: what Jeff said!

Third: a note on versioning: a classical versioning scheme is major.minor.maintenance.build. While some of the changes are fixes and therefore worthy of incrementing the maintenance digit, and some of the changes are new features and worthy of a minor release increment, this rarely happens before a multitude of build increments, even with Richie and others. It's a good decision on Steve's part to maintain synchronization with Richie's versioning for reasons that have already been mentioned. Although in my work life I was a huge stickler for crystal clear, book-perfect configuration management, this is not a workplace. So please help out our developers by being a bit more relaxed ;)

To summarize: please go easy folks. Don't bite the hand that feeds you for free! Both Richie and Steve have invited you to use their GitHub repo issues databases to report bugs and request features. It doesn't get very much better than that. However you might want to post here to see if your bug is really a bug or not before posting an issue to Git. Git should not be a place to learn how to use the software, only to report bugs and request features.
K4IBC
Posts: 64
Joined: Sun Apr 09, 2017 7:31 pm

Re: Understanding G7KLJ 2.9.0.11 release

Postby K4IBC » Sun Apr 16, 2023 1:41 pm

Please forgive me if I come off as being critical of Steve and Ritchie. It probably comes from me not fully understanding how GitHub works.
Anyone that does anything for free to help improve the software is a good thing.

I am use to a system where everything is in one place.

I was concerned about confusion down the road. I had no idea that Steve would rename his version of Thetis if Ritchie didn't merge them.

I am in no way ungrateful for the work Steve and Ritchie do. Without them we wouldn't have all the new features and improvements.
K1LSB
Posts: 639
Joined: Wed Feb 05, 2020 5:25 pm

Re: Understanding G7KLJ 2.9.0.11 release

Postby K1LSB » Mon Apr 17, 2023 12:23 am

DO2ZA Erwin wrote:VAC runs very stable with WASAPI and WDM-KS with Buffer-Size at 64!

My feeling is that Pure Signal runs better, more stability?? My feeling!

I do believe I'm also seeing a bit of improvement in PS performance. And VAC is rock-steady, I'm not seeing any overruns/underruns anymore. :)

Mark
Trucker
Posts: 303
Joined: Wed Nov 03, 2021 5:16 pm

Re: Understanding G7KLJ 2.9.0.11 release

Postby Trucker » Mon Apr 17, 2023 1:01 am

Downloaded and installed V2.9.0.18 after backing up my settings and the OpenHPSDR folder. Then installed this version. I had to change my buffer size in the VAC1 tab to 512 from 1024 as I was getting a few, (but not many) underflows and overflows. Once I did that, it seems to have settled down. I haven't restarted since the initial install, so I cannot say if there is a noticeable speed up in loading.
Well, spoke too soon, the overflows and underflows are starting again. It seemed in the past, changing the buffer size in VAC1 fixed that. Maybe I do need to restart!
James
WD5GWY

Quick update. Restarted Thetis and it seems to load a bit faster. I really cannot tell much difference in load time. I switched my buffer settings "BACK" to 1024, and so far, no more overflows and underflows. CPU usage seems to be about the same as the previous version 2.9.0.8 from Ritchie. All my settings seem to have been retained. Especially for the PA and transmit. So far, looks good......................
Joe
Posts: 190
Joined: Tue Aug 22, 2017 5:58 pm

Re: Understanding G7KLJ 2.9.0.11 release

Postby Joe » Mon Apr 17, 2023 2:16 am

Definitely better vac stability and faster load! Posting a screenshot. Thanks to all!

73's
Joe
WD5Y
Attachments
Screenshot (8).png
Screenshot (8).png (1.15 MiB) Viewed 3199 times
nobba
Posts: 24
Joined: Wed Apr 12, 2023 2:47 pm

Re: Understanding G7KLJ 2.9.0.11 release

Postby nobba » Mon Apr 17, 2023 6:09 am

NC3Z wrote:
Tony EI7BMB wrote:When I install Steve's version the FFT planning window runs , is this the same for everyone ? Thanks for the work Steve


Somewhere buried in the changelog, there should be a reference to this. I made the libfftw3-3 the latest available version, so this is why we have Wisdom popping up once more. It should happen only once, though. I hate that thing. It takes ages.

Really only a note here for other developers in the future: it is so disruptive to workflow to have this thing running in debug mode! So in the _debug_ mode only, should you load it all into Visual Studio, I tell fftw to use a different mode (FFTW_ESTIMATE) and there it completes in about half a second. This is not appropriate for release builds, though.

More details: https://www.fftw.org/fftw3_doc/Words-of ... Plans.html

In a nutshell, this is where it does the heavy maths. And it is exclusive to your hardware. Without it, it could not perform decently in real-time later.
GL es 73

Steve, G7KLJ
nobba
Posts: 24
Joined: Wed Apr 12, 2023 2:47 pm

Re: Understanding G7KLJ 2.9.0.11 release

Postby nobba » Mon Apr 17, 2023 6:24 am

Trucker wrote:Downloaded and installed V2.9.0.18 after backing up my settings and the OpenHPSDR folder. Then installed this version. I had to change my buffer size in the VAC1 tab to 512 from 1024 as I was getting a few, (but not many) underflows and overflows. Once I did that, it seems to have settled down. I haven't restarted since the initial install, so I cannot say if there is a noticeable speed up in loading.
Well, spoke too soon, the overflows and underflows are starting again. It seemed in the past, changing the buffer size in VAC1 fixed that. Maybe I do need to restart!
James
WD5GWY

Quick update. Restarted Thetis and it seems to load a bit faster. I really cannot tell much difference in load time. I switched my buffer settings "BACK" to 1024, and so far, no more overflows and underflows. CPU usage seems to be about the same as the previous version 2.9.0.8 from Ritchie. All my settings seem to have been retained. Especially for the PA and transmit. So far, looks good......................


Try running the app in administrator mode, if you are not already. (Right-click the shortcut on the desktop, 'Run as Administrator'). Running as admin has important ramifications for the audio in this version, because, without it, I cannot set the audio thread priorities high enough so that other processes on the machine cannot preempt them.

I use the new AVmm thread priorities if I can, but fall back to less poky threads if these are not available. More details:
https://learn.microsoft.com/en-us/windo ... er-service
and
https://learn.microsoft.com/en-us/previ ... 07(v=vs.85)

Steve
GL es 73

Steve, G7KLJ
nobba
Posts: 24
Joined: Wed Apr 12, 2023 2:47 pm

Re: Understanding G7KLJ 2.9.0.11 release

Postby nobba » Mon Apr 17, 2023 6:28 am

w-u-2-o wrote:First and foremost: thank you for contributing, Steve. And please try to forgive the internet :D

Second: what Jeff said!

Third: a note on versioning: a classical versioning scheme is major.minor.maintenance.build. While some of the changes are fixes and therefore worthy of incrementing the maintenance digit, and some of the changes are new features and worthy of a minor release increment, this rarely happens before a multitude of build increments, even with Richie and others. It's a good decision on Steve's part to maintain synchronization with Richie's versioning for reasons that have already been mentioned. Although in my work life I was a huge stickler for crystal clear, book-perfect configuration management, this is not a workplace. So please help out our developers by being a bit more relaxed ;)


I would say updating to a standard build of portaudio and the latest fftw would _actually_ warrant a major version bump, never mind just the minor version, not to mention ChannelMaster.dll, which has needed a lot of work! But ya kna, that's up to Richie.
GL es 73

Steve, G7KLJ
W4WMT
Posts: 325
Joined: Sun Apr 09, 2017 10:12 pm

Re: Understanding G7KLJ 2.9.0.11 release

Postby W4WMT » Mon Apr 17, 2023 11:15 am

nobba wrote:I use the new AVmm thread priorities if I can, but fall back to less poky threads if these are not available.

Hi Steve,

Just FYI: Back when we enabled MMCSS in Thetis (version 2.6.9 I believe), Warren NR0V and I carefully chose only the most time-critical DDC, DUC, and audio threads in WDSP & ChannelMaster to participate in the MMCSS. The thinking was, at the time, that we didn't want Thetis to compete with itself for thread priorities. YMMV :-)

73, Bryan
nobba
Posts: 24
Joined: Wed Apr 12, 2023 2:47 pm

Re: Understanding G7KLJ 2.9.0.11 release

Postby nobba » Mon Apr 17, 2023 7:59 pm

W4WMT wrote:
nobba wrote:I use the new AVmm thread priorities if I can, but fall back to less poky threads if these are not available.

Hi Steve,

Just FYI: Back when we enabled MMCSS in Thetis (version 2.6.9 I believe), Warren NR0V and I carefully chose only the most time-critical DDC, DUC, and audio threads in WDSP & ChannelMaster to participate in the MMCSS. The thinking was, at the time, that we didn't want Thetis to compete with itself for thread priorities. YMMV :-)

73, Bryan


Hi Bryan. You could be my goto-guy here, then! I have an ancient, outstanding issue where CM (as opposed to wdsp) hangs on to a handful of threads between every Start() invocation. My comment about AVmm was mostly for ChannelMaster.dll, in particular the audio threads. In my view the audio is #1 priority (literally), behind even the UI responsiveness,

Now that MMCSS is used more widely in ChannelMaster, these zombie threads are consuming resources long after they should be dead and thus preventing the most recent from getting the resources they need. If you and Warren look again at CM (ever) then consider only using lock-free data structures, at least in the most critical audio paths, as I am finding this to be the bottleneck at the mo. I'll be happy to help. I have about zero DSP domain expertise, but I am very 'up on' the most recent lock-free/wait-free/contention-free data structures. This is, in fact a large part of my current job.

Thanks,
Steve
GL es 73

Steve, G7KLJ
nobba
Posts: 24
Joined: Wed Apr 12, 2023 2:47 pm

Re: Understanding G7KLJ 2.9.0.11 release

Postby nobba » Mon Apr 17, 2023 8:02 pm

W4WMT wrote:
nobba wrote:I use the new AVmm thread priorities if I can, but fall back to less poky threads if these are not available.

Hi Steve,

Just FYI: Back when we enabled MMCSS in Thetis (version 2.6.9 I believe), Warren NR0V and I carefully chose only the most time-critical DDC, DUC, and audio threads in WDSP & ChannelMaster to participate in the MMCSS. The thinking was, at the time, that we didn't want Thetis to compete with itself for thread priorities. YMMV :-)

73, Bryan


Hello!
I forgot to say that if you can point me to a definitive source repo for either CM or WDSP then I am happy to contribute my changes back. I can't find any; only a linux-ised version of wdsp, and nothing at all, anywhere, for CM.

Steve
GL es 73

Steve, G7KLJ
Trucker
Posts: 303
Joined: Wed Nov 03, 2021 5:16 pm

Re: Understanding G7KLJ 2.9.0.11 release

Postby Trucker » Mon Apr 17, 2023 8:44 pm

nobba wrote:
Trucker wrote:Downloaded and installed V2.9.0.18 after backing up my settings and the OpenHPSDR folder. Then installed this version. I had to change my buffer size in the VAC1 tab to 512 from 1024 as I was getting a few, (but not many) underflows and overflows. Once I did that, it seems to have settled down. I haven't restarted since the initial install, so I cannot say if there is a noticeable speed up in loading.
Well, spoke too soon, the overflows and underflows are starting again. It seemed in the past, changing the buffer size in VAC1 fixed that. Maybe I do need to restart!
James
WD5GWY

Quick update. Restarted Thetis and it seems to load a bit faster. I really cannot tell much difference in load time. I switched my buffer settings "BACK" to 1024, and so far, no more overflows and underflows. CPU usage seems to be about the same as the previous version 2.9.0.8 from Ritchie. All my settings seem to have been retained. Especially for the PA and transmit. So far, looks good......................


Try running the app in administrator mode, if you are not already. (Right-click the shortcut on the desktop, 'Run as Administrator'). Running as admin has important ramifications for the audio in this version, because, without it, I cannot set the audio thread priorities high enough so that other processes on the machine cannot preempt them.

I use the new AVmm thread priorities if I can, but fall back to less poky threads if these are not available. More details:
https://learn.microsoft.com/en-us/windo ... er-service
and
https://learn.microsoft.com/en-us/previ ... 07(v=vs.85)

Steve

Thanks Steve, I restarted Thetis in Administrator mode as you suggested. At first that seemed to settle things down. I let it run overnight. This morning I checked the Overflow and Underflow numbers as the red and green blocks were showing under VAC1. There was a huge number of both. I reset them and dropped my buffer size down to 256. As of a few minutes ago, it was still zero for both under and over, flows. Hopefully, this will be the settings that work.
Thanks again!
James
WD5GWY
Trucker
Posts: 303
Joined: Wed Nov 03, 2021 5:16 pm

Re: Understanding G7KLJ 2.9.0.11 release

Postby Trucker » Mon Apr 17, 2023 9:55 pm

The Overflows and Underflows came back shortly after making the change to running Thetis as Administrator. I gave in and reverted back to version 2.9.0.8 per-release from Ritchie and set my buffer back to 1024 as I had it before. So far, things look to be working. I made a couple of contacts as well on 20 meters and both said my audio sounded great. So, I guess, for the time being, I will leave well enough alone!
James
WD5GWY
W4WMT
Posts: 325
Joined: Sun Apr 09, 2017 10:12 pm

Re: Understanding G7KLJ 2.9.0.11 release

Postby W4WMT » Tue Apr 18, 2023 12:37 am

nobba wrote:I have an ancient, outstanding issue where CM (as opposed to wdsp) hangs on to a handful of threads between every Start() invocation. My comment about AVmm was mostly for ChannelMaster.dll, in particular the audio threads. In my view the audio is #1 priority (literally), behind even the UI responsiveness,

Now that MMCSS is used more widely in ChannelMaster, these zombie threads are consuming resources long after they should be dead and thus preventing the most recent from getting the resources they need. If you and Warren look again at CM (ever) then consider only using lock-free data structures, at least in the most critical audio paths, as I am finding this to be the bottleneck at the mo. I'll be happy to help. I have about zero DSP domain expertise, but I am very 'up on' the most recent lock-free/wait-free/contention-free data structures. This is, in fact a large part of my current job.

Hi Steve,

Yes, I can tell you about the zombie threads! It's a hangover from way back when Protocol-1 was retroactively patched back into Thetis, after much concern about some hardware not being able to make timing closure on Protocol-2. It's just a little bug that took me a freaking week to find. I'll save you the time and send you the fix shortly :-)

I love the idea of lock-free data structures for audio thread synchronization in ChannelMaster. I've used them experimentally in CM, and they seem to work fine here. Warren is skeptical of them however, and to his point, the critical sections employed now probably only cost us a microsecond or so.

I don't know of a definitive repo for CM and/or WDSP, other than the VS projects already in the Thetis solution tree. You do have Warren's developers guides for WDSP and ChannelMaster, right?

73, Bryan

Return to “Thetis”