Custom DIY IDC

Just created a simple 20pin to 10pin IDC PCB and while its on the way from OSHPark I forgot to order the one part I need from digikey …

Its a simple part. I decided to create one while I wait for the PCB. Why even order the part it if I need it just for me and only 1. Below are some images to show the creation of the part. Super simple. I removed the pins from the male connector just to allow easier insertion and removal during glue alignment.

Parts used:
1x Generic 2×10 Female Header
1x Plastic Rectangle (4mm x 7mm & 1.5mm thick)
1x Crazy Glue
1x 2×10 Male Header (for alignment)

Boards came in today.. worked like a charm šŸ™‚

The Kraken

I was assigned to create a PCB for testing machines along the production line at Wazer. The goal was to make something that can check as much as possible before hitting certain final stages in production. Finding issues beforehand saves time and money. There are tons of peripherals and electronics on a Wazer that could be checked at various stages. This PCB handles all the stuff before we water seal the machine. If something was to go wrong after it would be a huge hassle to take apart and reseal.

While i wont go into the entire list of checks it does, i will talk about the electronics that went into it.

The main controller or MCU here is the ATMEGA2560V-8AU. Its a 3.3v chip and runs @ 8MHz using a bootloader from MCUdude called the MegaCore. The bootloader allows me to use a simple USB to UART and the Arduino IDE to program and make changes quickly and with no special programmer needed.

As usual i try to place my logo on all my boards.

Some of the testing lines use zener diodes to protect the MCU pins from spikes (high voltage), the zeners used are BZB84. Another IC used is the SN65LVDS049 which is a Dual-LVDS Differential Driver and Receiver. Just one for an SPI line. This allows me to communicate over long wires VIA spi without interference.

On the back are some magnets which allow users to place it on surface and have it stay put.

Below is the Kraken in its home/base.

AtomDev-SAMD21 & Port-A-Proggy V2 PCB

V1 of the Port-A-Proggy had a Dual Micro or USB C but has some tiny headers that doesnt allow me to fully have fun. So i changed it up to larger strong headers that wont disconnect when in my hand or be to hard to make a cable for also.

The PCBs were designed by me and created by PCBWAY. They were also soldered by myself here at home. PCBWAY is pretty awesome. The creation was quick , the shipping was handled by DHL. Tracking anything coming from over seas to USA is always a hassle so I cant really complain there.

AtomDev – SAMD21-C is an awesome average sized PCB. The board is smaller than you think coming in at 1.7 x 2.22 inches or 43.2 x 56.3 mm. About half the average credit card size. This board is as basic as it gets. The MCU chosen was the Atmel ATSAMD21G18A-U. The board comes with all the basic circuitry like caps for power pins and crystal. (32.768khz) which gets bumped up via PLL to 48MHz.

It has a USB C connector meant for USB 2 spec. The board can be programed via Arduino IDE or UF2 drag and drop files. The Power supply uses the APK2112-3.3v which is a norm in most of my projects as it can supply 500mA easy and needs minimal parts. Seems to work great with USB devices. USB is fused via a 500mA resettable fuse. The board includes a Reset button and Power LED (Green). The Power LED connection can be unsoldered via a jumper on bottom of PCB to allow power saving.

On the lower portion of the PCB the user has a Button and LED for any use. As the Silk Screen states the User Button is connected to PA06 and the User LED is connected to PA07. Both can be disconnected from those pin by unsoldering the jumpers on the bottom of the PCB. This allow for other use with out interference.

All pin headers are clearly labeled. Vin is also 5V from USB and is brought out on both sides of PCB. On each corner is a GND pin and 1 3.3v pin on the bottom left. There is also a POGO header in the top mid/left of the PCB for quick programming using a tag-connect type header.

This is the bottom of the PCB, as you can see there are 4 Solder Jumpers. User LED, Button and Power LED along side of USB_CHECK which connects a Resistor Divider to PA14 if soldered.

That’s about it for the SAMD21-C on this post, now onto the Port-A-Proggy..

I know such a weird name. Its name comes from its original use… as a Portable Programmer. I initially designed it to be used as a on the go programmer for AVR SPI devices. Like the ATMEGA328P that’s in the notorious Arduino Uno, but I have since put the project on hold as I needed to get back to normal work life.

The Port-A-Proggy has a 2.7in Sharp Memory LCD and 4 buttons on the front. The buttons are using only 1 analog pin by using a resistor divider. This saves on pins.

On the back of the PCB is where all the magic happens. To lower cost ive decided to leave out the USB to UART IC and have a separate programmer which is simple enough and cheaper to have one over one on every PCB.

On the Top Left you can see the ESP32-WROVER-E with 8MB. ESP32 is an amazingly fast MCU with Dual processors and Bluetooth/Wifi. I decided to use the module because it contain everything needed already such as antenna and memory with passives. Makes life simpler.

The board can be powered via USB C cable or Lipo Battery. The power supply ive used here is the TPS62132 which is a 3A Step-Down Converter In 3-mm Ɨ 3-mm QFN Package, locked in at 3.3v. Its one of my favorites as the input voltage range is from 3v to 17v. So Lipo, USB , 12v brick… all can be used with it.

Also included is a 5v boost using the TPS613222ADBVR which is a 1.8-A Switch Current Boost Converter. It’s used for the Sharp Mem. LCD as it requires 5v for power but uses 3.3v Logic. I did not test if the LCD will from LIPO without the boost, so not sure if this was needed. I recommend it as its what’s needed per datasheet of LCD. U$5 is a SS8P3C, High Current Density Surface-Mount Dual Common Cathode Schottky Rectifier. This allows me to combine 2 power rails without them touching each other really.

The LIPO can be charge via USB C connector using the onboard MCP73831 IC.

The MicroSD Connector along with most of parts on board are nicely labeled so you don’t have to look at documentation all the time to figure something out.

There are 2 huge headers that have lock-in housings. I chose these for V2 because it allows for larger wires and less likely for a cable to disconnect when using it in your hand. The header marked ICSP is for programming but can also be used as a UART port.

The Header marked Target SPI can be used for SPI or I2C or GPIO. The last things to mention on this PCB are the On/Off switch and the SMT Pads. The switch is a normal slide switch capable of 600mA and the SMT pads allow for any … extra testing or GPIO needed for task.

The quality of the PCBs were great! No broken traces. Silk was nice and clean even at such small sizes. I haven’t had any issue with these yet and I dont suspect any. I will definitely use PCBWAY again for some boards.

AtomKeybOR

Today I write in to share my newest creation. I call it the AtomKeybOR the OR is for the shape. It’s an OR gate shaped keyboard.

It only has 5 keys and is shaped to fit my hand and probably many other hands comfortably. The main reason I decided to make this is to ease my programming. While programming there are tons of functions and key combos I use often as does everyone else such as Copy and Paste but there are a few key combos often over looked because people tend to use the mouse instead.

The 5 functions my keyboard implements are…

Copy, Paste, Select Line, Select All and ESC

So with the press of any 1 key I can do any of those functions. ESC isn’t special but it’s awesome to have close by.

This keyboard not only saves time but is pretty to look at. I decided to go with Glass and wood as the final design and used a Wazer Desktop water jet cutter to cut of the glass.

The Wazer is an awesome tool to have at my disposal. Not only can I cut out glass but I can cut aluminum, steel, acrylic and more all while leaving a smooth finish since it uses sand and water to cut.

While I’m not complete with the design I have tested the code and have an mcu picked out. I decided to go with the ATSAMD21G18. I used an example from the “Advanced Software Framework (ASF) for SAM Devices”. While it was for the SAMD21J18 it was easily modified to work for my choice.

The mcu was chosen because I have a few on hand and could easily test it using my dipDuino SAMD21.

DipDuino SAMD21

The PCB I’ve designed will fit on the top-left part of the design. It’s pretty small and will have everything needed without the extras on most boards. No pin headers as all will be solder pads. 1 led for USB status and a micro USB connector. It will be fused since it’s an open design just incase something falls inside it and shorts.

Here are some test shots and designs being finalized.

Modding old MP3 player

My wife recently found an old MP3 player from about 2008 and asked if I can get it working, knowing I love this kind of stuff. I said I’d give it a shot but no guarantees.

Having a look on the side I notice a weird 4 pin header and a label on back that says it’s actually a USB port. Kind of weird. So I open it up to see what’s it like.

I find out I’m extremely lucky as a Micro USB connector not only fits but the pinout is almost aligned straight. So I rip apart a wire for a strand or 2 and get to soldering.


After soldering and plugging it it it starts up. Yes! So now I plug it to my PC and once again it starts up and then loaded a storage device. How lucky is this woman. It was fun and took about 20 minutes. Need to test the music but yeah it’s alive.

Learning Python w RGB Strip Controller

Hey everyone, been busy with work lately but had a long weekend, kind of vacation with all the storm stuff happening. Ive taken that time to pickup Python which is a funky language to be honest but a needed tool to learn especially if i want to start a career in programming. I know im a bit old to be changing careers but its my life and i want to do what makes me happy. Programming makes me happy, building and designing are the sprinkles on my life which is ice cream lol

While i dont know much i learned enough about list, tuples and variable stuff along with my current knowledge of how most of these things work. I was able to create a simple serial program to communicate with a PCB im currently designing.

The program itself is nothing crazy. As of now its a simple program where you enter the color and the amount on you want for the PWM. Just to control color. I dont even know what led strips i will be using yet but the main program will do for now. It doesnt even have a GUI and is all command line driven.

The PCB ive designed is for a simple RGB strip with no controller IC. Non addressable i think they call them. The PCB itself can be easily modified for Addressable RGB Strips though, so i’m not worried.

Here is a quick video of the program so far and a picture of the PCB design.

Atom-ICs

So ive been busy designing some new boards I call AtomICs. The main reason for them will be to allow people to create more using breadboards. Testing designs and having fun. There will be more to come but here is a peek at what’s currently made.

These are my 2 level shifters. 2 Channel and 4 Channel Level Shifters. These are great for those projects where you need to interface I2C or SPI from 5v to 3.3v systems.

AtomClamp

Hah.. yeah I made this for the dipDuino but I guess since it’s adjustable it can be used for others… Here are some pics.

New Stuff

Hey guys, this post will just be an update. I have a couple of new PCBs being made by OSHPark . They are awesome as usual and have kept up during this pandemic. Which is a tuff thing to do.

The first PCB is my IOBuddy shrunk down to smaller size. Its called the AtomIO

As you can see from the render it has 3 Outputs (LED) and 2 Inputs (BTN). It’s tiny as heck and will help keep breadboards less full. The LEDs are tied to GND with a Resistor so all you have to do is supply 2v to 6v to turn them on. The buttons are pulled low via 10k – 22k ohm. So when pressed they output a HIGH signal. What ever is on the power rail it is connected to.

The colors for the LEDs will most likely be customizable on tindie shop. I will offer White, Red, Blue, Green and Yellow as the choices.

The next board I have on the way is more of an internal use PCB but may sell it if wanted enough. its a simple breakout for those memory LCDs from sharp. The LS027B7DH01 to be exact. I call it the AtomSharp.

Its a basic breakout. Contains the caps needed and 0 Ohm resistor to share VDD with VDDA. Also has a 0 Ohm resistor jumper to allow different EXTMODEs. You can check page 21 of the datasheet for its use. Most use it tied to VSS which I will also do but its nice to have the option to test the other way.

I wanted to make this so i can also 3d print a nice case for the LCD. They are fragile and it’ll be nice to have a enclosure to protect it during testing and development.

I also obtained myself a ESP32-C3 and Raspberry Pi Pico which i havent had time to play with yet. Ill try to get time for those and post up some stuff.

I’ve been a bit sick lately. Don’t want to get into it much but i have some time off from work ill be using to relax and get into this stuff again.

Create a free website or blog at WordPress.com.

Up ↑