
Tras cambiar mi viejo ordenador
Pentium IV 3.2Ghz, por un flamante
I7 4Ghz, me he decidido a probar Altium en profundidad, antes no pude porque en el PIV sencillamente Altium no iba cara al aire, iba lentísimo, imposible trabajar. Ahora con el I7 la cosa es muy diferente, Altium 15 va de fábula.
Para poder
migrar de Eagle a Altium, es imprescindible que Altium tenga algún
filtro para realizar una importación, y afortunadamente lo tiene, aunque como ahora veremos no funciona todo lo bien que debiera. Voy a hacer todas las pruebas con el mismo diseño de placa, hecho originalmente en Eagle 6, e importado a Altium 15 con el
Import Wizard de Altium.
Aquí la placa ya
importada a Altium, como he comentado, originalmente diseñada en Eagle 6. Aparentemente todo está bien, pero la realidad es que hay
bastantes cagaditas, algunas fáciles de detectar y corregir, otras muy difíciles, de pesadilla.

Confiando en que la importación se había encargado de
TODO, y me había dejado la placa lista para usar, pruebo el Autoruteo de Altium, antes Desruteo toda la placa, y lanzo el Autorouter. De momento ya se ve algo
RARO en esta captura de pantalla, en pleno proceso de ruteo, hay una
LINEA VIOLETA en diagonal, desde la esquina superior izquierda, hasta la parte inferior, a un tercio de placa, ni idea de que podría ser esto, el caso es que el autoruteo no termina, se quedan pistas por rutear, cuando aparentemente no hay motivo. En otras placas que probé era mucho más evidente, porque se trataba de componentes muy cercanos, sin otras pistas por medio que impidiesen el ruteo. Este es un tema que me ha llevado MUCHAS horas descubrir, es una de las tantas
CAGADITAS del filtro de importación de Altium (Eagle a Altium).

Después de mucho probar y reprobar, horas, descubrí que el
fallo de autoruteo tenía relación con la misteriosa
linea violeta en diagonal, que aparecía en la placa, pero ojo, que solo aparecía cuando lazaba el Autoruteo. Esa linea es uno de los lados que define la forma y tamaño de la placa, originalmente en la capa Dimension, y que Altium ha colocado como le ha dado la gana al importarla. Total, que los componentes que quedaban a un lado de esa linea, si tenían que echar pistas a otros componentes al otro lado de la linea, no podían y se quedaban sin rutear. La solución es sencilla,
redefinir la dimensión de la placa, para ello hay que ir primero a
View, y pulsar sobre
Board Planning Mode.

Ahora pulsamos sobre
Design > Redefine Board Shape, y marcamos los 4 vertices que delimitan la placa, para crear la forma correcta, en este caso rectangular.

Aquí vamos delimitando la nueva forma y tamaño de la placa, solo hay que llevar el cursor a los vértices, clicar con el ratón y al siguiente vértice.

Más cagaditas de la importación, Altium no ha importado el
tamaño de vía mínimo para el autoruteo, por omisión la pone a 50mil y 28mil de taladro, que no tiene nada que ver con los valores que tenía definidos en Eagle, de 19mil y 12mil de taladro.

Así que a cambiarla toca, en
PCB Rules, Routing Vías, como se ve en esta captura de pantalla, la dejo a 19mil diámetro total, taladro a 12mil.

Compruebo el
Clearance, y este si que lo ha hecho bien, original a 6mil, el mismo valor en Altium.

Toca comprobar las
Net Classes, y desgraciadamente como se puede comprobar en esta captura de pantalla,
Altium ha pasado olímpicamente de las Net Classes, no ha pasado ni una, así que habrá que
definirlas todas a mano. La definición de las Net Classes en Altium es muy similar a la de Eagle, aunque se despliega en 2 pasos, mientras que en Eagle se hace en un solo paso, no entraña mayor complicación, primero hay que definir la Net Classe, darle nombre y asignarle todas las Nets que queramos, y en otra opción de menú aplicarle a esa Classe las características que queramos, en mi caso un grosor de pista y clearance concreto.

Otra cosa rara que se aprecia a simple vista, en la placa, es que las etiquetas
>VALUE y
>NAME, Altium no las ha importado con sus valores, sino que las ha importado como textos, osea que en vez de importar el nombre y valor del componente de esas etiquetas, ha importado el texto ">Value" y ">Name". Afortunadamente la cagada no es catastrófica, porque los nombres y valores de cada componente si que se han importado, digamos que simplemente hay que borrar TODAS esas etiquetas
>VALUE y
>NAME que no sirven para nada

Aquí al pinchar sobre un componente, se puede apreciar que el nombre y valor del componente si que están en
Designator Text y
Comment Text
Una vez eliminados los textos
>VALUE y
>NAME, el componente aparece limpio, con su nombre y valor correctos, pero habrá que eliminar todos esos textos inservibles, uno a uno.

Una cosa curiosa, aunque esto va a gustos, tras terminar el autoruteo, veo que las
vías quedan sin cubrir de barniz. En Eagle, salvo al cambiar de versión, me salían todas las vías cubiertas de barniz, me he acostumbrado y las prefiero cubiertas. Así que he investigado a ver como se puede configurar Altium para que cubra las vías.

No tiene mayor misterio, solo hay que crear una regla en
Solder Mask Expansion, dándole un valor
NEGATIVO, de manera que si por ejemplo le damos un valor de -10mil, todas las vías que tengan un tamaño entre 0 y 10mil, quedarán cubiertas de barniz.

Aquí el resultado tras aplicar la regla, para cubrir las vías.

Una cosa
interesante, que prácticamente busqué en Altium nada más abrirlo, porque siempre lo he echado de menos en Eagle, y por lo que sea la gente de Cadsoft se niega a añadir, por muchas versiones que sacan con supuestas mejoras impercentibles. Esta es la posibilidad de
BLOQUEAR una pista, muy útil para deshacer un autoruteo conservando pistas ruteadas a mano. Por ejemplo, en una placa con un PIC32, yo ruteo siempre a mano los condensadores de desacoplo y el cuarzo, entonces lanzo el autoruteo, el problema en Eagle, es que si necesitas hacer modificaciones, al deshacer el autoruteo, también te cargas las pistas ruteadas a mano, y vuelta a empezar, a hacerlas de nuevo, de ahí la importancia de poder bloquear una pista para que al desrutear no desaparezca. Esa opción si que existe en Altium, ¡¡¡ Aleluya ¡¡¡. Solo hay que pinchar sobre la pista y marcar
Locked, ahora aunque le demos al desruteo de toda la placa, las pistas bloqueadas no se borrarán.
Llegó la hora del enfrentamiento, Eagle vs Altium.Hagamos la prueba del algodón, a ver
cual es mejor,
ALTIUM o
EAGLE, o por lo menos ver cual es mejor
autoruteando para ser más exactos, porque en posibilidades de configuración,
Altium es mucho más completo y versátil, y aunque al principio parezca complejo, en realidad NO lo es en absoluto ....
Altium permite elegir la topología que empleará el autorouter, dependiendo del tipo de placa, yo elijo la
Shortest, que creo es la adecuada para este caso, osea que eche pistas lo más cortas posibles entre componentes.

Ahí va el autoruteo, ha tardado
1 minuto 39 segundos, y ha empleado
56 vías.

Aquí el informe resumen del autoruteo de Altium donde vemos que ha echado 56 vías. Pulsando en
Report nos saca un informe mucho más detallado.

Ahora toca procesar la MISMA placa en
EAGLE, originalmente creada en Eagle 6, pero la probaré en
Eagle 7, que incluye como novedad el
Multi-threaded, que le permite lanzar varios autoruteos a la vez, tantos como NUCLEOS tenga el procesador de nuestro ordenador, en mi caso tengo un
Intel I7 4Ghz de 4 nucleos, así que Eagle lanzará
4 autoruteos a la vez para la misma placa, pudiendo, como es lógico configurar cada uno con distintas características, en mi caso configuraré distintos GRIDS, y me quedaré con el ruteo que menos vías eche.

Este es el informe del ruteo que se hizo en
Eagle 6, la placa terminó con
80 vías, de momento muchas más que con Altium, pero veamos que pasa con
Eagle 7, que por cierto incorpora un algoritmo nuevo al Autorouter, llamado
Toprouter, y que dicen es mucho más eficaz (ya veremos...)

Y aquí el resultado del autoruteo con
Eagle 7, con
Grids de 3, 4, 5 y 6mil. Los resultados, como se puede apreciar son
BASTANTE DECEPCIONANTES. De los 4 autoruteos,
solo UNO termina al 100%, el resto se quedan por el camino, y del único ruteo al 100%
el número de vías asciende a 103, casi el
DOBLE de las que ha empleado Altium

También he registrado los
tiempos,
Altium tardó 1 minuto y 39 segundos, aunque en otros autoruteos sobre la misma placa
ha llegado a tardar solo 58 segundos.
Y estos son los tiempos de
Eagle, del único autoruteo que ha podido terminar,
le ha costado 27 segundos, pero teniendo en cuenta que ha tirado el DOBLE de vías que Altium.
Creo que el
GANADOR del DUELO, es sin duda Altium.
Resumiendo,
¿ Vale la pena migrar de Eagle a Altium ?, si tenemos un ordenador en condiciones,
sin dudarlo vale la pena y mucho, y eso sin haber todavía profundizado en la riqueza de la definición de reglas, aún me falta por tocar la gestión de librerías, el 3D, la documentación, etc... Se me olvidaba, también probé el
CAM para generar los
Gerber, y sin problemas, va perfecto.
Y por ahora, hasta aquí he llegado con este "Review - Comparativa",
me ha gustado mucho Altium, aunque
su filtro de importación EAgle-Altium es una auténtica CHUFA.
