June 21st, 2008
I have created a DIP module to connect wirelessly via Bluetooth devices using the serial port. It can be a PC to a Bluetooth cellular phone or a microcontroller to a remote robot. Aside from that it can also be used as a remote I/O controller that can be interfaced with a relay board or solid state relays to operate wirelessly. The module’s description, sample projects using it and specifications are found here.
Posted in Hardware, Bluetooth, C, Software, Code | No Comments »
March 13th, 2008
I have created a page on this blog featuring a 24-Hour Digital Clock Using Glue Logic Gates. This is an 8 chip design using CMOS/TTL glue logic gates to make a 24-hour running clock. Made this for learning and fun. Click here here to view it.
Posted in Logic, Hardware, Schematic, General | No Comments »
February 25th, 2008
Parts for older Nokia phones are very cheap and readily available nowadays. I have been toying around Nokia 3310 LCD and used it for some of my projects as display. I have created C routines to use them easily and want to share it to everyone. The files are lcd3310.c and lcd3310.h. The LCD pinout, when looking at the back with the connectors on top starting from left to right, are VDD, CLK, DATA, D/C, CE, GND, VOUT and RESET.
Posted in LCD, C, Software, PIC, Code | No Comments »
January 15th, 2008
Whew! Two articles in a today. This is the second one I wrote today. But I won’t feel bad. This is a new tutorial, Baby Steps in PHP. This is for beginners and newbies and want to learn how to program in PHP
Posted in PHP, Software, Code | No Comments »
January 15th, 2008
I had just created a tutorial on how to connect your PDA to the internet via Bluetooth. The tutorial, Connecting your PDA to the Internet using Bluetooth, is accessible here on one of the pages of this blog.
Posted in Bluetooth, Software, General | No Comments »
January 8th, 2008
I have been developing Bluetooth software for some time. Currently, I am using CSR (Cambridge Silicon Radio) chipsets which are BC3 (Kalimba) and the BC5 (elvis). They are coded in C and with fairly easy sample apps for common BT profiles. These chips also incorporate a powerful DSP that can be used to decode or encode MP3, AAC or SBC or any audio processing use.
As of this moment, there is no C compiler yet for these DSP chips so I have been programming all in assembly. Tough! But DSP instruction set is algebraic and fairly easy to understand. But as the code gets longer, it is difficult to read and debug. So I have made these
Multi-Purpose Macros for BC3 / BC5 Kalimba Processor. I posted it here so everybody can use it and may help others.
Posted in Bluetooth, Kalimba, DSP, ASM, Software | No Comments »
January 3rd, 2008
Just added a new forum to this blog site. It can be accessed is located here or on the sidebar. When you have questions or comments you could post it on the forum. I will try to answer any if I can.
Posted in Welcome, General | No Comments »
December 29th, 2007
This is another routine that I want to share. This is the Interrupt Driven Serial Routines with Circular FIFO for PIC Micro. This routine uses the PIC’s hardware USART. Since this is unbuffered, so I added a software FIFO. The FIFO management is quite lean and fast but required the size of the buffer to be power of 2 (2^x). This is because FIFO roll-over uses bit-wise AND of (buffer_size - 1). This reduces code size due to that no more conditionals to test pointers overflowing the buffer.
Posted in C, Software, PIC, Code | No Comments »
December 28th, 2007
Most engineers/geeks should already know about MATLAB. It used for numerical analysis and processing. Poor Cebuano geeks, like me, cannot afford for a legal license to use it. I am into DSP (Digital Signal Processing) and I need it to test my algorithms first before burning it into the actual hardware to shorten the debug-cycle time. So I have choosen SCILAB, a free open-source MATLAB alternative. There are other alternatives such as OCTAVE but only works in CYGWIN or LINUX. I settle for SCILAB because I like its editor and GUI viewer. I am already proficient in MATLAB so moving to SCILAB is a breeze. SCILAB has few quirks but a quick google solved these.
So, I have developed this Noise Cancelling DSP Algorithm using SCILAB. This algorithm was used on a DSP add-on to a CSR BC3 Multimedia Bluetooth Processor for handsfree car kit application. This uses spectral subtraction to cancel the noise.
The process starts by getting 256 samples of the input signal and overlapping every 64 samples at a time. This is about 31ms for 8000 kHz sampling. The samples are then passed through a Hanning Window to …
Read more…
Posted in MATLAB, Kalimba, SCILAB, DSP, Software, Code | No Comments »
December 27th, 2007
The GPS Car Sped and Position Logger/Monitor is a full featured project that is based on NXP/Philips LPC-2148 ARM7 processor. I had to quickly make this for my land trip from Cebu to Bacolod and back last December of 2006.
I used a ready made hardware, the Olimex LPC2148 PCB, that was available at that moment. The board is then wired to a GPS receiver with the 3V supply and the GPS TX pin connected to one of the ARMs serial port.
The software is using a ported FreeRTOS for LPC2148 as its real-time operating system. And incorporates ChanFS file system for log data storage to a FAT16 formatted SD/MMC card.
It also includes code from LPCUSB and has a USB serial port emulation when plugged to the computer to monitor NMEA sentences on the PC. Aside from that, it can be booted up as a USB mass storage device to retrieve the logs without removing the SD/MMC card from the board’s slot.
The code can be compiled using WinArm GCC.
Posted in ARM, C, Software, Code | No Comments »