
¿Eres de esas personas a las que les encanta aprender? ¡Code Lab puede ser el lugar perfecto para ti!
Si buscas una oportunidad para potenciar tus habilidades de codificación y aprender a utilizar los SDK y las herramientas de Samsung a través de diversas experiencias, Code Lab es el lugar idóneo para ti.
Se trata de una plataforma de aprendizaje donde podrás iniciarte en las últimas tecnologías y servicios de Samsung a través de sus múltiples tutoriales, con los cuales podrás aprender todo lo que necesitas sobre la tecnología que buscas. Además, se trata de un espacio para todos, ya que sus vídeos te guían paso a paso de una manera fácil, sencilla y clara para aprender a utilizar sus servicios y herramientas.
No importa si acabas de empezar en este mundo o si ya eres todo un experto que busca perfeccionar sus habilidades, Code Lab cubre temas muy interesantes para cada nivel relacionados con Móviles, IA, IoT, Blockchain, seguridad, salud, juegos, web o wearables.
Todo lo que aprendas en Code Lab lo podrás aplicar en tu día a día como desarrollador.
Se han publicado temas para que conozcas las últimas tecnologías punteras de Samsung y puedas utilizarlas en tu beneficio. Por ejemplo, con la llegada de los smartphones plegables, dispones de contenidos sobre Camera Web App on Foldables, Flex Mode, App Continuity y Multi-Window que te ayudarán a crear o modificar tus aplicaciones para que se adapten sin problemas a diferentes factores de forma.
Además, para hacer de esta experiencia algo único, Code Lab te ofrece la posibilidad de probar aplicaciones de forma sencilla en el Remote Test Lab aunque no dispongas de ningún dispositivo Galaxy físico. Se trata de un servicio que te permite probar tus aplicaciones de forma virtual y en remoto en miles de dispositivos Samsung Galaxy Mobile y Watch. Aunque, recuerda, si quieres hacer pruebas en dispositivos físicos tienes a tu disposición nuestro servicio de préstamo.
Entre los diferentes tutoriales que ofrece Code Lab, uno de los que más éxito tiene es el que te enseña a integrar tus dispositivos IoT utilizando el SDK de SmartThings para dispositivos conectados directamente (En la web lo encontrareis como “SmartThings SDK for Direct Connected Devices”). ¿Quieres ver lo sencillo que es?
Primeros pasos
El SDK de SmartThings para dispositivos conectados directamente se proporciona para facilitar el desarrollo de dispositivos que funcionan con SmartThings Cloud y la aplicación móvil.
A través de Code Lab, te enseñamos a crear tu propio perfil de dispositivo IoT en la nube de SmartThings y a implementarlo en tu dispositivo de prueba. Para ello, lo primero que tienes que hacer es registrarte para poder para probar tu propio perfil utilizando el Developer Workspace y crear así tu propia aplicación.
Para configurar tu entorno tan solo necesitas lo siguiente:
- Un ordenador desde el que va a trabajar. Ten en cuenta que este Code Lab está basado en Ubuntu Linux (x64).
- El Toolchain y el Board Support Package (BSP) para la placa Micro-Controller Unit (MCU). Tendrás que utilizar una placa ESP32-DevKitC. Si tienes cualquier duda, puedes configurar el entorno consultando este repositorio de GitHub.
- Repositorios de GitHub para la biblioteca y referencias o muestras de SmartThings SDK for Direct Connected Devices para C.

- Aplicación móvil SmartThings
¿Cómo te puedes registrar para probar tu dispositivo?
Desde el SmartThings Developer Workspace tienes que iniciar sesión con tu cuenta de Samsung. Una vez dentro, debes crear un proyecto de integración para un dispositivo conectado directamente. Para hacerlo tienes que:
- Seleccionar Integración de dispositivos.
- Seleccionar Conexión directa.
- Asignar un nombre al proyecto.
Una vez hecho, mediante el Developer Workspace puedes crear el perfil de tu dispositivo, personalizar las instrucciones para incorporarlo en la aplicación móvil SmartThings, y ponerlo en marcha en todos los dispositivos que quieres probar. Estas configuraciones se pueden editar hasta el momento en que envíes el dispositivo para su publicación en SmartThings.
Importante: añade un perfil y el onboarding del dispositivo
Asegúrate de definir todas las funcionalidades de tu dispositivo con la capacidad de SmartThings y para ello, haz lo siguiente.
- Selecciona: Definir perfil de dispositivo.
- Haz clic en: Crear perfil de dispositivo.
- Rellena los campos requeridos con los valores respectivos.
- Selecciona una capacidad para el dispositivo.
Tras esto, el onboarding de dispositivos te ayudará a la hora de registrar y conectar tus dispositivos a SmartThings por primera vez. En esta etapa, puedes personalizar las pantallas presentadas añadiendo un perfil de incorporación de dispositivo y el tipo de validación de propiedad.
Si quieres añadir más cambios, una vez has incorporado el dispositivo, puedes personalizar las pantallas que se muestran a través de la aplicación móvil SmartThings, o simplemente utilizar los valores predeterminados.
¡Pon a prueba tu dispositivo!
Hay dos formas de hacerlo:
- A través del menú: Descripción general
- A través del: Dispositivo de Prueba
Podrás ver tu dispositivo en la aplicación móvil SmartThings cuando estés en modo Desarrollador una vez lo hayas puesto en marcha para hacer pruebas.
¿Cómo registrar los dispositivos de prueba?
Puedes añadir la identidad del dispositivo para autenticarlo en la nube de SmartThings. Esto requiere información del dispositivo como el número de serie y la clave pública del dispositivo (ED25519). Dado que el número máximo de dispositivos de prueba está limitado por usuario, una vez que lo haya alcanzado, deberás eliminar el existente.
Te ponemos un ejemplo para crear la clave ED25519 emparejada con herramientas SDK. Para ello, tienes que obtener el archivo device_info.json como resultado de tools/keygen/linux/output_{ serialNumber}.
La versión para Linux de la utilidad generadora de claves (keygen) se encuentra en st-iot-device-sdk-c-reference/iot-core/tools/keygen/ o st-device-sdk-c/tools/keygen/.
El número de serie del dispositivo de prueba será generado aleatoriamente por esta herramienta, que tiene formato STDK + 12 dígitos alfanuméricos:

- Copia STDK**E90W***uCX de la salida keygen y pégalo en el campo Número de serie de la página Registrar un dispositivo de prueba.
- Copia la cadena de clave pública de la salida keygen (nFN5x***uQusQ****ZHoBSFaAoP9***kNdLnjDJRew= en este ejemplo) y pégala en el campo Clave pública.

La utilidad de generar un código QR del dispositivo
El uso del código QR del dispositivo puede ser útil durante la integración del dispositivo, para ello debe tener un formato como el siguiente:
URL: https://qr.samsungiots.com/?m={Your mnId}&s={Device onboardingId}&r={Device serialNumber}
- {Your mnId}: número alfanumérico de 4-dígitos de tu cuenta.
- {Device onboardingId}: Número de 3 dígitos Onboarding ID, puedes encontrarlo en tu Developer Workspace - Device Onboarding > Other Info page
- {Device serialNumber}: número de serie del dispositivo que está registrado en tu Developer Workspace.
Por último, para generarlo tan solo tienes que utilizar el siguiente Python script:

¿Quieres saber cuáles son los siguientes pasos para crear tu propio dispositivo IoT utilizando el SDK de SmartThings para Direct Connected Devices? Pues no te lo pienses ni un segundo más y adéntrate en el mundo del código con nuestra plataforma de aprendizaje Code Lab.
Samsung Dev Spain es la comunidad oficial de Samsung para desarrolladores españoles. Si te das de alta, puedes conseguir entrar en nuestro programa de préstamos -y conseguir dispositivos para desarrollar apps para nuestro ecosistema-, acceder a material gratuito como la Guía de optimización de apps para foldables, participar en promociones como dispositivos por apps o acudir gratis a eventos formativos como Samsung Dev Day o disfrutar de ventajas exclusivas en Samsung PLUS.