Thursday, December 20, 2018

Solokey

My Solokeys from the Kickstarter arrived

Unlike the few other Kickstarter projects I participated in, this one delivered on time.

This is a FIDO2 U2F key for 2 Factor authentication.

I got the 3 pack of regular USB A keys. There is also a USB C version and a NFC version.

They each came with a random color silicone boot and also a single pack of additional boots in red, green, blue, black and white.

Blue boot with the bare Solokey. That's a little RGB LED in the middle of the switch. It lights up through the silicone, it's visible, even through the black boot.

Back side of the Solokey. They also have a hacker version that you can customize the firmware on. This is a regular model, and has a bootloader that allows updating the firmware with signed images over USB. More info on their github page.

With the silicone boot installed. It's a tight fit. I would not plan to switch boot colors once you have one of these installed.

Bare PCB next to the original U2F Zero. The Solokey PCB is 2mm thick. It fits very snugly in a USB port. The U2F Zero had a 1.5mm PCB and wobbles a bit.

I'll probably get a few NFC ones once they are available. You can pre-order them here.

Thursday, December 13, 2018

Lead Test

Testing a Lead Free HASL PCB

One of my new projects is to make a steno keyboard based on the type of high resistance circuitry the Makey Makey uses.

I usually have PCBs made using the cheapest finishing option, leaded HASL. HASL is Hot Air Solder Leveling, essentially a layer of solder coats the copper traces. Copper is reactive and will corrode if left exposed to the air, the solder protects it.

Since this project will have fingers in physical contact with the HASL coating I chose the Lead Free HASL option. It was only a few dollars more.

I used a 3M test to see if it contained lead.

I bought the 8 pack from Amazon. The reviews on Amazon were mixed. It can produce false positives. The only good result is a negative result which would indicate that there is no lead, a positive result may not mean lead is present.

They look like cigarettes.

It is a cardboard tube with a plastic tube inside. The tube has 2 glass vials that are broken when you squeeze the tube (you aren't supposed to take it apart like I did.) Then you squeeze the mixed liquid out the white fibrous tip.

The 8 pack also came with 2 test cards. (One shown here.) This is to verify the test worked by triggering the lead reaction.

In short, it didn't work. Whatever the chemical reacts with turned it dark brown immediately on contact with the lead free HASL. So the test is useless in this application. If it remained white then there would be no lead. If it turned light pink, there might be lead. Turning dark brown is not something it is supposed to do.

Almost black.

I did another test on a leaded HASL PCB and it did turn pink (hard to see but it is a light pink.) So the test does detect the lead in that PCB, which definitely does have lead. Next to it in the picture is the dark brown test from the lead free HASL test.

Using the verification card the leaded HASL turned a uniform reddish color, as is should. The brown lead free test was already so dark I couldn't see a difference after using the verification card.

So, is the lead free HASL really lead free? Probably, but this test can't prove it. I think I will splurge on a ENIG PCB on my next version of the steno board.

Thursday, November 22, 2018

Sub 100mm PCBs

PCBs that are under 100mm x 100mm

JLCPCB has special pricing for boards this size or smaller. $2 for 10 pieces with green soldermask. $5 for each additional small design in the same order. Shipping will be the largest part of the cost. Adding a small board to an existing order will only increase the shipping cost a few dollars.

Until recently, if you chose any color other than green the price would revert to the non-100mm special price. Now you can add color and just pay the additional fee for the colored solder mask.

You can also combine shipping if your previous order is still in production. The shipping for the additional boards from the new order will be combined with the previous order and will be much less than shipping a separate new order. I have done this twice to the same order.

I have many gerber files that are small enough for the special pricing:
  • I-S-h0le - 4 key ISO enter macropad
  • Arduino Six - 6 key arduino shield
  • nori - 40 percent with backlighting
  • 4x4X (Tetris) - 4x4 modular than can stack horizontally and vertically
  • Green Eggs - Ring shaped macropad
  • 5x5x9 - huge 225 key macropad made from 5x5 boards
  • 5x5 - modular 60%
  • GNAP 4x4 - GNAP split into 3 parts
  • Pi - large circular macropad made from quadrants
  • Lobot - Pro Micro ISP
  • 4x4x4x4x4 - Modular 4x4, 4x8, 4x12, 4x16
  • Christmas - LED Christmas ornament
  • 25 - split 5x5
  • 6lit - split 6 key macropads
  • DeathStar - Circular macropad
  • foobar - split 30%
  • Onigiri - 6 key macropad shaped like a musubi
  • RAWR - 6 key Domokun
  • Half IOTA - split 40% with 16mm switch spacing
  • 4 pack - 4 key macropad
  • 2 pack - 2 key macropad

Tuesday, November 20, 2018

I-S-hOle

Made something for all those left over ISO enter keys

A small board with space for 4 ISO enter keys with PCB mount Cherry stabilizers. Powered by a Pro Micro.

I have a lot of left over ISO enter keys that came with cheap keysets from eBay.

Bottom of the PCB. The hole serves no purpose, though you could use it as a pen holder. You could assemble it upside down, but then the enter keys would face outwards. You could also use the 2u backspace or numpad plus/enter key caps.

The two PCB's are held together with M2 spacers and screws. The Pro Micro is mounted to the bottom.

There isn't a lot of space to fit the Pro Micro. I left the top two pins unsoldered since they might touch the metal stabilizer wire. Also, the bottom left corner pin is removed since it sits under the plastic stabilizer housing.

The Pro Micro is programmed with a simple Arduino sketch. Sketch and PCB files are on git.

Tuesday, November 13, 2018

Arduino Six

Six Pack Arduino Backpack

Six Cherry MX compatible switches on an Arduino Leonardo. Per key LED control.

This is the exact same circuit as the Six Pack, shaped as an Arduino Shield. It is designed for the Arduino Leonardo and it's clones which have the same controller as the Pro Micro (ATmega32U4).

Assembled and stacked on top a clone Arduino Leonardo. This runs the same Arduino sketch as the Six Pack.

Separated from the Arduino Leonardo. 

The PCB snaps in half. The top is a plate and the bottom is the Arduino shield. I wet sanded the edges smooth after snapping them in half. It is under 100mm square and can be made at a discount at JLCPCB. Files are on git.

I used the header pins that came with the many Pro Micros I have. The only other parts are the 2 resistors (if you want LEDs), switches and LEDs. If you use PCB mount switches you can eliminate the plate.

It is possible to use this with other Arduino boards based on the older ATmega328p (Diecimila, Duemilanove, Uno), but you would only be able to use it as a form of input for your sketch and not directly as a keyboard HID device. The USB connector on those other boards only provides a serial connection, used primarily for programming and debugging.

Wednesday, October 31, 2018

nori

Another modular 4x4 experiment

A 4x12 matrix using 3 modular 4x4 matrix boards and powered by a Pro Micro.

The previous 4x4 boards were powered by an Arduino Micro, this one is using a Pro Micro. The Pro Micro has less data pins available so only 3 boards can be connected instead of 4. There are 2 pins left over, I used one (B5) for a backlight circuit like on a Gherkin. The other data pin is left for possible use with a WS2812B strip.

Fully assembled with a top PCB plate. LEDs are powered by a MOSFET and controlled by a PWM enabled data pin (B5).

I also made a plain bottom plate. The plates are held together with solder brides, like on the original 4x4.

Top plate, PCB and bottom plate connected with M2 spacers and screws.

You could just use the PCB and skip the plates. Use PCB mount switches and a piece of wood or aluminum as the base.

The mini USB connector can be installed on any of the 3 boards. The pigtail connects it to the Pro Micro.

If you want LEDs, the MOSFET has to be installed on the first board with the Pro Micro.

I added little nubs that interlock the boards. They may need to be lightly sanded so that they fit into the notches and the boards are flush together.

The edge connectors are in a similar pattern to the original 4x4. Only the top 3 sets of connectors are used for the keyboard matrix. The bottom pair are to pass power, LEDs and the extra data pin. DATA is the extra unused pin and FET is the MOSFET that the LED cathodes on each board connect to.

Gerber files, parts list and a json file for kbfirmware.com are on git.

JLCPCB PCB price reduction

JLCPCB has lowered their prices.

Says up to 30% off PCB. I checked and a 5 board order of the Luddite PCB was ~10% less then the last time I ordered it. I expect larger orders will see a larger discount. The $2/$5 special for boards under 100mm x 100mm has not changed.

It does not say if this is a limited time thing or if this is a permanent price change.

"The Big Price Drop!
To celebrate the love and support of all our customers, we dropped prices by up to 30% on PCBs, up to 20% on Stencils and up to 10% on shipping."

 Price from old order pictured above, new prices below.

Tuesday, October 23, 2018

Things called "Pro Micro"

Got another "Pro Micro"

The latest one is another black "Pro Micro" that has a Mini USB connector instead of a Micro USB connector. It is #6 in the picture.
  1. A genuine Sparkfun Pro Micro
  2. A typical blue clone Pro Micro
  3. A modified green Pro Micro
  4. The original Black Pro Micro with the larger ATmega32U4 chip
  5. Wider Black Pro Micro with Micro USB connector
  6. Wider (same width as #5) Black Pro Micro with Mini USB connector
  7. Older Pro Micro with Mini USB. These have been around before the green and black Pro Micros
If you are buying a Pro Micro to build a kit with a PCB you should make sure you are getting one that will fit the existing pads on the PCB.

#1-4 are all the same size. They have the same spacing between the two rows of pins, 0.6 inches.

#5-6 are 0.7 inches between the pins. Wider than normal.

#7 is 0.8 inches between the pins. Wider than normal.

#6-7 are considerably longer than normal.

Electrically they are all the same except for #3. If you are handwiring the spacing between the rows would not matter.




Monday, October 15, 2018

Switch Vomit

Luddite with random switches

Wanted to test out the plate. Used up some of the odd left over switches I had laying around.

Clicky, tactile and linear switches. The plate mount stabilizers are a tight fit, but once in place they work perfectly.

The case was recycled from a massdrop KC60. This one had plastic support fins in the center that I had to break off to make room for the Pro Micro. The cheap red case I used previously had no support fins in this area.

Close up of the broken fins. I just snapped off pieces with a pair of pliers.

Close up of the USB pigtail. You will want to make sure the plastic fins are not pinching the wires.

Wednesday, October 10, 2018

Peel-A-Way sockets at Keeb.io

Much cheaper than anywhere else.

$1 for a strip of 82 These are ultra low profile sockets on a removable strip.

I've used these type of sockets on many of my projects. They may be too short for some uses, but good to have on hand at this price.

Peel-A-Way sockets used to socket an Adafruit Feather.

Peel-A-Way socket on the top half and a regular socket on the bottom.

Peel-A-Way socket on the bottom half and a low profile socket on the top.

Mesoamerican

Keyboard pyramid

Stacked 225, 144, 81, 30, and 16 key keypads in a pyramid.
  • 225 - a 5x5x9
  • 144 - a UNQUADQUAD
  • 81 - SUDOKO, handwired 9x9 matrix.
  • 30 - a keypad I never posted before. It is built from a recycled PCB and 3mm acrylic plates.
  • 16 - a single 4x4x4x4x4
I didn't use a 5x5, It looked better with the wide base of the 5x6 keypad.




Monday, October 8, 2018

FIDO2

Next generation of U2F security keys

There are several new FIDO2 compliant security keys. These will become essential to protecting your online presence. More and more services are supporting their use in 2 factor authentication.

Solo, opensource FIDO2 project

I used the U2FZero open source project to experiment with making my own U2F key. Their second generation key will support FIDO2 and they will also have a version with NFC. You can back their project on kickstarter. These are the cheapest available, if you can wait.
https://www.kickstarter.com/projects/conorpatrick/solo-the-first-open-source-fido2-security-key-usb

Google Titan bundle

These look a lot like the Feitian U2F keys I have. But these support FIDO2. They sell it as a set of a bluetooth dongle and a NFC USB key. They recommend having 2 keys, one as a backup.

Yubico Series 5 Keys

Yubico keys can do more than U2F and FIDO2, they support additional protocols. The new Series 5 keys add FIDO2 support. There is a lower cost version that only does U2F and FIDO2.

Tuesday, October 2, 2018

Tetris

Modified 4x4 that can be stacked horizontally and vertically

You can build on the first block either to the right or down. There are headers on all sides of the PCB. You can connect the board with solder bridges or with headers and shunts.

Up to 4 can be connected together. Most of the Tetris shapes can be made, except for the big square. It runs the same firmware as the regular 4x4. Gerber files on git.

All the different ways the boards can be connected. Black square is the board with the controller. The original 4x4x4x4x4 can only be assembled as a horizontal row.

The firmware treats it as a straight 4x16 matrix regardless of layout.