PageSourceSearch

https://jerrytron.com/component---src-templates-project-js-content…c-projects-q-car-md-8d3d387e20292f4b344c.js

js jerrytron.com collected 2026-10-06 17:03:39 UTC 6,377 bytes, 2 lines download raw bytes

1"use strict";(self.webpackChunkjerrytron_com=self.webpackChunkjerrytron_com||[]).push([[8201],{8711:function(e,t,l){l.r(t),l.d(t,{default:function(){return f}});var n=l(8453),r=l(6540);function a(e){const t=Object.assign({p:"p",strong:"strong",em:"em",h2:"h2",a:"a",ul:"ul",li:"li"},(0,n.RP)(),e.components);return r.createElement(r.Fragment,null,r.createElement(t.p,null,r.createElement(t.strong,null,"This project appeared in the ",r.createElement(t.em,null,"Prototyping for Play")," video course published through O'Reilly Media, as part of segment 11 titled:")),"\n","\n",r.createElement(t.h2,null,"Making Connected Games"),"\n",r.createElement(t.p,null,"This project demonstrates the use of a Photon microcontroller to create a remotely controllable car. The firmware queues incoming commands, executing them for the amount of time specified. A simple HTML interface is also included to show how simple it is to interact with this WiFi enabled device!"),"\n",r.createElement(t.h2,null,"Repository"),"\n",r.createElement(t.p,null,"The source code and instructions for flashing it to a Photon microcontroller are available here: ",r.createElement(t.a,{href:"https://github.com/jerrytron/pfp-q-car"},"Q-Car Repository")),"\n",r.createElement(t.h2,null,"Tools"),"\n",r.createElement(t.ul,null,"\n",r.createElement(t.li,null,r.createElement(t.a,{href:"https://www.amazon.com/Tools-VISE-GRIP-Stripper-Crimper-2078309/dp/B000JNNWQ2"},"Wire Stripper / Cutter")),"\n",r.createElement(t.li,null,r.createElement(t.a,{href:"https://www.sparkfun.com/products/14734"},"Soldering Iron")),"\n",r.createElement(t.li,null,"Small Phillips Screwdriver"),"\n"),"\n",r.createElement(t.h2,null,"Supplies"),"\n",r.createElement(t.ul,null,"\n",r.createElement(t.li,null,"Adhesive Backed Velcro"),"\n",r.createElement(t.li,null,r.createElement(t.a,{href:"https://www.sparkfun.com/products/9325"},"Solder")),"\n"),"\n",r.createElement(t.h2,null,"Parts"),"\n",r.createElement(t.ul,null,"\n",r.createElement(t.li,null,r.createElement(t.a,{href:"https://store.particle.io/products/photon-kit"},"Photon Kit"),": Included items required...","\n",r.createElement(t.ul,null,"\n",r.createElement(t.li,null,"Photon"),"\n",r.createElement(t.li,null,"Breadboard"),"\n",r.createElement(t.li,null,"Photon Kit Box"),"\n"),"\n"),"\n",r.createElement(t.li,null,r.createElement(t.a,{href:"https://www.adafruit.com/products/2653"},"PhoBot Robotic Shield")),"\n",r.createElement(t.li,null,r.createElement(t.a,{href:"https://www.pololu.com/product/1087"},"Wheel Pair (32 x 7mm)")),"\n",r.createElement(t.li,null,r.createElement(t.a,{href:"https://www.pololu.com/product/955"},'Ball Caster with 3/4" Metal Ball')),"\n",r.createElement(t.li,null,r.createElement(t.a,{href:"https://www.pololu.com/product/989"},"Micro Metal Gearmotor Bracket Pair")),"\n",r.createElement(t.li,null,r.createElement(t.a,{href:"https://www.pololu.com/product/993"},"Micro Metal Gearmotor 30:1")," x 2"),"\n",r.createElement(t.li,null,r.createElement(t.a,{href:"https://www.adafruit.com/products/830"},"Battery Holder - 4 x AA with Cover & Switch")),"\n"))}var c=function(e){void 0===e&&(e={});const t=Object.assign({},(0,n.RP)(),e.components).wrapper;return t?r.createElement(t,e,r.createElement(a,e)):a(e)},i=l(4589),o=l(5588),m=l(2761),s=l(983);const u=e=>{var t;let l=e.data,a=e.children;const c=l.mdx,i=c.frontmatter,u=c.fields,f=(0,o.c)(null===(t=u.thumbnail)||void 0===t?void 0:t.childImageSharp),w=u.slides,y=i.credits,_=i.recognition,v=u.gallery,k=(0,s.M7)(u.images);return r.createElement(m.A,null,r.createElement("article",{className:"sheet"},r.createElement("div",{className:"sheet__inner"},f&&r.createElement("div",{className:"sheet__banner"},r.createElement(o.G,{image:f,alt:i.title||""})),r.createElement("h1",{className:"sheet__title"},i.title),r.createElement("div",{className:"sheet__lead"},i.summary),r.createElement("hr"),r.createElement(h,{credits:y,recognition:_,gallery:v}),r.createElement(E,{slides:w,title:i.title}),r.createElement("div",{className:"sheet__body"},r.createElement(n.xA,{components:k},a)),r.createElement(d,{credits:y}),r.createElement(p,{recognition:_}),r.createElement(g,{images:v,title:i.title}))))};function h(e){let t=e.credits,l=e.recognition,n=e.gallery;return t||l||n?r.createElement("div",null,r.createElement("p",{className:"sheet__quicklinks"}," • ",t&&r.createElement("span",null,r.createElement("a",{href:"#credits"},"Credits")," • "),l&&r.createElement("span",null,r.createElement("a",{href:"#recognition"},"Recognition")," • "),n&&r.createElement("span",null,r.createElement("a",{href:"#gallery"},"Gallery")," • ")),r.createElement("hr")):null}function E(e){let t=e.slides,l=e.title;return t&&0!==t.length?r.createElement("div",{className:"sheet__slider"},r.createElement(i.A,{slidesToShow:2,infinite:!0,arrows:!0,autoplay:!0,autoplaySpeed:6e3},t.map((e,t)=>{const n=(0,o.c)(null==e?void 0:e.childImageSharp);return n?r.createElement(o.G,{key:t,image:n,alt:(l||"")+" slide "+(t+1)}):r.createElement("div",{key:t})}))):null}function d(e){let t=e.credits;return t?r.createElement("div",{className:"sheet__body"},r.createElement("h2",{id:"credits"},"Credits"),r.createElement("ul",null,t.map((e,t)=>r.createElement("li",{key:t},e.link?r.createElement("span",null,r.createElement("a",{href:e.link},e.name)," – ",e.role):r.createElement("span",null,e.name," – ",e.role))))):null}function p(e){let t=e.recognition;return t?r.createElement("div",{className:"sheet__body"},r.createElement("h2",{id:"recognition"},"Recognition"),r.createElement("ol",{className:"sheet__recognition"},t.map((e,t)=>r.createElement("li",{className:"sheet__recognitionitem",key:t},r.createElement("strong",null,e.event),r.createElement("em",null,e.status),e.location," — ",e.datesPretty)))):null}function g(e){let t=e.images,l=e.title;return t&&0!==t.length?r.createElement("div",{className:"sheet__body"},r.createElement("h2",{id:"gallery"},"Gallery"),r.createElement("div",{className:"sheet__gallery"},t.map((e,t)=>{const n=(0,o.c)(null==e?void 0:e.childImageSharp);return n?r.createElement(o.G,{className:"sheet__galleryimage",key:t,image:n,alt:(l||"")+" gallery image "+(t+1)}):null}))):null}function f(e){return r.createElement(u,e,r.createElement(c,e))}}}]);
2//# sourceMappingURL=component---src-templates-project-js-content-file-path-src-projects-q-car-md-8d3d387e20292f4b344c.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.