Customizable, 3D-Printable Keyguard for Grid-based, Free-form, and Hybrid AAC Apps on Tablets by Volksswitch model
3dmdb logo
Thingiverse
Customizable, 3D-Printable Keyguard for Grid-based, Free-form, and Hybrid AAC Apps on Tablets by Volksswitch

Customizable, 3D-Printable Keyguard for Grid-based, Free-form, and Hybrid AAC Apps on Tablets by Volksswitch

by Thingiverse
Last crawled date: 3 years ago
Can you use the Thingiverse Customizer to create your keyguard design? YES
Is the Thingiverse Customizer clumsy and fragile? OH, YES!!!!
If you become at all serious about designing a keyguard, you should take the leap and download the free software OpenSCAD from OpenSCAD.org and download the full version of the keyguard designer from the Files tab. Complete instructions are available here: https://volksswitch.org/index.php/volks-devices/fully-customizable-3d-printable-aac-keyguard-for-tablets/installing-openscad-on-your-computer-and-customizing-a-design/
Keyguards help individuals with limited ability to point reliably at regions of an app running on a tablet. They do this by physically separating access to specific regions of the tablet screen with rails that rise up from the surface of the tablet. In this case, the apps are associated with Augmentative and Alternative Communication (AAC).
Some AAC apps organize their content into grids with menus and message bars, above or below the grid. Others are much more creative and unpredictable in their layouts. Hybrid apps are largely grid-based but their keyguards can be enhanced by selectively exposing specific regions of the app.
The number of possible choices for tablet, tablet case, and AAC app, make it impossible to design a few keyguards that will meet everyone's needs. To complicate matters further, users have lots of flexibility for how they organize the content in their apps. All of this is to say that users must be given control over the keyguard design. I know of only one 3D modeling tool where that is possible - without requiring that each user become an expert in 3D modeling. That tool is OpenSCAD. OpenSCAD has a "Customizer" feature that allows users to provide input to an OpenSCAD design that can shape the design to meet their specific needs.
We have created an OpenSCAD design that allows the user to identify their tablet, describe how the AAC app is laid out, describe their case, and choose a mounting method to mount the keyguard directly to the tablet or to the case. Once the keyguard is fully described you can generate and save an STL file that you can print on your 3D printer.
This is a Thingiverse Customizer design but only for grid-based apps. Free-form and Hybrid apps require greater specification and visualization than Thingiverse's Customizer can support. For those keyguards you will need to download and install the latest version of OpenSCAD and a good text editor like Notepad++.
If you will be using OpenSCAD, the only files you need to download from here are called keyguard.scad, screen_openings.info, case_openings.info, and case_additions.info. All other files are just for illustration. You also need to go to https://wp.me/P9evBA-5b to learn how to customize the keyguard.
A PDF form is provided as well for collecting and communicating the requirements for your keyguards.
UPDATE 26 Feb 2021 (version 37): Moved the home button location further from the edge of the screen and increased the height and width of the home button for the Accent 1000.
Fixed a bug associated with circular openings and cell ridges when changing rail widths.
Added support for the Fujitsu Stylistic 616 which is exactly like the Fujitsu Stylistic 665 and associated both with the GridPad. Fixed bug that prevented height/width compensation from working with unequal left/bottom case openings. Added support for adding height/width compensation to one side of the keyguard at a time. Added a virtual tablet called "blank" that can be used to specify an arbitrary-sized keyguard - largely for laser-cutting. Changed labels for "unit of measure" and "starting corner for measurements" to reinforce that they only apply to screen openings. Added option to ignore Laser-Cutting best practices when creating a laser-cut keyguard. Added ability to trim keyguard to an arbitrary rectangle by specifying the lower left and upper right coordinates relative to the lower left corner of the case opening. Added the ability to use a large rectangle or rounded rectangle as an overall case addition. Added temporary support for the Chat Fusion 10 from PRC/Saltillo, need verification of screen dimensions and camera/home button data. Changed the x,y anchor point location for manual clip-on strap pedestals. Fixed bug where engraved SVG images wouldn't rotate. Added the ability to control the depth of an engraved svg image.
UPDATE 22 Jan 2021 (version 36): Fixed bug that allowed you to choose a mounting method other than slide-in tabs and no mount for a laser-cut keyguards. Fixed bug that put a chamfer on outer arcs when type of keyguard is Laser-Cut. Added support for displaying an SVG version of a screenshot below the keyguard. Changed rules for shape of opening in laser cut keyguards to allow for circles and rounded rectangles with larger corner radii. Changed rules to allow for SVG generation of first layer of 3D-Printed type of keyguard - used when testing fit of keyguard to screenshot.
UPDATE 3 Dec 2020 (version 35): Enlarged the opening for the home button in the Accent 1000 to make it easier to reach. Added support for generating SVG/DXF files for laser-cutting a keyguard. Limited slide-in tab length to 10 mm rather than 20 mm and set the minimum to 4 mm (exactly 3.175 mm for a laser-cut keyguard.
UPDATE 16 Nov 2020 (version 34): Fixed bug in vridge and hridge features. Added support for ridges around cells. Removed support for walls in screen/case openings.info files.
UPDATE 17 Oct 2020 (version 33): Added support for Apple iPad models: iPad 8th generation, iPad Pro 12.9-inch 4th Generation, and iPad Air 4. Fixed home button location and widened the camera opening for the iPad Pro 12.9-inch 3rd Generation. Fixed bug in "swap camera and home button" when home button is not located on the face of the tablet. Turned off creation of camera opening and home button opening if tablet is a system that requires a case.
UPDATE 13 Oct 2020 (version 32): Added support for Dynavox Indi. Added support for engraved and embossed SVG images.
UPDATE 27 Sep 2020 (version 31): Added support for Amazon Fire HD 8 (10th generation). Added support for the Accent 1000, the Dynavox 1-12+, and updated camera/home button info for NovaChat 8. Changed camera and home button locations to be measured from the edge of the screen rather than the edge of the tablet. Added support for cutting out the entire screen area - primarily to support validating dimensions for new tablets. Fixed bug that improperly calculated trimming of towers for clips.
Refactored code associated with unequal case opening dimensions. Added support for tablets where the screen doesn't sit exactly in the middle of the glass.
UPDATE 11 May 2020 (version 30): Added clip-on strap mounting pedestals and slide-in tabs to list of items that can be added to a keyguard in the case_additions.info file - to make it possible to have a pedestals and tabs outside of the normal keyguard region and into the case_additions regions. Added support for two different "mini" clips - clips that don't wrap around to the underside of the tablet/case so that the clip won't interfere with the tablet mount. Extended the spur of the clip an additional mm to better engage the slot in the pedestal. Changed the width of the slots in clips to be a function of the clip width. Added support for independently setting the widths of horizontal and vertical clips. Fixed a bug with rounded-rectangle case additions when the corner radius is 0. Fixed several bugs associated with creating cell covers.
UPDATE 28 Apr 2020 (version 29): Extended tablet data to support non-iPad-style tablets by allowing for cameras and home buttons to be located on the long edge of the tablet and to have non-circular shapes. Added support for clip-on straps to attach to long edge of keyguard, short edge, or both. Added support for tablet-specific corner radii.
UPDATE 12 Mar 2020 (version 28): Added support for independent widths for horizontal and vertical rails. Added support for the Accent 1400 (AC14-20 & AC14-30) system. Added support for systems (like the Accent) for which there is no tablet sizing information. Added support for non-rectangular perimeters. Added support for creating both loose and tight dovetail joints.
UPDATE 11 Feb 2020 (version 27): Added support for Surface Pro 7 and Surface Pro X. Added support for negative padding values. Added support for dovetail joints, for a more reliable joint, when splitting a keyguard to print on a smaller printer.
UPDATE 26 Jan 2020 (version 26): Changed name of Surface Pro 2017 to Surface Pro 5. Added support for the Fujitsu Stylistic Q665 (used in the Grid Pad 11 system). Added check for a zero mm/px corner radius used with a cut for a rounded rectangle and changes shape to a rectangle. Fixed bugs associated with adding height and width compensation for tight cases. Fixed bugs associated with trimming the keyguard to the size of the screen. Fixed code so a zero width wall wouldn't appear between the message and command bar if both are exposed. Modified outer arcs so that their chamfers would match the chamfers of other shapes in size. Changed option for "slide_in_tab_thickness" to "preferred_slide_in_tab_thickness" and set actual thickness of tab to depend on rail height minus outer chamfer.
UPDATE 13 Jan 2020 (version 25): Added support for NovaChat 5 and 8. Changed dimensions for NovaChat 10 based on feedback from Saltillo. Added support for all Microsoft Surface tablets. Fixed bugs with trim to screen and height and width compensation for tight cases.
UPDATE 30 Dec 2019 (version 24): Added support for the iPad 7th generation and iPad Mini 5. Changed all iPad data to use calculated screen size measurements rather than values of Active Area from Apple. Added support for bold, italic, and bold-italic font styles to top and bottom text.
UPDATE 12 Nov 2019 (version 23): Allow raised tabs as thin as 1 mm. Accounted for thin walls when using clip-on straps. Added support for the NOVAchat 12.
UPDATE 22 Sep 2019 (version 22): Added number of horizontal pixels to the data for each tablet to properly support portrait mode for free-form and hybrid tablets. Fixed several bugs associated with creating portrait mode free-form and hybrid tablets
UPDATE 08 Sep 2019 (version 21): Fixed bug involving clip-on straps and split keyguards.
Fixed bug where cut for vertical clip-on strap (no case) was a different depth than the horizontal strap cuts. Updated pixel sizes of 0.960 mm/pixel to a more accurate value of 0.962 mm/pixel. Extended the upper bound for added thickness for tight cases from 15 mm to 20 mm.
UPDATE 26 May 2019 (version 20): Added support for the iPad Air 3 and the Surface Pro 4.
UPDATE 16 May 2019 (version 19): Changed upper limits on command and message bars from 25 mm to 40 mm to support large tablets. Fixed bug that was exposed when adding height and width compensation to the keyguard for tight fitting cases with very large corner radii. Made all radii, including those on the outer corners of the keyguard sensitive to the value of "smoothness_of_circles_and_arcs". Fixed a bug that clipped the underside of a clip-on pedestal when it is adjacent to a bar.
UPDATE 30 Apr 2019 (version 18): Added support for splitting the keyguard into two halves for printing on smaller 3D printers. Put small chamfer at the top edge of all openings including the home button opening - it's only visible with large edge slopes like 90 degrees. Separated circle from hotdog when specifying screen and case openings. Added minimal error checking for data in screen_openings.info and case_openings.info. Fixed bug when placing additions from case_openings.info. Moved pedestals for clip-on straps inward slightly to account for chamfer on the outside edge of keyguard. Fixed bug that produced a static width for the vertical clip-on strap slots.
UPDATE 21 Apr 2019 (version 17): Changed code that creates rounded corner slide-in tabs to use the offset() command because original code was confusing the Thingiverse Customizer. Fixed bug that prevented adding bumps, ridges and walls in the case_openings.info file. Added acknowledgements for all those who helped bring keyguard.scad to life.
UPDATE 18 Mar 2019 (version 16): Changed code to use offset() command to create rounded corners rather than cutting the corners. Added a small chamfer to the top edge of the keyguard to reduce the chance of injury. Changed code to add case and screen cuts "after" adding compensation for tight cases. Added support for the NOVAchat 10.5 (does not support exposing the camera). Changed filename extension of case_cuts and screen_cuts files from .scad to .info to reduce confusion about what is the main OpenSCAD program.
UPDATE 24 Jan 2019 (version 15): Added support for first non-iPad tablet, the Nova Chat 10 (does not support exposing the camera). Cleaned up the logic around when to cut for home and camera to account for lack of a home button or camera on the face of the tablet. Added support for additive features like bumps, walls and ridges - as an aid to individuals with visual impairments. Fixed bug with height and width compensation for tight cases. Added support for using clip-on straps with cases. Added support for printing clips. Added support for hiding and exposing the status bar at the top of the screen.
UPDATE 11 Dec 2018 (version 14): Added option to control the number of facets used in circles and arcs - the original value was 360 and the default is now 40 which should greatly improve rendering times and eliminate issues for laptops with limited memory. Separated the tablet data from the statement that selects the data to use with the intent of making it easier to update and change the data in Excel. Migrated from using Apple's statement of "active area" dimension to calculating the size of the screen based on number of pixels and pixel size - active area dimensions seemed to overestimate the size of the screen - also assume a single value for number of vertical pixels in a screen shot and therefore a single value for pixel to mm conversion based on the stated pixel size. Added the ability to engrave text on the bottom of the keyguard. Added support for a separate data file to hold cut information that sits outside of the screen area, will always be measured in millimeters and will always be measured from the lower left corner of the case opening - so now there are two files for defining cuts: one for within the screen area and one for outside of the screen.
UPDATE 27 Nov 2018 (version 13): Added support for engraved text.
UPDATE 17 Nov 2018 (version 12): Extended the upper end of the padding options to 100 mm after seeing a GoTalk Now 2-button layout. Minor corrections to a couple of iPad Air 2 measurements. Added support for swapping the camera/home button sides. Added support for sloped sides on outer arcs.
UPDATE 12 Nov 2018 (version 11): Added support for iPad 6th Generation, iPad Pro 11-inch, and iPad Pro 12.9 inch 3rd Generation. Added ability to offset the screen from one side of the case toward the other. Fixed bug that caused rounded case corners not to appear in portrait mode. Added ability to create outside corners on hybrid and free-form keyguards. Added ability to change the width of slide-in and raised tabs and their relative location (changed the meaning of "width" as well).
UPDATE 08 Nov 2018 (version 10): Reduced some code complexity by using the hull() command on hot dogs and rounded rectangles. Removed options to compensate for height and width shrinkage, upon testing they are too simplistic and keyguards don't do well with annealing anyway. Changed "raised tab thickness" to "preferred raised tab thickness" because the raised tab can't be thicker than the keyguard or it won't slice properly - the keyguard will be raised off the print surface by the bottoms of the four
raised tabs.
UPDATE 22 Jun 2018 (version 9): Combined functionality for both grid-based and free-form keyguards into a single designer. Added support rounding the corners of the keyguards, when they are placed in a case, to accommodate cases that have rounded corners on their openings. Can now create cell openings that are rounded-rectangles. Can limit the borders of a keyguard to the size of the screen for testing layouts.
UPDATE 12 Jun 2018 (version 8): Reduced the maximum slide-in tab width from 30 mm to 10 mm. Added the ability to merge circular cells horizontally and to merge both rectangular and circular cells vertically
UPDATE 25 May 2018 (version 7): Padding options have been moved to the Grid Layout section of the user interface to clarify that these affect only the grid region of the screen. Changed the width of the right border of the iPad 5th generation tablet to match width of the left border. Made some variable value changes so that it is easier to see the choices selected in the Thingiverse Customizer. Changed cover_home_button and cover_camera to display_home_button and display_camera because the original options were confusing.
UPDATE 20 May 2018 (version 6): Added support for controlling the slope of top or bottom edges of message and command bars.
UPDATE 8 May 2018 (version 5): You can print out a plug for one of the cells in the keyguard by choosing "cell cover" in the Tablet>generate pull-down. You can add a fudge factor to the height and width of the tablet to accommodate filaments that shrink slightly when printing. You can add add padding around the screen to make the keyguard stronger without affecting the grid and bars to account for cases that go right up to the edge of the screen
UPDATE 27 Apr 2018 (version 4): I've added a new version of the OpenSCAD file - keyguard v4.scad It provides support for circular cut-outs and puts an option to specify the shape of the cut-outs in the Customizer UI. At the same time, I've added support for covering one or more cells and support for merging a cell cut-out and the next cell cut-out.
UPDATE 25 Apr 2018 (version 3): I've added a new version of the OpenSCAD file - keyguard v3.scad. It has been rewritten to better support portrait mode and to use cuts to create openings to the screen surface rather than defining rails. This opens the door for openings with other geometries in the future - like circles and ovals. We fixed a bug in where padding appeared - put it around the grid rather than around the screen. We increased the depth of Velcro cut-outs to 3 mm, which roughly translates to 2 mm when printed. The cut for the home button is now made at 90 deg. to not encroach on the grid on tablets with narrow borders.
UPDATE 22 Apr 2018 (version 2): I've added a new version of the OpenSCAD file - keyguard v2.scad. It contains all the functionality of the original file and adds support for a new mounting method: "Clip-on Straps". As always, the website above is where you go to see how everything comes together.

Tags