Tutorial on the Design & Implementation of an FPGA RGB LED Matrix Driver

In this episode Shahriar and Timo demonstrate the design methodology of an FPGA based 32×32 RGB LED matrix driver. Timo has kindly devoted some of his time to describe the block diagram and the thought process which goes into designing this type of FPGA display driver. The various components of the overall system (PLL, UART, and Display Controller) are shown along with the simulation data. The outputs of the Spartan-6 FPGA board are then measured using a Keysight S-Series oscilloscope. The design of the RGB matrix is also demonstrated using a custom clock interface sent wirelessly to the unit via Bluetooth.

Tutorial on the Design & Implementation of an FPGA RGB LED Matrix Driver – [Link]

Atmega8 Development Board

ATMEGA8L

Atmega8 Development Board provides a very simple and cost effective platform for prototyping solution.  The compact design provides connection to all the pins of the microcontroller for the user.

  • Prototyping solution available for 28-pin ATmega series AVR microcontroller from ATMEL
  • All the three ports available to the user via standard 10 pin box header with supply of 5 VDC for interfacing circuits
  • Onboard reset switch for easy reset of the microcontroller
  • ISP (In circuit Serial Programming) connector available for chips with ISP support
  • 8 MHz crystal on board
  • UART level shifter circuit using MAX232 IC, on board for easy connection of the board to the RS232 devices

Atmega8 Development Board – [Link]

Atmega8 Development Board

ATMEGA8L

 

Atmega8 Development Board provides a very simple and cost effective platform for prototyping solution.  The compact design provides connection to all the pins of the microcontroller for the user.

  • Prototyping solution available for 28-pin ATmega series AVR microcontroller from ATMEL
  • All the three ports available to the user via standard 10 pin box header with supply of 5 VDC for interfacing circuits
  • Onboard reset switch for easy reset of the microcontroller
  • ISP (In circuit Serial Programming) connector available for chips with ISP support
  • 8 MHz crystal on board
  • UART level shifter circuit using MAX232 IC, on board for easy connection of the board to the RS232 devices
  • Jumper selectable connection available for connecting the UART level Shifter to the port pins
  • On board voltage regulator available for sourcing regulated 5V @ upto 1A voltage to the board and connecting circuit
  • Power-On LED indicator
  • AUX Power source of 5 VDC available on a PBT connector for sourcing DC supply to interfacing circuits
  • Four mounting holes of 3.2 mm each
  • PCB dimensions 60 mm x 89 mm

Schematic

ATMEGA8L_schematic

Parts List

ATMEGA8L BOM

Photos

ATMEGA8L2

 

 

A Xively AMbient QUality MOnitor built on ATmega328

avr_atmega_ambient_quality_monitor-humidity-temperature-noise-light

Davide Gironi has build an indoor ambient quality monitor that is able to measure temperature, humidity, noise and brightness and indicate the ambient quality using 4 bi-color LEDs. He writes:

The data it is logged to the xively.com platform, and displayed to the user through 4 bi-color leds.

It can be used to monitor you Office Ambient Quality over the parameters logged.

This project it is built upon the xively logger ATmega328 library: http://davidegironi.blogspot.it/2014/12/a-web-configurable-xively-logger-build.htmlhttp://davidegironi.blogspot.it/2014/12/a-web-configurable-xively-logger-build.html

A Xively AMbient QUality MOnitor built on ATmega328 – [Link]

DIY Weather Station with Bluetooth

FAYKGH0IE1HJEYC.MEDIUM

by Matej Blagšič @ instructables.com:

Recently I attended a course in our University of Electrical Engineering and we were making ourselves a small weather station. It included learning about soldering, sensors and arduino. It was super fun making it with little kids and other high school kids my age. I will show you how you can build it yourself, what components do you need and explain you the code and how can you upgrade it with more sensors.

DIY Weather Station with Bluetooth – [Link]

Generation of Sound Using Microcontroller

This project illustrates the use of a microcontroller(MCU) to generate different types of sound. The device uses SST89E54RDA-40-C-PIEMCU, an 8-bit 8051-compatible MCU with embedded SuperFlash memory.The device comes with 24/40KByte of on-chip flash EEPROM program memory which is partitioned into two independent program memory blocks. The primary block 0 occupies 16/32KByte of internal program memory space while the secondary block 1 occupies 8KByte of internal program memory space.

Sound is a function of frequency. This concept has been used to generate sound from the microcontroller. Varying the frequency can produce different types of sounds especially with the use of timer 1 of the MCU to produce different frequencies. Timer is used to produce exact delays and by toggling the output pin, it will generate the desired frequencies. These frequencies are then fed to pin 0 of port 1 which is connected to the speaker. By combining frequencies of different values, different tones will be produced.

The circuit is a basic sound generator that has wide applications such as used in cars that produce sound while reversing. In addition, it supports electronic piano to generate different tones, or in electronic toys to generate sounds. Thus, this device is an effective sound generator that produces an audible sound as preferred by the user.

Generation of Sound Using Microcontroller – [Link]

Orange Pi undercuts Raspberry Pi

20150901022403_Opi

by Martin Cooke @ elektormagazine.com:

Over the last few months the Asian manufacturer Shenzhen Xunlong Software has released a number of capable open-spec single board computers with the ‘Orange Pi’ label that are both Linux and Android-ready. Their latest offering is the Orange Pi PC which packs an Allwinner (Cortex-A7) quad-core H3 SoC running at 1.6 GHz, priced at just $15. That’s less than half the price of the latest Raspberry Pi board which uses the Broadcom processor based around the same quad cores but running at 900 MHz.

Orange Pi undercuts Raspberry Pi – [Link]

4×1 WiFi Wireless Antenna Switch

I started playing with electronics back when I was 10 years old in Argentina, where I grew up. Then I got my ham radio operator license when I was 16 years old and I was very active in the ham club and on the air. It was then when I built my first vacuum tube transmitter and refurbished and old receiver (also vacuum tubes) that somebody from the club was throwing away. My interest for science and electronics grew and I ended studying physics but always tinkered with electronics, whenever I could.

I’ve moved a lot around the world for work (oil and gas) so my dedication to ham radio pretty much faded away. But it came back! Just recently, I got my ham radio operator license back and started to get active on 2mtr and on digital.

Due to lack of space outdoors, I had to settle for installing my center fed dipole on the attic (I have a long attic), but I quickly realized I needed more than 1 antenna. 80 mtr, 40 mtr, 20mtr….

And I didn’t want to run multiple lines to the attic, so an antenna switch was necessary.

ESP8266

I bought a 4 position manual antenna switch and very quickly realized (again) that I did not want to go up and down the stairs with kids and wife sleeping to switch the antenna. And more importantly, I did not want to run another set of cables to drive a wired remote controlled one. Wireless was the solution. I checked the prices, and they were outside of my budget for a switch. So, what’s next? I came up with an idea. Get a RaspberryPi and add a relay board and then I have my WIFI wireless relay control. Add some UHF female SO-239s and we have a WIFI Antenna Switch. Well, two problems with this, first it is really clunky connecting all those coaxial cables to the relays and there would be a lot of signal loss (and good luck tuning that), its bulky and pretty difficult to assemble in one unit and that would not work properly; second, it was more expensive than I expected,  even DIY it was around 100  dollars. I built it anyway and, well it worked for a while. But I was not happy so I looked around and came up with a better idea (or so I thought!). I found the ESP8266, a WIFI module which is  small, cheap, I mean 3-dollars-cheap and fully programmable. Combining this module with a standard relay switch design, I thought I had a solution for way under 100.00 dollars integrated all in one single PCB board, suitable for mounting on a proper box.  Lets look at the design.

Schematic

5

The brain of the switch

The ESP8266 is a very small WIFI enabled microcontroller. It can be programmed in C by flashing it with the manufacturer’s (Espressif) software development kit (SDK). But it can also be programmed in LUA using the NodeMCU SDK (open source, just Google it or go to GitHub). LUA is a scripting language used widely in the gaming industry and I picked it to program the ESP8266 because of being compact, very high level and allowed rapid prototyping.

The ESP8266 acts as an access point and/or a WIFI station,  so once it is configured it acquires an IP address and then you can communicate with it via a web browser or a TCP connection (phone, tablet, computer, etc).

The ESP8266-01 used in this project, has 2 GPIOs, GPIO0 and GPIO2, meaning that we can program the module so it can read and write stuff on these GPIOs. The ‘stuff’ is simply digital signals, a 0 or a 1,  or in volts, a few millivolts or 3.3 volts. This is perfect to drive LEDs or relays and make them open or close according to some logic and control either running on the module or instructed via a web or TCP server.

The module features a serial interface so you can communicate with it to program it.

There is plenty of material out there to get anyone going with this little wonder. The key things to know is that you will need a USB to serial module to initially talk to the ESP8266, be familiar with serial communication and able to do some script programming. For USB to serial, any FTDI232 based module will pretty much work, but be careful as they are counterfeit FTDI232 that can render useless, make sure whatever you get is genuine. Then you need to choose a serial terminal to send commands to the serial module that will send commands to the ESP8266. Something like CoolTerm or SSCOM32 would do the job. I use CoolTerm mostly on the Mac. Also, when you start copying LUA code into the module, CoolTerm does a great job.

With this brief introduction to the ESP8266, you can have a lot of fun prototyping all kinds of interesting WIFI projects.

Driving the relays

I looked a several relay types, and for this first version of the switch, I estimated going with something on the lower power side would be a wise choice, something that could handle 100-300 Watts. There is plenty of time to improve the design and make it robust for high power transmitters. I started with a 4 position switch, so I needed to drive 4 low power, low current relays. The ESP8266 has 2 GPIOs (general purpose IO), GPIO0 and GPIO2,  but just 2 GPIOs, were not going to be able to drive 4 relays, I needed some logic. I decided to go with the 74HC238, a 3-to-8 line decoder. I just needed a 2-to-4 line decoder but since I had a bunch of these, lets use them, and connect the unused input line to ground. The ESP8266 GPIOs were going to feed the 74HC238 and provide the logic to switch the outputs, then these outputs will drive a Darlington power driver like the ULN2803. To make it safer, I decided to split the 8 ULN2803 outputs into 2 groups of 4, one group feeding the relays, the other the LEDs.

6

Figure 1 shows the desired truth table for the GPIOs and the Relays. Now to achieve this logic, I connected GPIO0 to input A0 of the 74HC238 and GPIO2 to input A1. As mentioned above, A2 is connected to ground. This arrangement provides me with the correct output logic from the 74HC238 which I can now connect to the ULN2803. The cool thing here is that at all times, only one output is active, which is what we want when switching antennas. We don’t want 2 antennas connected to the transceiver at the same time! Or do we?

To make convenient I added a reset push button switch and a flash switch, in case I needed to reset the board for whatever reason, or flash it if I had new firmware.

The ESP8266-01 requires 3.3 V, and no more. The rest of the board need 5V, so I needed an LM1117 3.3V regulator to bring the voltage down and keep it stable.

4 LEDs indicate which antenna is active and 4 relays do the switching as instructed by the ESP8266 and the logic circuitry. The input and output connectors are standard panel mount UHF female SO-239.

For safety, I included varistors at the feed point of the relays.

Putting it all together

I programmed the ESP8266 so it can be configured via a web browser to connect to the WIFI router. Once configured, the module acquires an IP address and then I can communicate via TCP protocol. The module responds to the simple commands 1, 2, 3, 4 to switch between the antennas. TCP commands can be sent from a laptop or computer using a simple utility written in Python, for example. If using a mobile device, there are apps that send and receive TCP commands. But better yet, I went ahead and wrote an iPhone app that specifically pairs nicely with the antenna switch. Figure 2 shows a screen dump of the app (which should be available for free on the Apple app store under AntennaSwitch).

1

2

The final product

Figures 3a and 3b show the final PCB board and components. The finished board can be easily mounted in a metal box for safety and convenience. It only requires a 5 VDC small supply (250 ma). Figure 4 shows the schematic of the switch.

3

4

Final thoughts and future enhancements

I was impressed of the performance and flexibility that the ESP8266 brings. Its small and extremely powerful and if you are interested in the Internet of Things (IoT), this module will allow you to hit the ground running. Being so small and modular it allowed me to integrate the UHF connectors, the relays, the logic circuits and the WIFI module all in one board that is 3 ¼ by 5 inches and can be easily mounted on any box.

Next steps are

  • Increase the power handling to 1kW or more. The PCB board will have to be upgraded to handle this and I will need to find the right relays.
  • Build a 6×1 or even 8×1 switch. Although 2 of the 4×1 can be easily combined, I think a compact 8×1 would be really nice.
  • Foot massage (just kidding).

Finished kits of the Antenna Switch are available, email me for details.

Author details: Horacio Bouzas – KG5DTX

VHF-UHF RF Sniffer

F1YYZNLIE1HLISE.MEDIUM

by simpletronic @ instructables.com

This is a multi-chapter instructable. I will be describing the making of a short/medium range RF remote-control using the UHF 433Mhz frequency. It´s impossible to setup & adjust a RF transmit-receive link if you are not sure the transmitter is working properly.At 433MHz, your multimeter or even a regular oscilloscope are totally useless.

VHF-UHF RF Sniffer – [Link]

SiC/GaN Poised for Power

rcj_Yole_Power_Trasistors_SiC_GaN_1

by R. Colin Johnson @ eetimes.com:

PORTLAND, Ore.—Today Yole Development predicted that power transistors would radically shift from silicon wafers to silicon carbide (SiC) and gallium nitride (GaN) substrates—to achieve higher power in smaller spaces, according to its GaN and SiC Devices for Power Electronics Applications report.

One of the big drivers behind the shift is the electric vehicle (EV) and hybrid electric vehicle (HEV) industries, which Yole predicts will be majorly pushing the SiC technology to minimize the size of the power electronics using them.

SiC/GaN Poised for Power – [Link]

TOP PCB Companies