« first day (2 days earlier)      last day (18 days later) » 

12:17 PM
Now I am coming to your second question: I connected motor drivers encoder pins to motors. Do I need a microcontroller to get information about the step losses or precision of the motor? or motor and driver will handle by themself ?
It is a bit confusing, perhaps you got the direction of the encoder signals wrong. The user manual says the following:
User guide Section 3.2 Connector P3 says the following:
The P3 connector in Figure 2 is for encoder signal connection. Refer to the following table for details, ...
It appears that the motor's encoder signal is an output signal, inputting to the encoder input connector of the driver. In other words, the stepper motor driver reads/inputs the output signal from the motor encoder and then calculates the speed (from step pulses per unit time (per second) and/or the distance moved.
Now I am using my stepper motor with encoder (20 signals per revolution, or 360 degrees / 20 = 18 degrees every signal) to prove my concept.
Now I have written a new function to do the testing/calibration:
def testTmc2225V02(): # 1/4 microstepping, CCW, 2,000,000 1m2 step pulses
    printProgramName() # Print program name, author name, data
    tmcSetOneFourthStep(ms1PinNum, ms2PinNum) # Set microstepping resolution 1/4
    tmcSetDirCcw(dirPinNum = 21) # Set direction CCW
    tmcSendOneMilliSecondStepPulses(stepPinNum = 22, pulsesTotal = 2000000) # Send 2000000 1ms width step pulses
    return
I run the function testTmx2225V01() and use my scope to display (1) the step pulse, and (2) the encoder output signal:
 

« first day (2 days earlier)      last day (18 days later) »