1. Blog>
  2. Custom PCB shapes

Custom PCB shapes

by: Dec 10,2013 5056 Views 1 Comments Posted in Engineering Technical

PCB board outline PCB routing Custom PCB shapes

In business as in life, we learn more from listening than talking.

We may think our message is getting out but just because we understand our processes completely, doesn’t mean our customers do.

The other day, for example, we received a fairly odd question from an electrical engineer with a product development company we have worked with for many years.

“Can you do round circuit boards?” he asked.
“Yes…” I replied tentatively, thinking there must be so much more to the question.
“So a board that’s three inches round… no problem?” he inquired.
“Absolutely,” I confirmed.
But then I began to think. If a long-time customer doesn’t know we have the capability to produce boards which aren’t just rectangular, how would a new customer know? So we are providing a PCB routing specification guide to help you determine just how wild you can go with a PCB board outline.

■smallest standard radius for an inside corner: 0.01575"
■smallest routed slot width 0.0315"
■thinnest standard material we can rout: 0.0050"
■thickest standard material we can rout: 0.1670"
■largest panel size we can produce: 14”x 18”
■variety of profiles we can produce: almost infinite
And if you have a special requirement which exceeds these standards, we are always happy to review it. Some of our most fun days are spent doing things that have never been done.

Often, we are provided with PCB designs which need to precisely fit into an enclosure and the enclosure is rarely rectangular. Good examples are hand held devices like game controllers, PC mice and sensors of every shape and size. More often than not, we can hold routed dimensioning to tolerances lower than enclosure manufacturers (sheet metal, die cast or injection molding) can produce.

We sometimes get a kick out of the shape of the boards and will refer to the project as its shape while it’s in production. For example, we just produced a “submarine” which sailed through the shop very well. Last week, we made an “Argyle” panel which looked much more high-tech than its namesake.

In an upcoming blog about Hollywood PCBs, we feature the Printed Circuit Board used in the Cylon visor for the cinematic masterpiece Battlestar Galactica. Okay, maybe it didn’t win critical acclaim and the visor didn’t collect an Emmy for special effects, but we sculpted the PCB from a piece of FR-4 and we are still proud of it.

Unique shapes can consume more time and tooling during the CNC routing process. The result may be an increased cost for your PCB but often the impact is less than the effort required for a product redesign. Normally PCB design engineers don’t express their creativity in their PCB shapes although we do sometimes get a glimpse of it in their silkscreen layers.

So you have to know we do appreciate customers who ask us about our capabilities.
It educates us on how we need to improve our communications and what information we need to provide to all our customers, both established and new. And we know it helps, when we listen.

Join us
Wanna be a dedicated PCBWay writer? We definately look forward to having you with us.
  • Comments(1)
Upload photo
You can only upload 5 files in total. Each file cannot exceed 2MB. Supports JPG, JPEG, GIF, PNG, BMP
0 / 10000
    '; html += ' '; html += ' '; html += '
    '; html += '
    0 /' + commentObj.max_count + '
    '; html += '
    '; html += '
    '; html += '
    '; html += '
    '; html += ''; html += ''; html += ''; html += '
    '; html += '
    '; html += ' '; html += ' '; html += '
    '; html += '
    '; html += ''; $('#div-three-' + id).children('div').append(html).show(); commentObj.fn_uploader(id); } }, //取消添加留言 fn_cancel_msg: function (obj) { $(obj).parents('.js-son-comments').hide(); }, //删除自己的留言 fn_del_msg: function (level, id) { if (!commentObj.isLogin) { //弹出登录框 layerLogin(); return false; } layer.confirm($('#JsA10').val(), function (index) { $.getJSON(commentObj.fn_del_comment_url(), { msgid: id }, function (res) { if (res.result) { if (level == 1) { //if (ispage > 0) // window.location.reload(); $('#li' + id).remove(); commentObj.fn_up_level_msg_cnt(level, id, -1); } else { var obj = $('#' + (level == 1 ? 'li' : 'div-three-') + id); var num = parseInt(obj.parents('li').find('b').text()); num += -1; if (num < 0) { num = 0; } var parobj = $('#div-three-' + id).parent(); obj.parents('li').find('b').text(num); $('#div-three-' + id).remove(); if (parobj.find('.sub-comment').length > 0) { } else { parobj.parent().hide(); } } commentObj.fn_up_msg_cnt(-1); layer.close(index); } else if (res.msg == "nothing") { layer.alert("error"); return; } else if (res.msg == "havereply") { layer.alert($('#JsA11').val()); return; } else { layer.alert($('#JsA12').val()); return; } }); }) }, //更新留言数量 fn_up_msg_cnt: function (val) { var num = parseInt($('#MsgCount').text()); num += parseInt(val); if (num < 0) { num = 0; } $('#MsgCount').text(num); }, //更新留言数量level fn_up_level_msg_cnt: function (level, id, val) { var obj = $('#' + (level == 1 ? 'li' : 'div-three-') + id); var num = parseInt(obj.parents('li').find('b').text()); num += parseInt(val); if (num < 0) { num = 0; } obj.parents('li').find('b').text(num); }, fn_mark_comment: function (obj, islike, commentid) { if (logintype != 1) { layerLogin(); return; } $.getJSON($('#memberurl').val() + '/Project/CommentMark?callback=?', { id: commentObj.obj_id, ProjectType: commentObj.obj_type, isLike: islike, commentid: commentid }, function (res) { if (res.result) { var markCnt = parseInt($('#commentMarkCnt' + commentid).text()); if ($(obj).hasClass('active')) { $(obj).removeClass('active'); if (islike) { $('#commentMarkCnt' + commentid).text(markCnt - 1); } else { $('#commentMarkCnt' + commentid).text(markCnt + 1); } } else { if ($(obj).parent().find('dl').hasClass('active')) { if (islike) { $('#commentMarkCnt' + commentid).text(markCnt + 2); } else { $('#commentMarkCnt' + commentid).text(markCnt - 2); } $(obj).parent().find('dl').removeClass('active'); } else { if (islike) { $('#commentMarkCnt' + commentid).text(markCnt + 1); } else { $('#commentMarkCnt' + commentid).text(markCnt - 1); } } $(obj).addClass('active'); } } else if (res.msg == "nologin") { //弹出登录框 layerLogin(); } else layer.alert("error"); }); }, //加载数据 fn_load_data: function (page) { $('#commentload').show(); $.ajax({ url: commentObj.fn_get_comment_url(), dataType: 'jsonp', data: { objid: commentObj.obj_id, objtype: commentObj.obj_type, page: page }, success: function (jason) { var totalpage = jason.TotalCount / 20; if (totalpage % 1 > 0) totalpage = parseInt(totalpage) + 1; if (page >= totalpage) { $('#commentviewmore').parent().remove(); } else { $('#commentviewmore').parent().show(); } if (jason.TotalCount > 0) { page = jason.PageIndex; var msgList = jason.DataList; var html = ''; if (msgList && msgList.length > 0) { for (var item in msgList) { html += '
  • '; if (commentObj.is_project == 1 && commentObj.obj_type == 6) { html += '
    '; html += '
    '; html += '
    '; html += '
    ' + msgList[item].MarkCnt + '
    '; html += '
    '; html += '
    '; html += '
    '; html += '
    '; html += '
    ' + (msgList[item].MbId > 0 ? msgList[item].ContactName : msgList[item].Name == "" ? msgList[item].Email : msgList[item].Name) + '
    '; } else { html += ''; html += '' html += ''; html += ''; html += '' html += '
    ' + (msgList[item].MbId > 0 ? msgList[item].ContactName : msgList[item].Name == "" ? msgList[item].Email : msgList[item].Name) + '
    '; } html += '

    '; html += msgList[item].Note; html += '

    '; if (msgList[item].MsgPic && msgList[item].MsgPic != '') { html += '
    ' var msgpicArr = msgList[item].MsgPic.split(','); for (var i = 0; i < msgpicArr.length; i++) { html += '
    ' html += ""; html += '
    '; } html += '
    '; } // html += ''; html += ''; // html += '
    '; html += '
    '; var ReplyList = msgList[item].ReplyList; if (ReplyList && ReplyList.length > 0) { for (var reply in ReplyList) { html += '
    '; html += '
    '; html += '
    '; html += '' + ReplyList[reply].ContactName + ' '; html += '' + ReplyList[reply].AddTimeStr + ''; html += ''; html += '' + $('#JsA13').val() + ''; if (ReplyList[reply].IsMy && ((new Date() - new Date(ReplyList[reply].AddTime)) / (1000 * 60 * 60)) <= 5 && (!ReplyList[reply].ReplyList || ReplyList[reply].ReplyList.length == 0)) { html += ' ' + $('#JsA14').val() + ''; } html += ''; html += '
    '; html += '
    '; if (ReplyList[reply].ReplyCommentId > 0 && ReplyList[reply].ReplyCommentId != msgList[item].Id) { html += '
    '; html += $('#JsA13').val() + '@ ' + ReplyList[reply].ReplyContactName + ':'; html += '
    '; } html += '

    ' + ReplyList[reply].Note + '

    '; if (ReplyList[reply].MsgPic && ReplyList[reply].MsgPic != '') { html += '
    ' var msgpicArr = ReplyList[reply].MsgPic.split(','); for (var i = 0; i < msgpicArr.length; i++) { html += '
    ' html += ""; html += '
    '; } html += '
    '; } html += '
    '; html += '
    '; html += '
    '; } } html += '
    '; if (msgList[item].ReplyList && msgList[item].ReplyList.length > 0) { html += ''; } html += '
    '; html += '
    '; if (msgList[item].MbId > 0) { html += '' + $('#JsA13').val() + ''; } // if (msgList[item].IsMy && ((new Date() - new Date(msgList[item].AddTime)) / (1000 * 60 * 60)) <= 5 && (!msgList[item].ReplyList || msgList[item].ReplyList.Count == 0)) { html += ' ' + $('#JsA14').val() + ''; } html += '
    '; html += '
  • '; } $('#commentload').hide(); $('#comment_ul').append(html); } } $('#commentload').hide(); }, error: function (xhr, status, error) { $('#commentload').hide(); } }); }, //保存数据 fn_save_msg: function (level, id) { var msg = $('#msg-' + id).val(); var msgpic = commentObj.getPicImgArr(id); if (msg && msg.length > 10000) { $('#msg-' + id).addClass('form-error'); return false; } else if (msg && msg.length > 0) { //msg = commentObj.convertToHTMLFn(msg); } if ((msg && msg.length > 0) || msgpic.length > 4) { $('body').addClass('global-loading'); $.ajax({ url: commentObj.fn_save_comment_url(), //dataType: 'jsonp', type: 'POST', data: { msg: msg, replyid: id, objid: commentObj.obj_id, msgpic: msgpic, objtype: commentObj.obj_type, isproject: commentObj.is_project }, crossDomain: true, xhrFields: { withCredentials: true }, success: function (res) { if (res.result) { //if (ispage > 0) { // window.location.reload(); // return; //} //js加载,不刷新页面,增强体验 $('#msg-' + id).val(""); if (level == 1) { $('.js-add-comment .js-words').css({ 'color': '#999' }).text(0); } else { $('#msg-' + id).next().find('.js-words').css({ 'color': '#999' }).text(0); } if (level == 1) { $('#js-views-example' + id).html(""); //第一级留言(直接回复文章) var objtype = parseInt($('#hidobjtype').val()); var html = '
  • '; if (commentObj.is_project == 1 && commentObj.obj_type == 6) { html += '
    '; html += '
    '; html += '
    '; html += '
    0
    '; html += '
    '; html += '
    '; html += '
    '; html += '
    '; html += '
    ' + commentObj.fn_get_username(escape(res.msg.ContactName)) + '
    '; } else { html += ''; html += '
    ' + commentObj.fn_get_username(escape(res.msg.ContactName)) + '
    '; } html += '

    '; html += res.msg.Note; html += '

    '; if (res.msg.MsgPic && res.msg.MsgPic != '') { var msgpicArr = res.msg.MsgPic.split(','); html += '
    ' for (var i = 0; i < msgpicArr.length; i++) { html += '
    ' html += ""; html += '
    '; } html += '
    '; } // html += ''; html += ''; html += ''; html += '
    '; html += '' + $('#JsA13').val() + ' '; html += '' + $('#JsA14').val() + ''; html += '
    '; html += '
  • '; $('#comment_ul').prepend(html); commentObj.fn_up_msg_cnt(1); //commentObj.fn_up_level_msg_cnt(1, res.msg.Id, 1); //if (ispage == 0) // $("html,body").animate({ scrollTop: $("#li" + res.msg.Id).offset().top - 70 }, 1000); } else { $('#js-views-example' + res.msg.Id).html(""); //第二级留言(回复第一级留言) var html = '
    '; html += '
    '; html += '
    '; html += '' + commentObj.fn_get_username(escape(res.msg.ContactName)); html += ''; html += ' ' + res.msg.AddTimeStr; html += ''; html += ''; html += '' + $('#JsA13').val() + ' '; html += '' + $('#JsA14').val() + ''; html += ''; html += '
    '; html += '
    '; if (level == 3) { //第三级留言(回复第二级留言) html += ''; } html += '

    ' + res.msg.Note + '

    '; if (res.msg.MsgPic && res.msg.MsgPic != '') { html += '
    ' var msgpicArr = res.msg.MsgPic.split(','); for (var i = 0; i < msgpicArr.length; i++) { html += '
    ' html += ""; html += '
    '; } } html += '
    '; html += '
    '; html += '
    '; html += '
    '; if (level == 3) { //第三级留言(回复第二级留言) commentObj.fn_add_reply(3, id); $('#div-three-' + id).parent('div').append(html); } else { commentObj.fn_add_reply(2, id); $('#div-two-' + id).show().children('div').append(html); } commentObj.fn_up_msg_cnt(1); commentObj.fn_up_level_msg_cnt(level, res.msg.Id, 1); } commentObj.fn_uploader(id); $('#error-tips').hide(); $('#msg-' + id).removeClass('form-error'); $('#error-tips-img' + id).hide(); $('#error-tips-img-size' + id).hide(); $('#error-tips-img-type' + id).hide(); } else if (res.msg == "nologin") { //弹出登录框 layerLogin(); } else { layer.alert("error"); } $('body').removeClass('global-loading'); }, error: function (xhr, status, error) { if (xhr.status == 403) { layer.alert("Amazon Firewall Warning: 403 Forbidden - Content may contain sensitive or dangerous words."); } $('body').removeClass('global-loading'); } }); } else { $('#msg-' + id).addClass('form-error'); if (!$('#msg-' + id).hasClass('js-mention')) $('#error-tips').show().Shake(4, 10); return false; } }, //上传文件 fn_uploader: function (id) { /*上传文件开始*/ var uploader = WebUploader.create({ // 选完文件后,是否自动上传。 auto: true, // swf文件路径 swf: '/img/js/jqueryplus/webuploader-0.1.5/Uploader.swf', // 文件接收服务端。 server: '/Common/UpFile', // 选择文件的按钮。可选。 // 内部根据当前运行是创建,可能是input元素,也可能是flash. pick: { id: '#msgFile' + id, multiple: false }, fileVal: 'FileData', fileNumLimit: 5, fileSingleSizeLimit: '2097152',//'10485760',5242880,2097152 accept: { title: 'File', extensions: 'bmp,png,gif,jpg,jpeg', mimeTypes: 'image/*' }, 'formData': { 'uptype': "blogfile", 'key': "", 'checkcode': "", "getjson": true }, }); uploader.on('beforeFileQueued', function (file) { $('#error-tips').hide(); $('#msg-' + id).removeClass('form-error'); $('#error-tips-img' + id).hide(); $('#error-tips-img-type' + id).hide() $('#error-tips-img-size' + id).hide() }); uploader.on('uploadStart', function (file, percentage) { if (logintype != 1) { layerLogin(); return; } $("#progress-box" + id).show(); }); uploader.on('uploadProgress', function (file, percentage) { $('.progress').attr('data-percent', parseInt(percentage * 80)) }); uploader.on('uploadSuccess', function (file, data) { if (data.state === "SUCCESS") { var tempImg = '
    '; tempImg += ''; tempImg += '
    '; tempImg += '
    '; $('#js-views-example' + id).show().append(tempImg) } $('.progress').attr('data-percent', parseInt(0)) $("#progress-box" + id).hide(); // 上传图预览 $(document).on('click', '.js-views-example .del-pic', function () { var fileid = $(this)[0].id; var file = uploader.getFile(fileid) if (file) { uploader.removeFile(file, true); // 删除文件 } $(this).parent().remove(); $('#error-tips').hide(); $('#msg-' + id).removeClass('form-error'); $('#error-tips-img' + id).hide(); $('#error-tips-img-size' + id).hide(); $('#error-tips-img-type' + id).hide(); }) }); uploader.on('error', function (str) { if (str == "Q_EXCEED_NUM_LIMIT") { $('#error-tips-img' + id).show().Shake(4, 10); } else if (str == "Q_TYPE_DENIED") { $('#error-tips-img-type' + id).show().Shake(4, 10); } else if (str == "F_EXCEED_SIZE") { $('#error-tips-img-size' + id).show().Shake(4, 10); } setTimeout(function () { $('#error-tips-img' + id).hide(); $('#error-tips-img-size' + id).hide(); $('#error-tips-img-type' + id).hide(); }, 3000); }); /*上传文件结束*/ }, // 文本域转html convertToHTMLFn: function (text) { return text.replace(/\n/g, '
    ').replace(/ /g, ' '); }, getPicImgArr: function (id) { var imgpicarr = []; $("img[name='pig-img" + id + "']").each(function (i, e) { imgpicarr.push(e.src); }) return imgpicarr.length > 0 ? imgpicarr.join(',') : ""; } } commentObj.fn_init(); -->
    Back to top
    OSZAR »