I said "it is finished", and straight away, there’s a new version, v3.01. The config module that supplies data to the program about what is expected behaviour for the various lines/modems has been upgraded; it now offers a
pair of values, min and max SNRM, per link per up/down direction, whereas before there was just one configured SNRM ‘target’ value. Now if a modem goes outside the min-max range the tool displays warnings, whereas before it just used calculated min and max values, derived from one single target SNRM value by multiplying by fixed multipliers, and the old way you could not have lines with very different behaviour in respect of their daily SNRM variation (or none). My Line #2 upstream goes up and down like a yo-yo every day but that’s just natural for that line and now that link’s min and max SNRM values are set wide apart to handle this. The other links have min and max values set fairly close together for the normal case.
It may never be finished. I might carry on tweaking it and improving it from time to time. I’m already thinking about ‘individual specific disease detector’ modules, the first of which might be a ‘
hollow curve’ disease detector module. I haven’t decided that I’m definitely going to do this, not yet. I would like to get hold of some bit-loading vs tones graphs for other lines, especially a very fast ADSL2+ one and some VDSL2 ones.
Thanks to Kitz for posting her
adsl info —stats. I ran my program on Kitz’s data file as input, found one small bug and made one very small adjustment and now it works perfectly with a simulated ZyXel 8x24 modem doing VDSL2. Fortunately the program has very wide tolerances for acceptance of syntactically irrelevant or extraneous content in the input from the modem. The differences in syntactic format that mattered to me between Kitz’s file and the output from my own VMG1312-B10A were extremely minor. Some debugging of regexes was required where one model used tabs and the other used spaces in one place, and I had stupidly made assumptions about which was used, very naughty and not my usual way at all. For testing and debugging regexes I do love the
https://regex101.com/ website, and I give them donations when I can. The program ticked Kitz off for excessively high SNRM, ie above configured max. That was one example that showed it was parsing and picking up the detailed data items in the file properly.