4 Big Trends From ESC Brazil

SÃO PAULO — Brazil's vibrant embedded systems engineering community was out in full force at ESC Brazil 2014 last week. Here’s a look at four of the biggest-buzz-generating trends we saw at the show.

No. 1: The Internet of Things The Internet of Things was a hot topic at ESC Brazil, with companies like Atmel and Microchip showcasing the latest technologies for connecting to the cloud.

“Actually, the Internet of Things is nothing new, as we have been connecting MCUs to sensors and analyzing the data for a long time," said Andreas Eieland, senior product marketing manager at Atmel. "But what is new is the technology options available for engineers to develop connected systems without the high degree of complexity of the past."

To wit, Atmel had on display the new Bluetooth and 802.11n WiFi solutions it has added to its SmartConnect wireless portfolio line through the acquisition of Newport Media. "We can now offer a range of technologies that meet a designer's needs, whether it is range or battery life or data rate," said Eieland. For larger-volume customers, Atmel will share its module design.

Agreed. We spent 6 figures putting Linux 2.6 on top of our Medallion Linux (the oldest ARM-exclusive Linux distribution, and/or oldest ARM-Linux that hasn't been acquired by a HW company) for Freescale's i.MX28 processor. (this was years ago)

We don't play in the consumer space. The MX28 has adequate performance for 2D graphics on a WVGA 7" touch screen. (we've run XGA monitors from the MX28 as well, @ 1024x768, but it gets slower). We added dual Ethernet ports, serial support, USB messaging to a Cortex M3 running FreeRTOS for real-time control, but kept the base code "standard Linux" as much as possible.

So, we have a hybrid OS that's pure Linux at the bottom and Android for the GUIs. Adding serial support to Android was a pain (you may have noticed that cell phones do not have serial ports) but so were many other things, even stuff that should be simple like getting access to the USB Host ports from the application layer (USBs are locked down inside Android).

But it all worked. Oh, we're booting from a 128 Meg NAND and running from 128 Megs of DDR2. That's for the Linux/Android OS, customer's APPs, GUI support files, and data files.

Its amazing how small you can make Android when you cut out all the unnecessary fluff not needed for embedded controls. :)

What Rafael meant to say is that he's running Android atop a more traditional, "embedded" Linux kernel and runtime environment rather than the Android ones.

The kernel itself is 99% the same, but the runtime environment is much different because Android's init system is highly optimized for Android, and isn't useful for much else. That's not a slight on Android---it's tuned for cell phones and the like, which don't look like generalized embedded systems at all. They were solving a different problem.

The above isn't quite as simple as it sounds: it's tedious to run two OSes alongside each other, but Android made it easier than it could have been. I should know, I teach people how to do it at EELive and elsewhere. ;-)