CNC Graphics Tablet
Intro: CNC Graphics Tablet
This instructable describes an Android app [1] that transforms a cellphone or tablet into a CNC graphics tablet.
The gcode output from the graphics tablet is compatible with the following plotters:
- https://www.instructables.com/id/CNC-Drum-Plotter/
- https://www.instructables.com/id/CNC-HANGING-PLOTTE...
- https://www.instructables.com/id/CNC-Robot-Plotter/
Display an image of your choice, "touch" the screen, and the plotter-pen will move to that screen co-ordinate. A series of "touches" will quickly produce an outline that may be shaded. The above sketch took approximately 5 minutes.
The software allows you to:
- set your paper size (millimeters)
- position your pen over the 0,0 plotter co-ordinate
- send a gcode command
- save the gcode output to a file
- raise and lower the pen
- draw images
Images are automatically scaled to fit within your paper dimensions.
Communication with the plotters is via a bluetooth link.
[1] "Digitizer.apk" is only for use with the above three plotters. Do not attempt to use it with a CNC machine.
STEP 1: The Software
I created "Digitizer.apk" using "MIT App Inventor 2" available from http://appinventor.mit.edu/explore/
The software has been tested on a Samsung GT-S7275R cellphone running Android version 4.2.2, and also on a Samsung 10.1 GT-P7510 Tablet running Android version 4.0.4.
Don't be alarmed at the number of permissions this app requires. These permissions are required by App Inventor. "Digitizer.apk" is add-free and to the best of my knowledge contains no malware or spyware.
In addition to "Digitizer.apk" it is helpful to install the following apps from "Google Play" :
- WiFi File Transfer
- APK Manager
- ES File Explorer
- Quickpic
- Photo Editor
STEP 2: Installing the Software
Step 1
Download "Digitizer.apk" to your PC
Step 2
Go to the security settings on your phone/tablet and click (enable) "Allow installation of non-Market apps"
Step 3
Use "WiFi File Transfer" to upload "Digitizer.apk" to your Android "download" folder.
Step 4
Install "Digitizer.apk" using "APK Manager"
Step 5
Disable the security setting that you enabled in Step 2 above.
Step 6
Drag the "Digitizer" app onto your screen.
Open the app and you should see the two screens shown later in this instructable.
Clicking "Menu" and "Digitizer" swaps you between the two screens.
STEP 3: Pairing Your Bluetooth
Step 1
Switch on your plotter. The HC-06 LED will start flashing.
Step 2
Activate your phone's "Bluetooth" and scan for other bluetooth devices. Select the device that has not yet been "paired" and has "HC-06" in the title. Use "1234" (without the quotes) for the password.
Step 3
Open the "Digitizer" app, click "Menu", then click "Connect Bluetooth". Click the line containing HC-06. All going well the menu will reappear this time containing "Bluetooth Connected" in blue lettering. If requested, use the same password.
The HC-06 LED will stop flashing once a link has been established.
STEP 4: Using the Software
The Digitizer Screen
"Pen Up" allows you to move the plotter-pen about the screen without leaving a mark. Each pen-up position is marked with a blue dot.
"Pen Down" allows you to leave a trace while moving the plotter-pen about the screen. Each pen-down position is marked with a red dot.
"Pick Image" allows you to pick a screen image.
"Menu" moves you to the menu screen.
The Menu Screen
"Bluetooth Connected" indicates that you have established a bluetooth link.
"Paper Height" sets the height of your drawing in millimeters. The image size shown on the digitizer screen will be scaled up/down to fit.
"Paper Width" sets the maximum width of your drawing in millimeters. If the image size shown on the digitizer screen is wider than the paper width the image will be scaled to fit within each of the paper dimensions.
"Adjust Pen Position" allows you to move the gondola on the "CNC Hanging Plotter" to its 0,0 co-ordinate. To position the gondala click the start button and use the direction keys. The left-hand pair of direction keys controls the left-hand motor ... the right-hand pait of direction keys controls the right-hand motor. Click fish once the gondola is in position.
"Command" allows you to send a command to plotter. For example entering "T5" (without the quotes) into the command box and clicking "send" will cause the "CNC Hanging Plotter" to draw the letters "ABC". A full list of possible commands may be obtained by connecting to the plotter using your PC and displaying the "Menu" using your "Teraterm" terminal emulator.
"Gcode" captures each gcode created by the digitizer.
"Save Gcode" appends the captured gcode to a file "/SDcard/gcode.ngc". Export "/SDcard/gcode.ngc" to your PC using "WiFI File Transfer" and you will be able to recreate the image whenever you wish using "Teraterm".
"Clear Screen" clears the dots off the digitizer screen, erases the captured gcode, and deletes the file "/SDcard/gcode.ngc".
"Digitizer" returns you to the digitizer screen. Clicking between screens does not affect the gcode.
STEP 5: Code Update
14 June 2017
The attached Digitizer.apk now generates G00 instead of G0.
The g-code interpreters in my latest plotters [1] use a "string" search which requires an exact pattern match.
The g-code interpreters in my earlier plotters [2] look for an "integer" following the initial g-code letter which means that G00 and G0 both return zero.
[1]
https://www.instructables.com/id/CNC-Dual-Arm-Plot...
https://www.instructables.com/id/CNC-Drum-Plotter/
[2]
STEP 6: MIT App Inventor Code
The Massachusetts Institute of Technology (MIT) App Inventor code for this project is attached should you wish to improve it.
Click here to view my other instructables.
5 Comments
klimat.kdv 3 years ago
Есть о чем поговорить.
lingib 7 years ago
Step 6 contains the source code for this project
lingib 7 years ago
Digitizer.apk has been modified to work with:
https://www.instructables.com/id/CNC-Drum-Plotter/
Digitizer.apk is backward compatible with the following plotters:
https://www.instructables.com/id/CNC-HANGING-PLOTTE...
https://www.instructables.com/id/CNC-Robot-Plotter/
sonasec 7 years ago
Thank you for sharing. Nice , good job.
lingib 7 years ago
Thank you :)