Turn-key PCB assembly services in prototype quantities or low-volume to mid-volume production runs

PIC16F628A timer for UV exposure box

Using UV exposure technology is common way of building PCB at home. If you tried this, you probably know that exposure timing is very important to get precise image on photoresist. Overexposure or underexposure always lead to failure. So it is best to leave timing for timer. If you built your own UV box, then you should also build a timer. Diyfan suggests simple PIC16F628A based timer project. It is really simple – 2×16 LCD displays time and status. Three push buttons allows to select time, start timer and stop timer. It also has speaker to play sound alarm when time runs out. Circuit simply send signal to a pin which can be connected to relay of your choice which then controls the lamps. Of course it can be used for other purposes including motor drive for some time, water sprinkler and other. Continue reading

Driving LED matrix with single PIC16F688

This project is based on interfacing an 11×10 matrix of LED’s, i.e 110 LED’s with a PIC microcontroller which has only 11 pins. These are quite a number of LED’s to be interfaced. The easiest solution is to use charlieplexing multiplexing techniques, but the problem with charlieplexing is that for any two arbitrary LEDs, only one may be lit at a time. However certain combination of LED’s can be lit together but not all the combinations exist. The author doesn’t used charlieplexing but instead scanned every leds one by one and using persistence of vision he lighted up the leds, but also making sure that not all leds are lighted together. It seems that the author was little confused as to which PIC he has to use. Since one of them can be run at higher frequency, interrupts were easier to program, but the other PIC had twice the ram that the other one. This allows him to double-buffer the screen, providing a rather cool set of APIs to the drawing code. For those interested, the code is available on… Continue reading

Drive Stepper Motor Using USB

We all know how complicated it’s to run stepper motor using a microcontroller without any use of external libraries. This project allows you to control a stepper motor using a simple USB interface. They have use PIC18F4550 microcontroller which has an in built USB (USB 2.0) functionality which allows to connect with any computer with a USB port and Windows OS. The USB is made to run at full speed of 12Mbps, however it can also be run in low speed of just 1.2Mbps. The whole setup is very cheap to build. The only thing that would add cost is the stepper motor which itself will be very costly then the entire project setup.The stepper motor used here is a 5 wire Stepper motor (M35SP-8) which is going to be operated by an application written in C#, (visual studio) which will communicate with the microcontroller board via USB. Also, you can use any other stepper motor but some numeric value has to be changed in the code since different motor will have different step size. The entire code including the… Continue reading

Adding MIDI interface to drums

When you want to do electronic music editing and still have ability to play it in using real instruments – MIDi interface is great choice. Not all instruments have MIDi interface, so instead of looking for commercial solution, why not to try build one by yourself. Spic0m have put together a small PIC16C84 based circuit that picks drum signals and transmits them over MIDI. Input is made very simple – piezo transducers on port pins RB0 through RB7. Software simply transmits equivalent note to get required drum sound. Due to its simplicity there are few limitations like fixed channels, fixed volume and of course the need sound module which would synthesize drum sounds. Either way a PC software can deal with all those problems. If you need different parameters, you can make changes to firmware. Continue reading

Controlling webcam when you are not home

Webcam may be the cheapest way of monitoring your home while you are out. All you need is to leave your PC connected with camera so you could connect to it using remote connection software like VNC or Teamviewer. Ruijc wanted to look after his cat using this technique, but found out that steady camera doesn’t cover all the areas of the room, so he started a project where he would be able to control camera tilt and rotation remotely. He built a simple PIC16F88 microcontroller based circuit which would drive two servo motors. Motors simply tilt and rotate camera to point at any spot of the room. Additionally he added a transistor driven LED lamp, which also can be turned on when there is dark in room. Device is connected to PC using RS232 interface. He wrote a simple VB based software which allows controlling camera position, switch LED and even see camera image. Since this is not web based access, you need to connect to computer remotely to see whats going on. Anyway this is really simple solution… Continue reading

Numitron display based digital clock

I bet you like Nixie clocks and probably wouldn’t mind to have one on your table. Anyway, Nixie displays require relatively high voltage to light segments. But if you don’t want to generate higher voltages but rather stay with 5V then you should consider numitron displays. These vacuum tube displays light up from like 5V. Pinomelean purchased several of IV-9 displays and wanted to build very simple digital clock. Instead of making full number display he used single digit to tell time. The method is pretty simple – it displays hours and minutes one by one. Four additional LEDs allow easy tracking of current digit displayed. Clock is driven by PIC16F84A microcontroller which is clocked at 4MHz. Using one digit display saves space and allows to design small device. For basic time monitoring this is more than enough.   Continue reading