VoltLink Shelly Adapter Test Jig | Voltlog #426

Welcome to a new video it’s been a while since I’ve done a project video on the channel and it’s not that I’ve not done any projects, I’ve designed lots of things this year it’s just that they’re part of my consulting business, under an NDA so they can’t be shared.

You may be familiar with the VoltLink, the usb to serial adapter that I designed a while ago, it’s quite popular on my Tindie store with lots of orders coming in and for good reason if you ask me, this is an awesome, reliable usb to serial adapter. To extend its functionality I also created this Shelly relay adapter which can be used to flash shelly relays, in a safe and reliable way by also powering the relay during the flashing procedure so you don’t need to have it connected to mains.

If you would like to order a VoltLink, you can find these on my Tindie store, there will be a link in the description of the video so check it out.

So far I haven’t any issues, not one single module with problems and I’ve probably made several hundreds of these. It’s a pretty simple design in terms of PCB, the components are 0603 so there isn’t much that can go wrong but recently I’ve started thinking about testing these.

Now the topic of test jigs and testing electronics in general can get pretty deep, especially if you need to implement it in the manufacturing process and keep track of the test results in an automated fashion but for hobby level it can be much simpler.

For example, depending on the number of units you manufacture, you can also skip testing all together, because if I sell 100 boards and 1 of them ends up defective, I can live with that 1 failure rate and I can cover the cost of shipping another board to that customer and all of this with zero resources wasted testing these but at the expense of one unhappy customer who needs to wait for another unit to be shipped.

So mainly for me that was the main factor for wanting to test these, to avoid having unhappy customers that might end up getting a bad unit. And I don’t really need to test for all of the things working, I just need to figure out if I have a working connection from the USB side all the way up to the shelly relay  and also verify that the path can be used to communicate over serial and toggle the reset lines.

This kind of test would eliminate for example a lot of the most common issue like soldering problems with the USB Type-C connector or with the QFN chip, or with the PCB copper layers, or with the JST-SH pigtail connecting the adapter board, or soldering issues on the small adapter board so all of these would be eliminated.

So here is what I came up with, a series of 6 total shelly adapters, chained together in series with an ESP32 at the end of the chain. I would be connecting a VoltLink at the start of the chain, UART signal would then go through 6 of these adapters, connectors, pigtails and it would end up at the ESP32 side for either flashing the ESP32 or writing a small test firmware that would just communicate over serial to verify the whole chain is connected correctly.

ESP32 WLED Driver Board With USB Type-C Power Delivery | Voltlog #419

Same as most people these days I do have a couple of LED tapes in my apartment to provide some ambient or work area illumination. The ones I have are warm white 12V tapes and they’re typically controlled via some sort of touch dimmer which again is a pretty typical low cost commercially available solution.

But given how the rest of my lights are fully dimmable and integrated into HomeAssistant for remote control I started thinking how I could do that for the LED tapes as well. And I think you know where this is going, yup, I’ve designed my own LED driver board, this is it, based on an ESP32 and WLED compatible but more on that in a second.

First let me mention the list of requirements that I had, before I started designing this.

My number #1 requirement was to get rid of the typical LED tape frame style power supply units which are generally big and bulky, pretty noisy in terms of electro-magnetic radiation. I have plans for installing some small lengths of LED tape and there is no point in having like a 20W power supply if I’m only going to need something like 10W at most. So I figured why not design this LED driver board to take in USB Type-C power supply input, with power delivery support. This way I could power it from one of these usb-c wall adapters. Simple, clean and reliable if used with a high quality adapter. In addition to that, I would argue that it’s safer too when used with a high quality adapter because you no longer have to deal with mains wiring.

Number #2 requirement was to have an ESP32 in there so that I could integrate this into my smart home management system. Having an ESP32 will give me plenty of processing power to run either Tasmota or ESPHome or even better WLED which specializes on LED driving capability.

Number #3 requirement was the ability to drive both digital LED tape like SK6812 or WS2812 type and analog type LED tape which you have to PWM on individual channels. I wanted up to 4 analog channels so that I could drive an RGBW tape and at least 2 digital channels but I ended up wiring 4 digital channels because I had more available pins.

Number #4 requirement was to have the whole system small so that it could be put in a small enclosure, maybe even enclosed into a wall distribution box. 

Now considering these requirements one by one, I’ve successfully implemented 1 to 3, not so much on #4, because the whole system is not as small as I would have liked it to be. When fitted inside the enclosure it measures roughly 90*70*30mm and ideally I would have like it to be half of this size, something like 90*30*30mm would have been great but I just couldn’t fit everything in that size unless I was going to do a double sided assembly which I tend to avoid because it significantly raises prototyping and manufacturing costs.

So let me start with presenting some of the technical specs that I have on this driver board:

  • USB Type-C power input with power delivery, based on this dip switch selection, it will negotiate for 5V or 12V. For safety purposes I have also added a manual jumper that needs to be manually selected to route the resulting voltage rail to the 5V side or to the 12V side because I figured there might be edge cases where the user has a 5V led tape connected and then accidentally requests 12V with the dip switch which would result in 12V being applied to the tape.
  • We have a secondary power input via screw terminal for those that do not want to use USB Type-C.
  • We have 4 mosfets with PWM for driving RGBW 12V LED tapes.
  • We have 4 digital LED channels, these are properly connected via a high-speed buffer line driver that also level shifts the signals to 5V.
  • We have an I2S microphone which WLED supports by default for sound reactive lighting.
  • We have an integrated IR receiver which once again WLED support by default for remote control.
  • We have a touch input GPIO where you could connect some improvised touch sensing point if you would like to implement touch control.
  • With some of the remaining available GPIO I’ve created this I2C standard 0.1 inch header so that you may for example connect additional stuff, like a temperature/humidity sensor.

VoltLink revD USB Serial Bridge & ESP32 Programmer | Voltlog #414

Ever since I’ve started offering the option for the Shelly programming cable, lots of people have ordered one because it makes the job of flashing an otherwise dangerously mains connected relay very safe by not having to power it from mains, but just supply it with DC power from the VoltLink itself.

But this video is not about that, it’s about the latest revision D of the board, the changes that it contains and some future plans.

So as you may have noticed there is no power LED on the VoltLink and to be honest for my personal use case I don’t really need one but I do understand people that want a power status LED so that they get a quick glimpse of whether the board has power or not.

Personally I think that because the VoltLink is so reliable in operation, the power LED is redundant but I do remember the times when I was using other cheap usb to serial adapters, there were the occasional issues with the micro usb connectors failing, with the on board chip failing, so it was nice to be able to see that you still got power to the board at least. Nonetheless, I added one to the new revision, placed it right next to the USB connector.

Now because I added these two extra components to my schematic, the LED and the resistor, I decided to switch to a resistor network to replace 4 x 1kilohm resistors with a single package to further optimize my BOM cost and DFM.

Another small change I did was to bump the 4.7uF decoupling capacitor on the USB to serial chip to 10uF because I was already using that value at the output of the voltage regulator. This once again, optimizes my BOM for using less parts as this will become important later.

And while I was revising the PCB, I also switched to these nice labels created with the Kibuzzard plugin for Kicad. No extra functionality because of these, but they do look nice.

Water Valve Servo Automation (part 1) | Voltlog #412

Welcome to a new video, this will be part 1 from what I expect to be a 2 or 3 part series where I show you how I designed and manufactured an automation for controlling the main water supply valve in my apartment. The first part will be related to the mechanical construction while the second part will likely be related to the electronics needed for control.

So first of all the reason why you might want to automate this is for protection in case of failure, you can detect the water leaks using other sensors and close the main valve to prevent extensive water damage. You might also want to conveniently turn it off remotely if you go on vacation for extended periods of time, stuff like that.

Now you might say there are ready made solenoid valves that run on various voltages and you can use one of those to replace an existing analog valve and at that stage you would just need a relay to turn power on or off to that valve. And that is certainly a good option for those that are building a new installation, you can certainly plan for that and install one of those solenoid valves but in my case, I would need to shut-off the building main water supply and get a plumber to install that valve which I would like to avoid. I am also aware of servo type accessories that clamp over existing valves but seem to be designed for the lever type valves so they wouldn’t work for the style of valve that I have installed.

So the first step for me was to get a spare valve,  needed it to be the exact same model, luckily I could find an identical one, it’s from this company Herz Austria so now I could take measurements of this and recreate a 3D model in Fusion 360. I could not find a 3D model for this specific model from the manufacturer so I had to recreate this but it didn’t take too long because I was only interested in the rough outside dimensions and not the intricate details on the inside.

USB Type-C Power Delivery The Easy Way! | Voltlog #411

You would think that implementing USB Type-C Power Delivery protocol on your upstream facing port  is a difficult task and if I would ask you if you can also support Qualcomm quick charge on top of that, the issue is even more complicated and you would probably be right to think so if you wanted to implement all of this by yourself but luckily you don’t have to, because there are dedicated chips that can do all of this and in this video I’m gonna show you how to use them.

So recently I started working on a project which needs USB Type-C Power Delivery input for negotiating 5 and 12V, it would be nice to also support Quick Charge, I basically need the capability to power my board from a standard phone charger with either Power Delivery or Quick Charge support. This will be an open source project, but I’ll talk about it in a future video after I build the first prototype.

Now to understand more about USB Type-C and the different power roles like Downstream Facing Port, Upstream Facing Port or Dual Role Port I suggest you check out this neat application note from TexasInstruments which is called “a primer on USB Type-C and Power Delivery” I will put a link to this in the description below and if all of this is new to you, it will help you understand how things are organized under USB Type-C.

What I need is the ability to sink up to 3A with 5V or 12V selectable voltage levels into my board, so that fits under an Upstream Facing Port definition and I wasn’t going to start implementing the power delivery negotiation protocol, it’s just not worth the effort when there are chips, specifically designed to do that. After a bit of research I have identified a company named Legendary Technologies from Shenzhen,  they seem to specialize in building these chips that provide USB Type-C negotiation for various roles. I have contacted them and I’ve been in touch with one of their applications engineers, they’ve been very supportive and have provided me with samples and support for implementing their chip which is very nice. I appreciate that kind of support and it helped me decide to use their chip in my design.

Expand your GPIO! PCF8574 & MCP23008 | Voltlog #409

Welcome to another Voltlog, in this video we’re going to take a look at an easy way of adding more GPIOs to your project because if you’ve been tinkering with electronics at some point sooner or later you’re going to need more GPIOS than what’s available from your microcontroller.

Sometimes manufacturers do offer a higher pin count package with more GPIOs with approximately the same CPU inside but in the case of an ESP32 module for example, that’s all you get and if you need more than you are out of luck as far as options from the manufacturer. And even if the manufacturer does offer a higher pin count option, those are usually more expensive and given the current chip shortage that we’re going through, they might not be available for purchase.

I had such a need recently for a design of mine so I decided to do this video to show you an option that you can use for expanding the GPIO capability of your circuit. In my case it was the ESP32 thermostat valve controller circuit, which makes use of pretty much all of the available GPIO so if I wanted to add some extra output channels I have no more available GPIO.

Luckily this problem is not new, it has been around since the introduction of digital processors so there is a very convenient solution to our problem in the form of GPIO expanders. They can come in many shapes and sizes but the key feature is that they usually take a serial input which means a low pin count for the input and they provide a number of different outputs depending on the package. So here is for example the datasheet for a very popular GPIO expander chip, this is the PCF8574, the datasheet is from NXP but this is manufactured by different companies and this is a big plus because there is a higher chance of finding these in stock.

Best Affordable USB Analyzer QC/PD AVHzY CT-3 Shizuku | Voltlog #407

Welcome to a new Voltlog, In this video I’m gonna show you what I think it’s the best affordable USB Meter you can get right now in terms of functionality and build quality. The functionality built into this usb meter goes beyond your imagination and it’s hard to even remember all of the different functions this meter will support and the PC app they offer has to be one of the best apps I’ve seen from a Chinese company. It doesn’t mean it’s perfect, might still have a few bugs but definitely the best choice you can make right now.

The meter is branded AVHzY, the model number is CT-3 and full disclosure here, they offered this unit for free for the purpose of this review but they don’t pay me and I have full control over this review. The meter comes in a hard shell case so it’s well protected during shipping and to my surprise I got this in just under 2 weeks while the usual transit times for my packages are in the 3-4 weeks. Inside you get this english quick start guide, there was also a screen protector film which I already installed, it went in there perfectly and I really appreciate having that included because it was the perfect size.

This is the typical USB meter sandwich construction with different layers, this one seems to be using a single PCB in the middle with a couple of metal sheets on the outer layers which makes it feel premium and more rugged than simple plastic. We have the typical USB Type-A connectors for input and output , USB Type C input and output and also a micro USB for PC connection. The LCD is 128*160 pixels at just 1.77” which is not a lot, you can definitely see those pixels but for a small USB Meter I can’t complain, it’s still readable.

Global Chip Shortage Solution Or Maybe Not? | Voltlog #406

Welcome to a new Voltlog, In this video I’m gonna show you one potential solution if your design uses a part that you can’t source anymore due to the global chip shortage but also the pitfalls of using this method in the case of a dc-dc converter. Please keep in mind that actual price per unit or stock availability will vary between the point I started working on this video which is a couple of months ago, the actual time when I publish it or the time that you are watching it.

Let me start with providing you a bit of context here, this is the CanLite, an ESP32 based design that I sell on my Tindie store. It’s a CAN development board, it’s got a couple of high side switches, a CAN interface, a powerful processor with Wifi Capability and an automotive rated DC_DC converter to allow the user to power this from a car 12V system.

The DC-DC converter chip that I’m using is the Texas Instruments LMR14006 and I’ve been pretty happy with using dc-dc controllers from TI over the years because they generally perform really well and they have good documentation and design resources available.

Now as you all know the chip shortage has not been kind to us and as a result I can’t find this chip anymore. If we go to Octopart which is like a search engine for electronic components, we see there is no stock with any of the major distributors for the particular part number that I was using LMR14006XDDCR. And don’t get your hopes up with Winsource or Cytek, these guys just list stock for stuff that they don’t have and even if they have it, it’s not worth going through them unless you have a high volume.

VoltLink revC CP2102N USB Serial Bridge & ESP32 Programmer | Voltlog #405

Welcome to a new Voltlog, a rather short video for today. I’m gonna be showing you the latest revision of the VoltLink USB To Serial Adapter. This is revision C and while this revision doesn’t necessarily bring any new functionality to the VoltLink it does optimize the design for manufacturing a little more which makes it easier for me to build these units.

Before I go into more details let me just quickly mention that if you would like to order one of these, they are available on Tindie and there will be links in the video description to the product page.

So like I mentioned, no new functionality added in revC, but that’s okay because I’m pretty happy with the functionality we have so far, I mean there is USB Type-C which means you no longer need to resort to the older micro usb cables, you got over current protection at 500mA, ESD protection.

We still have a high quality, high speed, usb to serial converter in the form of the CP2102N which enables baud rates up to 3M baud and this significantly improves the time you need to flash your board and you will quickly get used to this higher speed so much that when you switch to some other converter or board that only supports lower baud rate you will feel how slow that is.

We still have the 500mA rated low dropout regulator which provides 3.3V to the target board and 500mA is enough to cover the majority of boards that you will be programming. For example all of the ESP32 based boards that I design can be powered by the VoltLink while flashing firmware with no issues. Additionally I showed in a recent video that with a custom optional cable that you can order with the VoltLink you can safely flash Shelly relays without having them connected to mains voltage.

How To Flash Shelly Relays With Tasmota Or ESPHome | Voltlog #404

Welcome to a new Voltlog, in this video I’m going to show how to flash your Shelly relay with Tasmota or ESPHome, the easy way, using the VoltLink USB to serial converter. What is a Shelly relay you might ask? Well, if you are into home automation, a shelly relay is a wifi connected smart relay, built into a very compact form factor in order to fit inside electrical junction boxes like behind wall switches or wall sockets.