Microcontrollers for IoT application

HI all,

Generally what all the parameters deciding the selection of a microcontroller for IoT application?

  

I know that most of the IoT solutions are designed around ARM controllers like ARM Cortex-M series.

ARM Cortex-M series microcontrollers are optimised for low power applications and have lots of standy features and it will save power Say ARM Coretex-M0+ can run for 15 years from cell battery! So low power might be one criteria.

  

I would like to know other micrcontrollers used in the IoT applications.

  

Thanks and Regards,

Deepu

Parents
  • Hi Deepu,

    As techguyz pointed out

    You may need to chart out the IOT application requirements

    first.

    Eventually, you will have to choose your microcontroller based on your application requirements. You need to consider these factors:

    • Register/Data Width - microcontrollers for IoT cover the entire span of word size available today, 8 to 64 bits.
    • Memory - microcontrollers for IoT will need various mixtures of type (Flash, EEPROM, FRAM, SRAM, DRAM) and size of memory.
    • Speed/Clock Frequency - some IoT applications will run satisfactorily at low speed, some will operate the MCU at higher speed to accomplish a more demanding task, some may need a variable clock frequency to throttle the MCU performance as needed.
    • Number of (GP)I/O pins - simple applications such as lamp on/off controller will need few I/O pins, some applications such as those that scan a keypad, LED array or matrix will demand more I/O pins.
    • Peripherals - diverse IoT applications require differing assortment of Timers, Display controller, UARTs, CAN, and other serial interfaces.
    • Analog Interface - MCUs with on-chip, low to high resolution ADC at low to moderate sampling rate are available. DACs may be available, in some cases D-A conversion can be done through PWM. Analog comparator is also available as a basic analog interface.
    • Sensor Interface - IoT stimulates a surge in the use of transducers/sensors. The interface to various sensors can be done through the peripherals (e.g., SPI, I2C, 1-Wire) or through an on-chip ADC input.
    • DSP Capability - some IoT applications (e.g., biomedical devices, scientific instruments) require DSP capability for analysis and manipulation of signal.
    • Connectivity - IoT devices, obviously, must have a connection to the internet. This can be done through a wired interface such as Ethernet, some through a wireless network such as wireless LAN, cellular phone network, Bluetooth, etc.
    • Security - security is of vital importance for IoT, some microcontrollers provide hardware support for security.
    • Power Consumption - IoT devices vary from implantables (even ingestible) and wearables to large machines. Some will have access to AC mains, some will be powered from tiny battery, some will harvest miniscule energy from the surroundings.
    • Cost - microcontrollers for IoT can be cheap because of simplicity or have premium cost for additional features.

    Aside from the microcontroller itself some other factors are

    • Operating System - some IoT applications will need GUI (Linux, Android, Windows), some will require the responsiveness of RTOS.
    • Development Tools - development boards, debugging tools, and associated sofware.

    These are also the criteria for other applications, IoT applications will just assign different weight to each criterion raising importance to connectivity and security.

    To provide further guidance on the factors more specific to IoT I tried to dig an article related to your question from my newsletters. My objective is to find one which is as vendor-neutral as possible. I cannot do it exhaustively, however. What I have is an article from MOUSER, conributed by Freescale (now part of NXP) and partner ARM. There is no heavy endorsement of Freescale products in this article and it's not ARM-specific.

    What the Internet of Things (IoT) Needs to Become a Reality

    The section "There are a few requirements that make an MCU ideal for use in the IoT." is the most relevant to you.

     

    I would like to know other micrcontrollers used in the IoT applications.

    Aside from ARM, other architectures used in IoT applications are: intel x86 (notably the Edison and Galileo), MIPS, Renesas RX, MSP430, AVR, PIC, 8051, etc.

    Regards,

    Goodwin

Reply
  • Hi Deepu,

    As techguyz pointed out

    You may need to chart out the IOT application requirements

    first.

    Eventually, you will have to choose your microcontroller based on your application requirements. You need to consider these factors:

    • Register/Data Width - microcontrollers for IoT cover the entire span of word size available today, 8 to 64 bits.
    • Memory - microcontrollers for IoT will need various mixtures of type (Flash, EEPROM, FRAM, SRAM, DRAM) and size of memory.
    • Speed/Clock Frequency - some IoT applications will run satisfactorily at low speed, some will operate the MCU at higher speed to accomplish a more demanding task, some may need a variable clock frequency to throttle the MCU performance as needed.
    • Number of (GP)I/O pins - simple applications such as lamp on/off controller will need few I/O pins, some applications such as those that scan a keypad, LED array or matrix will demand more I/O pins.
    • Peripherals - diverse IoT applications require differing assortment of Timers, Display controller, UARTs, CAN, and other serial interfaces.
    • Analog Interface - MCUs with on-chip, low to high resolution ADC at low to moderate sampling rate are available. DACs may be available, in some cases D-A conversion can be done through PWM. Analog comparator is also available as a basic analog interface.
    • Sensor Interface - IoT stimulates a surge in the use of transducers/sensors. The interface to various sensors can be done through the peripherals (e.g., SPI, I2C, 1-Wire) or through an on-chip ADC input.
    • DSP Capability - some IoT applications (e.g., biomedical devices, scientific instruments) require DSP capability for analysis and manipulation of signal.
    • Connectivity - IoT devices, obviously, must have a connection to the internet. This can be done through a wired interface such as Ethernet, some through a wireless network such as wireless LAN, cellular phone network, Bluetooth, etc.
    • Security - security is of vital importance for IoT, some microcontrollers provide hardware support for security.
    • Power Consumption - IoT devices vary from implantables (even ingestible) and wearables to large machines. Some will have access to AC mains, some will be powered from tiny battery, some will harvest miniscule energy from the surroundings.
    • Cost - microcontrollers for IoT can be cheap because of simplicity or have premium cost for additional features.

    Aside from the microcontroller itself some other factors are

    • Operating System - some IoT applications will need GUI (Linux, Android, Windows), some will require the responsiveness of RTOS.
    • Development Tools - development boards, debugging tools, and associated sofware.

    These are also the criteria for other applications, IoT applications will just assign different weight to each criterion raising importance to connectivity and security.

    To provide further guidance on the factors more specific to IoT I tried to dig an article related to your question from my newsletters. My objective is to find one which is as vendor-neutral as possible. I cannot do it exhaustively, however. What I have is an article from MOUSER, conributed by Freescale (now part of NXP) and partner ARM. There is no heavy endorsement of Freescale products in this article and it's not ARM-specific.

    What the Internet of Things (IoT) Needs to Become a Reality

    The section "There are a few requirements that make an MCU ideal for use in the IoT." is the most relevant to you.

     

    I would like to know other micrcontrollers used in the IoT applications.

    Aside from ARM, other architectures used in IoT applications are: intel x86 (notably the Edison and Galileo), MIPS, Renesas RX, MSP430, AVR, PIC, 8051, etc.

    Regards,

    Goodwin

Children