Friday, June 27, 2014

Simple RdRand base random number generator library

RDRAND is an instruction to return random number from new Intel CPUs. This is NIST SP 800-90A compliant random number generator and now this instruction is a part of IA-32/IA-64 instruction sets. RdRand instruction is available from 3rd generation Intel Core i5 and Core i7 processors.

RdRandLib is lightweight DLL to generate random numbers based on RdRand instruction. This library contain signal function to generate one or many random numbers and sample codes are available for C/C++, Delphi, Lazarus and C# languages. 

RdRandLib source codes and sample codes are available at http://github.com/dilshan/rdrandlib. Compiled version of DLL is available at http://github.com/dilshan/rdrandlib/releases page.

Tuesday, June 17, 2014

Analog AC line monitoring box

Analog AC line monitoring box

This is a quick post about our newly constructed AC line monitoring unit. This unit consists with analog AC voltmeter, frequency meter and ammeter. Both voltmeter and frequency meter are 2.5 × 2.5 inch in size and ammeter is 3.5 × 3.5 inch in size. All these panel meters are commonly available in market. Ammeter in this assembly is connected to the mains line through 60A – 5A current transformer and all the other panel meters are coupled to the mains line through 100mA quick blow fuses. Wiring diagram of this unit is illustrated in below.

Wiring diagram of analog AC line monitoring box

Enclosure of this assembly is made with medium density plywood sheets. All the internal mains line of this unit is wired using 2 × 12SWG copper wires.

We construct this unit to monitor the AC line status continuously and also to get some line measurements accurately (from known reference level). In our version of line monitor all the AC line connectors can withstand maximum of 20A because we don't have any idea / plans to do our experiments beyond 20A.

Sunday, June 8, 2014

Digital audio amplifier with PLL synthesized FM radio

This is high quality stereo digital audio amplifier with PLL synthesized FM radio receiver. Some of the high level specifications of this receiver are listed in below:

  • Audio output power: 4W + 4W (with 8ohm speakers)
  • Input sources: FM and 3 external stereo line inputs
  • FM frequency range: 88.00MHz – 108.9MHz
  • Supply voltage: 12V – 15V (2A current source is recommended)
  • Tone control options: Bass, Treble and Loudness control
  • Bass / Treble boost: 14dB
  • Bass / Treble cut: 14dB
  • Station memory: Preset 10 FM radio stations
  • FM tune options: Auto and Manual with 25 kHz steps
Key components of this audio system are ATmega32A - 8bit microcontroller, TT502 (TEA5767) stereo FM radio module, PT2314 audio processor and μPC2002 audio power amplifier. This system is design to work with 12V - 15V (2A) DC power source and KA7632 multi-output regulator is used to manage power requirements to the above mentioned components.

Prototype version of digital audio amplifier

User interface of this system consist with 10 push buttons and 16 × 2 character LCD module. All the analog components of this receiver (including power supply) are controlled by ATmega32A microcontroller.

To get the best audio experience we recommend to couple this system with 8Ω - 8 inches (or higher) full range speaker system. In our prototyping stages we try this system on breadboards and hand-made PCB, and get equivalent results.

This project is an open source hardware project and all the contents are available to download at elect.wikispaces.com. All the source codes and designs in this project are release under the terms of MIT license.