Please give my design a once over. I think I have found everything but I am nervous.

This is my first PCB design. A 4x4 CNY70 (Reflective Optical Sensor) matrix read by a analog/digital mux breakout board. This PCB is meant to mount into a musical instrument which is also my first CAD design. It has been a long self taught process.

With this PCB design the emitter is always on and a micro controller selects s0-s3 to read 1-16 inputs. Only 1-16 IN, GRD, and VCC connect to this board.

The Mux board is mounted from underneath to allow for greater clearance. This is needed so the CNY70 can mount more or less flush to its case. The holes will not have any mechanical stress applied but I tried giving the traces as large a margin as possible.

I redesigned this using through hole because I thought it would be easier for doing by hand at home.

I considered redesigning again to use a larger 220 ohm resistor because it might be easier to get, but the board is looking a bit cramped. Right now they are 1/6w but 1/8w should work too. Emitter and detector are both 100mW.

Resistors may need to be mounted on the back for more clearance.

  • 1
    \$\begingroup\$ Yes it is that. \$\endgroup\$
    – Audo Voice
    Commented Dec 3, 2022 at 9:06
  • 2
    \$\begingroup\$ Do you have any schematic, or are you following any tutorial? This one? hackaday.com/2010/10/07/playing-piano-with-optical-sensors \$\endgroup\$
    – tlfong01
    Commented Dec 3, 2022 at 9:07
  • 1
    \$\begingroup\$ How fast will you be strobing though your matrix? \$\endgroup\$
    – winny
    Commented Dec 3, 2022 at 9:09
  • 2
    \$\begingroup\$ A schematic is needed even if you have to recreate all over again. \$\endgroup\$
    – Andy aka
    Commented Dec 3, 2022 at 10:27
  • 2
    \$\begingroup\$ You can definitely use surface-mount resistors here. It might be hard without practice to solder anything smaller than 0603, but 0805 and definitely 1206 are trivial to solder by hand. Just solder the resistors first so the sensors don't get in the way. \$\endgroup\$
    – Hearth
    Commented Dec 3, 2022 at 15:46

2 Answers 2


Summing up the general advice I got.

  1. Power and ground traces should be .5mm if possible. Other traces should be .3mm. This is to reduce resistance, and make more robust traces that will break less. I also increased pad size for the same reason.
  2. Add bypass capacitors where appropriate. At least 1. I can always not populate it if not needed. Bigger capacitor = more smoothing, less frequency response. Ceramic is a good choice because of stability and responsiveness.
  3. Double check your design and keep the schematic up to date even if you have to remake it.
  4. Add the silk screen on the side with the part. Though I am ignoring this as to only have one side silk screened.

I did it over and I think it came out better.

enter image description here

enter image description here

  • \$\begingroup\$ Looking at your second design and by doing some alternate layouts myself I do see that placing the 16 pin connector at the center is a better option. However from your first description this didn't seem to be an option. Also, since you have several pins passing through the PCB be sure you know the tolerances needed from the hole edges. If the pins are metal you don’t want traces or pads contacting them. The pins might also create stress or twisting forces at the hole edges, this might later break a trace running close to the holes. Using a larger keep-out ring around each hole may be helpful. \$\endgroup\$
    – Nedd
    Commented Dec 12, 2022 at 10:17

One of the arrangements I’ve attached below would be closer to how I would layout the board with the components you originally included. (Note that I created a new silkscreen for the sensor.)

While placing a few components diagonally obviously will not change any electrical functionality it can give the appearance that something went amiss with the layout design or there were last minute corrections required.

As for the bypass cap: A 0.1uf or even a 1.0uf ceramic bypass cap would be better in most cases. The proper placement to reduce incoming or outgoing noise would be very close to the GND and 3.3v pins, in your case to the left or just below the GND pin. Once you start getting away from the input power pins with a few twists and turns you begin to lose some effectiveness.

Another way to reduce board noise would be to use a full top or bottom GND pour, that way your return currents will follow the path of least impedance and you could also reduce most or all of the routed GND traces. To make the best use of a GND pour you would need to place most of your signal traces on the side opposite the pour.

For your comment about connecting the detector side differently: While a transistor will often work somewhat normally when the collector and emitter are swapped some transistor parameters may not match their original specifications. If you are using the transistor detector side in such a fashion I hope you've verified that the operation is satisfactory for your specific system design.

Silkscreen: Assuming your sensors are actually mounted on the bottom side and you only want top side silkscreen it might be best to revise the LED and transistor symbols you've added, otherwise someone troubleshooting the board at a later time could become quite confused. (Just in case your sensors are actually mounted on the top side then I think there are still connection problems.)

Placing silkscreen information under the physical part is not ideal (except perhaps for the first time assembler). Once assembled the information is very difficult to read. If you are using through hole resistors the values are often right on the part as either text or color bands. A better documenting option is to use the component’s part list ID such a R1, R2, etc. positioned to the edge of the component’s physical position.

Alternate layouts:

enter image description here

enter image description here


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.