Ingeniería inversa La impresora monoprecio
Cuando se lanzó la impresora Monoprice MP Select Mini 3D el año pasado, fue un cambio de juego. Esta era una impresora por $ 200, sí, pero también guardaba un secreto no tan obvio: un controlador de impresora 3D que nadie había visto antes, impulsado por un microcontrolador ARM de 32 bits con ESP8266 manejando la interfaz de usuario. Este es un conjunto de productos electrónicos que cambia las reglas del juego en el mundo de la impresión 3D, y ahora, finalmente, alguien lo está invirtiendo.
[Robin] comenzó la ingeniería inversa conectando el cable de un osciloscopio a la línea serial entre el controlador principal y el controlador de pantalla. La velocidad en baudios es extraña (500 kHz), pero aparte de eso, los comandos aparecen fácilmente en texto analizable por humanos. Hay un servidor web integrado en la impresora MP Mini, y después de inspeccionar la página web servida por esta impresora, [Robin] descubrió que es posible enviar un código G directamente desde la placa del controlador, obtener una lista de archivos en la tarjeta SD y hacer todo lo que le gustaría hacer con una impresora 3D.
Después de derribar el circuito en la placa de visualización, [Robin] encontró exactamente lo que esperaría de una placa tan simple: una pantalla SPI alimentada por ESP y un gran chip de relámpago colocado de lado. [Robin] encontró el modelo de la pantalla y rápidamente construyó un proyecto en Platform.io para dibujar texto en la pantalla LCD. Este no es el final del proyecto; todavía queda mucho por hacer antes de que esta impresora salga con firmware personalizado.
Aunque esto no es un truco de la placa del controlador dentro de MP Mini, realmente no es un problema. La placa del controlador del motor de esta impresora realmente no necesita cambios, y ya se adelantó a su tiempo cuando se lanzó esta impresora el año pasado. Como ocurre con la mayoría de las cosas, la interfaz de usuario es el punto débil y la mejor manera de avanzar es actualizar el firmware y el servidor web integrado de esta impresora.
[Robin] armó un video realmente fenomenal de cómo invirtió este controlador de pantalla. Puedes comprobarlo a continuación.
https://www.youtube.com/watch?v=To-ibGUEoA
Sidra de pera dice:
Muy genial.
Gran trabajo.
Gracias.
Ojalá tuviera más tiempo para mirar en la impresora 3D.
Estaba pensando en conseguir otra impresora pequeña para que mi hijo jugara.
Pero, lamentablemente, nunca lo evité.
A muchas otras cosas que hacer.
Pero mi hijo es inteligente. (el pequeño Bast # $% d.) pirateó y configuró la impresora para poder hacer todo desde su habitación.
Pero ahora gritamos de un lado a otro cuando comienza a imprimir.
Mi impresora está en un contenedor y sobre ruedas. Mi pensamiento era que cuando alguien quería usar la impresora, tenía que conducirla aquí y allá en un área o habitación.
Pero vuelve a ti.
El video que hiciste fue muy bueno. Esperar. No creo que todos los videos que ha reunido sean malos.
Tenga en cuenta que algún día veré su canal.Gracias de nuevo por todo su arduo trabajo.
Continúe ...robin7331 dice:
¡Gracias!
Bueno, comprendo perfectamente que su hijo quiera imprimir 24 horas al día, 7 días a la semana.
Yo también 🙂elektrobob dice:
"Pero ahora estamos gritando de un lado a otro cuando comienza a imprimir". ¿Walkie-talkies?
SOMBRERO dice:
https://la-tecnologia.com/2016/09/07/raspberry-pi-walkie-talkie-mumbles-to-friends/
nbunnell776 dice:
Me alegra ver a alguien finalmente hacer esto. Seguiré este proyecto con gran interés. Compré MP según la revisión de Brian el año pasado e hice un puñado de modificaciones, pero me detuve en medio de la actualización de la cama de vidrio hace unos meses debido a una apretada agenda. Tal vez este proyecto me dé la motivación para completar mi propia tarea para y desde esta impresora. ¡Dos pulgares para arriba!
robin7331 dice:
De hecho, Brian también me animó a comprar esta como mi primera impresora 3D.
Y chico, me alegro de tener esto. Un valor tan increíble por $ 200 ..
Bueno, la ingeniería inversa fue solo el primer paso hacia un nuevo firmware.
Pero tengo algunas características interesantes planeadas.Así que estad atentos 🙂
dfsghklmn dice:
El firmware de código cerrado hizo que no comprara una impresora MP. Probablemente sea su mejor activo, pero la mayoría de las otras impresoras clónicas "sin marca" probablemente se actualicen con firmware de código abierto, tal vez con una placa controladora personalizada. Es solo cuestión de tiempo antes de que suceda ... Hay muchas impresoras 3D muy baratas en la actualidad (Tevo Tarantula, Anet A8, etc.) pero realmente no tengo tiempo para invertir, y prefiero imprimir ABS (funciona mejor con impresoras fuera de mi precio) que PLA, principalmente para alisar piezas con vapores de acetona. Bueno.
Hopo28 dice:
Comencé con ABS por las mismas razones que tú, pero estaba preocupado por los problemas de las venas varicosas y la incorporación del lecho, luego encontré DMC que es un muy buen solucionador de PLA, ahora todo lo que hago es en PLA 🙂
DMC = diclorometano cloruro de metileno
Dafydd Roche dice:
Fácilmente uno de los mejores videos de ingeniería que he visto en youtube durante un tiempo (¡y la calidad habitual es bastante alta!). Me encanta cómo te ayuda a ver la lógica a medida que avanza. No hay grandes saltos, pero lo suficientemente técnico para que no duerma.
Sin embargo, una pregunta tonta, el IDE que usa se ve magnífico. Me encanta el derecho de "desplazamiento". ¿Es esa una característica estándar en IDE en este momento? ¿Existe una versión para Windows? 😉Robin Reiter dice:
Hola Dafydd,
¡Muchas gracias por tu lindo comentario sobre mi video!
En cuanto a la plataforma. Sí, puede obtener el 100% de eso en Windows.
Hice un video sobre cómo configurar esa herramienta tal como la vio en mi video.
Simplemente desplácese hacia abajo en mi canal y lo encontrará.Hola,
RobinBDW dice:
El editor de texto es Sublime Text. Hacen una versión de Windows.
cb88 dice:
Probablemente no ... es el editor de texto Atom asumiendo que está usando stock PlatformIO y realmente no hay razón para no hacerlo ...
Puede integrar una plataforma con Sublime Text pero es un complemento de terceros ...
robin7331 dice:
Es un Atom con PlatformIO.
Aquí está mi video sobre cómo configurar esto: https://www.youtube.com/watch?v=EIkGTwLOD7o
golpes dice:
La "barra de desplazamiento de vista previa" debe ser una extensión de Atom, pero no pude encontrarla; (
Todavía no es una característica estándar, solo conozco kate y kdevelop de KDE, que tienen una barra similar. Pero definitivamente una idea para difundir.Dieléctrico dice:
Notepad ++ lo hace, al menos mi instalación lo hace. No recuerdo si instalé un complemento para él o no 🙂
Senji dice:
No es predeterminado
Dieléctrico dice:
Hm, no veo un complemento en el administrador, pero veo una casilla de verificación con "mapa del documento" en el menú "Ver".
robin7331 dice:
Es un paquete llamado "minimapa".
golpes dice:
¡Gracias!
floz dice:
Tengo uno de estos pequeños. Es una primera impresora relativamente duradera, pero los FET del calentador tienden a explotar, a veces brevemente. Hasta que inserte una placa RAMPS o piratee el firmware de esa manera (eventualmente lo hará), no imprima sin supervisión.
Actualmente ejecuto ABS con él con aproximadamente 1 de cada 5 éxitos con proyectos funcionales conocidos. RAMPS ha salvado al pequeño, pero no es perfecto y probablemente nunca lo será.floz dice:
Olvidé mencionar que digo que no debe imprimir sin supervisión sin reemplazar o modificar la configuración ...
Esta impresora no viene con ningún apagado térmico o alarma, funcionará felizmente si el calentador FET se acorta y no se cierra.
Cuerpo digital dice:
Correcto. Esto se debe a que no tiene monitor de dispositivo de la corriente que va a los elementos calefactores. Si la placa está encendida, los FET ven voltaje y el STM es lo que gobierna el control PWM-PID. Sin reestructurar la junta, actualmente no existe una solución pragmática.
Puede hacer una rotura térmica para activar un relé o un disyuntor si lo desea ...
Cuerpo digital dice:
Al 'OP':
Dependiendo de su enfoque, consulte mi trabajo anterior aquí cuando se trata del puesto de mando:
https://la-tecnologia.io/project/12696Robin Reiter dice:
Conozco ese proyecto. ¡Realmente hiciste un trabajo increíble allí!
Voy a seguir eso
Alan McCormick dice:
Solo un poco, pero en la imagen alguien está usando encuestas DMM de tamaño regular en componentes de tono fino. Eso no funcionará por razones obvias.
Robin Reiter dice:
Solo tengo estas encuestas para mi multímetro.
No es perfecto, estoy totalmente de acuerdo. Pero si tiene cuidado de no tocar varios pines a la vez, es bueno hacer al menos algunas pruebas continuas mientras todo está apagado.Cuerpo digital dice:
Probemaster.com
Nunca querrás más después de comprar el suyo.
CaptMcAllister dice:
Funciona bien cuando lo hago. Quizás sea tu técnica.
Adam Vadala-Roth dice:
tal vez se eligió la extraña velocidad en baudios para pasar las pruebas y la certificación EMI
elektrobob dice:
No lo creo, porque los motores son una fuente mucho mayor de EMI.
Lo que es más creíble es que puede obtener fácilmente 500k de cristales con frecuencias que son múltiplos de 1MHz, que son más baratos.
Ninguno dice:
Desde entonces no parece que se hayan realizado más trabajos. El wifi es casi inútil.
Mi V2 tiene otra pantalla y una PCB de interfaz de usuario con dos circuitos integrados de SPI a paralelo y una velocidad de bus rápida que no estoy equipado para capturar (supongo que es de 80 MHz).
Placas de interfaz de usuario V1: https://www.mpselectmini.com/parts/ui_controller_board
Tabla U2 de V2: https://gigdigit.com/ui-controller-board-with-display-mp-select-mini-v2/El STM32F070C8T6 en el tablero de "movimiento" ("M2-V3.0-170721") está protegido por código.
Ninguno dice:
Lo sentimos, debe ser STM32F070CBT6 (B, no 8).
ninguno dice:
Parece que estamos cerca de un firmware móvil abierto (Marlin):
https://la-tecnologia.io/project/158263-monoprice-mini-marlin-20-support