Microcontrolador vs microprocessador vs app: què triar?
En desenvolupar un producte electrònic connectat, una de les primeres decisions és: on viu la lògica? Hi ha tres mons possibles —el microcontrolador, el microprocessador i la web/app— i programar en cadascun és radicalment diferent. Triar bé (i combinar-los) defineix el cost, el consum i l'èxit del producte.
1. Microcontrolador (MCU): el firmware encastat
Un microcontrolador integra CPU, memòria i perifèrics en un sol xip (STM32, ESP32, Nordic nRF…). Es programa a baix nivell en C/C++, sobre bare-metal o un RTOS (FreeRTOS, Zephyr), amb control directe del maquinari.
- Quan: dispositius a bateria, control en temps real, sensors, IoT de baix consum, productes de cost ajustat.
- Avantatges: consum de microampers, arrencada instantània, comportament determinista, cost molt baix.
- Límits: recursos reduïts (KB de RAM), sense sistema operatiu complet.
2. Microprocessador (MPU): programari encastat sobre Linux
Un microprocessador és una CPU potent que necessita memòria externa i normalment corre un sistema operatiu (Linux) (i.MX, Rockchip, Raspberry Pi…). Es programa com un ordinador: Linux encastat, C/C++, Python, serveis i controladors.
- Quan: pantalles/HMI, molta connectivitat, processament intensiu (càmera, IA a la vora), diverses tasques alhora.
- Avantatges: potència, multitasca, gran ecosistema de programari.
- Límits: més consum i cost, arrencada més lenta, més complexitat de disseny de maquinari.
3. Web/App: on l'usuari interactua
L'app mòbil (iOS/Android) o la web/núvol és la capa amb què interactua l'usuari i que es connecta al dispositiu per Bluetooth/WiFi. Es programa amb Swift/Kotlin/React Native (app) o JavaScript/TypeScript i un backend (web i núvol).
- Quan: configurar el dispositiu, visualitzar dades, control remot, actualitzacions OTA, gestió de flota.
- Clau: no s'executa en el maquinari del dispositiu, sinó al mòbil o als servidors.
A la pràctica: gairebé sempre es combinen
La majoria de productes connectats fan servir diverses capes alhora. Un wearable típic = firmware en un microcontrolador + app mòbil per BLE + backend al núvol. La diferència entre un bon producte i un de mediocre està a decidir què posar a cada capa i que totes es comuniquin de manera eficient i segura.
Capa Lenguaje típico Consumo Ejemplo
MCU (firmware) C/C++ bare-metal µA–mA Sensor, wearable
MPU (Linux) C/C++, Python W Gateway, HMI
Web/App Swift/Kotlin/JS — Configurar, dashboards
Conclusió
No es tracta de quin és "millor", sinó de quin per a què —i d'orquestrar-los bé—. A Regular Solids treballem les tres capes: firmware en microcontrolador, programari encastat en microprocessador i les apps i el núvol que ho connecten tot. Si estàs decidint l'arquitectura del teu producte, explica'ns-ho i t'ajudem a triar.