A simple way to read and write audio and video files in C using FFmpeg (part...
C is my favourite programming language and the one I use most often. However, I have tended to shy away from using it for quick one-off signal processing tasks where I needed to read or write audio or...
View ArticleA simple way to read and write audio and video files in C using FFmpeg (part...
In my previous post, I demonstrated how FFmpeg can be used to pipe raw audio samples in and out of a simple C program to or from media files such as WAV files (based on something similar for Python I...
View ArticleSimple example program for the PIC12F675 microcontroller
The PIC12F675 is a very inexpensive 8-bit microcontroller from Microchip that’s available in an 8-pin DIP package (i.e. it’s suitable for breadboard use). I’ve had a small tube of these on the shelf...
View ArticledsPIC30F Quadrature Encoder Interface (QEI) – Basic Example
This video shows a basic example of using the Quadrature Encoder Interface (QEI) on Microchip’s dsPIC30F4011 microcontroller. I expect that the same approach will work with other microcontrollers in...
View ArticleMinimum Viable Program for PIC12LF1572
Kevin Chubb (currently a final-year project student here in DIT) is designing a tiny robot using Microchip’s compact PIC12LF1572 microcontroller. It’s an interesting chip and Kevin’s doing great things...
View ArticleCan the PIC12F675 drive motors directly from its GPIO pins?
As I mentioned in my previous post, my project student Kevin Chubb is developing tiny ultra low cost robots using a PIC12F microcontroller. One of the things that’s great about PICs is that they can...
View Article€2 Robots in DIT
In this video, I chat with Kevin Chubb about his final-year project on ultra low-cost swarm robotics, here in DIT’s School of Electrical and Electronic Engineering. Kevin’s designing robots that can be...
View ArticleAn offcut from the Fraktalismus pattern factory
This animation, which I created by accident while trying to do something else, struck me as eye catching. This is the complete C code used to generate video frames as individual PNM image files: // //...
View ArticleH-bridge control example for Arduino Nano (ATmega328) – two phase-displaced...
This is the code: // // H-bridge control example for Arduino Nano (ATmega328) // Written by Ted Burke, 27-4-2018 // // 20 kHz square wave output on OC2 (pin D11) and OC2B (pin D3) // The phase...
View ArticleRonan Byrne’s ultra low-cost brain-computer interface
Over the years, I’ve dabbled a bit in the creation of a so-called brain-computer interface (BCI). These systems take various forms, but the basic idea is to use technology to transfer information from...
View ArticleHow to display USB webcam as live video on desktop using mplayer
mplayer -tv driver=v4l2:gain=1:width=1280:height=720:device=/dev/video1:fps=10:outfmt=rgb16 tv://
View ArticleSome RGB fractal doodles
Click on the animation to view full size gif. This is the code I used to generate the animation: // // fraktalismus modulo - written by Ted Burke 15-1-2019 // Compiled and tested on Xubuntu Linux...
View ArticleAirMouse – control mouse pointer in Linux using one switch or by blowing on...
Article under construction! To install xdotool: sudo apt install xdotool Bash script (save as “airmouse” and “chmod 755 airmouse” to make it executable): #!/bin/bash # Run these commands first in...
View ArticleClap detector circuit / AirSpell typing system
This circuit combines a simple audio amplifier (based on an LM358 opamp) with an Arduino Nano to facilitate the detection of clapping sounds or blowing on the microphone. This is my breadboard circuit:...
View Article€5 PPG – photoplethysmogram amplifier / Arduino circuit
The photoplethysmogram (PPG) is a signal that measures changes in blood volume in some part of the body (e.g. the fingertip) by shining light into the skin and detecting small changes in the level of...
View ArticleUsing the PHP command line web server to transfer files between devices on a...
When you install PHP, you get a simple built-in webserver as a bonus. This is very handy for testing web pages you’re writing, but I also sometimes use it as a simple way to transfer files between...
View ArticleTU Dubuntu – a customised live USB version of Xubuntu Linux 19.04 for TU Dublin
This post documents the steps I followed to create a customised version of the Xubuntu 19.04 live CD. I called the modified image “TU Dubuntu” (after my university, TU Dublin), but it’s really just...
View ArticleUsing Canon EOS 70D DSLR as a USB web cam in Xubuntu Linux 19.04
For a while now, I’ve been interested in using my Canon EOS 70D DSLR as a USB camera so that I can record (and potentially live stream) better quality tutorial videos. The quality of video from the 70D...
View Article