Early Development on Dash Pro


#1

My application will use Dash Pro to connect, via Bluetooth 4 (BLE) to some sensors and upload data periodically to a server. I’d like to get some experience with the platform, even outside of the cellular aspect – for instance, testing UART to BLE device, displaying on an OLED (SPI or I2C), maybe some Gpio for an input button. Per my understanding, the dash runs on the MK22FN1M0VLH12 Cortex M4 processor from Freescale (128K of ram and 1MB of flash). Hence my questions are:

  1. Is something like a Teensy adequate for early experiments, getting used to the processor and development environment? In particular, writing drivers for OLED, Gpio, BLE would then be compatible with the actual Dash Pro and I could get those working now.
  2. Would I be able to use open-source, free tools for development, say GCC for the C compiler? I’d prefer to stay within a Linux environment where I can write scripts, use familiar editors, source control tools, etc.
  3. Does the Dash stack (for the cellular part) implicitly require some special compiler (to support the libs) or will it be using a more traditional modem-like style (AT+commands in ASCII)

Note added 29 May - because I happened to have a TI Stellaris Launchpad laying around, I’ve installed gcc-arm, lm4flash and openocd, which are compiling and flashing the MCU. The Stellaris uses a Cortex M4, though not by Freescale. I can get the toolchain working before moving on to Teensy.


#2

Great questions! Here are my personal recommendations.

  1. Teensy is a great test platform for Cortex MCUs. I’m a big fan of Teensy and the folks over at PJRC, and even we at Konekt did some early testing of code on the Teensy 3.1 with the Teensyduino loader. I can’t guarantee one-for-one compatibility (particularly surrounding pin assignment, etc.), but it’s not a bad place to start.
  2. Yes! We are supporting the Arduino IDE and GCC will work for you as well.
  3. No, no special compiler will be needed, nor will any libraries be needed for basic cellular functionality. For simple cellular connectivity, all that will be needed are simple Serial.print() (or Serial.write()) and Serial.read() functions. This is made possible by our hardware design, where we offload all modem interaction into an added abstraction layer; at a system level, you can think of this like having a smart modem that provides cellular cable-replacement for serial communications on one of the UARTs, with the option to configure settings either on-device or via our website. That being said, there are optional lightweight Arduino-compatible libraries we will be providing to access advanced Dash and Dash Pro functionality (battery status, checking cellular connection status, accessing configuration, altering the destination server, etc.)

References:


#3

I have similar interest here. Can you post If there is any progress in the area?


#4