Sine Lab

Electronics Projects and Guides

Make Your Own V-USB Keyboard

In my last USB video, I told you how the USB protocol worked and how you could use a special ATmega16u2 microcontroller to communicate over USB, to act as a keyboard. And while this is perphaps one of the better ways to utilize USB, since the small details are taken care of by hardware, there is another way that involves no special hardware, but rather uses firmware to run the USB protocol. And that method is known as the V-USB library. You may decide to use a library like this on devices such as the ATmega328p or more famously, an Arduino UNO, since they don’t have the necessary USB hardware to communicate. There are a few limitations though, which I will talk about during the video. I will also be showing you how the HID protocol works. This is the protocol on top of USB that we will use to run the keyboard. Without any further introduction, let’s start the video.

How to Add Usb to Any Electronics Project

All of our projects have some sort of output, why else would we make them? This output can be in the form of LEDs or LCD displays. But what about interacting with a computer? Well, the traditional method of doing so is via the serial port. This is the most widely used because of its simplicity. Rewind a few decades, and you will find many more computers with serial ports. But, if you have noticed, those ports have since been replaced by USB. USB has brought massive advantages to the electronics space, most notably for the end user. It is very easy to use, just plug it in and the computer will handle the rest. Much more convenient than the traditional serial devices which had to be manually configured. The only problem is that USB is very complicated considering that the datasheet is over 600 pages long! For this reason, implementing USB is no easy task. Luckily for you, I will be showing you how to implement USB into your electronics projects.

How to Use Microcontroller Hardware Timers

In the previous video in this series, we looked at how microcontrollers interfaced with the outside world, using their I/O ports. And while that is arguably the most important feature of a microcontroller, along with the CPU itself, there are still a lot of features that make working with these microcontrollers a lot easier. Take, for instance, the standard blinking LED example that everyone is familiar with. You simply delay the CPU in order to flash the LED. But what if you wanted to do other things at the same time. That’s where hardware timers come in. They can keep track of time for you, while the CPU is free to do other things. So, how do these timers work, and how can we utilize them? Well, in this video I will show you how a timer like this might work, and how you can use one to run a function every few miliseconds. Let’s get started!

Measure Your Crypto Rig's Power Usage

As most of you know, cryptocurrency mining has been quite popular over the past several years. And following that trend, my brother put together a mining computer. After ethereum’s switch to proof-of-stake, the older mining methods no longer work, which is what my brother was doing. So he had to switch to other coins like ergo and flux. The problem now is that these coins earn less than Ethereum used to. And with a desire to add more graphics cards, power usage is an issue too. So, the question is whether his crypto rig is both within a reasonable power limit and if the rig is currently profitable? Let’s find out.

The Sine Lab: Part 2

This video is the second part to a series about building a function generator. If you haven’t seen the first part, I recommend that you do that first so that you know why the design we have currently is the way that it is. It is linked in the description. The first part covers using a microcontroller and a DAC to generate an output waveform. In this video, we will make the waveform centered around zero volts and allow the user to alter the amplitude. Anyways, let’s get the video started.

Dynamo Radio Repair

When I was browsing a local antique store, I found this pretty old, but interseting radio. Apparently, it is very useful for emergency situations, since you don’t need to plug it in or even bring your own batteries. That is because you can charge it up in three different ways. First, you can leave it outside to charge using the solar panel when it is sunny outside. You can also crank this shaft, which is a dyanmo generator. And finally, you can plug it into a 3VDC power source to get it to work. The rest isn’t that special. There is an antenna that extends a few feet. You can also select between FM and AM channels. And finally, there is an audio jack at the back as well. The only problem is that it doesn’t work as it should. So the question is: should we fix it or scrap it? Let’s find out.

Random Number Generation

Random numbers are a very useful thing to have. Why else would we have created dice to roll and coins to flip? We use random numbers to make decisions where there would be indecision, or when we need digital security. However, if you have studied random numbers, you may come to the conclusion that truely random numbers are very difficult to produce. In theory, you could calculate which way a group of dice will land based on a certain throw. The same applies to code because it is meant to be predictable and output the same result everytime. So, how is it possible for us to use code to generate these random numbers even though the code itself is not random and is actually very predictable? And do the methods we use differ when using a microcontroller or a desktop computer? Let’s find out.

The Sine Lab: Part 1

Every electronics workbench has several very important tools. A multimeter, a power supply, maybe even an oscilloscope. These tools are all extremely important for electronics work because they allow us to inspect our circuits and determine whether everything is working properly. However, there is still one amazing useful tool that is still missing. And that is the function generator. A function generator may not be one of the most commonly used tools, but it is incredible for testing circuits where we need quickly repeating patterns. Maybe we need a triangle wave to test out a boost converter, or a square wave to generate a cpu clock. So, in this video we will research the possible ways to create a function generator and ultimately make one ourselves.

Motorized Spider

Halloween is quickly approaching, and what better way to prepare than making a decoration of our own? And what better decoration to make than a spider climbing from the its web? So, in this video we will be finding the best way to make this spider, and setting it up to spook up my house for halloween. It will be so scary that no one will dare trick or treat here again.

Adjustable Electronic Load

In a previous video, I made a pre-regulating power supply. And while it works fine, and can handle loads up to one amp, testing it can be a bit tedious. You would need several different power resistors to test a supply like this, not to mention the calculations you need to run to ensure you pick the correct resistor and get the correct results. Isn’t there an easier way to simulate a load so that we can more easily test power supplies? Well, yes. In this video I will show you how to create an adjustable load which allows you to specify just how much current you draw from a voltage source.