diff --git a/src/lsm303/jsupm_lsm303.i b/src/lsm303/jsupm_lsm303.i index f87e7f7e..f6f65cf7 100644 --- a/src/lsm303/jsupm_lsm303.i +++ b/src/lsm303/jsupm_lsm303.i @@ -1,5 +1,12 @@ %module jsupm_lsm303 %include "../upm.i" +%include "../carrays_int16_t.i" + +// Adding this typemap because SWIG is converting int16 into a short by default +// This forces SWIG to convert it correctly +%typemap(out) int16_t* { + jsresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_int16Array, 0 | 0 ); +} %{ #include "lsm303.h"