Ok I needed some time to dig into it but have a very good impression on how it works.
All modules have their own individual factory calibration settings as far as I can see. All together they will work in any mixture of modules from various CMU's but the levels are not calibrated.
All the tables are taken into account in the overall settings. These overal settings are not the standard tables but are the "hidden tables"
I managed to get the data details of the "hidden tables" by using the Save Table to file command (cor_stf) instead of the eprom to ascii commands ( eep_e2a)
There are 3 hidden large tables and I have identified 137 of them with as table sets:
Internal RX
Internal TX
Internal Default
I have compared the effect of changing modules and unit to unit compare to see which tables are standard and which are changing.
To get the special tables was quite tricky as all tables are updated after module update so I needed to have a still sealed CMU to directly get the tables before any updates as I tried to find out where the calibration values are stored.
I could bring back 137 tables to 68 tables which acually changed. The content of these tabels is quite similar to tables of the RXTX units but with other values, so this is where all other modules are taken into account.
How exactly the values are made is not sure to me, but that is something to find out later.
After knowing how it worked I was able to inject changed tables into the machine, at the moment I'm chaning the TXTX tables to correct the spectrum but results are not yet what I expected. What I did was the sequence as I mentioned in one of my older posts, so to use a signal generator, measure the value with the CMU, calculate the difference and use the difference to change the calibrated value.
Important here to know is that you should not change the RXTX (even though it works) before making a copy of the eeprom with the original values. As there should be another place where this probably must be done.
Strange thing however is that it doesn;t exactly meet my expectations, it seems that just using the corrected value gets you closer to the result but not spot on. Actually chaning only a few values has an influence on many responses. So it's more complex. I need to find out the exact formula before I can do this more effective. At the moment I've written some codes to get the results and automaticly giving the corrected values which I can enter into the new Ascii file before uploading it again to the eeprom. But as the results are not exaclty what I expect I must do some more homework.
It would really help me if I would be able to use the user correction file to get quick results and see the effect before changing it in the tables itself but for some reason the correction table USERCOR1.DAT is seen by the CMU but doesn't do anything while checking it.
Has any of you got the 5.20 version? I only need that part of the cmu firmware as all my other versions uptill 5.10 did not accept the file.
To show the progress I will share some pictures of the band 5 adjustment (>2200mhz) In the first picture I had used extreme deviations of 20 which ends up giving approx 10dB difference. The other files are made after I recalculated the correction values. Goal ofcourse it to get a flat line (even though the CMU has a uncertaincy level of 0,9dB according the specs, so getting a straight line would be better than the specs of the CMU. As you see I'm getting close, actually very close sometimes, but in between frequencys not being part of the correction frequencies cause some strange spikes.
Will dig into it deeper in upcomming weeks.