Hay muchas personas que creen queRISC-V, o alguna forma de él, es el futuro. Es un estándar abierto que cualquiera puede implementar y modificar, y es el mayor contendiente para destronar a Arm en un futuro lejano. Incluso Qualcomm y Google están empezando a invertir en él, y el Milk-V Duo S es un SBC con un chip RISC-V integrado que probé recientemente.

Milk-V Duo S es una SBC especialmente interesante, ya que cuenta con un control deslizante para cambiar entre un chip RISC-V integrado y un chip Arm integrado, lo que ofrece la máxima flexibilidad en lo que respecta a la compatibilidad con plataformas. Sin embargo, actualmente las imágenes de arranque publicadas por Milk no son compatibles con el chip Arm, lo que significa que solo se puede utilizar el núcleo RISC-V por el momento. Como resultado, esto no es una reseña, pero volveremos a analizarlo en el futuro.

leche-v-duo-s
Leche-V Duo S

Milk-V Duo S es una computadora de placa única con dos CPU: una CPU RISC-V y una CPU Arm. Tiene 512 MB de RAM y viene con una TPU, Python y otras cosas precargadas.

Acerca de este artículo: XDA adquirió Milk-V Duo S para este artículo. Ninguna empresa tuvo participación alguna en el contenido de este artículo.

Precios y disponibilidad

El Milk-V Duo S se envía a todo el mundo desde China y su precio inicial es de tan solo 10 dólares. Puedes adquirir extras adicionales, como un módulo eMMC (que tendrás que instalar tú mismo) o compatibilidad con Wi-Fi y Bluetooth.

Un SBC único que permite hacer muchas cosas

Es una pena que aún no puedas usar su característica definitoria.

La característica que define al Milk V Duo S es su núcleo Arm secundario, pero el problema es que, en este momento, las imágenes de firmware distribuidas por la empresa no pueden usarlo. En esencia, el interruptor que permite cambiar a otro núcleo no funciona en este momento, lo que de alguna manera frustra su objetivo. Sin embargo, aún se puede usar el núcleo RISC-V, lo cual es interesante en sí mismo.

Ese núcleo RISC-V tiene una frecuencia de reloj de 1 GHz y todo el sistema puede funcionar con 5 W de potencia. Eso significa que incluso puedes conectarlo al puerto USB de una computadora y funcionará, que es como lo he utilizado la mayoría de las veces. Una vez que lo configures, puedes conectarlo a un puerto Ethernet en un enrutador y ejecutar lo que quieras en él, pero primero tendrás que conectarlo desde tu computadora para configurarlo.

Para conectarlo a su computadora, puede usar los pines UART en el GPIO para conectarse a él, o puede conectarse a él como un dispositivo RDNIS que se vinculará a 192.168.42.1 en relación con la computadora a la que está conectado. Si opta por la última opción, deberá instalar manualmente el controlador RDNIS de Microsoft en el administrador de dispositivos, pero la primera opción requiere hardware especial y una conexión a través de un puerto COM.

Para conectarse a él con ambos métodos, primero debe flashear la imagen de arranque en una tarjeta microSD de su elección, conectarla a su computadora y luego usar Putty o cualquier otro cliente SSH. Una vez que lo haya configurado como un dispositivo RDNIS, la dirección SSH es 192.168.42.1 y puede modificarla si entra en conflicto con otros dispositivos en su red.

Iniciar sesión en Milk V Duo S, mostrar que Python está disponible e imprimir la información del kernel

A partir de ahí, ya está listo para usar su nuevo SBC. Dado que utiliza la arquitectura RISC-V, deberá buscar software creado para él o compilar su propio software que pueda ejecutarse en él. Hay una cadena de herramientas RISC-V para GCC que puede ayudarlo a compilar programas en C, y Milk V Duo S viene con un entorno de ejecución de Python listo para usar, lo que significa que puede ejecutar scripts livianos o applets web desde este SBC con facilidad.

El modelo que elegimos también es compatible con Wi-Fi y Bluetooth, lo que significa que puedes conectarlo a una conexión a Internet sin usar el puerto Ethernet. También es compatible con Arduino y RTOS, lo que significa que puedes ejecutar programas Arduino mientras Linux se ejecuta en Milk V Duo S, además de ser compatible con el IDE de Arduino.

Diseccionando Linux en Milk V Duo S

Es superligero

Impresión de información de CPU en la terminal Milk-V Duo S

Debido a los miserables 512 MB de RAM y la CPU de 1 GHz de esta SBC, la versión Linux también es increíblemente pequeña. Como es la naturaleza de las SBC, tendrás que administrar gran parte de este dispositivo de forma manual. Para conectarlo a Wi-Fi, por ejemplo, debes modificar el archivo wpa_supplicant integrado para agregar los detalles de Wi-Fi de forma manual y, luego, tendrás que agregar un comando para configurar los detalles de Wi-Fi cada vez que se inicie.

La documentación del Milk V Duo S y de cómo empezar a usarlo es bastante buena, y mejor de lo que esperaba. Aún le faltan algunos detalles, sobre todo el hecho de que todavía no se puede usar el núcleo Arm, pero es un buen punto de partida para cualquiera que compre uno de estos y quiera empezar a usarlo de inmediato. En última instancia, todavía hay una curva de aprendizaje, pero es sorprendentemente utilizable a pesar de eso.

Por supuesto, el hecho de que no tengamos un núcleo Arm utilizable en este momento hace que el asunto pierda sentido, pero parece que habrá una imagen de dispositivo independiente que podrás flashear para usar el otro núcleo. No está confirmado, pero la documentación menciona que debes asegurarte de que el sistema operativo instalado coincida con la arquitectura del núcleo que intentas arrancar. En otras palabras, es posible que necesites varias tarjetas SD para arrancar rápidamente entre los dos núcleos.

Alojamiento de un servidor Python Flask en Milk-V Duo S

La documentación tampoco es perfecta. Modifiqué el archivo /mnt/system/auto.sh ya que la documentación indicaba que podía habilitar la conectividad automática por Wi-Fi en este archivo con el comando wpa_supplicant. Sin embargo, eso no funcionó, como tampoco lo hizo la creación de un script init.d para ejecutar el comando wpa_supplicant. Tendré que volver a revisar esto para que pueda conectarse a Wi-Fi por sí solo, pero por ahora, la conexión a través de Ethernet funciona cuando está enchufado.

El Milk V Duo S también tiene una TPU capaz de 0,5 TOPS en operaciones INT8. Los marcos de aprendizaje profundo convencionales como Caffe, Pytorch, ONNX, MXNet y TensorFlow Lite aparentemente se pueden trasladar fácilmente a esto, lo que hace posible su uso para fines de aprendizaje automático rudimentario. La cámara que se puede usar con el Milk V Duo S tampoco parece funcionar todavía, y supongo que esto también se debe al software incompleto aquí. He probado dos cables flexibles para conectar la cámara y me encontré con el mismo error en ambos casos, por lo que sospecho que el problema tiene algo que ver con la interfaz de la cámara y el hardware que son diferentes en esta placa en particular.

Aparte de esos problemas, el Milk V Duo S está en una buena posición. Alojar un servidor web en él con Flask de Python es increíblemente fácil, y vincularlo a 0.0.0.0 hará que sea accesible para todos los dispositivos de la red. Desde allí, puede ejecutar algunas aplicaciones pequeñas y de bajo consumo que sirvan a todas las aplicaciones de la red. Es muy potente y es algo que el Milk V Duo S admite de forma nativa.

Relacionado
Cómo construir un NAS con un SBC puede ahorrarle dinero

Construya su NAS por menos con una computadora de placa pequeña.

¿Deberías comprar el Milk-V Duo S?

Milk-V Duo S en un taburete, mostrando la CPU y los buses SPI

Deberías comprar Milk-V Duo S si:

  • Quieres experimentar RISC-V
  • Quieres un SBC de bajo consumo para jugar
  • Quieres desarrollar proyectos Arduino

No deberías comprar Milk-V Duo S si:

  • Necesitas una CPU Arm, ya que aún no funciona
  • Quiere realizar un procesamiento que requiere más potencia.

El Milk V Duo S simplemente no está listo todavía como producto de consumo, en gran parte gracias al hecho de que la mitad de su existencia es más o menos inaccesible. Podrías ejecutar un servidor Pi-hole en uno de estos, alojar un servidor web Python básico y mucho más. El problema es que en realidad no puedes usar ese núcleo Arm todavía, pero incluso las capacidades RISC-V son increíbles para alguien que quizás no esté familiarizado pero quiera familiarizarse con una nueva arquitectura.

Además, el uso de Arduino y la excelente documentación hacen que esta sea una perspectiva atractiva, especialmente gracias a los buses SPI de la placa. Puedes construir tus propios periféricos para agregarlos al Milk-V Duo S, y ya hay gente que lo hace con los puertos GPIO de la placa. Además, la biblioteca pinpong de Python es compatible de forma nativa, y puedes usarla para controlar dispositivos conectados a esos puertos.

Si estás interesado en adquirir uno de estos, hay un montón de revendedores en línea. Nosotros adquirimos el nuestro en Arace. Estoy entusiasmado con el futuro de RISC-V, en particular considerando lo capaz que es esta CPU en particular. Está posicionada como una competencia para Arm, y como la competencia siempre es algo bueno, cualquier cosa que sea mínimamente competitiva es una victoria en mi opinión.

Relacionado
Cómo construir un NAS con un SBC puede ahorrarle dinero

Construya su NAS por menos con una computadora de placa pequeña.