Kitz Forum

Broadband Related => Broadband Hardware => Topic started by: roseway on May 14, 2013, 07:09:40 PM

Title: Broadcom retrain codes
Post by: roseway on May 14, 2013, 07:09:40 PM
This is a subject which comes up from time to time, and it seems to be time to raise it again. There was a useful discussion about it, starting at http://forum.kitz.co.uk/index.php/topic,11349.msg220024.html#msg220024 . Codes defined in the Broadcom source are:

Code: [Select]
/*  line-drop reason code */
#define kRetrainReasonLosDetector                   0
#define kRetrainReasonRdiDetector                   1
#define kRetrainReasonNegativeMargin                2
#define kRetrainReasonTooManyUsFEC                  3
#define kRetrainReasonCReverb1Misdetection          4
#define kRetrainReasonTeqDsp                        5
#define kRetrainReasonAnsiTonePowerChange           6
#define kRetrainReasonIfftSizeChange                7
#define kRetrainReasonRackChange                    8
#define kRetrainReasonVendorIdSync                  9
#define kRetrainReasonTargetMarginSync             10
#define kRetrainReasonToneOrderingException        11
#define kRetrainReasonCommandHandler               12
#define kRetrainReasonDslStartPhysicalLayerCmd     13
#define kRetrainReasonUnknown                      14
#define kRetrainReasonG992Failure                  15
#define kRetrainReasonSes                          16
#define kRetrainReasonCoMinMargin                  17

An unexplained code which is commonly seen is 8000, and other codes seen are 8800 and (possibly) 2000.

Can anyone add anything to this?

Title: Re: Broadcom retrain codes
Post by: asbokid on May 14, 2013, 07:50:12 PM
It's understood that those codes are values for bitwise left shift operations.

e.g. 

1<<15 (or 2^15) is 0x8000 (Retrain Reason: G992 Failure)

1<<13 (or 2^13) is 0x2000 (Retrain Reason: DSL Start Physical Layer Cmd)

cheers, a

EDIT: so combining 0x8000 and 0x800 ((1<<15) & (1<<11)) suggests a G992 Failure because of a Tone Ordering Exception.

Could be wrong though  :blush:
Title: Re: Broadcom retrain codes
Post by: ryant704 on May 14, 2013, 08:07:42 PM
:)

I always appear to get 2 when a full DLM is done though the SNRM isn't negative of target (6db).

I've had it in 1 for a week but only once, currently sitting at 0 with a 24 day sync.
Title: Re: Broadcom retrain codes
Post by: Bald_Eagle1 on May 14, 2013, 08:20:31 PM
I believe the 8xxx & 2xxx codes are from ADSL connections.


On VDSL2 connections, the usual codes are:-

0 = Reboot/power disconnection - possibly actually Loss of Frame or Loss of Signal
2 = DLM initiated resync or from changing a modem setting that needs a resync to accept it.

I have rarely seen reason 1 - don't actually know what it signifies though

Very, very rarely, I have seen reason 3 & reason 4 on a couple of connections - again, I'm not sure what they signify.

I haven't seen ANY of the other codes, even when remotely monitoring a few VERY poor VDSL2 connections.
Title: Re: Broadcom retrain codes
Post by: asbokid on May 14, 2013, 08:22:06 PM
2 is equivalent to 1<<1 (Retrain Reason: RDI Detector)

ColinS linked to a couple of good references to RDI or Remote Defect Indication here: [1]

RDI cells are an OAM function of the ATM layer (PTM too?) "used for reporting remote defect indications in the backward direction" according to  [2]

cheers, a

[1] http://forum.kitz.co.uk/index.php/topic,11349.msg220805.html#msg220805
[2] http://www.amazon.com/Implementation-Applications-Technology-Philip-Golden/dp/0849334233
Title: Re: Broadcom retrain codes
Post by: ColinS on May 14, 2013, 09:10:10 PM
2 is equivalent to 1<<1 (Retrain Reason: RDI Detector)

ColinS linked to a couple of good references to RDI or Remote Defect Indication here: [1]
Gosh!  :blush:

Errm, actually I think the (use of the) values do seem to be different between ADSL and VDSL, just as Paul (BE1) has said.  Even more :-[ I think I am the one who got the weird 3's & 4's he mentions at the time of my voice fault shortly after I went FTTC.  I have also seen 2000s, 8000s & 8800s back last year on ADSL when the Gas Board were digging up the road alongside my E-side for a couple of months, and it was causing me grief. :(

I had the impression wrt to the RDI description that it was on ADSL where - on BE as I was at the time - it's IPoEoA.  Since VDSL uses an 'Ethernet-like' PTM transport instead, I doubt it does apply here.

So, we're all right here - a bit each!  ;D
Title: Re: Broadcom retrain codes
Post by: kitz on August 05, 2013, 08:02:04 PM
Just to add to this for posterity  - VDSL connection, HG612 modem.

Retrain Reason: 2

Does also seem to cover "Negative SNRM" here.
ie when phone rings, if SNRM plummets and dsl connection is lost.
Title: Re: Broadcom retrain codes
Post by: kitz on August 13, 2013, 11:12:59 PM
Quote
On VDSL2 connections, the usual codes are:-

../..
Very, very rarely, I have seen reason 3 & reason 4 on a couple of connections


Oops before I forget

Quote
Retrain Reason:   3

Engineer testing from the cab caused my line to d/c
Title: Re: Broadcom retrain codes
Post by: ColinS on August 13, 2013, 11:41:33 PM
On VDSL2 connections, the usual codes are:-
Retrain Reason:   3
Engineer testing
Just a bit of fun ;D
Title: Re: Broadcom retrain codes
Post by: kitz on August 30, 2013, 08:40:52 PM
 :lol:  ^

...  and to further update..  I seem to get 0 if I do a manual reboot.

So far confirmed (by me) seems to be

0 = manual resync/reboot by the EU
2= loss of sync due to low SNRm
3= remote disconnection.

which is unfortunately & stangely not the same as BE's observations :(
Title: Re: Broadcom retrain codes
Post by: ryant704 on September 03, 2013, 12:21:35 PM
2 isn't negative just applied when you have a negative SNRM. I have 15SNRM down and 8SNRM up, 2 is used when the DLM intervenes and a re-sync is needed. Currently banded due to powercuts :(
Title: Re: Broadcom retrain codes
Post by: boe323 on October 14, 2013, 09:35:09 AM
2 as always been tied down to the dlm initiating a resync, if you look at your stats after the dlm as ordered the resync, you will see loads of errors, my guess is that the dlm onpurpose causes the errors to force the resync.(just a guess)
Title: Re: Broadcom retrain codes
Post by: burakkucat on October 14, 2013, 09:06:45 PM
Please see replies No.1 & 4, above, from Asbokid.

Quote
It's understood that those codes are values for bitwise left shift operations.

Quote
2 is equivalent to 1<<1 (Retrain Reason: RDI Detector)

In other words, 'Retrain Reason: 2' is stating that 'RDI Detector' was the cause of the retrain.  :)
Title: Re: Broadcom retrain codes
Post by: ryant704 on October 21, 2013, 11:14:40 AM
What does this actually mean?

#define kRetrainReasonAnsiTonePowerChange           6

I currently have a Retrain Reason: 6
Title: Re: Broadcom retrain codes
Post by: burakkucat on October 21, 2013, 06:38:52 PM
Retrain reason: 6

6 == 4 + 2 == (2^2) + (2^1) == (1<<2) + (1<<1)

So a combination of RdiDetector and NegativeMargin, perhaps?  :-\

I'm confused.  ???  Has anyone seen ColinS recently? He may be able to explain things . . .
Title: Re: Broadcom retrain codes
Post by: ryant704 on October 21, 2013, 07:15:49 PM
No negative margins here cpt'n Percy! (had 8DB margin before re-sync on all bands).

Title: Re: Broadcom retrain codes
Post by: kitz on October 21, 2013, 10:56:11 PM
Yes, where is ColinS  I havent seen him for a few days, hope he's ok.
Title: Re: Broadcom retrain codes
Post by: ryant704 on October 22, 2013, 07:08:18 PM
So Retrain 1 now! :)

RdiDetector

What does it actually mean though, anyone got any ideas?
Title: Re: Broadcom retrain codes
Post by: Greybeard33 on October 22, 2013, 09:18:43 PM
So Retrain 1 now! :)

RdiDetector

What does it actually mean though, anyone got any ideas?
Remote Defect Indication Detector -
Quote
RDI cells are an OAM function of the ATM layer (PTM too?) "used for reporting remote defect indications in the backward direction"
from Asbokid's post earlier in this thread - not sure I understand this! Although on the "values for bitwise left shift operations" interpretation of the Broadcom codes, advocated by Asbokid, Reason 1 becomes Code 0, LOS Detector (Loss Of Signal?), i.e. 1=2^0. RDI Detector is Reason 2 (2^1) on this interpretation.

I also had a Reason 1 shortly after getting the new firmware - it seemed to be a DLM resync, that was always a Reason 2 with the old firmware. I suspect, based on the very limited evidence so far, that the meanings of the Retrain Reasons may have changed in the new firmware. We have both seen a Reason 1, which was very rare before, and you have also had a Reason 6 - unheard of before?
Title: Re: Broadcom retrain codes
Post by: NewtronStar on November 25, 2013, 06:07:21 PM
Just had a retrain reason 6 and also using the new firmware, the retrain came in at 4:am 25/11/2013 after I powered off the HG612 at 10pm 24/11/2013
Title: Re: Broadcom retrain codes
Post by: bilbokitz on November 25, 2017, 07:39:45 PM
Anyone know what retain reason 10000 is?  I had a resync this afternoon and that is the reason specified.

Looks like I had severely errored seconds at that time for some reason.
Title: Re: Broadcom retrain codes
Post by: ejs on November 25, 2017, 08:36:24 PM
1<<16 = 0x10000 kRetrainReasonSes

I don't think these codes really matter much, it's not like if you see a certain code that means you need to call out Openreach.
Title: Re: Broadcom retrain codes
Post by: hacktrix2006 on February 07, 2019, 04:57:51 PM
Does anyone know what Last Retrain Reason: 100000 is? Its a new one to me as well.

Title: Re: Broadcom retrain codes
Post by: ejs on February 07, 2019, 06:26:41 PM
It's unlikely anyone will know, because that list of retrain reason numbers comes from the non-open source parts of the Broadcom code. A couple of very old versions appear to have escaped into the wild by accident, but it would appear no-one has accidentally distributed any more recent versions, or if they have, no-one has noticed.