X-Carve X-Controller R Pi Touchscreen Mount

X-Carve X-Controller R Pi Touchscreen Mount

Description

Update (23 Mar 2020): Added a 3 USB version and support for RPi 4. Basically, everything is the same, but this version provides external access to all available USB ports in case you plan on using Bluetooth keyboard and/or mouse. You'll need USB 3.0 panel mounts that have 90 degree bends at the male end in order to clear the case (see picture for orientation), one each of the following; https://www.amazon.com/gp/product/B07FY56SZS/ref=ppx_yo_dt_b_asin_title_o07_s00?ie=UTF8&psc=1 https://www.amazon.com/gp/product/B07NXXLBSK/ref=ppx_yo_dt_b_asin_title_o05_s00?ie=UTF8&psc=1 It is hard to tell in the picture, but the USB 3.0 cable that plugs into the bottom hole on the pi (the 90 degree that bends away from you), loops back underneath the pi toward the opening and around the X-Carve serial connector as it bends toward the side of the case. It was the only way that the cable would clear everything internally. The Pi 4 also runs significantly hotter than the comparable Pi 3B+ (by my measures 10-20 degrees C at idle), so you will need cooling. I went with the two fan heatsink that has some good reviews and will not interfere with out internal setup; https://www.amazon.com/gp/product/B07D5WWNH6/ref=ppx_yo_dt_b_asin_image_o04_s00?ie=UTF8&psc=1 You'll also want to be sure to invest in a quality USB Mini B cable. I had countless errors during software setup driven solely by poor quality cables. The one below seems decent but if you can find one with ferrite cores, that would be even better; https://www.amazon.com/UGREEN-Charging-Controller-Players-Receiver/dp/B00P0GI68M/ref=sr_1_1?keywords=usb+mini+b+to+usb+a+data+cable+3+feet&qid=1585001126&s=electronics&sr=1-1 Lastly, there are some tight tolerances inside the case, so you'll need a USB-C power cable capable of 2.4 to 3.0 amps with a 90 degree bend at the end. I went with a 3 foot cable so it was easier to plug and unplug during any maintenance. You'll also notice that I moved my buck converter closer to the front so I don't have to remove the GRBL board to remove the USB cable (see photos); https://www.amazon.com/gp/product/B07PHRPCSR/ref=ppx_yo_dt_b_asin_title_o00_s01?ie=UTF8&psc=1 In the pictures, I changed out the button caps to be more readily identifiable if I needed to act fast during a carve. Pause/Hold is now grey, Play/Execute is white, and Cancel/Halt is yellow. Update (11 Mar 2020): I added a new version (v10) that incorporates some changes to the design to make it easier to print. I added a chamfer along the top to transition down, moved the symbols towards the button holes, and flattened the symbols so everything is flush. I added fillets and chamfers internally as well for ease of printing. With v9 you should only need 3 supports: one on each corner where the top of the screen over-hangs the screw holes, and the third internally that will support the screen mounting flange. The button holes and USB plug holes should not need any supports depending on how good your printer is at bridging. I also corrected a discontinuity between the screen surround and the base (closed the 0.005 mm gap). If anybody wants a non-MMU version, please message or comment and I will upload it. Enjoy! Update (9 Aug 2019): Swapped "Pause" and "Play" button symbols (they were originally backwards). Thanks to @greglwood for pointing it out! I still have photos of the assembly process posted with the wrong button symbols, but once I finish my own reprint, I'll post new photos. Please keep the comments coming! Update (4 Aug 2019): USB and GPIO relief is now bigger to accommodate more GPIO jumpers and elongated the screen mounting holes to provide for irregularities during production. Also tweaked the internal gussets for printing. Redesigned the button mount bracket to incorporate 4 mounting posts and eliminate the need for dedicated standoffs. Finally, I redesigned the "symbols"/button legend/logos and created a MMU version to print the Inventables logo and button legend in a separate color. If you use this design, open the MMU version in your slicer, then "add part" and open the logos. Everything should align. I updated the parts list and assembly instructions to account for the changes. This is a Raspberry Pi Touchscreen mount for the X-Carve X-Controller. This print effectively replaces the front end of your X-Controller and provides better interaction and integration with your X-Carve. Things that you will need before beginning; 4 ea M3x8mm nylon standoffs (with 6mm threaded post) 1 ea Drok 5.2V buck converter ($9 on Amazon) (https://www.amazon.com/gp/product/B07C8LC93L/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1) 1 ea Reversible right angle micro USB power cable capable of at least 2.1 amps (https://www.amazon.com/gp/product/B07BS1NZ5W/ref=ppx_yo_dt_b_asin_title_o01_s00?ie=UTF8&psc=1) 2 ea USB A panel mounts (https://www.amazon.com/gp/product/B07C87FYLY/ref=ppx_yo_dt_b_asin_title_o08_s01?ie=UTF8&psc=1) 16 ea M3x6mm button head cap screws 4 ea M4x6mm socket head cap screws 2 ea round button tactile micro switches (colors of your choice) (https://www.amazon.com/gp/slredirect/picassoRedirect.html/ref=sspa_dk_detail_1?ie=UTF8&adId=A00270332VAT10MM35CJ6&qualifier=1560060328&id=8689149770269965&widgetName=sp_detail&url=%2Fdp%2FB01E38OS7K%2Fref%3Dsspa_dk_detail_1%3Fpsc%3D1%26pd_rd_i%3DB01E38OS7K&pd_rd_w=6xlhj&pf_rd_p=8a8f3917-7900-4ce8-ad90-adf0d53c0985&pd_rd_wg=7mGen&pf_rd_r=VRWSVEPKEAJC43ED4VK7&pd_rd_r=66b0a077-8a7c-11e9-a113-f357d9700175) About 12" of 16 AWG wire for buck converter Short USB A to USB Mini B cable (I used a 12" cable with a right angle adapter cable) (https://www.amazon.com/gp/product/B00UMZN47Y/ref=ppx_yo_dt_b_asin_title_o08_s00?ie=UTF8&psc=1) Jumper wires for R Pi Raspberry Pi 3 B or B+ Raspberry Pi 7" Touchscreen I have been using Octoprint with my Prusa 3D printer for quite a while and love the flexibility of being able to design on my laptop then send the design to my printer that is in another room. I wanted that same ability for my CNC, so I created a CNCjs kiosk using a Raspberry Pi and Raspberry Pi touchscreen. Together they give me nearly the same flexibility. This mount provides near seamless integration with the X-Carve. This mount will replace the front end of the X-Controller. Start by removing the 4 screws at the front of your X-Controller and remove the front plate. Detach the control switches and board by removing the 4 screws holding them to the front. From there, you should be able to reach into the GRBL controller and remove other end of the USB B cable (the opposite end of the square USB cable). Once the control switch panel is removed, disconnect the ribbon cable and remove the 4 standoffs on it replacing them with the 4 each M3x6mm standoff mentioned above. Now the control switches can be mounted to the printed case, just make sure the LED is aligned with its hole. Secure the switches with 4 each M3x6mm button head cap screws. This design includes 2 additional tactile micro switches for Shutdown (Power) and Reset. The switches were soldered to jumper leads then hot glued into the included power/reset switch holder. The switch holder will need no clean up if printed flat side down. Please see picture for correct mounting of switches. The "prongs" of the switches exit the narrow side of the mount. It should be evident once you've soldered the leads on. I included a glue well in the mount so you can add a dab of hot glue to the well before placing the switch on the mount. The mount is a snug fit and you should feel a bit of a snap as the switches click into the seat. Once seated, hot glue the sides as well to both secure the switch and protect the leads. Snap a round top on (color of your choosing), then mount to the case with 4 each M3x6mm button head cap screws. Keep track of which leads are which so they are pinned correctly. The switch on the far left has a corresponding power symbol and should be pinned to pins 37 and 39. The other switch will go to “RUN” and pin 34. Next, secure the USB panel mounts to the case. These will have a top and bottom and the holes were printed with that in mind. holding the case upright and looking at the cutouts on the outside, the white part of the USB plug should be on the left (reference picture). Secure these with 4 each M3x6mm button head cap screws. Now, build your Raspberry Pi. Follow Raspberry Pi directions for screen mount (and add "lcd_rotate=2" to your /boot/config.txt file before you boot). I would strongly recommend just using Raspbian Buster over Noobs. (Noobs is too heavy and includes a lot of superfluous stuff that gets in the way). Run through the whole setup for the desktop mode. For the sake of time and words, I'll skip that part. Google CNCjs or go to their github page and it will walk you through how to do the setup on the Pi. Once you get CNCjs installed, but sure to click on their link to "cncjs-shopfloor-tablet" as you'll need that for the tablet specific layout. I also loaded a Chromium extension called "Rescroller" and added "display: none;" under the first line of the CSS to hide scroll bars. Most importantly, you'll want to setup your autostart (sudo nano /etc/xdg/lxsession/LXDE-pi/autostart) file to boot chromium into full screen, not kiosk. Add "@chromium-browser --disable-session-crashed-bubble --touch-events-enabled --full-screen http://127.0.1.1:8000/tablet"). Full screen makes it easier to exit using touch if you want to access the Pixel desktop. In an effort to clean up the power, I turned off my HDMI and audio ports. You'll also need to solder a 2 pin header to the R Pi on the "RUN" and "PEN" headers (this was formerly known as the reset or P6 header). We will only use "RUN" and a ground from pin 34. On the RPi4 this is known as the J2 header. In my experience, it's easier to solder a 3 pin header on than a two pin, but the pins you'll want to use are "RUN" and "GND" (GND is not labeled, but it is the center pin). On the Pi4, a ground is supplied right there, so you don't need to use one from the GPIO. Add the script for shutdown (just google "safe shutdown for R Pi GPIO 26"...GPIO 26 is pin 37 and this is necessary because pin 5 [GPIO 3] is occupied by the touchscreen leads). Here’s the link: https://www.raspberrypi.org/forums/viewtopic.php?t=217442 It's one line in the config.txt file, but you'll want to change the pin to GPIO 26 as mentioned (this is actually pin 37 and pin 39 is a ground so it's easier to work with). The jumpers from the two tactile switches will go to these 4 pins. (Note: use the power port on the Pi, not the touchscreen. The jumper wires will power the screen from the Pi). Once the Pi is all setup and tested, plug in your two USB panel mount cables, your USB Mini B cable and I used a wireless keyboard dongle. This is also a good time to plug your micro USB power cable (or USB-C power cable) into the Pi because it will be more difficult once fully assembled. Now move on to the jumper wires making sure that they land on the right pins. Once they're set you can mount the screen (be careful with the jumper wires from the screen to the Pi as they have a tendency to get caught between the screen and case). The easiest way to mount it is by placing the screen face down. There are two internal mounting screws and two external. The bottom screw inside the case is a pain, so set the screw in the mounting hole then use the hole in the bottom of the case to feed the allen key down to the screw head before putting the case on the screen. Tighten this screw first then the other 3. There is a relief on the bottom of the case for the USB ports and GPIO. In the X-Controller, you may need to open the back of the case to get access to the power. I ran 16 AWG wire from one of the 24v leads to my buck converter with terminal crimp connectors on one end (PSU end) and ferrules on the other end (buck converter). The buck converter outputs 5.2v at 5 amps (with 24v input), so it's more than enough and you have your choice of screw terminal or USB. I used the USB for ease of use (the picture shows wires in the screw terminals, because I added a 5v lead on the back of my case). The buck converter was secured to the top of the PSU using two layers of 3M foam adhesive tape. The first layer protected the soldering, the second layer mounted it. Once the buck converter is mounted, run the USB A portion of your micro USB cable under the GRBL board to the buck converter. This is more easily facilitated by unplugging the stepper motor leads at the back of the X-Controller and removing the two stop screws on the side of the X-Controller. Now reassemble the x-controller with the exception of the front panel. Lastly, plug in the USB Mini B cable to the port on GRBL board and secure the Touchscreen case to your X-Controller with 4 each 4mmx6mm socket head cap screws starting with the bottom two screws, then the top two using your fingers to start them then use the "L" of the allen key to secure them. If operating properly, the left button on top is the safe shutdown button that will trigger a shutdown. It takes about 5-10 seconds from button push for full shutdown but the screen will go blank immediately. The button on the right is the hard reset button that will reset the Pi if you have issues or freezes. My normal sequence is shutdown switch, wait 5-10 seconds, then kill the power to the X-Controller. Lots of time, thought, and energy went into this so I hope you find utility in it. If you found this useful, tips help me cover time and expenses. Thanks and enjoy!

Statistics

Likes

98

Downloads

0

Category

Parts