Welcome to:
www.RomanBlack.com


[ Software ] [ Designs ] [ Robot/CNC ] [ Math ] [ Cool ] [ Products ] [ Electronics ] [ Other ] [ History ] [ Hippyware License ]
Last Updated 21st May 2013



The secret to minimalist design
is to reduce the parts to what MUST be there
to get the task done.
But before that you reduce the task itself...




News!

21st May 2013; Detecting sound location using "speed of sound" sonic ranging. An experiment showing that it's possible to use cheap electret microphones and cheap hobby hardware to detect sonic events on a small scale. This could be used to make "tap detecting" keyboard control surfaces etc.

24th April 2013; Cheap RF modules made easy! I show how to use and test cheap Ebay 433MHz and 315MHz RF modules for data communications between PIC-PIC and PIC-PC USB. Shows how to use the PIC USARTS directly for ease of use, and introduces a better data protocol that is many times faster.

14th April 2013; DC motor at very precise "clockwork" like speed. A cheap PIC and any old DC motor can be made to move at a very precise slow speed for applications like clock mechanisms, telescope tracking, solar tracking etc.

15th Jan 2013; DIY SMD microscope for $40 Using an old VGA computer monitor and a few ebay goodies I whipped up a self-contained SMD inspection microscope.

15th Sept 2012; PIC code to make high resolution decimal frequencies using a PIC 16F628A (or any PIC16 or PIC18), this is some a very simple code that makes any decimal frequency from 0.00001 Hz to 50000.00000 Hz, in 0.00001 Hz steps, and using any old xtal frequency you have handy!

28th Aug 2012; A hardware random number generator using just a PIC 16F628A, that is cheap to build and produces excellent random numbers via measuring the chaos that exists within the AC mains waveform. Also a new category on my web page - Encryption and random number generators.

12th Mar 2012; Kits on sale now for my high-res CapMeter! A gentleman has produced kits for my CapMeter design, please see the link.

Most of my work on this page is Hippyware unless marked Copyright or otherwise.



Software

BTc PICsound One-bit sound recording/playback on a PIC One of my best works, this is PC software that displays a 8-bit mono sound file (.WAV file) and ENCODES it into a 1-bit bitstream! The bitstream can be played back very simply on any PIC or other micro with one digital output pin and one resistor and capacitor (RC network). Now updated to v3.0 BTc Encoder manages Sound Library files, and can export .BTL format to be loaded direct into the TalkBotBrain cheap sound playback hardware.

SuperFind 2.0 (for Windows) A super-fast file finder program, SuperFind is a very handy tool to find any file or quantity of files on your PC instantly.

HexCon 1.0 A programmers helper, HexCon is a small fast tool to convert between Decimal-Hex-Binary. It can also display PC keyboard codes.

ToMetric 1.0 (for Dos) A fast and accurate imperial-metric converter for Gerber files, ToMetric is suitable for CAD and PCB Gerber files.

EE-Draw 1.0 for Dos EEDraw is software that lets you draw circuit diagrams, flowcharts etc with the mouse, but the picture is actually made of TEXT symbols and can be saved as a normal text file! This is ideal for adding diagrams inside your text emails and allows the use of diagrams on mailing lists where attachments are not allowed.

A Binary Clock for Windows! Here is a working binary clock that runs under Windows and uses my Black-Standard for easy-readable binary clocks. I have also provided my source code for Borland C++ Builder in case you want to make your own Windows binary clock.

WavMak Waveform Maker This is software that reads numerical data from a text file and creates a wave file of any specialised waveform shape. Useful for audio testing.



Reviews

13th Oct 2011. MikroElectronica SmartGLCD PIC module v1 review Feb 2011. This module contains a large PIC 18F and a big 240x128 pixel GLCD with touchpanel. Also I did some tutorials and projects; SmartGLCD tutorials.
NEW for 13th Oct; I review the PIC SmartGLCD (new version v1.5)

MikroElectronica BIGPIC6 PIC development board review. This development board works with the big 80-pin 5v PICs like 18F8520. And of course I did some nice BIGPIC6 RS232 projects.

MikroElectronica EasyPIC6 PIC development board review. Finally my new EasyPIC6 arrives! I review it and compare to my trusty old EasyPIC4. I also did some fun EasyPIC6 projects.

Book review; 'PIC Microcontrollers' - Bert van Dam I review the book 'PIC Microntrollers 50 Projects for Beginners and Experts' by Bert van Dam.



Alternative Energy

The Micro Grid-Tie project My design for absolute minimalist topology of a half-wave grid-tie inverter to feed power from a small solar system back into the AC mains grid.



Robot / CNC

Measuring Stepper Motors Apparatus that can be quickly put together to measure the torque and phase angle of stepper motors.

Good CNC Designs I have found Here are a few examples of well-designed CNC setups, some commercial, some Home CNC. I have commented on the designs.



Encryption and random number generators

6th Dec 2010. "The Black RNG Engine" A software algorithm I developed to generate highly entropic data (random numbers) and is simple enough to be implemented on a 8bit PIC micro. For use in encryption and probability (predictive) systems. Page updated Dec 2010 with a lot of new data and a re-write.

6th Dec 2010. Black Random Number Generator This is Windows software to generate 1mbyte of high entropy data under your control. It generates random data using my Black RNG algorithm seen above.

28th Aug 2012. HardwareRNG1 A hardware random number generator using just a PIC 16F628A, that is cheap to build and produces excellent random numbers via measuring the chaos that exists within the AC mains waveform. RNG data is output via serial at 9600 baud.

6th Dec 2010. PrimeFinder 1.0 Another helper tool for programmers and math guys, PrimeFinder lets you instantly find a prime number closest to the number you enter, or tells you if your number is a prime number. It supports all decimal numbers up to 4.29 billion and is very fast.

BMP Hider This is software that can "hide" any file within a standard Bitmap image. The hidden file cannot be seen and can only be extracted with this program.



Algorithm - Math - Theory

Updated - 21st Feb 2011. Zero-error 1 second timer algorithm for PIC. Based on Bresenham's algorithm, my implementation will generate a 1 second (or other) timer period from ANY frequency crystal or ANY frequency interrupt. An obvious use is to add a one-second clock pulse to an existing design that has an "imperfect" crystal like 4MHz etc. PIC source code supplied. NEW 21st Nov 2009 - Added ZEZJ This is a Zero Error Zero Jitter algorithm, it produces an exact xtal-locked period from any xtal and any period value, just change the one easy PERIOD constant. NEW 21st Feb 2011 - Added DTMF sine generating example

14th April 2013. DC motor at very precise "clockwork" like speed. A cheap PIC and any old DC motor can be made to move at a very precise slow speed for applications like clock mechanisms, telescope tracking, solar tracking etc.

The BTc 1-bit sound encoding algorithm and variants. A re-write of my BTc Binary Time Constant sound encoding/compression algorithm first released in 2001/2002.

5th Mar 2011. "The Black DTMF decoding algorithm" A couple of systems I developed for decoding DTMF "touchtone" codes on a very small cheap PIC. The systems use a combination of period measuring and spectrum analysis and pattern recognition decoding. It sounds complex but ended up being quite simple and fast.

27th Apr 2011. "BlackNet" serial network protocol This is a simple way to have a large number of serial devices on a single bus wire, suitable for a home automation network etc.

16th Jan 2011. Integer Degree Algorithm An algorithm I developed to generate a result in integer degrees 0-360 from any +/- XY vector, fast and with no trig math needed. It can be used to generate a "heading" from an XY move of a robot or CNC machine, or to generate a tilt angle in degrees from an XY accelerometer.

PIC-thread, multi-thread "parallel" processing using PICs. I create some simple systems to do multi-thread type projects (a form of parallel processing) in firmware just using a normal PIC microcontroller. There are code examples and some simple PIC "multi-thread" projects.

"The Black-Standard" for binary clocks. This is my standard for easily viewable binary clocks. An adaptation of pure binary display in hours/quarters/minutes in a form more easily utilised as a practical clock display.



Cool things I have made

6th Dec 2010. Click HERE to see them... Here are some pictures and brief descriptions of stuff I have made. (additions 29th Oct 2010)

15th Jan 2013. DIY SMD microscope for $40 Using an old VGA computer monitor and a few ebay goodies I whipped up a self-contained SMD inspection microscope for the workbench.



Electronics

www.MikroE.com Many of my electronics and PIC projects are developed on these great hardware tools and compilers!

LiniStepper - stepper motor microstep driver board Based on a microstep driver I created for my own use, this is now an open-source project; circuit, PCB and full PIC software. A very high performance stepper motor driver at a great price.

(addition) High efficiency 2-transistor SMPS Black regulator A cheap simple circuit that can replace 3-pin voltage regulators (like the 7805) and gives SMPS efficiency. Can be used as a high-efficiency 12v to 5v converter or 24v to 12v converter. NEW for August 2009; Added a page of high-effiency SMPS LED drivers for high-power white LEDs! NEW for Jan 2010; Using just a PIC as a complete SMPS! NEW for Dec 2011; Added a 3-transistor negative voltage generator which includes voltage and current limiting.

My Shift1 Protocol - using one PIC pin to drive a latched shift register This is a system using timed pulse-length to send 7 bits to a shift register AND also to latch the final 7bit value to the register outputs. This means that you only need 1 PIC pin to control an entire text LCD and it's backlight. I also include some Shift1-LCD Projects like a LCD clock-timer, an RC servo controller and a solar battery charge controller. Plus more projects to come soon.

9th Mar 2011. High-accuracy timing using a PIC This is an expansion of my popular zero-error 1 second timing algorithms page with more of a focus on building actual hardware that does timing at high resolutions and accuracies. NEW for Sept 2012; PIC source code to generate accurate decimal frequencies from 0.00001 Hz to 50000.00000 Hz in 0.00001 Hz steps, from ANY value xtal!

27th Jun 2011. High-resolution cap meter using PIC 16F628 This is a digital capacitance meter using a 16x2 LCD that gives a number of advantages over other PIC digital cap meters. It only uses one cheap PIC (does not need an oscillator IC) and shows the capacitance value to a lot of digits resolution, handy for variable capacitors and "pico-cap" projects like capacitive touch buttons etc. This is an easy to build project with high performance.

21st May 2013. Detecting sound location using "speed of sound" sonic ranging. An experiment showing that it's possible to use cheap electret microphones and cheap hobby hardware to detect sonic events on a small scale. This could be used to make "tap detecting" keyboard control surfaces etc.

24th Apr 2013. Cheap RF modules made easy! I show how to use and test cheap Ebay 433MHz and 315MHz RF modules for data communications between PIC-PIC and PIC-PC USB. Shows how to use the PIC USARTS directly for ease of use, and introduces a better data protocol that is many times faster.

25th Dec 2011. A xtal-based 5Hz-20kHz audio sine generator with just a PIC! This uses a highly stable DDS system to make nice quality sine waves as an audio sine signal generator. All it needs is a cheap 18pin PIC 18F1320 and a couple of external parts, and it is a complete high-performance xtal-locked sinewave generator. A great PIC project for a beginner and very useful!

20th Jun 2011. 1kHz precision sine generator using PIC This is a complete open-source project that generates a precise xtal-based 1000.000 Hz frequency sinewave with low THD. It uses a cheap PIC 16F628 or can be used on any PIC with a CCP1(PWM) module.

9th Feb 2011. Some projects and tutorials for the SMartGLCD PIC module. Here are some tutorials and projects using the cool SmartGLCD PIC Module that has an on-board PIC and a big 240x128 graphics LCD and a TouchPanel. NEW 21st Feb 2011, added a DTMF project. Also see my SmartGLCD Review.

I play with the Osram optical tilt sensor! This tiny device is a modern version of the old mercury tilt switch, or gravity tilt sensor. But this one uses an internal inrared beam and tiny ball.

Some PIC projects you can do on the BIGPIC6 development board!
1. RS232 timer - shows exact baudrate of a device.
2. RS232 converter - bidirectional baudrate converter with led bargraph.
3. RS232 converter with GLCD - and 62 bar bargraph.
4. RS232 digital storage 'Scope - up to 2 Megasample / second with GLCD and touchpanel.

Some PIC projects you can do on the EasyPIC6 development board!
1. Using the EasyPIC6 16F887 as a frequency/RPM meter.
2. Using the EasyPIC6 16F887 as a 10bit PWM signal generator.
3. My minimalist C library to use the MCP port expander IC and EasyPIC6 COG text LCD!
4. New! VGA monitor driven direct from PIC 18F452 at 10 Megapixels / second!
5. New! Serial digital storage 'Scope, displays RS232 waveforms on GLCD.

Bitbang serial data to/from the PC with no hardware needed! Here is code to send and receive serial data with a PC serial port, using only 2 resistors and a serial plug. It does not require a PIC with a USART and can be used on the cheapest and smallest PICs. This also has a full project using the Sharp GP2 IR distance sensor! The sensor distance is converted to actual cm and transmitted to PC serial port every 2 seconds. It uses my own code for converting the exponential output of the GP2 sensor to linear distance in cm.

Using a mini TrackBall as a controller! I found a source of very cheap miniature trackballs, so I hacked the trackball and used it to control X and Y values. First project is a TrackBall controlled RGB LED, to control colour and brightness.

12 digit LED display using NO PARTS Driving a 12-digit 7-segment LED "calculator" type display directly from one PIC using NO resistors and NO other chips. I include PCB design suitable for toner transfer and PIC source code for a clock, stopwatch, and a serial controlled 12-digit display.

My regulated psu "Gainclone" amp I built a high performance "Gainclone" hifi amp with full regulated power supply in a great rugged old 1980's power amp rack case.

The MIDI-Bash project Some very simple, easy to build MIDI drum controllers using PIC micros. Hit the pads and they send MIDI messages to any standard MIDI sound module to make your own electronic drums etc. Now with photos and full PIC source code!

The MIDI-Bloop project Some more simple, easy to build MIDI "sound-source" devices using PIC micros. When MIDI note commands are received, these PIC "synths" play musical notes. Partially finished.

Kits to build Black Standard Binary Clocks! Clocks no longer for sale, but I have provided free source code in PIC assembler and (new for 16 June 2009) now in C source code too.

Make a OCXO (xtal oven) for $1 Using just one transistor and a cheap NTC thermistor this little circuit keeps a crystal at a regulated temperature so it can be used to drive a high accuracy real-time clock.

DC Motor Encoder - measures motor speed This one-transistor design can provide a simple speed signal from any cheap DC motor by sensing the commutator ripple as the motor turns.

DC Motor Over-Current Sensor This cheap reliable one-transistor circuit activates a digital output and LED when the Motor (or other device) draws current that exceeds the (adjustable) limit.

12-key Keypad to PIC using just 3 pins! Needs only 7 resistors, 3 caps and some PIC code and allows connection of a telephone style 12-key keypad to a PIC with only 3 PIC pins needed. Ideal for making a remote control with the cheapest PICs.

$10 Eprom Eraser - simple 4watt fluoro tube driver Suitable for any 4 watt (5") fluorescent tube and 240v AC mains, this is a very cheap and simple way to light up the tube.

Self (power) switch a PIC or other micro This is a really cheap and SIMPLE way to turn ON a PIC or other micro with one button push, then the PIC can turn itself OFF when the task is completed and in the off state the circuit uses NO POWER. Ideal for battery operated gizmos like remotes etc.

Simple +5v to +13v converter A simple 2 transistor circuit generates +13.3v from a +5v supply. Useful for hobby PIC programmers that need +13v for MCLR Vp. May also be useful to drive old memory chips that need +5v and +12v supplies.

2-Speed clock for PIC or other micro This idea allows a PIC or other micro to switch between 2 clock speeds using one of it's digital output pins. The PIC runs at a very low speed to conserve power and instantly speeds up when needed to perform tasks.



Other People's Work

PCBTemp 1.0 (for Windows) This handy freeware calculator from UltraCAD www.ultracad.com allows you to calc the temp of a PCB track for a given current, and I show you a way to calculate and create low-ohms resistors by using tracks on the PCB itself.

Unit Converter (for Windows) This handy freeware calculator from QuadLock www.quadlock.com converts between most common standards. Need to convert oz/in to kg/cm? Or convert between calories-hp-joules-watts? Great little program.



About Me

Mar 2009 Resume page1 completed - to 1990ish My Resume / Skills / About me... Who the hell is Roman Black??



Hippyware License;

  • Use my software or info for free if you like, even corporate
  • Pay me $10 (or more) if you choose
  • Please get my permission before publishing or reproducing any of my work
  • Please respect a decent Copyright ethic and mention me if you use my work
  • Be excellent to each other!


    The problem with works of great vision
    is that they run the risk
    of being seen as gobbledygook
    by those without equal vision



    Counter since 16 Feb 2008 - Supplied by Webcounter


    PIC Micro WebRing