(Above) Hall Effect Sensors. View all of my You Tube Videos

Student-Hobbyist Electronics Projects Tutorials

by Lewis Loflin


Introduction - The purpose of these pages is to introduce the student and hobbyist to electronics projects. My hope is generate interest for those thinking about entering a high tech field, or simply to have fun.

I've been a part-time adjunct professor at a local community college teaching electricity and electronics. My electronics website reflects what I've taught or been asked to look into by visitors. I have 40 years experience in electronics from vacuum tubes to modern solid state and industrial controls. In college I had a year each of physics, chemistry, and biology along with C, C++. Pascal, and assembly.

New May 1, 2016:

YouTube Videos:
MCP4725 12-Bit DAC Interface to Raspberry Pi
ADS1115 4-Channel ADC Uses I2C with Raspberry Pi
Interface I2C LCD to Raspberry Pi in C
Pulse-Width-Modulation with Raspberry Pi
Using Geany Text editor C Programming
Raspberry Pi Blink Demo
MAX6675 Raspberry Pi Demo

New electronics pages Feb. 2016:

I taught myself the coding for Arduino, PICAXE, Raspberry Pi, Microchip PIC, Debian and Slackware Linux, CSS etc. which I approach in a way to give my students a basis for their own projects.

Every page on this website was hand-coded by me - every project built and tested. My education philosophy is learn the basics, find working examples, then use what works as a foundation for further learning. Modify and try new ideas. I'd say my job title would be applied technologist.

First and foremost read this safety warning. Unless one wants to use batteries, the only practical solution is a plug in the wall power supply.

Below are quick links to the major sections and projects on this webpage.

My You Tube Videos page lists the over 90 videos related to the projects on this website. Also visit and subscribe to My YouTube Channel.

New March 2015

Arduino Micro-controller Projects

My Arduino section is growing. For example we can interface the thermocouple amplifier and an LCD display to the micro-controller to display the temperature in say the flue of a wood stove. Again the idea is modular, small projects that can be built into bigger projects. For more technical details on the Arduino see ATMEGA168 Arduino Micro Controller Projects.

Arduino Microcontroller Projects presents a number of tested projects and examples for Arduino. The emphasis is hardware control which suggest one has an electronics background. It's also helpful to have a background in digital logic and binary code. The projects will explain this as needed.

What differs here is I avoid the use of Arduino only code and code libraries in order to port the basic code to Python or Microchip PIC C.

Arduino controller
At 3 inches long the Arduino does ten times what the KIM-1 will do.
Cost is under $15.

General Electronics Learning and Projects

Listed below are pages on power supplies one can build and test. At minimum go buy a digital volt-ohm meter. They are cheap and can be found everywhere from Ebay (Radio Shack is kaput).

In the You tube video I show how to use what I call a load lamp. This is simply a light bulb wired in series with the project. If one connects something wrong or shorts anything out, the lamp will light instead of blowing fuses or burning things out. It will also give one a quick visual indication something is wrong in order to disconnect the power.

General Electronics Learning and Projects is the largest section that concentrates on how to use discrete components such as transistors, Triacs, SCRs, power supplies, etc. This section is mainly analog and includes H-Bridge motor controls that are used with various Microcontrollers. These parts are used in the Arduino , PIC, and Raspberry Pi projects.

Raspberry Pi and Linux

Raspberry Pi and Linux is an ARM processor based mini Linux computer clone. It has addressable hardware IO to connecting external circuitry. These projects are in Python a high level interpreted language finding many modern applications.

Here I again concentrate on hardware interfacing and an introduction to setting up the operating system in Debian Wheezy and installing a real time hardware clock. The Linux I setup here can be used in any Debian based system even a common PC.

Python is SLOW compared to C used on Arduino, but is great for a user interface. So I look into alternative interface setups to use say An Arduino to handle low-level electronics.

I also use "light" Debian programs for Raspberry Pi ported over from Damn Small Linux and Puppy Linux because as a PC Pi is slow and weak. Many of the operating systems often touted elsewhere some will hardly operate. Instead of LXDE I use JWM and Openbox.

Here I concentrated on building a fast Linux based operating system to get some weaknesses in Raspberry Pi.

Connecting PC Printer Port to External Electronics

Below are listed a series of projects using pyparallel and electronics. We will use a common PC printer port to learn basic python and electronics interfacing. Starting with routines I wrote to aid students I'd advise walking through this in sequence. Have fun and send comments and/or corrections to

Connecting a PC Printer Port to Electronics with Python is closely related to Raspberry Pi. It too is a nearly identical Linux system but differs in being designed to use a hardware printer port as I-O to connect electronics projects. The projects here too are in Python and with modifications will work on Raspberry Pi and vise-versa.

It differs in I never bothered to setup the I2C interface found in Raspberry Pi instead interfaced an Arduino to better handle low-level electronics.

Now a available for download a custom live Linux distribution to use a PC printer port for electronics control - without installing or altering the PC in any way.

See Live Linux Distro for Using Printer Port with Electronics

Printer Port Projects Main Page

Connect Electronics to PC printer Port with Python
Setup PC Printer Port with Python-Linux
Use PC Printer Port to Read Analog Voltage

Read-Write Arduino ADC PWN with Printer Port
Printer Port to Serial LCD Display
Connect Arduino to PC Printer Port for advanced control

Linux Videos

Live Linux Distro for Using Printer Port with Electronics
Using the powerful Rox-Filer system in Linux
Use FEH under Linux for a Wallpaper Setter
How to create Symbolic links in Linux

BOLT Microcontroller LITE with PIC18F2550

Microchip PIC Projects PIC18F2550, PIC16F628A, PIC12F683

Microchip PIC18F2550 projects are based on the BOLT system board but can be used without it. Centered on the PIC18F2550 is programmed in C like Arduino and the programs are often interchangeable. I present a lot of code examples.

Also included in that section is assembly language projects for the PIC PIC16F628A and PIC12F683. While cheap and versatile controllers there's a steep learning curve in using assembly.

Introduction to PIC12F683 Programming

Home Built PIC Development Board
PIC16F628 PIC Using Rotary Encoder to Operate Stepper Motor
Using a Serial ADC with PIC16F628
Calculating Pulse-Width Modulation with a PIC

MAX7219 display controller with 8X8 LED Matrix
Programming the MAX7219 7-segment display with a PIC18F2550
Connecting PIC18F2550 to parallel LCD display

PICAXE Microcontroller Projects

Finally we come to the PICAXE Microcontroller in this case a medium range PICAXE-18M2. While built hardware wise on a Mircochip PIC controller it has an easy to learn built in proprietary basic. It's designed for students rather more than serious applications.

The PICAXE series of micro-controllers rank as the easiest and most cost effective way to use Microchip processors. I wanted an easier and less expensive way to introduce my students to the "PIC" micro-controller. Here I hope to get those starting out past poorly written literature and lack of simple working code examples.

Useful Resources and Links for Electronics Hobbyists