1. A method for recovering transmission errors comprising: receiving, at a receiver, a data comprising an error detection code associated to data contained in the packet, wherein the data associated to the error detection code comprises primary data and secondary data; checking, by the receiver, the error detection code of the received packet to detect an erroneous state of the associated data, when the erroneous state is detected; determining, by the receiver, a finite set of candidate values for the primary data and, for each candidate values of the set; determining, by the receiver, a marginal likelihood of the candidate value over the secondary data as a function of the error detection code of the received packet, determining a first correlation between the primary data of the received packet and the candidate value; and selecting, by the receiver, a corrected value for the primary data among the set of candidate values as a function of said marginal likelihoods and said first correlations.