Did I just increase DS1022CD bandwidth four times?

Probably you are already familiar with the famous DS1052E hack where guys were able to double and even triple bandwidth. It happens that on my table is DS1022CD scope with 25MHz analog bandwidth. And this hack doesn’t apply to my model. We all know that the same series Rigol oscilloscope models tend to have identical hardware, whether 25MHz, 50MHz or 100MHz analog bandwidth. Of course, the sampling rate (400MHz) stays the same. So it all lies in the software. I felt that someone would figure out how to do this with this pretty old oscilloscope. And here it is – a hackaday pointed to a piece of great news – a simple way of changing the model from DS1022CD to DS1102CD, which converts analog bandwidth from 25MHz to 100MHz. This is quite a step without spending a penny. Andreas Schuler (aka Krater) shared a simple method of doing this without using any serial interfaces and firmware updates. By following his step by step guide, you can do this as follows:

Continue reading

Diodes – how to choose one

Diodes are semiconductor devices commonly used for many purposes. In general, you can imagine a diode to be a valve that passes current in one direction and stops it from flowing back. The first thing that comes to mind – this might be a good choice for reverse voltage protection. In reality, things are a bit different. First of all, diodes aren’t perfect devices. They have a so-called forward voltage drop, which is about 0.7V for standard diodes. If inserted diode into the power supply, say 5V, the after protection you will get 4.3V where part of voltage is lost in the diode. If you want to go this way, choose the Schottky diode instead, which has a smaller forward voltage drop. A forward voltage drop occurs when the diode is forward biased what means current flow from anode to the cathode.

Continue reading

The impact of touch screen on gaming

Touch screen technology has been on the market for a while now – specifically for gaming devices – although it’s only in the last 10 years that this translated to mobile technology. It has boosted online gaming numbers because of the ease of use on mobile phones, but how exactly has touch screen technology improved? The primary type of touch screen currently used in mobile technology (especially the iPhone) is a capacitive screen; these work with anything that holds an electrical charge – including human skin. They’re made up of materials that hold charges in an electrostatic grid of either a surface or projective screen. Resistive screens are analog devices that create a connection between two flexible resistive screens. They use your finger’s pressure to create a change in the flow of electricity; when a finger is placed on the mobile, a voltage drop is registered that allows the screen to work.

Continue reading

Testing LCD keypad Shield for Arduino

arduino lcd keypad shield

Recently I’ve got an Arduino LCD keypad shield. I haven’t decided yet where it will be used. But why not plug it into an Arduino board and see it working. The shield was initially introduced by DFRobot, who has some cool open-source stuff, including robotics-related. This LCD keypad shield is a cheap and convenient solution for adding 2×16 LCD and five push buttons (+1 reset) to Arduino design. LCD here is interfaced using 4-bit mode and occupies 4 (D4), 5 (D5), 6(D6), 7(D7), 8(RS), 9(E), and ten digital pins. Pin 10 is used to control the LCD backlight through the transistor key. All five buttons are connected to a single Analog pin 0 using a resistor-based voltage divider. This lets us keep other pins for general use. The shield is designed to work with 5V based boards.

Continue reading

Thoughts on interfacing piezo vibration sensor

piezo vibration sensor test with oscilloscope

Some time ago, I purchased a MiniSense 100 Vibration sensor. I probably had some project in mind, but it happened that it dived into drawer among other “to do” things.  I thought it’s time to try a few things with it. Piezo sensor MiniSense 100 is very sensitive with a pretty good frequency response and is linear (±1%). As you can see, high sensitivity is achieved with a 0.3-gram inertial mass at the end of the film. As there is a hole in the mass, you probably can screw in an additional mass and increase sensitivity even further. Probably there is no need to explain where such a sensor would be helpful. These could be vibration/ motion sensors, impact sensors, and other areas where motion and acceleration are involved. Usually, sensitivity is 1V/g. Where g is standard gravity or standard acceleration due to free fall and is equal to 9.80665m/s2. As a mechanical device, it also has a resonant frequency of 75Hz. At this point, sensitivity reaches 5V/g.

Continue reading

Understanding and interfacing LDR – light dependent resistors

light dependent resistor

LDR (Light Dependent Resistor) is a simple, cheap electronic device. This is a resistor in which resistance varies depending on light intensity. You’ve probably seen typical LDR in some projects where light intensity must be considered. They can activate light switches and alarms, adjust display brightness, and more. Light-dependent resistors can be of different types. They vary in light-sensitive material used. Visible spectrum LDR is made using Cadmium Sulphide (CdS) or Cadmium Selenide (CdSe). This material is sensitive to the wavelength range from 400 – 850nm. For the near-infrared spectrum (1μm – 3μm), there are PbS or PbSe materials used. For the deeper infrared range (3μm – 1000μm), there are InSb and InAs.

Continue reading

Drive DC motor using Arduino motor shield

arduino motor shield with dc motor

This is a continuation of the previous post where we have tried to run a servo using an Arduino motor shield. This was a simple task to do with the Arduino Servo library. Today we will push things a bit forward and drive the DC motor using the same motor shield. This motor shield can run small DC motors that require less than 0.6A of current and operating voltage is less than 25V. In my drawer, I found a small 12V motor that will fit this demo. Before we begin programming, we need to connect the motor to the Board. We are going to use the M1 connector.: Since the motor requires a 12V power supply, we are going to use an external power supply. It can be connected to the External power screw terminal. Be sure to remove the jumper as well.

Continue reading

Testing Arduino motor shield with servo motor

Arduino motor shield

Recently I’ve got an Arduino motor shield. It is based on ladyada first mshield circuit. It uses two famous L293D quadruple half-H divers. It is a cheap and reliable shield to drive various motors. These can be two hobby servo motors, four bidirectional DC motors, or 2 (unipolar or bipolar) stepper motors. The load current is limited to L293D chips. The specification says that each channel can provide a constant 0.6A and peak 1.2A. There is also a thermal shutdown to prevent the circuit from damaging. Motors can be externally powered using a voltage range from 4.5V to 36V. Each motor control channel is pulled down with a resistor to disable any motor at power-up. In this post, we are going to try servo motor control. There are a couple of connectors on the motor shield where you can connect two servo motors using a standard 3 wire connector (GND, VCC, and PWM).

Continue reading

How to calibrate touch screen display on STM32 board

stm32_touch_screen_interface

Touch screen displays are a common choice in many microcontroller projects. Touch capability won’t take additional space – it sits on top of LCD to directly interact with objects you see on screen. To get this working, touch screen coordinates must match screen coordinates. So could be sure when you touch the point on screen you point where you want. The touch screen is an analog device. It is made of two flexible resistive sheets with a gap between them. When the screen is touched, a connection between sheets is made, and thus a measurement of voltage drop is taken. Normally resistive touch screen has a four-wire configuration. And normally, a specialized IC is used to take measurements and send data to MCU for processing. In our case, we are dealing with the ADS7843 touch screen controller, but in other systems, this works the pretty the same way. The fact is that the touch screen controller reads screen ADC values and passes them via the SPI interface. So all you get is raw ADC readings that are not lined up with LCD coordinates. As you know, LCD screens can be of different resolutions, different orientations, so data gathered from resistive…

Continue reading