Freerunner Navigation Board
Preliminary Information. This page will be moved as soon as it contains the most important imformation about the board. (probably this weekend).
The Freerunner Navigation Board is a small PCB which can be mounted inside the case to extend the Freerunner with additional Hardware. The Board contains the triaxial digital compass chip HMC5843 from Honeywell and two gyroscope chips from InvenSense (IDG650, ISZ650) to provide a triaxial gyroscope solution.
The board can be connected to the I2C bus which is available on testpads around the debug connector.
The compass chip is directly connected to the I2C bus. The gyroscopes have an analog output which is digitized using a 16-bit A/D converter ADS1115 from Texas Instruments.
Additional features which were planned but are not implemented yet: The board contains the footprint to add an additional MSP430 microcontroller from TI. It would be used to control the offset compensation features of the gyroscopes, read their internal temperature sensors and switch them off when not used. Latter can actually be done using a GPIO line which is available at a testpoint H-TP1516.
Right now, this additional hardware is not supported out of the box, but there are some pieces of software available to demonstrate that the hardware actually works.
Hardware drivers are available from gitorious.
A kernel driver is available to control the HMC5843 digital compass through sysfs entries. Vala hackers can use a vala library for easier access.
The Gyroscopes need a driver for the ADCs which can be downloaded from the ADS1115 repository. Besides the kernel module, these chips can be accessed from userspace using the i2c-dev driver and a userspace library for easier access. Vala bindings are available.
End user software
The monitor has been developed in order to easily add arbitrary sensors as sources. The monitor uses GTK and Cairo for drawing the values and right now is quite slow on the GTA02. We are working on improving the refresh speed. Possibly with the same toolkit.
Except for the above mentioned sensors there have been written plugins for:
- LIS302DL accelerometers (the ones included in our devices)
- BMP085 pressure sensor
This is a screenshot of application monitoring the X and Y gyro-axis of the navigation board as well as the X-axis of the digital compass:
Since each ADC provices two channels and the gyroscope is 'only' triaxial, one channel is free for use. A wire can be soldered onto a tiny testpad or directly to the pin on the chip.