Gait analysis

September 27th, 2016

Finally a video of some of our ongo­ing research …

Progress in MIMU research

September 27th, 2016

Over the last years we have spent a sig­nif­i­cant research effort on analy­sis of the multiple-IMU (MIMU) sys­tems and plat­forms we have built. Recently we have had result of two major efforts published:


I. Skog, J.-O. Nils­son, P. Hän­del, A. Neho­rai, “Iner­tial Sen­sor Arrays, Max­i­mum Like­li­hood, and Cramér–Rao Bound”, IEEE Trans­ac­tions on Sig­nal Pro­cess­ing, vol. 64, no. 16, pp. 4218 — 4227, 2016.

The arti­cle con­tains the first esti­ma­tion the­o­ret­i­cal for­mu­la­tion and analy­sis of MIMU sys­tems. The for­mu­la­tion makes it pos­si­ble to analys fun­da­men­tal prop­er­ties of such sys­tems and to derive effi­cient esti­ma­tors. In the article,we:

  • Derive bound on the achiev­able per­for­mance of MIMU-systems
  • Sug­gest an effi­cient (achiev­ing the bounds) maximum-likelihood esti­ma­tors for such systems
  • Ana­lyze the prop­er­ties and per­for­mance of MIMU-systems by sim­u­la­tions an exper­i­men­tal data


J.-O. Nils­son and I. Skog, “Iner­tial sen­sor arrays — a lit­er­a­ture sur­vey”, Proc. of 2016 Euro­pean Nav­i­ga­tion Con­fer­ence (ENC), 30 May — 2 June, Helsinki, Fin­land, 2016.

Work­ing with MIMU sys­tems, we have come to real­ize that the related results are very much spread out and poorly cross­cited. There­fore, we com­piled a lit­er­a­ture sur­vey con­sist­ing of some +300 pub­li­ca­tions, cat­e­go­rized accord­ing to array setup, study area and appli­ca­tion. The sur­vey also con­tains a descrip­tion of fun­da­men­tal sys­tem prop­er­ties of iner­tial arrays. Our hope is that the sur­vey will pro­vide the inter­ested reader with an overview of the topic and inspire fur­ther research in an area where the rapid devel­op­ment of sen­sor and com­pu­ta­tional tech­nolo­gies pro­vides many new opportunities.

Software updates

September 27th, 2016

I see there has been almost a year since last update. In other words, time for some updates! I will start with some mod­ules soft­ware updates. I’ve recently pushed some soft­ware updates for the embed­ded code. The main updates are:

  • Sup­port for read­ing out mag­ne­tome­ter data from the IMUs
  • Bug­fix for the loss­less com­mu­ni­ca­tion mode. A bug pre­vented pack­ages from being resent.

In addi­tion, numer­ous small improve­ment and mod­i­fi­ca­tions have been made.

The embed­ded soft­ware can be found at:

Software updates

September 30th, 2015

Recently there has been a num­ber of soft­ware updates on source forge:

1. The com­mu­ni­ca­tion logic has now been iso­lated from the hard­ware depen­den­cies and the UART (Blue­tooth) and the USB is now han­dled by the same rou­tines. Pre­vi­ously the com­mu­ni­ca­tion logic code was dupli­cated to han­dle the two interfaces.

2. The project files have now been upgraded from Atmel Stu­dio 6.5 to Atmel Stu­dio 7.

3. The Atmel Soft­ware Frame­work (ASF) has been updated from ver­sion 2.7 to ver­sion 3.18. Fur­ther, all ASF/platform depen­den­cies have been removed from the algo­rithms so there is no ASF stuff longer in the algo­rithm project.

Updated low-level communication routines

March 9th, 2015

Over the last weeks I’ve updated the low-level com­mu­ni­ca­tion rou­tines in the embed­ded code. This should be the end of the clean-up and update of the com­mu­ni­ca­tion inter­faces over the last two month. Now the USB and the Blue­tooth inter­faces should behave iden­ti­cal, apart from the lower band­width of the Blue­tooth inter­face. Fur­ther, both inter­faces are now dou­ble buffered giv­ing a slightly bet­ter per­for­mance. Over­all these changes should not affect high level usage of the mod­ules. What remains to be done is to actu­ally merge the com­mu­ni­ca­tion log­ics of the two dif­fer­ent inter­faces. Now there is a lot of code dupli­ca­tion, not more than before but just much more obvi­ous. How­ever, for now I’m con­tent with the state of the code and I don’t think I will do this in the near future.

Some­what adjusted control-scripts and cal­i­bra­tion scripts:



Espe­cially, in the cal­i­bra­tion script I’ve added a pac­ing beep for plac­ing the cal­i­bra­tion body on the dif­fer­ent sides for roughly the same time.

Edit:  I’ve not updated the com­mu­ni­ca­tion pro­to­col doc­u­men­ta­tion jet. I hope to do that before I for­get about it. How­ever, the changes are very small, essen­tially that the USB inter­face sup­ports loss­less com­mu­ni­ca­tion just like the Blue­tooth interface.