Cubify Cube 3D printer
Table of Contents
The Cubify Cube 3d printer is a plastic filament 3D-printer. It's production is discontinued but I got mine for free from one of the members of the Warsaw Hackerspace so I thought I might as well see what's it worth. The online reviews of this printer are pretty bad (it has > 50% 1-star reviews on Amazon) but hey, I got it for free together with two cartridges of filament.
Screws are Allen H2.5 not Allen H3 or Torx like I thought.
1 Main board
1.1 Chips
Item | Type | Notes |
---|---|---|
Microcontroller | PIC32MX450F256H | |
WLAN chip | RN131C//RM | |
VN5050J | Automotive driver, purpose unknown | |
Stepper motor drivers | A3979 | 4 x stepper motor drivers. Makes sense, the 3d printer has 4 stepper motors (3 axes and extruder). |
LCD | https://www.docdroid.net/JLZDTjm/pt0242432t-c402-j-vera.pdf#page=11 | |
OTG transciever | For both host (usb sticks) and device (back connector for firmware programming). |
1.2 Connectors
There are the following connectors on the board:
- a PICkit2 connector (unpopulated)
- a CONN12 connector (unpopulated)
- a microSD (TransFlash) connector (populated with a 4 GB card). It is likely used to store the print gcode files and settings
- a twopin cartridge plug-in detect connector. Connected to the PIC pin 63 RPE3/CTPLS/PMD3/RE3
- spring pins connecting to a chip inside the cartridge via 1-Wire, connected to the PIC pin SDA2/U2RX/PMA9/CN17/RF4
1.3 Tapping the PIC <-> WLAN communications
I soldered two new pin headers onto the board to access the PICkit2 connector as well as the CONN12 which I expected would be the serial port. My suspicions were correct, when plugging in a USB<->RS232 adapter I started seeing some interesting output. This is actually the interface between the PIC microprocessor and the WLAN module.
Here is what can be seen on the console when the Cube is powered on:
# picocom -b 57600 /dev/ttyUSB0 picocom v2.2 port is : /dev/ttyUSB0 flowcontrol : none baudrate is : 57600 parity is : none databits are : 8 stopbits are : 1 escape is : C-a local echo is : no noinit is : no noreset is : no nolock is : no send_cmd is : sz -vv receive_cmd is : rz -vv -E imap is : omap is : emap is : crcrlf,delbs, Type [C-a] [C-h] to see available commands Terminal ready 0.000 Cube V2.07 0.000 Baud:227272
Later after the button is pressed and the GUI starts:
2.000 $$$ 2.200 D_LOAD_SETTINGS_FILE_CHECK_FS 2.200 D_LOAD_SETTINGS_FILE_CHECK_FILE 2.200 D_LOAD_SETTINGS_FILE_AND_RENAME 2.200 D_WRITE_NVM CMD 2.200 set u m 0x31 AOK 2.225 set w l 5 AOK 2.225 save Storing in config 2.225 get mac Mac Addr=00:06:66:21:f1:46 2.250 ver wifly-GSX Ver 4.00.1, Apr 19 2013 11:48:31 on RN-131 2.250 exit EXIT
Each message has a timestamp in it's header which is like sysUpTime in that it counts time since boot. Some more interesting strings are produced when a WiFi scan is triggered:
126.550 $$$ CMD 126.600 set w j 0 AOK 126.625 save Storing in config 126.625 reboot *Reboot* 128.625 $$$ CMD 128.675 set sys printlvl 0x4000 AOK 128.700 scan SCAN:Found 4 01,06,-75,04,3104,28,40,xx:xx:xx:xx:xx:xx,ZyXEL XXXXXX v2 02,11,-39,04,1104,28,00,xx:xx:xx:xx:xx:xx,XXXXX 03,11,-84,04,3100,28,00,xx:xx:xx:xx:xx:xx,XXXXXXXXXX 04,11,-83,04,3100,28,00,xx:xx:xx:xx:xx:xx,XXXXXXXX 131.300 exit END: EXIT
The commands are documented on Microchip's site
Example WLAN association output:
525.150 $$$ CMD 525.325 set w j 0 AOK 525.350 save Storing in config 525.375 reboot *Reboot* 527.375 $$$ CMD 527.425 set sys printlvl 0x4000 AOK 527.450 scan SCAN:Found 6 01,01,-84,04,1105,28,40,xx:xx:xx:xx:xx:xx,XXXXXXXXX 02,08,-76,04,3104,28,40,xx:xx:xx:xx:xx:xx,XXXXXXXXXX 03,11,-40,04,1104,28,00,xx:xx:xx:xx:xx:xx,XXXXXXx 04,11,-78,04,3100,28,00,xx:xx:xx:xx:xx:xx,XXXX 05,11,-78,04,3100,28,00,xx:xx:xx:xx:xx:xx,XXXXXXXXX ...Read more »