Con la reciente presentación del prototipo de la Pyra me he preguntado cómo de complicado es crear tus propias placas basadas en ARM.
Con la reciente presentación del prototipo de la Pyra me he preguntado cómo de complicado es crear tus propias placas basadas en ARM.
En mi caso si y no. Actualmente trabajo con un micro que técnicamente es un Cortex M0 más alguna otra cosa. Pero esta orientado a la electrónica embebida, no a lo que seria un miniordenador tal cual. Por eso lo de "si y no". Hay mucha variedad de soluciones basadas en esta arquitectura y ARM tienes hasta en tostadores a la hora de la verdad, pero no Pyras.
Desde mi punto de vista de mindundi que no sabe apenas nada (y lo digo aun con estudios y trabajando en cosas relacionadas), lo que seria una Pandora Pyra lo veo un curro de narices. En teoría y apoyándote en mucha información que te dan algunos fabricantes el diseñar una PCB no parece complicado, solo seria cuestión de echarle horas. Pero luego siempre surgen imprevistos, y eso sin entrar en lo que seria la programación del firmware o drivers que pudiesen hacer falta.
De hacer correr ya luego un sistema operativo ni idea. Hasta ahora lo más que me he acercado a ese tema ha sido con varios RTOS, y creo que hay bastante distancia a lo que seria un sistema Linux.
Piensa que si fuese más sencillo y llevase poco trabajo habría muchas iniciativas de este tipo. Hacer tus propias placas en tiradas pequeñas no es para nada barato tampoco, y habiendo ya cosas en el mercado como la RasPi, mas que probadas y con soporte, como que no compensa.
Aunque creo recordar que en un sitio donde realice una entrevista, tenían maquinas de pick and place automaticas, horno y todo lo demás y me dijeron que habían fusilado la PI. Pero acerca de estos temas poco más se.
Me uno a tu pregunta ya que me interesaría saber si hay alguien por aquí metido en estos temas. Me gustaría saber más.
ElRana (31/01/2017), fbustamante (28/01/2017), Zoltar (28/01/2017)
Hablaré desde el punto de visto de que entiendo como mucho hasta el 20% de lo que hay que hacer para diseñar una PCB para un miniordenador como ese,
Para algo así, no sólo se ha de tener experiencia de diseño de PCBs, si no que se debe disponer de un software de simulación PCB (Altium designer y otros que a buen seguro desconozco), para poder determinar dónde se van a producir/generar señales de radio que corrompan los datos de las pistas vecinas, técnicas (apenas conozco una) de minimizado de reflejos de señales de muy alta frecuencia, abusar (pero sabiendo mejor que yo cómo) del blindado con masa y anillos pasantes, evitar la creación de consendarores no intencionados al apilar distintos planos de masa y líneas de alimentación y datos en distintas capas (de esto sí que apenas sé)...
Es un mundo muy complicado y una profesión de muy alta cualificación por sí sola,
La maestría interior...
Metal Slug para Atari STE: Video-1 Video-2
En venta memorias de 512 KB y 1 MB para Amiga 500 y Amiga 500 Plus
En venta disco duro tarjeta micro SD para Atari ST/E, compatible SDHC
Zoltar (30/01/2017)
¿En este foro no hubo un "intento" de algo así? Y no, no hablo de la Gasanco
Zoltar (30/01/2017)
Sí, hubo dos, una que no llegó a ningún lado porque se partía de cero, y la otra (¿cual de las dos era la viciiosa?) que en realidad no era el diseño de una consola, más bien un acople de periféricos con una placa base intercambiable: compras la placa con el microcontrolador, la RAM, etc, y lo metías como si fuera un cartucho, donde tenías los botones, la pantalla, el adaptador wifi, etc... Era 1000 veces más sencillo de diseñar, pero quedó estancado porque los que entendían de electrónica estaban sin tiempo.
Respondiendo a Limonetti, ya se que mi experiencia es baja tirando a nula, pero La BeagleBoard, la PandaBoard, etc, incorporaban un microcontrolador basado en ARM con un buen puñado de periféricos (conectores USB hembras, HDMI, puerto serie, wifi según la versión...) y podían hacer andar una distro Linux llamada Angstrom de una forma bastante competente. Lo más que pude hacer con una BeagleBoard fue ver un salvapantallas de un globo aerostático en 3D surcando los cielos, o compilar un reproductor de video capaz de mostrar en HDMI el video de Big Buck Bunny a una resolución que no sé si era 720 o 1080 (las herramientas de programación de codecs para la gráfica eran una pasada: usando el Simulink de Matlab y bloques preprogramados muy optimizados).
No veo por qué 8 años después un ARM no podría echar a andar un SO completo (aunque sea basado en Linux).
PROYECTOS REALIZADOS: FrikiMusic, Motor Scroll Tileado v3.2, Venturer2X (GP2X/WIZ), Echo, Screen Break Time
PROYECTOS EN MARCHA (algunos): Bennu GP2X: 95% (necesito ayuda) ¡Antes de Halloween!: 92% SpaceH2H: 8%
Zoltar (30/01/2017)
PCBs he realizado pero para frecuencias bajas y hace años de ello. La poca experiencia que tengo en alta frecuencia es con resultados desastrosos He ojeado por curiosidad el diseño de PCBs y he visto este curso:
https://www.udemy.com/learn-to-design-your-own-boards/
Última edición por Zoltar; 06/02/2017 a las 18:58
Creo que no has entendido lo que quería decir. No he dicho que los ARMs no puedan con Linux, que ya se sabe de sobra que si, si no que lo difícil es adaptarlo a tu hardware.
Puedes usar los mismos componentes que lleva la Raspby (exactos), diseñar otra pcb, montarlos y quizás no te surja ningún problema grave al hacer funcionar la distro de linux que esta preparada para ese hardware. Si eres mañoso ruteando, claro.
Ahora bien, hacer que funcione el sistema operativo con algo que has elegido tu, me da que es algo más complejo.
Ahí te encuentras con la gran complejidad de adaptar muchísimas, sino todas, las funciones de alto nivel del sistema operativo al hardware; el futuro programador que use el nuevo sistema no debiera notar diferencia al programar, pero el que adapta el sistema operativo sí; tendrá que reprogramar todo, o casi todo, lo que hay debajo de las funciones de alto nivel, tendrá que reescribir/adaptar todas las funciones de bajo nivel al hardware que lleve el sistema, y eso supone una cantidad ingente, pero muy ingente de trabajo.
Como ejemplo podemos citar las librerías DirectX, supongamos el hecho de que todos los programadores que quieren pintar cosas en pantalla empleando el hardware en Windows lo hacen empleando DirectX. Todos ellos van a utilizar el mismo repertorio de funciones/librerías, con independencia de si su tarjeta de vídeo es Nvidia, AMD, Intel... pero el cómo están implementadas esas funciones cambia para cada tarjeta, el driver provee la implementación a bajo nivel que da lugar a las librerías de alto nivel.
Con una distribución linux es igual, tan sólo es un ejemplo y a buen seguro simplificado al extremo; puede que sea aún más complicado.
La maestría interior...
Metal Slug para Atari STE: Video-1 Video-2
En venta memorias de 512 KB y 1 MB para Amiga 500 y Amiga 500 Plus
En venta disco duro tarjeta micro SD para Atari ST/E, compatible SDHC
Es complicado.
Muchos fabricantes de SoC dan un diseño base para las placas y un linux de partida.
Pero de ahi a sacar una consola portátil hay un trecho de pelotas. Pantalla, drivers para la misma, periféricos, diseño de placas, etc.
Y eso solo a nivel de HW que funcione, ya si hablamos de optimizar la distro linux que dan por defecto... pues tiene pinta de ser fiesta al cuadrado.
Zoltar (31/01/2017)
Marcadores