Skip to content
Joakim Nohlgård edited this page Oct 3, 2015 · 8 revisions

Mulle

The Mulle is a miniature wireless Embedded Internet System suitable for wireless sensors connected to the Internet of Things, and designed for rapid prototyping. It can be bought directly from Eistec AB.

Use BOARD=mulle for building RIOT for this platform.

Components

https://github.com/eistec/mulle/wiki/Datasheets contains a list of relevant documentation for the components.

MCU MK60DN512VLL10 – Cortex-M4, 512 kB flash, 64kB RAM
radio chipset AT86RF212B, sub-GHz IEEE802.15.4 transceiver, similar to the AT86RF233
external flash memory Micron M25P16 16 Mbits external NOR flash, used for storing configuration, measurements and other slow changing non-volatile data
external FRAM memory Cypress/Ramtron FM25L04B 4 Kbits external F-RAM, used for storing counters and other rapidly changing non-volatile data
accelerometer ST micro LIS3DH MEMS accelerometer,

Layout

Implementation Status

This port is currently a work in progress, lots of components are not working yet. The examples/default basic functionality is working. The branch mulle on https://github.com/gebart/RIOT is the current progress. A PR will be opened after it has been cleaned up a bit more.

A tracker for Kinetis devices can be found at Issue #2188

The radio is currently untested in RIOT, but since the RF231 is somewhat supported it should be a minor porting effort to get the RF212B working.

Device ID Supported Comments
MCU MK60DN512VLL10 partly See below
Low-level driver GPIO yes
PWM yes
UART yes
I2C yes
SPI yes Master mode works, slave mode untested
USB no PR#3890
RTT yes
RNG yes
timer yes uses LPTMR module for TIMER_0 (used by xtimer), 32.768 kHz tick rate. PIT for additional timers, F_BUS tick rate (48 MHz default)
LPM/LLWU in progress PR#2605
Radio Chip AT86RF212B yes
Accelerometer LIS3DH yes
Flash M25P16 no will port from Contiki
FRAM FM25L04B yes

Toolchains

See ARM Family, and Eistec wiki - Installing-toolchain (GCC)

Working:

  • gcc-arm-embedded
  • Clang 3.4, Clang 3.5 - Install procedure not documented but pretty straightforward (Gentoo: USE=multitarget), Makefiles and build system is fully functional with Clang.

Not working:

  • Link time optimization (LTO) - Requires the GOLD linker, which currently fails on the K60 ldscripts. Needs refactoring of the ldscripts.

Programming and Debugging

See Eistec wiki.

Clone this wiki locally