The Adaptive Pre-distortion (APD) rabbit hole

Post your awesome projects here for everyone to marvel at!
VK-JOE
Posts: 28
Joined: Fri Sep 30, 2022 3:36 am

The Adaptive Pre-distortion (APD) rabbit hole

Postby VK-JOE » Mon Oct 03, 2022 5:54 am

Hello to those of you who stopped by to investigate this topic.

I am new to this forum and welcome the opportunity to share some ideas and findings resulting from my venture into the science of adaptive pre distortion and the wonderful new rabbit hole I have been exploring.

I am very keen to becoming a new customer of Apache-labs and hopefully will have a basic Anan transceiver which will be my “platform” to help me with my experimentation and potential developments in novel APD implementations.

For those of you who are interested in Digital Pre-Distortion (DPD) or are lucky to have an ANAN transceiver and would like to have some "hands-on" experimentation - but simply don't have appropriate H/W (or don't want to hack your ANAN at this time) to do your experimentation here are some approaches you can take ...

GitHub - gnuradio/gr-dpd: Digital Pre-Distortion implementation in GNU Radio https://github.com/gnuradio/gr-dpd

If you are not familiar with gnuradio - then here is an excellent series of tutorials which will get you up to speed quickly ...

Software Defined Radio with HackRF - Great Scott Gadgets https://greatscottgadgets.com/sdr/

Unfortunately, the learning curve for APD is quite steep, but the good news is that there are many research and development papers written on this subject, so as long as you have a fundamental understanding – the special knowledge is easy to find – its simply a matter of time as you educate yourself.

The other good news is to approach this subject from a new perspective.

As I have little in-depth knowledge as to how the existing “pure-signal” has been implemented in the Anan transceivers – so I am not being influenced by the specific approach so to speak.

My intentions are to develop a “black-box” to perform the APD function – enabling the input signal (from low level RF exciter) to be “processed” and pre-distorted before it is amplified by higher power output amplifier (with appropriate sampling for closed loop operation).

Sounds easy – but it’s not – however to my rescue are some good development tools.

predistortion_simulation.jpg
predistortion_simulation.jpg (99.04 KiB) Viewed 5020 times


I Found a good introduction video - Power Amplifier Modeling and DPD Design with MATLAB - https://www.youtube.com/watch?v=eo21QWO4VDU - showing the concept which I would like to utilize with tools like Matlab - regarding APD design.

The good thing here is that you can investigate existing APD models and modify them within the simulation - to try to achieve optimal results for your design criteria.

Once happy, can then produce HDL code for FPGA to realize this in H/W

Another useful TOOL to help would be to understand neural nets - this term is used predominately with artificial intelligence systems.

These artificial networks may be used for Predictive modelling - Wikipedia https://en.wikipedia.org/wiki/Predictive_modelling, Adaptive control - Wikipedia https://en.wikipedia.org/wiki/Adaptive_control and applications where they can be trained via a dataset. Self-learning resulting from experience can occur within networks, which can derive conclusions from a complex and seemingly unrelated set of information.

Above quote from Neural network - Wikipedia https://en.wikipedia.org/wiki/Neural_network

Developing an APD system is complex and by understanding the use and development of state machines together with the process of predictive modeling we can successfully model the complex systems we are trying to implement.

By having a working model of an APD system we can "tune" for optimal behavior and finally implement this as a digital system inside a FPGA

I am looking at different ways to tackle the predictive modeling and adaptive control - principally trying to harness existing semiconductor devices designed for such tasks

Here is a link which discusses what is available AI Hardware Roundup: Neuromorphic Chips and Neural Network SoCs - News (allaboutcircuits.com) https://www.allaboutcircuits.com/news/ai-hardware-roundup-neuromorphic-chips/

A practical device from above round-up - which is already in use (google pixel range of phones) - can be seen here https://coral.ai/products/dev-board Dev Board | Coral

So, like I said this is a DEEP rabbit hole - but it’s also very interesting and rewarding to go through the learning process ;)

It would be good to know if anyone in this wonderful community is also interested in this subject and my novel approach in experimenting with DPD systems.

Of cause the ideal scenario would be to interface to an existing Anan transceiver and take a deep dive at the current pure signal implementation – with a view if there are “easy” opportunities for some enhancements.

Unfortunately, I am still waiting and waiting :roll: for reply from Apache-labs support as to my progress in obtaining a radio.

Hope someone from Support might contact me soon :D
User avatar
kc2rgw
Posts: 165
Joined: Mon Jun 22, 2020 5:44 pm

Re: The Adaptive Pre-distortion (APD) rabbit hole

Postby kc2rgw » Mon Oct 03, 2022 11:16 am

What is it about Pure Signal that you believe is defective?
VK-JOE
Posts: 28
Joined: Fri Sep 30, 2022 3:36 am

Re: The Adaptive Pre-distortion (APD) rabbit hole

Postby VK-JOE » Tue Oct 04, 2022 3:40 am

@kc2rgw

Hi Chris,

I am not in a position to say there is anything specifically “defective” with pure signal.

When I get an appropriate radio which can run Thetis and start dabbling with pure-signal myself I might be able to answer this question.

My deep dive into the ADP rabbit hole was purely to educate myself and at the same time knock-up some HW to dabble with this fascinating subject in the process.

Some of my friends who do have Anan radios and use pure-signal do have some opinions on pure-signal functionality – but not to the extent they call it defective.

At times the adaptation process simply cannot continue – I can only assume it needs a new set of coefficients to maintain, so a resampling snapshot needs to happen.

Adaptive predistortion is not an easy process to implement as there are certain parameters which need to be known and this “predictive” process can be challenging.

The purpose of my post was not to criticize pure-signal, it was simply to draw attention to this fascinating subject (props to Warren Pratt) and that today there are some brilliant tools for exploring and building ADP systems.
User avatar
kc2rgw
Posts: 165
Joined: Mon Jun 22, 2020 5:44 pm

Re: The Adaptive Pre-distortion (APD) rabbit hole

Postby kc2rgw » Tue Oct 04, 2022 11:32 am

Ah makes sense. You'll find there are a few parameters you can set now with with recent work by several contributors, and the responsiveness is now quite good.

There are some odd mythologies passed around about Pure Signal and there are a number of people these days driving their amplifiers well into compression using Pure Signal to try and compensate for that underlying issue. It's a whole Pandora's box of misconfigurations and misunderstandings.

Will be interesting what you think once you have your hands on it.
User avatar
w-u-2-o
Posts: 5540
Joined: Fri Mar 10, 2017 1:47 pm

Re: The Adaptive Pre-distortion (APD) rabbit hole

Postby w-u-2-o » Tue Oct 04, 2022 1:05 pm

kc2rgw wrote:Ah makes sense. You'll find there are a few parameters you can set now with with recent work by several contributors, and the responsiveness is now quite good.
Would you please elaborate on that? Which controls would that be?
There are some odd mythologies passed around about Pure Signal and there are a number of people these days driving their amplifiers well into compression using Pure Signal to try and compensate for that underlying issue. It's a whole Pandora's box of misconfigurations and misunderstandings.
Again, could you add some details here on what those myths and misperceptions are?
VK-JOE
Posts: 28
Joined: Fri Sep 30, 2022 3:36 am

Re: The Adaptive Pre-distortion (APD) rabbit hole

Postby VK-JOE » Wed Oct 05, 2022 2:44 am

I finally decided to have a deeper dive into the existing Thetis documentation on Pure Signal.

From GitHub, I found the following .PDF document; -

OpenHPSDR-Thetis/Project Files/lib/Thetis-resources/PureSignal.pdf

https://github.com/TAPR/OpenHPSDR-Thetis/blob/master/Project%20Files/lib/Thetis-resources/PureSignal.pdf

It is old (2015) – I have not found a more recent update, but that does not mean it doesn’t exist – I probably did not look hard enough.

Not sure if many Anan transceiver owners have seen Warren Pratts presentation on Pure Signal?

Here is a link for those who are interested; -

http://www.n3sh.org/Tech%20Section/PureSignal_final_selection.pdf

The most significant aspect of his presentation (in relation to pure signal shortcommings) is discussed on Page(s) 22-24 – where he discusses Memory Effects in his slides.


Page 24 is shown below

pure_signal_memory_effects.png
pure_signal_memory_effects.png (363.67 KiB) Viewed 4879 times


Unless you are familiar with the adaptive predistortion process Warren Pratt has implemented, the above slide might not mean much to you.

What is “Memory Effects” you might ask?

Well in the PureSignal.pdf document from the GitHub link above – on page 3 there is reference being made to Memory Effects – I copied this text below to highlight what is exactly referred to by Memory Effects – and more importantly how we can mitigate these effects in the type of amplifiers we use and their configurations.

Here is the specific extract; -

The current PureSignal algorithm does not attempt to dynamically compensate for “memory effects.”

Memory Effects are phenomena whereby the amplifier gain and phase are not only a function of the current input signal, they are also a function of past input signals.

The amplifier “remembers” signals that went through in the past. These effects can be thermal or bias / power‐supply related.

For example, suppose that a strong signal over a period of some milliseconds heated the active devices of the amplifier thereby changing their gain and other characteristics.

Then the amplifier “remembers” those characteristics until it cools back down even though a weaker signal may pass through in the meantime.

So, for the same weak signal level, the amplifier characteristic is different depending upon whether it is hot or cooler, depending upon the preceding signals.

A similar situation exists with bias and supply voltages. Suppose a strong signal momentarily causes a slight drop in power supply voltage.

If the supply does not recover instantaneously (which it typically will not) the amplifiers gain will have been changed for a subsequent weak signal.

Amplifiers with weak memory effects will be more effectively corrected than those with strong memory effects.

Among solid‐state amplifiers, current experience suggests that LDMOS amplifiers using higher voltage (~50V) supplies produce the best results.

In any particular amplifier design, factors that can minimize memory effects include: • High‐voltage / low‐current designs to minimize power supply droop.

• “Stiff” power sources to minimize voltage “sag.” (The poor voltage regulation of some amplifiers has proven challenging in some cases.)
• Lower capacitance devices (such as LDMOS).
• Excellent heat‐sinking in solid state designs, probably including a copper heat‐spreader. As you would suspect from this list, 13.8V FET amplifiers can be challenging to correct.

However, stiff power supplies and good cooling can go a very long way.

THE AMOUNT OF IMD CORRECTION YOU ACHIEVE WILL DEPEND UPON THE MEMORY EFFECTS OF YOUR AMPLIFIER AND THE QUALITY OF YOUR FEEDBACK SIGNAL


As you no doubt can see – the adaptive predistortion rabbit hole is a fascinating subject.

There is lots of learning, but in the end, you never know, there might be some novel ways to improve.

The more of us who have an inclination to H/W and software development, taking an active interest in adaptive predistortion, the better for the OpenHPSDR Apache-labs community.
User avatar
kc2rgw
Posts: 165
Joined: Mon Jun 22, 2020 5:44 pm

Re: The Adaptive Pre-distortion (APD) rabbit hole

Postby kc2rgw » Wed Oct 05, 2022 11:00 am

w-u-2-o wrote:
kc2rgw wrote:Ah makes sense. You'll find there are a few parameters you can set now with with recent work by several contributors, and the responsiveness is now quite good.
Would you please elaborate on that? Which controls would that be?
There are some odd mythologies passed around about Pure Signal and there are a number of people these days driving their amplifiers well into compression using Pure Signal to try and compensate for that underlying issue. It's a whole Pandora's box of misconfigurations and misunderstandings.
Again, could you add some details here on what those myths and misperceptions are?



It's no secret, just the changes in firmware and in the Linearity dialogue options that allow for faster sync that improved things. PS basically locks up almost immediately now but many people do not have the settings right and complain about it.

The myths are many, people attribute all sorts of weird things to PS, if you listen to groups on 75m you will hear all sorts of odd things passed around that are based on other characteristic misconfigurations people are running.

It's just simply that a lot of people can't figure these radios out and make things up.
K1LSB
Posts: 639
Joined: Wed Feb 05, 2020 5:25 pm

Re: The Adaptive Pre-distortion (APD) rabbit hole

Postby K1LSB » Wed Oct 05, 2022 12:36 pm

Agreed, and agreed!

Edit: Someone who only thinks he knows what he's doing can really hose up a signal with this radio.

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

Re: The Adaptive Pre-distortion (APD) rabbit hole

Postby w-u-2-o » Wed Oct 05, 2022 1:07 pm

kc2rgw wrote:It's no secret, just the changes in firmware and in the Linearity dialogue options that allow for faster sync that improved things. PS basically locks up almost immediately now but many people do not have the settings right and complain about it.
It sounded like you were suggesting that there were a number of changes since PureSignal 2.0 was first introduced. AFAIK, there has been a single change, the one added by Richie called "Quick Attenuate Response". There have been no changes in the firmware that were specific to PureSignal, only changes intended for it to reliably close timing on the widest population of serial numbers.

To put a very fine point on it, there were some experimental, never even released into beta, versions of firmware floating around that changed how IF data was moved around in the logic, but these never amounted to anything and were primarily exercises in FPGA design efficiency and not an attempt to improve PS performance.
The myths are many, people attribute all sorts of weird things to PS, if you listen to groups on 75m you will hear all sorts of odd things passed around that are based on other characteristic misconfigurations people are running.

It's just simply that a lot of people can't figure these radios out and make things up.
That is undeniably true. It's true of a lot of things in amateur radio, where myth often overrides science and engineering. And the negative myths are amplified by the haters, the hurt, and the jealous.
User avatar
W1AEX
Posts: 425
Joined: Sun Apr 09, 2017 6:17 pm
Location: Connecticut, USA
Contact:

Re: The Adaptive Pre-distortion (APD) rabbit hole

Postby W1AEX » Wed Oct 05, 2022 2:49 pm

Welcome to the forum Joe. The APD implementation in the ANAN/Thetis platform is certainly remarkable and it has evolved steadily to the point where it runs flawlessly with my 200D while using the latest Thetis release and the newest P2 firmware. That has not always been true but the improvements to Thetis and to the P2 firmware have made things easy and worry-free (for me). Pure Signal works equally well with my solid state amp (Mercury IIIs) and my pair of 3-500s (AL-82). Both amps present very different memory effects for the algorithm to work with but I experience no stops, no blow-outs, no issues at all with correction. That being said, it's always interesting to see what someone who wants to look more deeply into the hardware/software/firmware architecture can see.

Good luck getting your hands on a piece of ANAN hardware!

73, Rob W1AEX
"One thing I am certain of is that there is too much certainty in the world."
VK-JOE
Posts: 28
Joined: Fri Sep 30, 2022 3:36 am

Re: The Adaptive Pre-distortion (APD) rabbit hole

Postby VK-JOE » Thu Oct 06, 2022 3:26 pm

W1AEX wrote:Welcome to the forum Joe.

Good luck getting your hands on a piece of ANAN hardware!

Thanks for your kind words.

Sometimes it’s just nice to learn more and more about systems - without a physical hardware - it just focuses you to do the "educating yourself" - so IF and WHEN you get the H/W you instantly appreciate it on a much higher level compared with knowing very little about something you just unboxed and started to use ;-)

Oh .. love the "meters" on the thumbnail ANAN - are they real? if so, have you got a close-up?
User avatar
W1AEX
Posts: 425
Joined: Sun Apr 09, 2017 6:17 pm
Location: Connecticut, USA
Contact:

Re: The Adaptive Pre-distortion (APD) rabbit hole

Postby W1AEX » Thu Oct 06, 2022 4:32 pm

The 200D picture used as my avatar is pure Photoshop but it's fun to get PM's here at the forum with questions about it. :lol:

I attached a PDF document that was released when Pure Signal 2.0 was introduced. Note that I am unsure who the original author was (Dr. Pratt? Doug? Scott?) but it really helped me to tame my 200D. The document goes through the settings that are available to end-users in the Advanced Pure Signal form to allow some adjustment for how Pure Signal 2.0 behaves. The default settings are very good and work well for most people, but for those who experience instability there are several toggles on the advanced form that can help. I took the liberty of adding a screenshot of the Advanced form to the document just as a reference for myself when I was experimenting.

Not sure if you already have the "Pure Signal 2.0 Operational Notes" but if not, it has more recent practical application information than the 2015 document that is heavier on the theories behind the project.

73, Rob W1AEX
Attachments
PureSignal 2.0 Operational Notes.pdf
(142.76 KiB) Downloaded 110 times
"One thing I am certain of is that there is too much certainty in the world."
User avatar
w-u-2-o
Posts: 5540
Joined: Fri Mar 10, 2017 1:47 pm

Re: The Adaptive Pre-distortion (APD) rabbit hole

Postby w-u-2-o » Thu Oct 06, 2022 7:26 pm

W1AEX wrote:I attached a PDF document that was released when Pure Signal 2.0 was introduced. Note that I am unsure who the original author was (Dr. Pratt? Doug? Scott?)
I did the final edit on that with substantial input from Warren.

You can find all of that information on a conveniently tacked topic right here in the PureSignal sub-forum, just where you would expect to find it:

https://community.apache-labs.com/viewtopic.php?f=20&t=3166

Return to “PC's & Homebrew Hardware”