Osmium MIMU22BT & MIMU22BTP Tutorials

The Osmium MIMU22BTP: Live Demo

The video demonstrates how to use foot-mounted sensor (IMU) - the Osmium MIMU22BTP - for pedestrian navigation w/o GPS or any other infrastructure. Follow simple steps as mentioned in the video to connect MIMU22BT with the Android Application DaRe and collect realtime pedestrian navigation data.

Note that the DaRe version which is available for download from Play Store, does not support data logging.

Please visit Support-->Resources section to get DaRe's download link, user manual and application note.
(This video has audio.)

Recommended Mounting Scheme

The sensor performance is sensitive to its mounting. Point to note - It must be firmly mounted / attached with the shoe. It must not shake with foot movement. We have been recommending this scheme for quite sometime for good results, though little cumbersome. We suggest our plastic fixtures for quick demo only. Read video description in YouTube for finer details. A short comparative study (3.8MB).

Tracking performance also depends upon wearer's gait and hence many other factors which could influence wearer's gait like type, design & fitting of shoe, terrain, physiological & psychological factors etc. In a nutshell, firm footing results in good tracking performance.

Sensors' Data Acquisition

This video demonstrates collection and plotting data of all the accelerometers’ and gyroscopes’ present in Osmium MIMU22BT / MIMU22BTP module, using USB. Connect MIMU22BT / MIMU22BTP to computer, with USB data cable. Note the COM port # and edit Matlab script as demonstrated in the video.

Please visit Support-->Resources section to obtain matlab scripts and instruction manual.

Realtime Tracking Using BlueTooth

This video demonstrates collection and plotting of tracking data of Osmium MIMU22BT / MIMU22BTP in real-time, using BlueTooth, on a computer with Matlab installed. Connect MIMU22BT / MIMU22BTP to BlueTooth enable computer, note down the COM port # and edit Matlab file as demonstrated.

Please visit Support-->Resources section to obtain matlab scripts and instruction manual.

Realtime Tracking Using USB

This video demonstrates collection and plotting of tracking data of Osmium MIMU22BT / MIMU22BTP in real-time, using USB, on a computer with Matlab installed. Connect MIMU22BT / MIMU22BTP to computer, with USB data cable. Note the COM port # and edit Matlab script as demonstrated in the video.

Please visit Support-->Resources section to obtain matlab scripts and instruction manual.

Programming Using AVR Dragon

This slideshow carries all the necessary instructions, in extremely simple and interactive way, required to program (i.e. update the embedded code of) Osmium MIMU22BT/MIMU22BTP (with and without connected battery) using Atmel Studio 6.2 and AVR Dragon. The output calibration file is used while programming MIMU22BT.

Refer "Programming Using USB Bootloader Cable" to program the devices without JTAG cable and programmer.

Please visit Support-->Resources section to obtain code and programming instruction manual.

Programming with USB Bootloader Cable

This tutorial demonstrates programming of the Osmium devices (MIMU22BTP / MIMU22BT / MIMU4X4C) using USB bootloader cable. It covers basic introduction, how to download and install required s/w and drivers etc. And finally programming using bootloader is demonstrated.

Refer "Programming Using AVR Dragon" to know how to generate executable using AVR Studio.

Please visit Support-->Resources section to obtain required files and programming instruction manual.

(This video has audio.)

Wireless Calibration

The "IMU array calibration method" estimates inter IMU misalignment and the gain, bias, and sensitivity axis non-orthogonality of the accelerometers. And correspondingly, there is calibration compensation in the embedded software.

Please visit Blog section to read article titled Inertial Sensor Array Calibration Made Easy ! dated 11-Sep 2014.

Osmium MIMU4444 & MIMU4X4C Tutorials

PDR with (MIMU4X4C + BMBT4444)

MIMU4X4C, when used with BMBT4444 and a battery, can be used for pedestrian navigation. This video demonstrates a 70 m to-and-fro walk on a straight line. Start and stop points and the headings are same. Android application DaRe is used for collecting data. DaRe performs PDR as well and gives out coordinates of each step.

Tracked path (246KB) as appears on Google Map

Estimated path: 1st (16KB), 2nd (16KB) and 3rd (18KB)

Sensors' Data Acquisition

This video demonstrates collection and plotting data of all the accelerometers’ and gyroscopes’ present in Osmium MIMU4444 module, using USB. Connect MIMU4444 to computer, with USB data cable. Note down the COM port # and edit Matlab files as demonstrated. Matlab files are common for MIMU22BT and MIMU4444.

Please visit Support-->Resources section to obtain matlab scripts and instruction manual.

Realtime Tracking With USB

This video demonstrates collection and plotting of tracking data of Osmium MIMU4444 in real-time, using USB, on a computer with Matlab installed. Connect MIMU4444 to computer, with USB data cable. Note the COM port # and edit Matlab file as demonstrated.

Please visit Support-->Resources section to obtain matlab scripts and instruction manual.

Programming Using AVR Dragon

This slideshow carries all the necessary instructions, in extremely simple and interactive way, required to program (i.e. update the embedded code of) Osmium MIMU4444 / MIMU4X4C using Atmel Studio 6.2 and AVR Dragon.

Refer "Programming Using USB Bootloader Cable" to program the devices without JTAG cable and programmer.

Please visit Support-->Resources section to obtain code and programming instruction manual.

IMU Array Calibration

The "IMU array calibration" method estimates inter IMU misalignment and the gain, bias, and sensitivity axis non-orthogonality of the accelerometers. And correspondingly, there is calibration compensation in the embedded s/w. Click here to know about the "IMU array calibration method" we follow. The output calibration file is used while programming MIMU4444.

Please visit Blog section to read article titled Inertial Sensor Array Calibration Made Easy ! dated 11-Sep 2014.

Realtime Tracking Using BlueTooth (Osmium MIMU4X4C + BMBT4444)

This video demonstrates collection and plotting of tracking data of Osmium MIMU4X4C + BMBT4444 integrated device in real-time, using BlueTooth, on a computer with Matlab installed. Connect the integrated device to BlueTooth enable computer, note down the COM port # and edit Matlab file as demonstrated.

Please visit Support-->Resources section to obtain matlab scripts and instruction manual.

The embedded codes of Osmium MIMU22BTP/MIMU22BT and MIMU4444/MIMU4X4C are opensource. Did I get it right?

Yes. The embedded code of MIMU22BTP / MIMU22BT and MIMU4444 / MIMU4X4C platforms are released under the permissive open source Creative Commons Attribution 4.0 International Public License.

Our organization needs a formal Quotation / Proforma Invoice. What should I do?

Please send your request for quotation to sales@inertialelements.com

What is the lead time to ship and the shipping method?

We ship in-stock items within 2 days after receiving order. It is fair to assume lead time of approximately 3 weeks for pre-stock orders. We ship international orders by Fedex International Priority or UPS Worldwide Express Saver.

I'd like to know the average shipping delays to my country ?

We ship the order within 2 working days from receiving the payment. Typically it takes nearly 1 week or even less for shipping transition to any country in North America, Europe, Australia etc. As per our experience, custom clearance process takes longer in China than any other country.

Who can place order online using PayPal payment gateway?

We accept international orders online using PayPal payment gateway. We would soon enable online purchase within India also. Meanwhile, please mail to sales@inertialelements.com for placing your domestic purchase order.

Do you accept payment by Wire Transfer (TT)?

Yes. We do. On your request, we share our bank details with you for wire transfer (TT). Please write to sales@inertialelements.com

What are the payment options for purchase within India ?

NEFT is the preferred option. Write to us for NEFT details. We also accept Demand Draft or Cheque in favor of GT Silicon Private Limited, payable at Kanpur.

Can you ship the order on our shipping account ?

Why not. Please mail to sales@inertialelements.com.

We are interested in buying multiple units of MIMU22BTP / MIMU22BT / MIMU4444 / MIMU4X4C. Do you offer any discount ?

We may consider offering discount for purchase of 11 or more units of MIMU22BT and 5 or more units of MIMU4444 / MIMU4X4C. Please mail to sales@inertialelements.com for details.

Can you supply production quantity of Osmium platforms ?

Yes. We can supply Osmium platforms in production quantity. Please mail to sales@inertialelements.com for further details.

We are an engineering college and are interested in introducing lab exercises based on Osmium MIMU22BT and MIMU4444 modules in our course on Embedded Systems Design ?

We are interested in promoting the technology among students and research community. Please mail to sales@inertialelements.com for further discussion.

Are the Osmium MIMU platforms calibrated ?

Yes. The Osmium MIMU platforms are calibrated. The IMU array calibration method we follow, estimates inter IMU misalignment and the gain, bias, and sensitivity axis non-orthogonality of the accelerometers, under static conditions. And correspondingly, there is calibration compensation in the embedded software.

How frequent and when should the calibration be performed on MIMU22BT / MIMU22BTP and MIMU4444 / MIMU4X4C ?

For foot-mounted pedestrian tracking with Zero Velocity Update (ZUPT) algorithm, we did not notice any performance degradation with a one week old calibration as compared to a calibration which was few hours old. We never re-calibrated the modules because of deterioration in performance. On the other hand, module calibrated couple of months ago does not give any performance degradation.
In case of ZUPT, a step detection algorithm determines when the foot is static or in complete contact with ground. This serves as an input to calibrate the bias and the scale factor of the sensors on-the-fly. In nutshell, implemented algorithm and target application are the key to determine calibration methodology.

How do you take care of variations due to temperature ?

We have observed that core of the IMUs heat upto some extent (nearly 50 deg C) when those are operational. Therefore, we wait for couple of minutes to let temp stabilize, before initiating calibration process. Similarly the devices are turned on couple of minutes before tracking. This way, we try to limit impact of temp variation on performance.

We have evaluated the platform. We are satisfied with its performance. However, we would like to have some minor modifications in the circuit and alter the form factor. Do you take up hardware customization ?

We feel that the platforms are very flexible and can be adopted to a number of applications. If you still feel that customization is required to fit in your system, we can do so for a fixed fee or free with purchase of platforms in production quantity. Please contact $sale_email for details.

I believe that we will need the user_calibration.h file which you would have generated during the testing. Are you able to share that file with us please?

Sure, we can share user_calibration.h file. We have also started saving the entire Matlab calibration session for each device. This can help user in accessing intermediate variables of the calibration script. Please mail to mimu22bt@inertialelements.com for such request.

We monitored individual IMU's acceleration data and observed that errors in z-axis acceleration is higher as compared to x and y axis accelerations. Do you have any idea why the Z-axis is worse than the others?

Typically z-axis accelerometer does not have performance at par with x and y. This reflects in our final tracking data of MIMU22BT as well. This is due to the orientation of moving mechanical structures inside the IC and the MEMS fabrication process for fabricating such structures. Typically fabrication equipments and processes have somewhat inferior performance in z direction as compared to x and y. In summary, fabrication of z-axis accelerometer is tedious.

How effective is your calibration compensation ?

The IMU array calibration method we follow, estimates inter IMU misalignment and the gain, bias, and sensitivity axis non-orthogonality of the accelerometers under static conditions (stationary) only. Calibration is also not performed for a range of temperature and humidity. However our calibration compensation along with a suitable algorithm and error correction mechanism (ZUPT with EKF for foot-mounted pedestrial tracking) gives tracking data with superior accuracy on our platforms. We have demonstrated this with Osmium MIMU22BTP.

Is it possible to access intermediate data in Osmium MIMU ?

Yes. It is possible to access intermediate data. Please obtain Integration Guide and Osmium Communication Protocol from Support-->Resources section.

Can I load my own algorithm into Osmium devices ? If yes, what additional hardware and software tools are required for that ? Which language is used for writing the embedded code ?

Yes, user can program Osmium MIMU devices with his/her own C code using Atmel Studio 6.2 (the software tool) and JTAG programmer AVR Dragon (the hardware tool). Required JTAG cable (custom made) and USB cable can be ordered from us separately. To know the programming steps, please follow the video (slide show) titled \"Osmium MIMU22BT: Programming Using AVR Dragon\" in the section Osmium MIMU22BT Tutorials of the Home page.

I am getting error message like \"The drivers for this device are not installed\" when I connect Osmium boards first time with my laptop / desktop PC. Anything wrong with my procedure ?

It is actually the USB driver for MIMU22BT which is missing. Please install Atmel Studio 6.1 or 6.2 on your system. System automatically picks up USB driver from Atmel Studio. Without the driver, the device will not be detected as USB device as shown in the demo video.

Is the Atmel Studio 6.1 or 6.2 available for download online ?

Yes. It is freely downloadable from Atmel's website.

We have never used AVR Dragon before. We read on the Internet that it must be prepared by assembling a given set of connectors to it. Is this true ?

No extra assembly is required in AVR Dragon to program MIMU22BT / MIMU22BTP and MIMU4444 / MIMU4X4C. Please use our custom made JTAG cables for programming MIMU22BT / MIMU22BTP and MIMU4444 / MIMU4X4C using AVR Dragon.

Do you have firmware to make your modules work as AHRS ?

No. We do not have firmware to make our modules work as AHRS.

For our experiments with MIMU22BT / MIMU22BTP / MIMU4444 / MIMU4X4C, we want to acquire selective IMUs data using Matlab. Which means we want to acquire either any one or any two or any three at a time. Is it possible ?

Procedure for selecting IMUs is common for MIMU22BT / MIMU22BTP and MIMU4444 / MIMU4X4C. Number of IMUs will not exceed 4 for MIMU22BT / MIMU22BTP.
Example 1: To acquire data for IMUs # 0 and 3 from MIMU22BT / MIMU22BTP, make following changes in the Matlab code for data acquisition.
nr_imus=2; % Number of IMUs
fwrite(com,[40 0 0 0 9 1 0 50],'uint8');
Why 9 (position of active IMUs): (IMU#3 Required ==> 1) (IMU#2 Not Required ==> 0) (IMU#1 Not Required ==> 0) (IMU#0 Required ==>1) ==> 00001001 ==> 9
Why 0 50 (checksum): 40 + 0 + 0 + 0 + 9 + 1 = 0x256 + 50 = 50
Example 2: Lets say you want to acquire data for all the IMUs except # 31 and #25 from MIMU4444 / MIMU4X4C. Make following changes in the code.
nr_imus=30; % Number of IMUs
fwrite(com,[40 190 255 255 255 1 3 228],'uint8');
Why 190: 10111110 (IMUs # 31 and 25 Not Required) ==> 190
Why 255 255 255: 11111111-11111111-11111111 ==> IMUs # 24 to 17 required - IMUs # 16 to 9 required - IMUs # 8 to 1 required
Why 3 228 (checksum): 40 + 190 + 255 + 255 + 255 + 1 = 3x256 + 228 = 3 228

Should I worry about the local g value (acceleration due to gravity) for performing calibration ?

Yes. For calibration, the Osmium device must be programmed for local g value.

Is it possible to output the raw data (3 linear accels, 3 angular rates) from the 4 IMUs over bluetooth ?

Yes, it is possible to output accelero's and gyro's data from all 4 IMUs over bluetooth. Raw data transmission over bluetooth happens at lower rate than the actual sampling rate of sensors (1 KHz). This is because of serial communication (with baudrate of 115200) between Bluetooth and the on-board controller.
Command to access raw data from all 4 IMUs over Bluetooth: [40 0 0 0 15 4 0 59]
Note o/p rate divider value is 4. This means o/p data rate is 1/8th of internal sampling rate. Though o/p rate divider 2, i.e. o/p data rate is 1/2 of internal sampling rate, also works, 4 is the safer choice.

Our PC / laptop is unable to detect the Osmium MIMU devices over USB. Are we missing anything ?

Please install the device driver.
Please obtain USB device driver and its installation manual from Support-->Resources section.

Is there a specific JTAG cable to use for programming your sensor?

Yes, we do sell the customized JTAG programming cable for MIMU22BT / MIMU22BTP and MIMU4444 and MIMU4X4C. Check out Products section. Click here to see it.

Is the accelerometer range adjustable? I know it has a maximum of +/-16g but we are looking into adjusting for 6G, 8G or 10G depending on our application.

Possible accelerometers' ranges are +/-2g, +/-4g, +/-8g and +/-16g. And gyroscope's ranges are +/-250 deg/sec, +/-500 deg/sec, +/-1000 deg/sec and +/-2000 deg/sec. The default ranges for accelerometers and gyroscopes are +/-2g and +/-2000 deg/sec respectively. On your request we can give you an option of selecting accelerometer's and gyroscope's ranges by sending appropriate command from the application platform running Matlab or any other script.

We believe that fused data from IMU array would be of greater precision. Is it possible to use your modules as a normal \"wireless\" IMU, i.e. the fused data from sensors is available over Bluetooth ?

Yes. All our modules MIMU22BT / MIMU22BTP / MIMU4444 / MIMU4X4C can be used as a normal wireless IMU. The modules are capable of giving calibration compensated and fused data from the IMU array. This means the module can be used as a normal IMU which outputs 3-axis acceleration and 3-axis gyroscope data. This data is accessible @250Hz over Bluetooth interface. It is also possible to access data @500Hz, but we believe that reliability is higher at 250Hz. Note: Wired transmission of data, i.e. via USB, is possible @1KHz rate. It is also possible to change the data rate by using appropriate command. The maximum data supported is 1 KHz.

I've programmed sensor platforms with code available in Github. With that, I am unable to use Matlab scripts and the Android App DaRe with the sensors. Is the sensor programmed with code different that available on Github? If yes, can you share that ?

The code available in Github is the most updated version. However, we delayed loading the latest code in shipped devices until 24 Aug 2015. Your sensor is programmed with the latest code, if the invoice is raised on or after 24 Aug 2015. We are in the process of updating manuals.
Meanwhile, you may obtain the previous and the current versions of code in Support-->Resources section.

Is there a chance that the sensors might get damaged during the programming process ?

There is no possibility of damage if you use our JTAG cable, AVR Dragon and follow the process we recommend. Many users of our products have done it successfully by just going through our online videos and manuals. The only caution is to handle the internal assembly carefully, if you are programming MIMU22BTP. Twisting of battery wires should be avoided. Too much of twisting may result in loosening of soldering joints of battery wires. If the battery wires are short circuited, the sensor platform and/or the battery may get damaged.

Do I need a specific Bluetooth dongle to connect the MIMU22BT / MIMU22BTP / MIMU4X4C to my computer (running Win7) as it has no embedded Bluetooth card ?

There is no specific requirement. We too use a dongle with one of our PC. Just keep in mind that the dongle is compatible with Bluetooth v3.0 which is implemented in MIMU22BT / MIMU22BTP / BMBT4444.

Would I receive casing and battery also when I order MIMU22BT online?

You receive MIMU22BT boards without casing and battery when you place order online.

I am going to connect my own battery with MIMU22BT? Can you please list down instructions?

1. Do not connect any battery other than Li-ion battery.
2. Connect terminals of the battery to their respective position on board.
     Click here to see the image. Also note how to use MIMU22BT with battery and without casing.
3. Take extreme care in preventing shorting of battery terminals during soldering process and also possibility of short during normal operation.
4. Battery charging current is set at 100mA. Do not choose battery below 150mAH rating. It may affect battery's life.
5. Number of hours required for battery charging is approximately (Battery's amp rating in mAH)/100.

What is the difference between MIMU22BT (board only without battery and casing) and MIMU22BTP (Packaged with battery and casing)? Can you share some images of the MIMU22BTP module ?

MIMU22BT board is an inertial navigation platform, whereas MIMU22BTP is a complete pedestrian tracking device.
As the names suggest, MIMU22BTP is assembled with battery (Li-ion 150 mAH 3.7V) and casing (3D printed white casing).
We perform these tests on MIMU22BT boards (without casing and battery) before shipping (i) Sensors' raw acquisition using matlab (ii) Simple real time tracking (with USB), using matlab (iii) Simple real time tracking (with Bluetooth), using matlab. These are also demonstrated in the tutorial videos. Besides, we also ensure that battery power management unit works fine. We basically ensure that all the components are in working condition and the boards are free of any electrical fault.
In addition to the tests performed on MIMU22BT boards, each MIMU22BTP (with battery and casing) undergoes rigorous field testing (of approximately 1 hour, i.e. 3 Km in two different sessions) before shipping. As part of field testing. the device is mounted on foot and tested with our Android app DaRe for different tracks (straight line to-and-fro walk with sharp U-turns, walk in closed loop and long distance walk).
Please read our article titled "Foot Sensors for Indoor LBS and IoT Applications" dated 11-Jan-2016 in Blog section.
Click here and here to view photos of the MIMU22BTP module.

Can you give me the size information of the case and battery for MIMU22BT, so I can buy the batteries.

Casing's (external) dimensions are 23.5 mm X 31.0 mm X 13.5 mm. It can house battery of size 4.0 mm X 20 mm X 25 mm (402025).

Would it be possible to record the sensors' (accelero's and gyros') raw data wirelessly with foot mounted arrangement ?

We have serial port Bluetooth module in MIMU22BT with the maximum allowed baud rate of 115.2K. Therefore transmitting sensors' data at max (or even higher) sample frequency with Bluetooth is not possible. It can be done with reduced (lower) sampling rate. However, we dont recommend collecting raw data wirelessly. One can collect such realtime raw data using USB cable with laptop for foot mounted arrangement. Collecting raw data with cellphone/tab would require a different Android application with suitable USB driver. DaRe does not support data collection with USB cable.

I would not like to mount on a foot ( ofcourse that will help us a lot to compensate drift of Inertial sensors). How about carrying an MIMU22BT / MIMU22BTP in a hand, just like a mobile phone, in hand/pocket ?

Our embedded code programs MIMU22BT / MIMU22BTP as a ZUPT based tracking sensor. This means that MIMU22BT / MIMU22BTP, with our code, would operate as a foot mounted tracking device. In order to use MIMU22BT differently, appropriate code/algorithm is required. Carrying MIMU22BT / MIMU22BTP (programmed with our code as is) in hand or pocket will not give desired tracking result.

Can you give some instructions on recommended mounting scheme of MIMU22BTP. Do you think that with those instructions we will be able to track wearer walking fast ?

Click here to watch a video demonstration of quick mounting scheme. Please note that achieving right mounting is an iterative process. We emphasize on the point that this mounting scheme is for quick demo only. We believe that, in the normal scenario, device gives best performance when it is embedded in the shoe sole or heel.
The device performance is sensitive to its mounting. Click here to download the comparative study on mounting schemes. Overall data quality improves significantly with mounting. If mounted properly, device gives good quality data upto 5 kmph. Though data starts deteriorating beyond that, it should be fine for tracking, say upto 5.5 to 6 kmph.
The tracking data quality also depends upon wearer's gait and hence many other factors which could influence wearer's gait like type & design of shoe, terrain, physiological & psychological factors etc. Firm foot on the ground generates good quality tracking data even for faster motion.

We want to fine tune MIMU22BT / MIMU22BTP to get better results for fast motion. Can you suggest any parameter whose tuning would help ?

One can increase the threshold velocity for step detection (TH_ZUPT), say 1000000 to 1200000. Refer line # 29 in file openshoe-algorithms-***\src\config\conf_MIMU22BT.h. Doing so can slightly improve tracking performance of the device for fast motion. However it may result in slight performance loss for slower motion.

We have to modify embedded code of MIMU22BT to implement some of the required features for our application. We have downloaded the code. Can you suggest (i) formula to calculate acceleration due to gravity (g) and (ii) where to update its value in the code ?

(i) Latitude of the place of action and its height above sea level are required to find out the local gravity. Here is an online gravity calculator.
(ii) You have to update value of g only in one place. The unit to be used is m/s^2. File: openshoe-algorithms-***\src\nav_eq.c Line # 80: precision g=9.78015f;

What is the axis orientation of MIMU22BT/MIMU22BTP ?

Click here to know the orientation. If MIMU22BTP is mounted horizontally (with connector facing front) on toes, the wearer would start walking along negative y-axis. The positive x-axis would be on the right hand side of the wearer.

Can you tell the procedure to get tracking data from Osmium over Bluetooth ?

These steps need to be executed on the application platform to get setpwise dead reckoning data from Osmium -
(i) START command
(ii) ACK
(iii) SWDR (Data construction)
(iv) STOP commands at the end.
Osmium transmits 64-bytes tracking data on every ZUPT instance, i.e. whenever step (or complete standstill of Osmium) is detected. If ZUPT instance remains for sometime, Osmium keeps sending tracking data at regular intervals. Tracking data consists of displacement (in meter) in xyz directions w.r.t to Osmium's coordinate axis. It also transmits change in orientation (i.e angle in radians) of x-y place around z-axis. Please refer Application Note on Stepwise Dead Reckoning (in support section of MIMU22BT)for details.

We can get the stepwise dead reckoning data packet from Osmium by BT - \"AA 00 01 3A 38 B0 24 C9 B9 85 03 9F B9 88 CA EF BA 74 5B F0 37 01 78 A7 29 6F 92 83 2D 80 5C D5 B0 44 D1 B3 37 01 78 AA AE 81 1C 4F AF 96 AA 63 37 01 36 AE 2A D0 B2 3E 36 5A D4 46 00 01 1B 5E‍\". Could you tell me if this is correct ?

The hex data from the module seems to be correct. This is the first (packet number = 0x0001) data packet (0xAA = 170) with payload size (0x3A) 58 bytes. Displacement in x, y and z are x38B024C9 (+8.399E-5m), xB985039F(-2.537E-4m) and xB988CAEF(-2.609E-4m) respectively. Change in orientation of x-y plane about z-axis is xBA745BF0 (-9.322E-4 radians). As per the given data, the module is (almost) stationary. Note that x, y and z are type float (IEEE754 Single precision 32-bit). Click here for an online float to decimal converter.

I get the correct tracking data from Osmium, in HEX. But don't know why I always get the first data packet even when I walk a long way ?

Osmium expects ACK data from the application platform in acknowledgement to each data packet it sends. It keeps sending the data packet for which it does not receive ACK. If you are getting the first data packet repetitively, then this means that Osmium has not received ACK.

Can you share sample of 64-bytes raw stepwise dead reckoning data packet as it is transmitted by Osmium in response to START command (0x14 0x00 0x14) from the application platform ?

Click here to see the 64-bytes SWDR data packet sample. The SWDR data packet consists of header (1 byte), data packet number (2 bytes), payload size (1 byte), payload (58 bytes) and checksum (2 bytes). Header and payload size are 0xAA (170) and 0x3A (58) respectively.

Is it possible to output the raw data (3 linear accels, 3 angular rates) from the 4 IMUs over bluetooth ?

Yes, it is possible to output accelero's and gyro's data from all 4 IMUs over bluetooth. Raw data transmission over bluetooth happens at lower rate than the actual sampling rate of sensors (1 KHz). This is because of serial communication (with baudrate of 115200) between Bluetooth and the on-board controller.
Command to access raw data from all 4 IMUs over Bluetooth: [40 0 0 0 15 4 0 59]
Note o/p rate divider value is 4. This means o/p data rate is 1/8th of internal sampling rate. Though o/p rate divider 2, i.e. o/p data rate is 1/2 of internal sampling rate, also works, 4 is the safer choice.

We'll finally have to solder battery wire to MIMU22BT board. The soldering pads appear small and quite close on the board. This may result in short circuit during the soldering process and hence may damage MIMU22BT. Can you please solder wires of 1 cm length on the board.

Yes, the pads are quite close. Hence soldering battery requires good soldering expertise. If you wish, we can solder two 1 cm wires to the battery pads on the board. That will allow you to solder the battery easily to the wires. There are two possible ways to solder the wires, (A) and (B) as in the image here. Let us know your choice and we'll do it for you without any extra cost.

Can you help me in building an interfacing pedestrian dead reckoning (PDR) application for MIMU22BT / MIMU22BTP?

One of the user of MIMU22BT has pushed a Python code (for pedestroam dead reckoning) on Github. This code would allow you to collect stepwise dead reckoning data over Bluetooth and construct the tracked path on your desktop PC. The code can be run on linux OS. Click here to access the code.
Running on Windows would need few changes.
Please obtain the Application Note from Support-->Resources section.

Is the stepwise dead reckoning output data (i.e. x,y,z coordinates) available in text format ?

Yes. The output stepwise dead reckoning data (either from Matlab or Android app) is available in text format.
Please obtain sample output file from Android app DaRe and the description of output format from Support-->Resources section.
Note that the DaRe version available in Google Play store, does not support data logging. Please write to us if you need data logging.

Does your Android application DaRe support dual foot mounted tracking ? If not, can you tell us how to implement dual-foot mounted scheme ? Any special instruction to follow ?

No. DaRe supports data communication with single Bluetooth device only. Hence only single foot mounted tracking is supported. One can implement dual foot mounted scheme with two MIMU22BTs, one attached to each foot. Both the units must have same or similar orientation. Data fusion is performed on the application platform. In order to develop suitable application platform, following documents may be referred
(i) Algorithm to fuse data from both the feet: Dave Zachariah, Isaac Skog, Magnus Jansson, Peter Händel, \"Bayesian Estimation With Distance Bounds\", IEEE Signal Processing Letters, Vol. 19, No. 12, December 2012
(ii) Overall system architecture: John-Olof Nilsson, Dave Zachariah, Isaac Skog, Peter Händel, Cooperative localization by dual foot-mounted inertial sensors and inter-agent ranging

MIMU4x4C, without BMBT4444 mounted, gives error when connected with the PC. It becomes possible to connect MIMUU4X4C board with PC (via USB), with BMBT4444 mounted. Please help.

In order to use MIMU4X4C without BMBT4444, you must short two pins (VIN and 5V) on MIMU4X4C board, using a jumper, all the time. Click here to see the image

Scripts, Codes, Manuals etc