Alastair Barber | Alastair Barber
A Teensy/Arduino AD9834 Based WSPR Transmitter
The Weak Signal Propagation Reporting (WSPR) protocol is designed to allow for radio propagation conditions to be measured across different frequencies and times. It is a slow speed digital mode, and there exists a network of thousands of receiving stations worldwide reporting the identity of received stations, along with their locations, to a central server. Whilst there are applications of this in the field of propagation condition reporting, the fact that there are many receivers always available and logging received signals in real-time, and that the protocol is slow speed and simple to implement, coupled with the fact that signals can typically propagate huge distances, makes this an exciting protocol to build your own transmitters for and see impressive results immediately.
Creating PWL Files For LTSpice for PWM Signals
Here is a very simple tool that can be used to simulate producing sine waves from PWM pulses and an appropriate filter in LTSpice. It can be downloaded and built or run online…
Simple WebAssembly App From The Ground Up
I decided to try and learn about WebAssembly from the ground up by building the (very simple) C++ PWL file generator for the web using WebAssembly. I spent some time learning about how WebAssembly is implemented and finding out what is needed to get the program to run. Here are some notes from this process. It is intended as a bird’s eye overview of the concepts, there are links here to much more thorough and in-depth documentation. Of course this is complete overkill for this kind of utility - and conversely for anything more complicated you will appreciate the tooling available in Emscripten or similar rather than figuring it all out manually, as this article does…
Meet Me Half Way
This is a fun website that I recently put together for a hackathon run by Amadeus. I’ve not created anything for the web in ages so this was good fun to put together, and try and figure out this modern JavaScript thing :)
The backend is written in Python 3 using Flask and runs on a fun mix of Amazon Lambda, S3 and the excellent Python Anywhere. It’s something that I’m keen on developing - one of the most interesting things I’ve found is the amount of data that can be retrieved from a simple flight query that you would need to take into account: Things such as operating vs. marketing Airlines, Routing, Stopovers, Pricing Rules etc etc. I found that to make this app though I was only scratching the surface of what could be done with all this information and throwing a lot of valuable data away.
VFX Pipeline Stats
Update: Check out the FxGuide DigiPro Report
On the 23rd of July, I’ll be presenting a paper at the Digital Production Symposium (DigiPro) in Anaheim called Camera Tracking in Visual Effects, An Industry Perspective of Structure from Motion (Free Download).
The overall aim is to examine why, when there’s so much research being done in automatic camera tracking in the computer vision community, we in VFX spend so much time and human effort figuring out camera movement, even with access to the latest tools, equipment and research.
Inferring Changes in Camera Intrinsics from Motion Blur
I did this work as an earlier part of my EngD and it’s written up in the Elsevier Computers And Graphics Journal (free preprint version). The idea came about from an earlier work
by Klein & Drummond who used motion blur to produce a single frame visual gryroscope. We had a go at extending this to see if you could accurately
determine changes in focal length from motion blur.
Using JASIOHost
JASIOHost is based upon the observer model of software design. In order to successfully gather audio data from an Audio Input – one must write a class that is able to handle the data returned – in a similar fashion to how you may handle UI events
DIY Multitouch Table
For my final year project, I had to design and code a digital audio mixing program, with an interface as a multi-touch table. Although I had access to some (very good) FTIR (Frustrated Total Internal Reflection) ones in the lab at my university, I thought it’d be cool to try and build one myself over the winter holiday. Here are some pointers from my experience…