Tutoriales

Instalar Linux y correr aplicaciones C# en la Raspberry Pi

Raspberry Pi C SHarp

En este breve tutorial podrás aprender a instalar Linux y a ejecutar aplicaciones escritas en Visual C# 2012 con .Net Framework 4.0 en una Raspberry Pi. No importa que tu Pi esté ejecutando Linux ya que mediante el ambiente Mono se pueden ejecutar los archivos del .Net Framework. Este tutorial se maneja completamente desde Windows. Si tienes dudas o comentarios sobre el tutorial, mándame un mail o un twit.

 

Items necesarios

+ Una Raspberry Pi de cualquier modelo
+ Tarjeta SD de al menos 4GB
+ Teclado USB (sólo para instalar Debian)
+ Cable de red
+ Cable HDMI (sólo para instalar Debian)
+ Fuente de alimentación de 5V @ 1A (o más) y cable micro USB

Software necesario

+ Debian GNU/Linux 7 (wheezy, Raspbian)
+ Win32 Disk Imager
+ Visual C# 2012 Express Edition (se necesita el .Net Framework 4.0)
+ SSH (Secure Shell), Filezilla, Putty o cualquier otro cliente SSH
+ Advanced IP Scanner

Instalando Debian Linux Wheezy en la Pi

La Raspberry Pi siempre carga el sistema operativo desde la memoria SD. Es posible cambiar su software interno pero debe hacerse por JTAG y además no es necesario. En mi caso he usado el SO Raspbian, la versión más común de Linux para la Pi, y también XBMC para ver películas, pero por ahora usaremos Raspbian (Wheezy) que será útil para desarrollar código en la Pi.

De la sección de Raw Images deberás descargar el archivo para Raspbian "wheezy" y guardarlo en tu pc. También descarga la aplicación Win32 Disk Imager, que servirá para grabar a nivel bajo la imagen que contiene la distro wheezy.

Ya con tu memoria SD insertada en tu pc, abre Win32 Disk Imager y selecciona la unidad que le corresponda. Si no estás seguro de cuál es, abre un explorador de Windows para que selecciones la correcta. Importante: esta aplicación formatea tu memoria SD, así que usa una cuyos archivos ya tengas respaldados o no sean importantes. El archivo que grabarás tendrá extensión .img. En mi caso se llama 2013-07-26-wheezy-raspbian.img, pero tú talvez descargues una imagen más reciente.

 

Win32 Disk Imager

 

Espera a que termine de grabar los datos en tu memoria. No la intentes leer en Windows ya que contiene varias particiones de Linux que no deben modificarse. Retira tu memoria e insértala en tu Pi. Conecta el cable de red a tu Pi y luego a tu router, la salida HDMI a tu monitor y a la Pi, y por último el teclado.

Conecta el cable USB. La Pi comenzará a cargar el SO desde la SD card. Verás que el LED PWR estará encendido y OK estará prendiendo y apagando.

Espera a que termina de cargar y que te pida un login, los datos que debes usar son:

pi login: pi
password: raspberry

 

raspberry pi login

La Pi abrirá entonces una aplicación de configuración inicial (raspi-config) para que cambies parámetros como:

+ hostname
+ overclocking (yo lo dejo en 700MHz para no bajar su vida útil)
+ cargar escritorio X al arrancar
+ contraseña de usuario
+ habilitar/deshabilitar SSH
+ configurar la RAM qe usará el chip de video
+ etc.

 

raspi-config

Es importante que dejes habilitado SSH ya que es más cómodo usar la Pi desde otra computadora. Configura los parámetros de la Pi como mejor te convenga. Si deseas volver a entrar a esta configuración inicial, basta con que escribas en la consola:

pi@raspberrypi:~$ sudo raspi-config

Una vez reiniciada tu Pi, ésta volverá a pedirte tu contraseña y estará lista para usarse. El siguiente paso será conectarse a ella por Secure Shell por lo que ya no hará falta tener conectado un teclado ni el cable HDMI.

Antes de eso puedes verificar que el tamaño de tu SD card esté siendo usado correctamente, que el file system se haya expandido bien; teclea lo siguiente para ver el uso de la memoria.

pi@raspberrypi:~$ df

Te reportará lo siguiente:

Filesystem     1K-blocks    Used Available Use% Mounted on
rootfs           1873752 1543488    235832  87% /
/dev/root        1873752 1543488    235832  87% /
devtmpfs           86184       0     86184   0% /dev
tmpfs              18888     212     18676   2% /run
tmpfs               5120       0      5120   0% /run/lock
tmpfs              37760       0     37760   0% /run/shm
/dev/mmcblk0p1     57288   18888     38400  33% /boot