Close

Clock IO panel R0

christoph-tackChristoph Tack wrote 10/06/2019 at 08:14 • 5 min read • Like

Block diagram

First layout idea
IO panel with two times two concentric LED rings

Nothing to be really happy with.  This design is too large.  There are three rotary encoders with an internal switch.  The high switch actuation force of these switches prevents the panel from being used in a vertical position.  You would top over the clock when you push the switch of a rotary encoder.

The three rotary encoders will each be replaced by a push button switch.  There will be one encoder for general change of values.  You push the switch to select that functionality.  Using the rotary encoder you can then change the value at will.  This kind of user interface is used on the R&S RTO200O series oscilloscopes.

The double rings of WS2812B LEDs are also eating up too much space.  Let's replace these by LED bar graphs.

Second layout idea

LED rings replaced by LED bar graph

The space consuming LED rings have been replaced by LED bar graphs.  Each one needs 10 inputs, so it will take some effort to get these routed properly.

The button for setting the brightness of the LED array and the light sensor are not related to alarm settings, so they have been removed from this module.  Functionality for setting LED array brightness should be physically located near the LED array, not on a separate IO panel.

So what's left? 

It all doesn't look to well: all those bar graphs...  The rotary encoder is out of place.

Let's work out another idea...

Third layout idea

Why not incorporate the LED bar graph functionality in the LED array?  We have plenty of pixels already there.  Both sides of the LED array can be flanked with buttons.  Alarm settings on the left, LED array settings on the right.  The pixel row next to the button can be used as a virtual LED bar graph.

The LED array "PCB" and the clock-io-panel have been merged into a single PCB.  This reduces cost and it will mechanical assembly easier.

Functionality overview at a glance, counter clockwise, starting at top left:

Alarm + LED array functionality merged into one IO panel.  Connectors & ICs not yet shown

In the middle you can find :

This clock-io-panel is bigger than the previous one, but 196x122mm will still fit on pretty much any night table.

Layout for PCB Revision 0

Finished layout

Some improvements with regard to the previous version:

Substantial effort went into the placement of the switches and LEDs so that as much as possible routing could be done on top layer.  As such, the bottom layer is able to serve as low impedance ground plane.

Five pieces of this PCB cost me €14.32 + €9.03 shipping.  Four of the PCBs will never be used.  PCB costs dramatically increase when your design doesn't fit a 100mm square as in this case.  If they had, the PCB would only cost me €1.

Revision 0 was all well and good, but  the big clock IO panel PCB is relatively costly and won't find any usage in other projects.  It serves mainly as a carrier for functionality that is already on modules (displays, light sensor).  The fifteen LED/switch combinations might be split up in four identical sections of four switches each.  There would be one module carrying only three switches.  It would add cost in wiring and connectors, but this switch module could easier find usage in other projects.  I would be able to use four of the five prototypes sent to me.  These switch modules would also fit the 100mm square template of the PCB manufacturer.  The different modules could then be mounted on a laser cut panel.  A separate module would be needed for the rotary encoder.  Buy them, not make.

Like

Discussions