A transmitter comprising: an input; an analog in-phase/quadrature, I/Q, modulator; a calibration memory configured to store a plurality of discrete calibration test points (m1 - m8); a multiplexer coupled to said input positioned between said input and a compensator, with said multiplexer being configured to be responsive to a control signal for providing the plurality of discrete calibration test points (m1 - m8) to said compensator during a calibration phase, and providing in-phase and quadrature data from said input to said compensator for compensation during an operation phase; said compensator being coupled to said multiplexer and said I/Q modulator via a digital-to-analog converter and configured to input said calibration test points (m1 - m8) to said I/Q modulator to generate a respective calibration carrier signal for each of the discrete calibration test points (m1 - m8) during the calibration phase; a detector coupled to an output of said I/Q modulator and configured to determine respective calibration values of the calibration carrier signals during the calibration phase, said detector configured as an envelope detector, as a log detector or an RMS detector; an analog-to-digital converter coupled to said detector, said analog-to-digital converter adapted to convert an output of the detector to digital values; a compensator calculator configured to generate, based on the calibration values of the calibration carrier signals, compensation values for gain, phase and DC offsets for said compensator for use during the operation phase; a serial interface between said analog-to-digital converter and said compensator calculator; and wherein the discrete calibration test points are randomly applied to the compensator, and wherein said compensator calculator is configured to generate the compensation values via a series of iterative steps. an input; an analog in-phase/quadrature, I/Q, modulator; a calibration memory configured to store a plurality of discrete calibration test points (m1 - m8); a multiplexer coupled to said input positioned between said input and a compensator, with said multiplexer being configured to be responsive to a control signal for providing the plurality of discrete calibration test points (m1 - m8) to said compensator during a calibration phase, and providing in-phase and quadrature data from said input to said compensator for compensation during an operation phase; said compensator being coupled to said multiplexer and said I/Q modulator via a digital-to-analog converter and configured to input said calibration test points (m1 - m8) to said I/Q modulator to generate a respective calibration carrier signal for each of the discrete calibration test points (m1 - m8) during the calibration phase; a detector coupled to an output of said I/Q modulator and configured to determine respective calibration values of the calibration carrier signals during the calibration phase, said detector configured as an envelope detector, as a log detector or an RMS detector; an analog-to-digital converter coupled to said detector, said analog-to-digital converter adapted to convert an output of the detector to digital values; a compensator calculator configured to generate, based on the calibration values of the calibration carrier signals, compensation values for gain, phase and DC offsets for said compensator for use during the operation phase; a serial interface between said analog-to-digital converter and said compensator calculator; and wherein the discrete calibration test points are randomly applied to the compensator, and wherein said compensator calculator is configured to generate the compensation values via a series of iterative steps.