Author Topic: The Living PCB Design Thread  (Read 382442 times)

0 Members and 2 Guests are viewing this topic.

Offline potatowire

  • Posts: 167
Re: The Living PCB Design Thread
« Reply #200 on: Wed, 09 September 2015, 14:37:12 »
They look awesome!

Offline DrOizo

  • Posts: 3
Re: The Living PCB Design Thread
« Reply #201 on: Thu, 10 September 2015, 07:34:02 »
I did just paste the description from the EAGLE Website if you still need it:

- 3 modules with identical user interfaces
- Hundreds of video tutorials available
- Regular free online trainings and free support through dedicated experts
- Active user forums that help solve design problems and give guidance
- User manual available for download or accessible from the software
- Compatible with Windows®, Linux® and Mac®
- Available in 32- and 64-bit versions
- Tens of thousands of free component libraries available
- Extensions (User Language Programs (ULPs)) that allow for customized features
- Large ecosystems of integrated 3rd party solutions (e.g. 3D,Simulation, Signal Integrity)
- Windows XP, Windows Vista, Windows 7, Windows 8.
- The 64 bit EAGLE version requires a 64 bit version of the operating system.[/li][/list]
- Linux based on kernel 2.6 for Intel computers, X11 with a minimum color depth of 8 bpp, libssl.so.1.0.0 and libcrypto.so.1.0.0. For the 64-bit version a 64 bit operating system is required and libc.so.6 with sub version GLIBC_2.14 or higher.
- Mac OS X version 10.8 to 10.10 for Intel computer.[/li][/list]


(http://www.cadsoftusa.com/eagle-pcb-design-software/about-eagle/)

Offline NicolasK

  • Posts: 1
    • Shenzhen PCB manufacturer, China PCB prototype maker
Re: The Living PCB Design Thread
« Reply #202 on: Thu, 24 September 2015, 02:13:59 »
10 checking rules after PCB layout

1.PCB size is the same with the size wanted? The layout is convenient for PCB manufacturing? With fiducial markings and position holes to make the alignment?

2.Is there components conflict on a two-dimensional, three-dimensional view?

3.Components position in layout is properly in density and order, looks neat? Whether all features finished?

4. Components need frequent replacement can be easily replaced? The PCBA can be easily fixed in to the shell?

5.Are there proper distance between the thermal component and the heat emitting Component?

6.The component need adjusting while using is convenient to adjust?

7.For the place will emit heat, is a thermal radiator installed? Air flow condition is smooth?

8.Signal flow is smooth and the connection is shortest?

9.Are plugs, sockets design compliant with other mechanical design rules?

10.if Interference between lines been considered?
Prototyping PCB, www.syspcb.com

Offline Eszett

  • Posts: 543
  • Supporting the communities Geekhack & Deskthority
Re: The Living PCB Design Thread
« Reply #203 on: Tue, 29 September 2015, 01:28:02 »
Any chance of including PCB mount cherry footprints library, into the KiCAD ressource? Since my gateron switches come with extra pins (PCB mount).

Offline dscpcb

  • Posts: 1
  • Location: China
    • PCB China
Re: The Living PCB Design Thread
« Reply #204 on: Tue, 29 September 2015, 06:06:54 »
To learn PCB designing basis i believe Spark fun is offering great series of tutorials. Just try out learn.sparkfun.com/tutorials/pcb-basics
Hope it Helps. Best of Luck ! :thumb:

Offline Eszett

  • Posts: 543
  • Supporting the communities Geekhack & Deskthority
Re: The Living PCB Design Thread
« Reply #205 on: Tue, 29 September 2015, 10:45:11 »
I have a question about the AtMega32u4. Some schematics show a pullup-resistor at the RESET pin, some don't. Why? Is the pull-up necessary or not?
« Last Edit: Wed, 30 September 2015, 08:53:14 by Eszett »

Offline vvp

  • Posts: 886
Re: The Living PCB Design Thread
« Reply #206 on: Wed, 30 September 2015, 12:26:54 »
There is an internal pull up of about 50 kΩ in the chip itself. It is rare that one more external pull up is needed. If your reset network is well insulated then you do not need the additional external pull up.

Offline Eszett

  • Posts: 543
  • Supporting the communities Geekhack & Deskthority
Re: The Living PCB Design Thread
« Reply #207 on: Wed, 30 September 2015, 13:09:27 »
Very well then, thanks VVP!

Offline komar007

  • Thread Starter
  • Posts: 712
  • Location: Poland
    • komar's blog
Re: The Living PCB Design Thread
« Reply #208 on: Wed, 30 September 2015, 13:17:38 »
I have a question about the AtMega32u4. Some schematics show a pullup-resistor at the RESET pin, some don't. Why? Is the pull-up necessary or not?
I've PM'd you, but I guess here is the better place to share this.

Atmel claims in their AVR042 application note that:
Quote
The reset line has an internal pull-up resistor, but if the environment is noisy it can be insufficient and reset can
therefore occur sporadically. Refer to datasheet for value of pull-up resistor on specific devices.
So I always use an external 10k. But I guess that in 99% of cases it is OK not to put one there.
« Last Edit: Wed, 30 September 2015, 13:19:11 by komar007 »
GH60 rev. B w/ ali's case|Cherry G80-3000 HFU/05|IBM Model M (51G8572)
Check out the GH60 project! | How to make a keyboard

Offline BlueNalgene

  • Posts: 739
  • Location: Oklahoma, USA
Re: The Living PCB Design Thread
« Reply #209 on: Wed, 30 September 2015, 13:54:51 »
I've PM'd you, but I guess here is the better place to share this.

Thanks for sharing here.  I learn by lurking.

Offline Eszett

  • Posts: 543
  • Supporting the communities Geekhack & Deskthority
Re: The Living PCB Design Thread
« Reply #210 on: Thu, 01 October 2015, 00:27:42 »
Thanks Komar. Is my basic circuit looking fine? Some things which are still unclear to me are:
-- can I spare myself the LED on D6 or do I better keep it for debugging?
-- can I spare myself the whole pushbutton thing on Reset at all (and short Reset with GND if I need a reset)?
-- what's the reason for the resistor at HWB (pin E2)?
-- why do UVCC, UCAP require larger decoupling capacitors?
-- why does VBUS require no decoupling capacitor?
« Last Edit: Thu, 01 October 2015, 00:45:01 by Eszett »

Offline vvp

  • Posts: 886
Re: The Living PCB Design Thread
« Reply #211 on: Fri, 02 October 2015, 15:20:21 »
  • It is good to have a LED if you cannot have a full jtag debugger (e.g. avrd-dragon). You can put it on any pin though.
  • You can leave out the reset button but it is handy to have it especially as a safe way to activate bootloader.
  • If bit 3 of extended fuse (HWBE bit) is set and HWB pin is pulled to GND then external reset (your reset button) will activate bootloader instead of application code. If you do not need this then you can leave out the resistor and use the pin as any other GPIO pin. Even if you do need this feature you still can use the HWB pin later after the boot. The only limitation is about 10 - 20 kΩ pull down (you almost for sure can increase the resistance) which does not limit you much - e.g. you can add a LED with another resistor parallel to the 10-20 kΩ pull down. It is a pity Teensy/Arduino do not pull out HWB pin on their PCBs. It is well usable even with its dual role as HWB in use. Moreover you could use it to actually control HWB better :)
  • You need the capacitors on Vcc to filter out transietns. They should be surface mount and as near to the Vcc pins as possible. UCAP is required by the ATmega spec. I do not know that it is used internally for. Just put it there.
  • You actually should add one about 1-5 µF capacitor between VBus and GND somewhere. This one does not need to be near the ATmega chip itself. Again, only to filter out possible transients on power supply. Notice the power supply lines are going to be long (from PC to your ATmega PCB. Something can get induced there and also other USB devices can influence its stability. This is contrary to e.g. the reset line which is typically only very short on your PCB and without high current wires next to it - so most of the times you can get away without additional pull up on it.

Offline bpiphany

  • Posts: 1033
  • Location: Stockholm, Sweden
  • bpiph is a special type of crazy. //mkawa
Re: The Living PCB Design Thread
« Reply #212 on: Sat, 03 October 2015, 02:13:38 »
Well explained. Only to add something on Ucap.

To my understanding the Ucap pin comes from an internal voltage regulator and carries 3.3V which is needed for the USB communication in some way. The cap is to keep this voltage stable. I believe you may even get away with drawing a small current from that pin if you need 3.3V for something. And I am not sure what would happen if you left it out. If you only loose USB or if the chip fails to run at all...

Offline Eszett

  • Posts: 543
  • Supporting the communities Geekhack & Deskthority
Re: The Living PCB Design Thread
« Reply #213 on: Sun, 04 October 2015, 17:32:19 »
VVP, thank you for the extensive and clear answers. Im still in doubt about the need of the capacitor at VBus. The design guidelines write "A 10µF capacitor is highly recommended on VBUS line". And I have difficulties with such sentences. What does "recommended" mean? For what case is it recommended? What happens if I don't use a capacitor? In my understanding of informatics there is rather "it works" or "it doesn't", than "is recommended".

Offline joey

  • Posts: 2296
  • Location: UK
Re: The Living PCB Design Thread
« Reply #214 on: Sun, 04 October 2015, 17:34:08 »
Recommended = do it.

Offline vvp

  • Posts: 886
Re: The Living PCB Design Thread
« Reply #215 on: Mon, 05 October 2015, 04:29:36 »
In general it is as joey said: if some part is recommended and you are not sure that you do not need it than just put it there.

As for as this specific VBus capacitor:
The only question is how big the capacitor should be. Personally I would like to have there as big capacitor as possible but hasu pointed out in this very thread that USB specification limits the maximum capacitance of an USB device to 10 µF (https://geekhack.org/index.php?topic=48851.msg1729111#msg1729111). So that is the upper limit for the capacitance of your whole PCB. In practice this often means that you need to use a lover value. In your case the maximum is about 10 µF - 4 * 0.1 µF - 1 µF (*). If you would add more capacitors (e.g. a better filtering of AVcc) then the value needs to be even lower if you are not making sure the inrush current is low enough in some special way.
If you know the exact dimensions of the circuit wires and the maximum interference (in addition to circuit topology and specs of all the parts) than you can compute the minimum required VBus capacitor precisely but it is just easier to put there something near the maximum value USB specification allows for your circuit.

(*) Maybe you do not need to subtract the 1 µF Ucap (it depends how the chip is charging Ucap). When in doubt then rather subtract it. Your circuit will be slightly more sensitive to interference but you run less risk that connecting your device to the USB bus will reset other USB devices on the same bus.

Edit: Clarify.
« Last Edit: Mon, 05 October 2015, 04:52:43 by vvp »

Offline bpiphany

  • Posts: 1033
  • Location: Stockholm, Sweden
  • bpiph is a special type of crazy. //mkawa
Re: The Living PCB Design Thread
« Reply #216 on: Mon, 05 October 2015, 04:41:55 »
Not knowing better I put a 10µF electrolytic capacitor between VBUS and GND on my designs, in addition to the ceramic bypass capacitors. I used up to 3×1µF bypass (+some lower values) and haven't heard anyone having trouble with their USB ports giving up on them. There may be physical factors limiting the inrush current in other ways by coincidence, but I would change to a smaller cap for future designs, probably 4.7µF since that is a common value.

The Teensy2.0 has a 1µF bypass cap on VBUS/UVCC. I don't know if the recommendation is that high, but you could say that is working towards the recommended 10µF.. There are also 4×0.1µF in there, so in total 1.4µF. And the Teensy is also intended as a dev board and perhaps shouldn't be trusted to be stable for commercial applications, or the larger capacitance should be placed outside the Teensy.

Offline vvp

  • Posts: 886
Re: The Living PCB Design Thread
« Reply #217 on: Mon, 05 October 2015, 13:11:53 »
I had bad capacitors too. I just took an example schematic for 5V to 3.3V LDO and it had 10 µF before and 10 µF after the LDO. Plus a separate LC filter with 10 µF for Avcc. I did not even think about USB limitations at that time nor compute the proper values. I just slaped it together based on examples. Anyway, together it was 20.4 µF (+ 10 µF after the coil). It never caused any problems when connected directly to a PC. But if connected to an USB hub then it caused problems. IIRC, connecting the device resulted in the hub reset occasionally (like 1 in 5 times??). Maybe the hub was not as good as it should have been too  ;D

Offline Melvang

  • Exquisite Lord of Bumfluff
  • * Maker
  • Posts: 4398
  • Location: Waterloo, IA
  • Melvang's Desktop Customs
Re: The Living PCB Design Thread
« Reply #218 on: Thu, 29 October 2015, 10:21:52 »
Hey guys, I am attempting to learn KiCad for a full keyboard project of mine. 

I have been trying to follow this tutorial, along with that lib.  The problem is, the tutorial is outdated for the current version as it seems that a fair bit has changed in the GUI of KiCad.

Would anyone be willing to do an updated version some a simple 3x3 matrix or something similar.  This would preferably include a basic lib for keyboard components including MX footprints, stab cutouts for PCB mount stabs, Alps switches, and possibly MX/Alps switches.  Also, and update for how to import from GitHub to KiCad would be amazing.
OG Kishsaver, Razer Orbweaver clears and reds with blue LEDs, and Razer Naga Epic.   "Great minds crawl in the same sewer"  Uncle Rich

Offline profet

  • Posts: 137
  • Location: Long Island, NY
Re: The Living PCB Design Thread
« Reply #219 on: Thu, 29 October 2015, 12:18:28 »
So where are people getting their PCB's manufactured?

At what scale does it become cost effective?
Bringing custom Ergodoxes to the masses.

My heatware: http://www.heatware.com/u/102649

Offline hasu

  • Posts: 3471
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: The Living PCB Design Thread
« Reply #220 on: Thu, 29 October 2015, 16:46:54 »
Use http://pcbshopper.com/, enter your pcb dimension and quantity you will find what you want.

EDIT: And this is my memo about what manufacturer community based projects used.
Quote
PCB Fab           
-------           
pcbway.com      XTant, Planck, xwhatsit, Alps64, HHKB Alt
    https://geekhack.org/index.php?topic=51767.msg1483719#msg1483719
        https://geekhack.org/index.php?topic=51767.msg1482989#msg1482989
    https://geekhack.org/index.php?topic=70092.msg1686984#msg1686984
    http://deskthority.net/workshop-f7/new-buckling-spring-design-t10234-60.html#p224987
    http://deskthority.net/workshop-f7/small-batch-pcbs-t10456.html#p224367
                   
pcbcart.com     GH60
    https://geekhack.org/index.php?topic=34959.msg703250#msg703250
                   
pcbwing.com     Ergodox, Zeta, Phantom                 
    https://geekhack.org/index.php?topic=48851.msg1394559#msg1394559
    https://geekhack.org/index.php?topic=71161.msg1721833#msg1721833
                   
seeedstudio.com keyboard.io                             
    https://geekhack.org/index.php?topic=52639.msg1169072#msg1169072
                   
oshpark.com     The Enabler                             
    https://geekhack.org/index.php?topic=57511.msg1331617#msg1331617
                   
elecrow.com     HHKB Alt, Alpst64 Rev.A                 
    https://geekhack.org/index.php?topic=12047.msg1293117#msg1293117
    https://geekhack.org/index.php?topic=69740.msg1702786#msg1702786
                   
dirtpcb.com     Regack, HHKB Alt, TMK USB-USB converter
    https://geekhack.org/index.php?topic=70566.0       
                   
itead             
                   
smart-prototyping.com

« Last Edit: Thu, 29 October 2015, 16:55:05 by hasu »

Offline potatowire

  • Posts: 167
Re: The Living PCB Design Thread
« Reply #221 on: Thu, 29 October 2015, 21:44:12 »
Hey guys, I am attempting to learn KiCad for a full keyboard project of mine. 

I have been trying to follow this tutorial, along with that lib.  The problem is, the tutorial is outdated for the current version as it seems that a fair bit has changed in the GUI of KiCad.

Would anyone be willing to do an updated version some a simple 3x3 matrix or something similar.  This would preferably include a basic lib for keyboard components including MX footprints, stab cutouts for PCB mount stabs, Alps switches, and possibly MX/Alps switches.  Also, and update for how to import from GitHub to KiCad would be amazing.

I like this tutorial:
Part 1 -
Part 2 -
Part 3 - upcoming

This Udemy course (free) is more exhaustive:
https://www.udemy.com/learn-kicad-printed-circuit-board-design/






Offline Melvang

  • Exquisite Lord of Bumfluff
  • * Maker
  • Posts: 4398
  • Location: Waterloo, IA
  • Melvang's Desktop Customs
Re: The Living PCB Design Thread
« Reply #222 on: Thu, 29 October 2015, 23:14:41 »
Hey guys, I am attempting to learn KiCad for a full keyboard project of mine. 

I have been trying to follow this tutorial, along with that lib.  The problem is, the tutorial is outdated for the current version as it seems that a fair bit has changed in the GUI of KiCad.

Would anyone be willing to do an updated version some a simple 3x3 matrix or something similar.  This would preferably include a basic lib for keyboard components including MX footprints, stab cutouts for PCB mount stabs, Alps switches, and possibly MX/Alps switches.  Also, and update for how to import from GitHub to KiCad would be amazing.

I like this tutorial:
Part 1 -
Part 2 -
Part 3 - upcoming

This Udemy course (free) is more exhaustive:
https://www.udemy.com/learn-kicad-printed-circuit-board-design/

Thanks, will check them out.
OG Kishsaver, Razer Orbweaver clears and reds with blue LEDs, and Razer Naga Epic.   "Great minds crawl in the same sewer"  Uncle Rich

Offline Melvang

  • Exquisite Lord of Bumfluff
  • * Maker
  • Posts: 4398
  • Location: Waterloo, IA
  • Melvang's Desktop Customs
Re: The Living PCB Design Thread
« Reply #223 on: Wed, 18 November 2015, 23:38:43 »
Alright, I am making a lot of progress in this.  I do have a question regarding my project.

I am designing a set of PCBs that are similar to enablers, but are full row.  Where my question comes at is the diodes.  If I am designing the PCB to be flippable vertically to allow LEDs to be on top or bottom of the switch, when one flips the PCB, the orientation of the diode shouldn't change, correct?

I assume it functions as strobing the columns, and reading the rows?  At least if current flows from the column, into the switch, in the diode, and to the row.

At this point, does it make a difference if the connection between row and controller/row and controller at the top/bottom, or left/right side?
OG Kishsaver, Razer Orbweaver clears and reds with blue LEDs, and Razer Naga Epic.   "Great minds crawl in the same sewer"  Uncle Rich

Offline mrbishop

  • * Maker
  • Posts: 799
  • Location: South Carolina USA
  • Evil Genius
    • Bishop Computer Design web
Re: The Living PCB Design Thread
« Reply #224 on: Tue, 08 December 2015, 20:56:54 »
so i have KiCad, a CNC, and a burning desire to etch my own pcb in my workshop. any takers on a hand? i have the design done, plate CAD imported, everything looking good but when i go to start working on the traces i'm getting errors and can't seem to figure out what i'm doing wrong. any help would be smashing. attached is what ive been working on. i'm starting small but eventually i want to do a 60% TKL and full size keyboard PCB etched. all with Teensy controllers.

thanks in advance.
Projects
Build to give back, 40% | Alps/Matias Removal ToolUltraHack 67% Hackdura  | ErgoDox case
                             
    

Offline skullydazed

  • * Vendor
  • Posts: 307
  • Location: Bay Area, CA
  • Had to turn PM's off. Email info@clueboard.co!
    • Clueboard
Re: The Living PCB Design Thread
« Reply #225 on: Tue, 08 December 2015, 22:57:30 »
so i have KiCad, a CNC, and a burning desire to etch my own pcb in my workshop. any takers on a hand? i have the design done, plate CAD imported, everything looking good but when i go to start working on the traces i'm getting errors and can't seem to figure out what i'm doing wrong. any help would be smashing. attached is what ive been working on. i'm starting small but eventually i want to do a 60% TKL and full size keyboard PCB etched. all with Teensy controllers.

thanks in advance.

What kind of CNC are you talking about?

Assuming that you want to mill the traces, you'll have several challenges to overcome. You'll want to use a V-carve bit with a very tiny head, and you'll want to zero your machine very precisely. So precisely, in fact, that unless you have a vacuum table you'll have to setup a probe so that you can measure the topology of your PCB before starting. This way the mill can vary the height as needed to get a uniform depth.

You'll also need a machine with very little backlash and a spindle that can run at high speed (15k or faster) with very little runout. These things become less important if you're using a teensy for a controller, and more important if you want to use SMT components for your controller.

Once you have all that in place milling the board itself is pretty easy. There are plenty of programs that will turn gerbers into gcode so it's just a matter of mounting your board, zeroing in your CNC, and running the resulting g-code.

Offline mrbishop

  • * Maker
  • Posts: 799
  • Location: South Carolina USA
  • Evil Genius
    • Bishop Computer Design web
Re: The Living PCB Design Thread
« Reply #226 on: Tue, 08 December 2015, 23:06:13 »
so i have KiCad, a CNC, and a burning desire to etch my own pcb in my workshop. any takers on a hand? i have the design done, plate CAD imported, everything looking good but when i go to start working on the traces i'm getting errors and can't seem to figure out what i'm doing wrong. any help would be smashing. attached is what ive been working on. i'm starting small but eventually i want to do a 60% TKL and full size keyboard PCB etched. all with Teensy controllers.

thanks in advance.

What kind of CNC are you talking about?

Assuming that you want to mill the traces, you'll have several challenges to overcome. You'll want to use a V-carve bit with a very tiny head, and you'll want to zero your machine very precisely. So precisely, in fact, that unless you have a vacuum table you'll have to setup a probe so that you can measure the topology of your PCB before starting. This way the mill can vary the height as needed to get a uniform depth.

You'll also need a machine with very little backlash and a spindle that can run at high speed (15k or faster) with very little runout. These things become less important if you're using a teensy for a controller, and more important if you want to use SMT components for your controller.

Once you have all that in place milling the board itself is pretty easy. There are plenty of programs that will turn gerbers into gcode so it's just a matter of mounting your board, zeroing in your CNC, and running the resulting g-code.
Currently I have a x-carve but I will be setting up probing. It's likely I won't do any pcb milling until I transfer to Linux CNC. So I have plenty of time to do had wired boards and get familiar with TMK etc. For now I plan on using a teensy. I'm also planning on doing some more mods on my xcarve to improve it. Stiffining mods etc. Also my spindle will do 30k. Makita 701c 

So getting familiar with kicad is my next step in the learning curve for this project.
Projects
Build to give back, 40% | Alps/Matias Removal ToolUltraHack 67% Hackdura  | ErgoDox case
                             
    

Offline skullydazed

  • * Vendor
  • Posts: 307
  • Location: Bay Area, CA
  • Had to turn PM's off. Email info@clueboard.co!
    • Clueboard
Re: The Living PCB Design Thread
« Reply #227 on: Wed, 09 December 2015, 01:03:26 »
Currently I have a x-carve but I will be setting up probing. It's likely I won't do any pcb milling until I transfer to Linux CNC. So I have plenty of time to do had wired boards and get familiar with TMK etc. For now I plan on using a teensy. I'm also planning on doing some more mods on my xcarve to improve it. Stiffining mods etc. Also my spindle will do 30k. Makita 701c 

So getting familiar with kicad is my next step in the learning curve for this project.

Sounds like you're getting a handle on it. Using a router for this purpose may or may not work for you, they have quite a bit of runout compared to spindles made for the task. It's fine as long as your traces are large enough, but that can make adding an SMT controller to the board more difficult.

What specific errors are you seeing? Without that info it's hard for anyone to help you.

Offline mrbishop

  • * Maker
  • Posts: 799
  • Location: South Carolina USA
  • Evil Genius
    • Bishop Computer Design web
Re: The Living PCB Design Thread
« Reply #228 on: Wed, 09 December 2015, 06:04:38 »
Currently I have a x-carve but I will be setting up probing. It's likely I won't do any pcb milling until I transfer to Linux CNC. So I have plenty of time to do had wired boards and get familiar with TMK etc. For now I plan on using a teensy. I'm also planning on doing some more mods on my xcarve to improve it. Stiffining mods etc. Also my spindle will do 30k. Makita 701c 

So getting familiar with kicad is my next step in the learning curve for this project.

Sounds like you're getting a handle on it. Using a router for this purpose may or may not work for you, they have quite a bit of runout compared to spindles made for the task. It's fine as long as your traces are large enough, but that can make adding an SMT controller to the board more difficult.

What specific errors are you seeing? Without that info it's hard for anyone to help you.
Trace too close to pad
Projects
Build to give back, 40% | Alps/Matias Removal ToolUltraHack 67% Hackdura  | ErgoDox case
                             
    

Offline bpiphany

  • Posts: 1033
  • Location: Stockholm, Sweden
  • bpiph is a special type of crazy. //mkawa
Re: The Living PCB Design Thread
« Reply #229 on: Wed, 09 December 2015, 08:35:31 »
Then you probably drew a trace too close to a pad ;)

Have you made a schematic, generated a netlist, and assigned footprints to your components? If you haven't the PCB editor won't know which pads are supposed to be connected, and can only assume that each pad belongs to its own "net". That way you can't really connect anything without getting errors.

Offline mrbishop

  • * Maker
  • Posts: 799
  • Location: South Carolina USA
  • Evil Genius
    • Bishop Computer Design web
Re: The Living PCB Design Thread
« Reply #230 on: Wed, 09 December 2015, 09:32:09 »
Then you probably drew a trace too close to a pad ;)

Have you made a schematic, generated a netlist, and assigned footprints to your components? If you haven't the PCB editor won't know which pads are supposed to be connected, and can only assume that each pad belongs to its own "net". That way you can't really connect anything without getting errors.

in the process of teaching myself KiCad so i'm sure i'm doing all the things wrong :3 but i'll look up netlist and see what comes from it! thanks:)
Projects
Build to give back, 40% | Alps/Matias Removal ToolUltraHack 67% Hackdura  | ErgoDox case
                             
    

Offline bpiphany

  • Posts: 1033
  • Location: Stockholm, Sweden
  • bpiph is a special type of crazy. //mkawa
Re: The Living PCB Design Thread
« Reply #231 on: Wed, 09 December 2015, 14:19:00 »
If you want to do things right you really need to start in eeschema, the schematics editor, and build your circuit there. That's from where you generate the netlist. If you just want to play around in pcbnew, where you draw the pcb, you can disable "Enforce design rules when routing" under Preferences->General. That lets you draw however you like. Which is perfectly fine for small stuff. When things start getting complicated the automatic checks are nice to have around. But that requires all previous steps to have been taken.

Basic workorder:
  • Pcb editor
    • Set up footprint libraries
    • draw/import pcb footprints
  • Schematics editor
    • Set up component libraries
    • draw/import schematic components
    • Place components
    • Hook them up
    • Assign footprints
    • Export netlist
  • Pcb editor
    • Read netlist
    • Place components
    • Route everything
  • Iterate, iterate, iterate

Offline mrbishop

  • * Maker
  • Posts: 799
  • Location: South Carolina USA
  • Evil Genius
    • Bishop Computer Design web
Re: The Living PCB Design Thread
« Reply #232 on: Wed, 09 December 2015, 15:25:57 »
If you want to do things right you really need to start in eeschema, the schematics editor, and build your circuit there. That's from where you generate the netlist. If you just want to play around in pcbnew, where you draw the pcb, you can disable "Enforce design rules when routing" under Preferences->General. That lets you draw however you like. Which is perfectly fine for small stuff. When things start getting complicated the automatic checks are nice to have around. But that requires all previous steps to have been taken.

Basic workorder:
  • Pcb editor
    • Set up footprint libraries
    • draw/import pcb footprints
  • Schematics editor
    • Set up component libraries
    • draw/import schematic components
    • Place components
    • Hook them up
    • Assign footprints
    • Export netlist
  • Pcb editor
    • Read netlist
    • Place components
    • Route everything
  • Iterate, iterate, iterate

so i did the schematic but apparently my footprints and librarys aren't quite up to snuff. so i'll be doing some more research unless someone wants to PM me and see why i'm screwing up D:

LOL
Projects
Build to give back, 40% | Alps/Matias Removal ToolUltraHack 67% Hackdura  | ErgoDox case
                             
    

Offline qwack

  • Posts: 310
  • Location: ISO FR
Re: The Living PCB Design Thread
« Reply #233 on: Wed, 09 December 2015, 16:23:33 »
Just in case, have you tried the tutorials linked in the second message of the thread?

Pure Pro w/MX Red - [review]

Offline mrbishop

  • * Maker
  • Posts: 799
  • Location: South Carolina USA
  • Evil Genius
    • Bishop Computer Design web
Re: The Living PCB Design Thread
« Reply #234 on: Wed, 09 December 2015, 16:59:26 »
Just in case, have you tried the tutorials linked in the second message of the thread?
Let me check. I may have missed them. I looked over afew things. Likely it's more complete than that I've missed
Projects
Build to give back, 40% | Alps/Matias Removal ToolUltraHack 67% Hackdura  | ErgoDox case
                             
    

Offline mrbishop

  • * Maker
  • Posts: 799
  • Location: South Carolina USA
  • Evil Genius
    • Bishop Computer Design web
Re: The Living PCB Design Thread
« Reply #235 on: Wed, 09 December 2015, 18:33:37 »
my issue right now is the cherry mx switch sketches i have dont have footprints matched to them and i'm not seeing how to do that or a library with those already married.
Projects
Build to give back, 40% | Alps/Matias Removal ToolUltraHack 67% Hackdura  | ErgoDox case
                             
    

Offline mrbishop

  • * Maker
  • Posts: 799
  • Location: South Carolina USA
  • Evil Genius
    • Bishop Computer Design web
Re: The Living PCB Design Thread
« Reply #236 on: Wed, 09 December 2015, 21:27:27 »
my issue right now is the cherry mx switch sketches i have dont have footprints matched to them and i'm not seeing how to do that or a library with those already married.

I found some videos online and i'm making progress i think.  :thumb: :thumb:

tedious none the less -_-
Projects
Build to give back, 40% | Alps/Matias Removal ToolUltraHack 67% Hackdura  | ErgoDox case
                             
    

Offline iss

  • Posts: 82
Re: The Living PCB Design Thread
« Reply #237 on: Sat, 12 December 2015, 12:11:16 »
Currently working on a small test design, and I just wanted to double check my atmega schematic:



Namely:

1) Is the connector correct? I couldn't find a 5-pin USB-mini part.
2) Is C3 in the right location?
3) What's the right way to add a secondary controller (for RGB LEDs, etc.)?

Thanks for the help.

Offline qwack

  • Posts: 310
  • Location: ISO FR
Re: The Living PCB Design Thread
« Reply #238 on: Sat, 12 December 2015, 12:25:33 »
I don't think that C3 is in the right position, if you check the the Teensy 2.0 schematic you'll see that it should be between VCC and GND, not on the VCC line: https://www.pjrc.com/teensy/schematic.html

The USB connector sems to be correct.

Pure Pro w/MX Red - [review]

Offline mrbishop

  • * Maker
  • Posts: 799
  • Location: South Carolina USA
  • Evil Genius
    • Bishop Computer Design web
Re: The Living PCB Design Thread
« Reply #239 on: Sat, 12 December 2015, 12:37:09 »
things are starting to come together :3

119802-0
Projects
Build to give back, 40% | Alps/Matias Removal ToolUltraHack 67% Hackdura  | ErgoDox case
                             
    

Offline mrbishop

  • * Maker
  • Posts: 799
  • Location: South Carolina USA
  • Evil Genius
    • Bishop Computer Design web
Re: The Living PCB Design Thread
« Reply #240 on: Sat, 12 December 2015, 13:38:51 »
Projects
Build to give back, 40% | Alps/Matias Removal ToolUltraHack 67% Hackdura  | ErgoDox case
                             
    

Offline joey

  • Posts: 2296
  • Location: UK
Re: The Living PCB Design Thread
« Reply #241 on: Sat, 12 December 2015, 13:53:51 »
Why.. is the teensy there?

Offline mrbishop

  • * Maker
  • Posts: 799
  • Location: South Carolina USA
  • Evil Genius
    • Bishop Computer Design web
Re: The Living PCB Design Thread
« Reply #242 on: Sat, 12 December 2015, 14:05:14 »
Why.. is the teensy there?
Trying to figure out routing and it was easiest there for the moment. Just revision 2 tho. I tried near the space bar but had routing issues. I'm going to be engraving it with my cnc or am planning to so the traces are .5mm causing routing challenges
Projects
Build to give back, 40% | Alps/Matias Removal ToolUltraHack 67% Hackdura  | ErgoDox case
                             
    

Offline iss

  • Posts: 82
Re: The Living PCB Design Thread
« Reply #243 on: Sat, 12 December 2015, 14:31:57 »
I don't think that C3 is in the right position, if you check the the Teensy 2.0 schematic you'll see that it should be between VCC and GND, not on the VCC line: https://www.pjrc.com/teensy/schematic.html

The USB connector sems to be correct.



Is that position better? Looks a lot like the GH60 schematic now. I also added in a 2x2 matrix for testing.

Still curious on how to add in an RGB LED controller (WS2812B or the like). (Or how to add LEDs in general- is it as simple as just routing power and adding a resistor?)

Offline qwack

  • Posts: 310
  • Location: ISO FR
Re: The Living PCB Design Thread
« Reply #244 on: Sat, 12 December 2015, 15:21:52 »
Yes, that's more like it. You might want to do a bit of research about ICs and decoupling capacitors to understand why and how you should position caps connected to VCC, but as it is now it looks okay.

WS2812Bs have an IC inside each LED, so you just have to connect the data pin to an output pin on the atmega.

For traditional LEDs (without in-built controller) you'll generally want to use a constant current driver, which would be controlled by the atmega and to which you connect your LEDs (usually connected as some kind of matrix). If you have no idea what that means, search for "led constant current driver" on google, perhaps buy a few chips and a bunch of LEDs from adafruit or sparkfun, and take a look at existing solutions — for instance the Infinity keyboards made by the Input Club are open source, so you can look up their schematics and code to study how backlighting was implemented.

Remember that hardware is just one side of the problem, you need code to tell your LEDs how to behave. If you have no idea how you are going to implement that in code, perhaps it's too early to add LEDs to your PCB.

Pure Pro w/MX Red - [review]

Offline iss

  • Posts: 82
Re: The Living PCB Design Thread
« Reply #245 on: Sat, 12 December 2015, 16:28:21 »
Yes, that's more like it. You might want to do a bit of research about ICs and decoupling capacitors to understand why and how you should position caps connected to VCC, but as it is now it looks okay.

WS2812Bs have an IC inside each LED, so you just have to connect the data pin to an output pin on the atmega.

For traditional LEDs (without in-built controller) you'll generally want to use a constant current driver, which would be controlled by the atmega and to which you connect your LEDs (usually connected as some kind of matrix). If you have no idea what that means, search for "led constant current driver" on google, perhaps buy a few chips and a bunch of LEDs from adafruit or sparkfun, and take a look at existing solutions — for instance the Infinity keyboards made by the Input Club are open source, so you can look up their schematics and code to study how backlighting was implemented.

Remember that hardware is just one side of the problem, you need code to tell your LEDs how to behave. If you have no idea how you are going to implement that in code, perhaps it's too early to add LEDs to your PCB.

Thanks for the tips- I'll read up and do my research.

Offline qwack

  • Posts: 310
  • Location: ISO FR
Re: The Living PCB Design Thread
« Reply #246 on: Sat, 12 December 2015, 16:42:59 »
Also, be aware that you may have more questions after reading on these subjects :D But although copying existing designs is a great way to learn, you can only go so far without a fair understanding of what you're working with. So take advantage of all those tutorials you can find nowadays. Experimenting with a breadboard is tremendously helpful too.

(incidentally, I'm in the same place as you — I am able to design a simple PCB with switches and a controller, but I'm stuck on how to implement backlight in a way that is compatible with existing firmwares)

Pure Pro w/MX Red - [review]

Offline jdcarpe

  • * Curator
  • Posts: 8852
  • Location: Odessa, TX
  • Live long, and prosper.
Re: The Living PCB Design Thread
« Reply #247 on: Sat, 12 December 2015, 19:26:03 »
things are starting to come together :3

(Attachment Link)

design v2
Great job so far on the PCB! Do you plan on doing one for each of the different sizes of keyboard you are building in those wooden cases?

I know it's a good exercise to start with the smallest PCB and work your way up, but if you want to cheat and use an existing JD40 PCB, I can send you one. :)
KMAC :: LZ-GH :: WASD CODE :: WASD v2 :: GH60 :: Alps64 :: JD45 :: IBM Model M :: IBM 4704 "Pingmaster"

http://jd40.info :: http://jd45.info


in memoriam

"When I was a kid, I used to take things apart and never put them back together."

Offline mrbishop

  • * Maker
  • Posts: 799
  • Location: South Carolina USA
  • Evil Genius
    • Bishop Computer Design web
Re: The Living PCB Design Thread
« Reply #248 on: Sat, 12 December 2015, 19:32:04 »
things are starting to come together :3

(Attachment Link)

design v2
Great job so far on the PCB! Do you plan on doing one for each of the different sizes of keyboard you are building in those wooden cases?

I know it's a good exercise to start with the smallest PCB and work your way up, but if you want to cheat and use an existing JD40 PCB, I can send you one. :)
Wow that would be awesome even if to just learn from someone way more expierenced than me. I would be honored if you wouldn't mind sending me your design.

As for the rest I'd love to replace the hand wiring with a pcb but the big 108key will be hard to source a board for. Well a blank copper clad plate. I want to etch the boards with my cnc. I'm one who loves a challenge and to jump in with both feet ;)
Projects
Build to give back, 40% | Alps/Matias Removal ToolUltraHack 67% Hackdura  | ErgoDox case
                             
    

Offline twiddle

  • Posts: 165
    • Portfolio
Re: The Living PCB Design Thread
« Reply #249 on: Sat, 12 December 2015, 23:09:24 »
Can I get a bit of a sanity check? The PCB I'm working on at the moment is my first attempt to support both ANSI/ISO at the same time.
I'm connecting the alternate switches up like so:



Is this the way it's usually done? I don't have a decent multi-layout PCB design on hand for reference.
Still gotta work out where in the matrix I'm going to add the extra key that comes with a split backspace , but aside from these couple of things I'm just about done with the switches and can move onto the rest of the board, so any other general comments or pointing out of stupid things I've missed would be appreciated.