6

I want to gather data from multiple sensors, make simple operations on them (like store last samples in a buffer, calculate moving average, etc.) and send them to the Internet of Things cloud using WiFi. Which MCU should I use for this purpose?

Constraints:

  • Cost: cheaper than $25
  • Size: smaller than the Arduino Uno
  • Storage: more than 1KB non-volatile memory
  • Interfaces: I2C, serial, WiFi
  • Computing power: supports TCP/IP stack, ideally with TLS
  • Security: some kind of encryption
Adam
  • 2,149
  • 2
  • 16
  • 31
niutech
  • 213
  • 1
  • 2
  • 8

1 Answers1

4

One option is Particle (f.k.a. Spark) Photon - STM32F205 ARM Cortex M3 microcontroller with Broadcom BCM43362 Wi-Fi module, 1MB flash, 128KB RAM for $19.

Second option is WiFiMCU - STM32F411CE ARM Cortex M4 microcontroller with Broadcom Wi-Fi module, 2MB SPI flash, 512KB on-chip flash, 128KB RAM for $10.

Another option is a much cheaper NodeMCU - ESP8266 microcontroller with 64 KB SRAM, 96KB DRAM, 4MB flash for $4.

The last option is SparkFun ESP8266 Thing - also based on ESP8266 with On-board LiPo battery charger for $16.

All of MCUs support full TCP/IP stack and partial SSL.

niutech
  • 213
  • 1
  • 2
  • 8
  • 1
    Worth mentioning is that mbed TLS (PolarSSL) works with BSD sockets which requires running an RTOS (ST has official resources for FreeRTOS). – jaskij Apr 08 '16 at 11:26