Giter Club home page Giter Club logo

onboard's Introduction

Hop Onboard banner logo

OnBoard - Get a $100 grant and make a PCB!

"I’m so glad that young people can create things like PC boards online. May your creativity have no limits!”

– Steve Wozniak, Apple co-founder endorsing Hack Club OnBoard

It's easier than ever for high school students to get involved with programming; all you need is a computing device and internet access. Yet, it's not the same for hardware. While PCB fabs have greatly increased the accessibility for professionally done boards, there is still no clear way for high school students to jump in. This is where OnBoard comes in.


Every student will receive up to $100 to cover PCB manufacturing costs, and join a community of peers– some more beginner and some more experienced.

Requirements

Every design/submission needs to meet the following constraints to be approved:

  • Unique and open-source design
  • Must be orderable on JLCPCB or other approved vendor
  • Must be in high school or younger123 and show proof of school enrollment to submit

Getting Started

You can also go through a video with instructions on how to submit your grant!

Star the repo (Optional)

To follow the repo for updates and show you're participating, click the "star" button on the onboard repo.

Star the OnBoard repo

1. Join #electronics on Slack!

Our #electronics channel4 is where the party is getting started! If you haven't already joined, make sure to add yourself to the channel. And for those who are new to the Hack Club slack, sign up to our community of 13k+ makers through here (don't worry, there isn't an application).

Perhaps ping a little hello to @Kevin Yang?

2. Design a Board!

It's design time! If you've done this before, you can skip ahead to step 3. Most people reading this will be new to PCB design, so we've made a simple tutorial on making an example board.

Check out our PCB tutorials, where you'll make a design from scratch in a free online editor. This is jumping in the deep end- it won't explain everything, but it will give you a taste of what's possible. By the end you probably won't understand what you did or why you did it, but you will have a working design for a board and you'll know how to tweak and edit the design to make it your own.

If you get stuck on these tutorials, or want more example projects to learn from, post in the Slack channel to hear from others going on their journeys.

3. Upload to a Vendor and Take a Screenshot

Upload your Gerber files to JLCPCB.com and add them to your cart. JLCPCB is the default PCB manufacturer, but you can shop around 5 if there's a specific one you want to use 6. Ensure you complete the checkout process by entering your address and selecting a shipping method. Once completed, take a screenshot with all the final costs and shipping!

If you're curious what all the settings are about or how to order for assembly, check out our ordering_from_JLCPCB.md doc! To avoid excess shipping fees or customs, check out the Shipping Tips doc!

It should look like this:

Note: Your screenshot is VITAL since your project cannot be approved without it. You'll include the screenshot in your PR later.

4. Fork!

Fork the onboard repo! This is the where you'll add your project files and eventually PR from!

Fork the OnBoard repo

5. Add Your Design to Your Project Repo

From your fork of OnBoard, create a folder with your project name under OnBoard/projects. To do this, go to the projects folder and click Create new file.

Projects folder

Create new file

Then in the box labeled name your file..., type in PROJECT_NAME/README.md. This creates a README file under a folder called named after your project.

Creating a folder

After this, copy and paste the contents of TEMPLATE.md into the text editor and fill it out!

Paste in TEMPLATE.md

Once your done, press the big green Commit changes button to save!

With your README filled out, head over to add files to begin uploading your Gerber, design files, and screen shot of vendor approval.

Upload gerber files

In all, you should have the following files under your project folder:

  • README.md: A filled out TEMPLATE.md, renamed to README.md
  • cart.png: A screenshot of your order details
  • gerber.zip: This should be the file that you send off to the vendor.
  • schematic.pdf: Export the schematic from your EDA program as a PDF.
    • Go to "File > Export > PDF" in EasyEDA's Schematic tab for this.
  • src/: Make a folder called src and Whatever format your designer outputs should be included.
    • For EasyEDA, you need to File > Export > EasyEDA two JSON files - one from the schematic tab and one from the PCB tab.
    • Or name.kicad_pro, name_kicad_sch, name.kicad_pcb and name.step for KiCAD
    • Or design.json, design.sch, design.brd, etc.

Make sure your file names are exactly the same as above.

Your PR should look like this:

ix7t2nJ

If you have all the above, you're done with this step!

6. Create a PR!

Once you've uploaded your files, you can merge them to the main repo through a pull request! Under the contribute tab of your forked repo, click the big green Open pull request.

Open a PR

That will bring you to the main repo, where you'll initiate a pull request. Follow the checklist, we'll then review your PR and you'll be off to the races!

Submission checklist

7. Get approval and order your board!

Once you submit your PR, it needs two approvals:

  • One verifying your high school enrollment documents, from HCB.
  • Another one from the engineering team, checking that your design follows the grant requirements.

These reviews typically take 24-48 business hours, and if everything is correct, we'll merge your pull request!

After your PR gets merged, it takes up to 24 business hours for you to receive an email from HCB with a virtual credit card. Make sure to check your spam folder. Then, you can order your board!

8. Ship it!

Post photos of your board in #electronics! We can't wait to see what you make!

John sharing PCB

Example Projects

Footnotes

  1. Home school still counts! ↩

  2. If you left high school early you can also submit. ↩

  3. If you need help with ideas for proof of age, ask in our Slack and we'll help you out! here ↩

  4. This link only works after you've joined the slack. Make sure to get an invite here first. ↩

  5. Don't know which ones you can use? Check out VENDORS.md for more info! ↩

  6. If outside the US you may be charged customs which aren't covered by the grant! Check beforehand. ↩

onboard's People

Contributors

24c02 avatar alhardwarehyde avatar alx-alexpark avatar anshumandocx avatar apurbiya avatar blade9078 avatar boredfishre avatar chardynamics avatar cjdenio avatar connor2648 avatar cral-cactus avatar devsrijit avatar jckoneal avatar karmanyaahm avatar kvnyng avatar limeskey avatar maxwofford avatar michabyte avatar nimitvijayvargee avatar polypixeldev avatar rivques avatar serenityux avatar shrey-mehra avatar tandej avatar torbers avatar usedgenes avatar wildbush76 avatar wizardcatz avatar yash00241 avatar zachlatta avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

onboard's Issues

Documentation for ordering stencils from PCB Venors

We're now allowing people to order stencils along with their PCB if necessary, this can cut costs by a large margin and encourage hackers to learn all about solder paste stencilling. Ordering a stencil should not be recommended for simple designs with not very many unique parts.

Documentation for KiCad & Support for KiCad 3D WRL Models

In reviewing pull request submissions, reviewers often have to take a screenshot of the front and back of a submitter's PCB for marketing purposes. A 3D model would provide much more value for better screenshots and keeping the designs of hundreds of submitters for us to look back on. Unfortunately, 3D models would only apply to people using KiCad as EasyEDA makes it very difficult to export a full 3D Model unless you switch to EasyEDA Pro and then it's a little easier.

A "VRML" (.WRL) provides all the 3d model information about the PCB design that we would need, the silkscreen, colours and most importantly, the 3d model of components if the submitter imported that information. However, there is one downside that I cannot figure out yet, some of the components are offset or rotated incorrectly which differs from the KiCad 3D Viewer which distorts the real design.

WRL File 3D Viewer Screenshot
WRL File 3D Viewer Screenshot

When OnBoard hits 1,000 submissions or whatever, it'd be nice to have a small collection of PCBs in their 3D model for a nice photo of some projects people have created. There'd also be the possibility of converting a 3d model into just a simple screenshot instead.

Unable to join Slack

The Slack workspace won't let me use my email address (since I don't have an @hack.af or @hackclub.com email). Is there any chance I can get an invitation sent to my email? It says to "Contact the workspace administrator at Hack Club for an invitation" but I don't know of a better way to get in touch than to open an issue here. Apologies if this is the wrong place for this!

image

IEEE- next steps

as discussed, please book followup meeting re an embassy channel (ie dedicated channel that exists outside of, but parallel to the HC Slack, for HCers to use for feedback /mentorships. Please arrange a meeting with the UC Berkeley chapter

Train new bank ops reviewer

Setting up a review team for engineering has been a great way to reduce the bus factor of just having @kvnyng reviewing PRs. Let's get something like that setup for @daisybanks so she can take vacations again.

regarding the parts on the pcb

hey there! I was planning to order a pcb from jlc pcb, and just say the MASSIVE production costs that they have. so is it possible that I order the ics and the smd components from somewhere else and assemble the board my self? will the cost of those parts be included in the project funds?

Tasks

No tasks being tracked yet.

Refractor Gerber2SVG

I've noticed some issues using the "Find PR Link" action on AirTable, specifically with the Gerber2SVG script here. Most noticeably, Airtable is having trouble rendering SVG previews and shows the default "document" thumbnail, adding to this, the filename is just "Untitled Attachment", maybe if it had a proper filename and file format it would help? It's also not been taking pictures of both the front and back, only the front iirc. For PCBs with a abnormal board outline, the tracespace gerber2svg script hasn't been respecting that and instead renders everything circular, see here.

Do we still need the front and back pictures of all PCBs? If so, I think we could benefit greatly if the problems with the airtable action was modified.

Slack channel broken

When I tried to use the link for the #onboarding channel it gave me this error:
image
I have tried four times over the last 3 days.

Mailing: Hack Club leader envelopes

These are a letter shipped to a list of club leaders provided by @PellMellKid. It includes some posters to help encourage club members to participate in OnBoard. The list is around 200 and we're planning to send this out sometime closer to first week September, when clubs are starting up and looking for activities to run.

Branding toolkit and poster

We want to have poster designs, so we're working on a new poster design with Alex, a contractor designer. The brand kit is a tool for consistent and quick creation of materials like future posters.

Brand kit includes:

  • colors
  • assets
  • branding with examples

Requisite Check action is kinda broken

Run if [ $length -lt 1 ]; then
/home/runner/work/_temp/2dd4f82e-1dbc-4b85-9f78-a4c3471680cc.sh: line 1: [: -lt: unary operator expected
Project name: [0]

Screenshot from 2024-01-11 20-00-27

Mailing: Sticker request envelopes

Screenshot 2023-07-20 at 10 50 48

We have roughly 180 requests at the time of writing and want to zero that request list out by the time outernet starts. We're shipping a letter of encouragement plus the custom stickers designed in the OnBoard sticker contest.

Emphasize instructions for checking out PCB from JLCPCB

Far too many people get stuck on the page where the PCB is in their cart but they haven't continued through the checkout process and got the final total with the shipping cost. More than half of my pull requests are me telling them something like this,

Hi [Name],

Thanks for submitting your PCB pull request for OnBoard! However, it looks like you took a picture of the cart ordering process instead > of completing the checkout process. For us to have the full picture of pricing and the PCB your ordering, please follow the steps in this > guide here or here:

  1. Click "Secure Checkout": After adding your PCB to the cart
  2. Enter your shipping information and add a coupon code if you have one, then click "Submit Order", do not add any payment options
  3. Close that tab and open a new one to jlcpcb.com, then click "Order History" and take a screenshot. It should show all the details of your order.

Please take a screenshot of your unpaid order instead of a picture of your cart, and upload it as cart.png. This will allow us to spot any mistakes and give you ways to reduce the cost or customs fee. Congrats on making the PCB!

In here, somebody should add in bolded that once again, the person should go through the JLCPCB checkout process. It is very confusing ordering from JLCPCB, I agree so it's not exactly the submitter's fault.

After-order experience

This is a proposed packet grant recipients get after we detect an order. It'd say something along the lines of:

  • You ordered your board, now what?
  • How to debug a design when you first get it
  • How to iterate if your design failed

Tasks

No tasks being tracked yet.

Overhaul channel-joining experience

At the time of writing there are a couple issues with the joining flow:

  • The greeter bot sends an outdated youtube link for Maggie's business card video.
  • The channel bookmarks feel out of date and should link to a "getting started" document for beginners.
  • "Join the slack" doesn't automatically add to the #onboard channel.

<!-- MY-ONBOARD-BOT --> Hi, I'm Orpheus Leap! Here to help you review your PR.

          <!-- MY-ONBOARD-BOT --> Hi, I'm Orpheus Leap! Here to help you review your PR.

projects/MCKEYBOARD:

Required files

βœ… README.md A description of your project
βœ… cart.png cart.png
βœ… gerber.zip
βœ… schematic.pdf Manually check schematic.pdf
❌ Source files - KiCAD Please upload both your PCB and Schematic KiCAD files

You can view a render of your board over on gerber.zip/2d!

Happy OnBoarding!
This bot is a simpler helper for common submission types. If there's an error with this, please point it out and someone from the OnBoard team will look at it manually.

Originally posted by @prophetorpheus in #500 (comment)

Mailing: makerspace envelopes

These are packets of OnBoard posters with a letter signed by @zachlatta & quotes from our "Heroes of Tech" shipped to all makerspaces in the country in the hopes of bringing in technical teens at or around those spaces.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.