Using IMU's other than BMI160 with the Isaac imu calibration package

I found an IMU calibration package inside isaac/sdk/apps/samples. I connected the BMI160 directly to Xavier using jumpers as instructed here(Wire the BMI160 IMU to the Jetson Nano or Xavier — ISAAC 2020.2 documentation). The nodes and edges were customized to work with bmi160 imu.iio binaries. Since, there isn’t a lot of documentation regarding this, I wanted to know more about

1. Algorithm behind the method (Calibration).
2. How to use this package to calibrate other IMU. Changes that are needed? ( Providing samples codelets to accomplish that will be very helpful). 
3. Are there any built in tools to visualize IMU orientation output?

Essentially I would like to known how to use this package to calibrate other IMU’s ?