<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Alastair Barber</title>
    <link>https://alastairbarber.com/</link>
    <description>Recent content on Alastair Barber</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Tue, 06 Jan 2026 19:50:00 +0000</lastBuildDate>
    <atom:link href="https://alastairbarber.com/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Nineteen Septillion Addresses - Setting up an ASN, obtaining IP addresses, and finding my way around the internet</title>
      <link>https://alastairbarber.com/Setting-Up-ASN-IPv6-Routing-BIRD-Teltonika-Router-Wireguard/</link>
      <pubDate>Tue, 06 Jan 2026 19:50:00 +0000</pubDate>
      <guid>https://alastairbarber.com/Setting-Up-ASN-IPv6-Routing-BIRD-Teltonika-Router-Wireguard/</guid>
      <description>&lt;p&gt;Here&amp;rsquo;s the story of &lt;a href=&#34;https://bgp.tools/as/202858&#34;&gt;AS202858&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Recently I got curious as to where exactly IP addresses came from, and how does &amp;rsquo;the internet&amp;rsquo; know where packets addressed to one should actually end up. This article is a quick overview of what I discovered and how I got my hands on my own slice of the IPv6 address space, and how I used it practically. It&amp;rsquo;s a high-level overview, although with some detail on particular configs that took me a little while to figure out in case it might help someone doing something similar.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Controlling the Si5351</title>
      <link>https://alastairbarber.com/Controlling-Si5351-pt1/</link>
      <pubDate>Thu, 18 Sep 2025 18:40:00 +0000</pubDate>
      <guid>https://alastairbarber.com/Controlling-Si5351-pt1/</guid>
      <description>&lt;p&gt;The venerable Si5351 pops up in a lot of applications related to amateur radio as a convenient and flexible Direct Digital Synthesizer (DDS). It is a device primarily designed to replace crystals, oscillator circuits and PLLs used in digital systems to provide clocks used by, for example, ethernet, HDMI and USB controllers.&lt;/p&gt;&#xA;&lt;p&gt;In this article, I&amp;rsquo;ve collected some notes on understanding the logic and workings of the device and how to configure it to produce a desired frequency output. Of course, there exist many good libraries for controlling it from a number of platforms, but it&amp;rsquo;s nice to have a lower level understanding of what&amp;rsquo;s happening inside, and there are some interesting concepts such as phased locked loops and continued fractions that are worth knowing about.&lt;/p&gt;</description>
    </item>
    <item>
      <title>A Teensy/Arduino AD9834 Based WSPR Transmitter</title>
      <link>https://alastairbarber.com/Teensy-AD9834-WSPR-Transmitter/</link>
      <pubDate>Wed, 29 Dec 2021 20:00:00 +0000</pubDate>
      <guid>https://alastairbarber.com/Teensy-AD9834-WSPR-Transmitter/</guid>
      <description>&lt;!-- ![WSPR](/assets/wspr-masthead.png) --&gt;&#xA;&lt;p&gt;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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Creating PWL Files For LTSpice for PWM Signals</title>
      <link>https://alastairbarber.com/Creating-PWL-Files-For-LTSpice-for-PWM-Signals/</link>
      <pubDate>Sat, 02 Jan 2021 20:00:00 +0000</pubDate>
      <guid>https://alastairbarber.com/Creating-PWL-Files-For-LTSpice-for-PWM-Signals/</guid>
      <description>&lt;!-- [![Composition of LTSpice circuit, real circuit and scope trace](/assets/pwm-masthead.png)]({% post_url 2021-01-02-Creating-PWL-Files-For-LTSpice-for-PWM-Signals %}) --&gt;&#xA;&lt;p&gt;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&amp;hellip;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Simple WebAssembly App From The Ground Up</title>
      <link>https://alastairbarber.com/Simple-WebAssembly-App-From-The-Ground-Up/</link>
      <pubDate>Wed, 30 Dec 2020 18:00:00 +0000</pubDate>
      <guid>https://alastairbarber.com/Simple-WebAssembly-App-From-The-Ground-Up/</guid>
      <description>&lt;!-- ![Tool demo with LTSpice window](/assets/wa-oscillation-preview.png) --&gt;&#xA;&lt;p&gt;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&amp;rsquo;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&amp;hellip;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Meet Me Half Way</title>
      <link>https://alastairbarber.com/Meet-Me-Half-Way/</link>
      <pubDate>Wed, 07 Aug 2019 18:00:00 +0000</pubDate>
      <guid>https://alastairbarber.com/Meet-Me-Half-Way/</guid>
      <description>&lt;!-- ![Meet Me Half Way Destination Suggestions](/assets/mmhw-search.png) --&gt;&#xA;&lt;p&gt;This is a fun website that I recently put together for a hackathon run by Amadeus. I&amp;rsquo;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 :)&lt;/p&gt;&#xA;&lt;p&gt;The backend is written in Python 3 using Flask and runs on a fun mix of Amazon Lambda, S3 and the excellent &lt;a href=&#34;https://eu.pythonanywhere.com/?affiliate_id=0000081f&#34;&gt;Python Anywhere&lt;/a&gt;. It&amp;rsquo;s something that I&amp;rsquo;m keen on developing - one of the most interesting things I&amp;rsquo;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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>VFX Pipeline Stats</title>
      <link>https://alastairbarber.com/VFX-Pipeline-Stats/</link>
      <pubDate>Tue, 28 Jun 2016 14:00:00 +0000</pubDate>
      <guid>https://alastairbarber.com/VFX-Pipeline-Stats/</guid>
      <description>&lt;!-- ![Matchmove QC cones](/assets/vfx_tracking_cones.png) --&gt;&#xA;&lt;p&gt;&lt;strong&gt;Update&lt;/strong&gt;: Check out the &lt;a href=&#34;https://www.fxguide.com/quicktakes/siggraph-saturday-digipro/&#34;&gt;FxGuide DigiPro Report&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;On the 23rd of July, I’ll be presenting a paper at the Digital Production Symposium (DigiPro) in Anaheim called &lt;a href=&#34;https://dx.doi.org/10.1145/2947688.2947697&#34;&gt;Camera Tracking in Visual Effects, An Industry Perspective of Structure from Motion&lt;/a&gt; &lt;a href=&#34;http://opus.bath.ac.uk/50579/&#34;&gt;\(Free Download\)&lt;/a&gt;.&#xA;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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Inferring Changes in Camera Intrinsics from Motion Blur</title>
      <link>https://alastairbarber.com/Inferring-Changes-in-Camera-Intrinsics-from-Motion-Blur/</link>
      <pubDate>Sun, 19 Jul 2015 14:00:00 +0000</pubDate>
      <guid>https://alastairbarber.com/Inferring-Changes-in-Camera-Intrinsics-from-Motion-Blur/</guid>
      <description>&lt;!-- ![Blurry focal length change](/assets/intrinsics-flower.png) --&gt;&#xA;&lt;p&gt;I did this work as an earlier part of my EngD and it&amp;rsquo;s written up in the &lt;a href=&#34;https://dx.doi.org/10.1016/j.cag.2015.05.022&#34;&gt;&lt;em&gt;Elsevier Computers And Graphics&lt;/em&gt; Journal&lt;/a&gt; &lt;a href=&#34;https://alastairbarber.com/assets/CAG_Paper.pdf&#34;&gt;(&lt;em&gt;free preprint version&lt;/em&gt;)&lt;/a&gt;. The idea came about from an earlier work&#xA;by Klein &amp;amp; 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&#xA;determine changes in focal length from motion blur.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Harry Potter Weasley Clock</title>
      <link>https://alastairbarber.com/Harry-Potter-Weasley-Clock/</link>
      <pubDate>Sun, 10 Feb 2013 14:00:00 +0000</pubDate>
      <guid>https://alastairbarber.com/Harry-Potter-Weasley-Clock/</guid>
      <description>&lt;h4 id=&#34;2020-update---much-of-the-code-and-recommendations-in-this-post-will-be-well-out-of-date-but-ive-kept-it-up-as-inspiration&#34;&gt;2020 Update - Much of the code and recommendations in this post will be well out of date! But I&amp;rsquo;ve kept it up as inspiration.&lt;/h4&gt;&#xA;&lt;img src=&#34;https://alastairbarber.com/assets/finished-clock.jpg&#34; alt=&#34;Harry Potter Weasley Clock&#34;&gt;&lt;p&gt;For Christmas, I decided to attempt to make magic as real as I could using the wonder that is electronics, programming and determination.&#xA;I set out to make a &amp;lsquo;Weasley&amp;rsquo; clock. For those who don&amp;rsquo;t know, this is a magical device that lives in the Weasley household, however instead of displaying the time, it displays the whereabouts of each family member by pointing a named hand at a defined location such as &amp;lsquo;school, travelling, magic-ville etc&amp;rsquo;. My version has only one hand and that points to six different locations and consists of a Raspberry Pi, USB Mobile Broadband Modem, Arduino, &amp;lsquo;Servo&amp;rsquo; Motor, Some Microswitches and more Pritt Stick than I&amp;rsquo;d like.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Using JASIOHost</title>
      <link>https://alastairbarber.com/Using-JASIOHost/</link>
      <pubDate>Thu, 02 Aug 2012 14:00:00 +0000</pubDate>
      <guid>https://alastairbarber.com/Using-JASIOHost/</guid>
      <description>&lt;p&gt;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&lt;/p&gt;</description>
    </item>
    <item>
      <title>DIY Multitouch Table</title>
      <link>https://alastairbarber.com/DIY-Multitouch-Table/</link>
      <pubDate>Thu, 02 Aug 2012 13:00:00 +0000</pubDate>
      <guid>https://alastairbarber.com/DIY-Multitouch-Table/</guid>
      <description>&lt;iframe width=&#34;560&#34; height=&#34;315&#34; src=&#34;https://www.youtube.com/embed/ZeYw8-140rk&#34; frameborder=&#34;0&#34; allow=&#34;accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture&#34; allowfullscreen&gt;&lt;/iframe&gt;&#xA;&lt;p&gt;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&amp;hellip;&lt;/p&gt;</description>
    </item>
    <item>
      <title>About</title>
      <link>https://alastairbarber.com/about/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://alastairbarber.com/about/</guid>
      <description>&lt;p&gt;Hello! I&amp;rsquo;m Alastair, a Software Engineer currently based in Helsinki. I have worked for&#xA;several years in the Visual Effects industry, originally completing my Engineering Doctorate (EngD) at &lt;a href=&#34;http://dneg.com&#34;&gt;DNeg&lt;/a&gt; and the University of Bath. I have since worked at &lt;a href=&#34;http://foundry.com&#34;&gt;Foundry&lt;/a&gt; and &lt;a href=&#34;https://www.technicolor.com/create/vfx&#34;&gt;Technicolor FEV (Mill Film)&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;I now work at &lt;a href=&#34;https://ixieyewear.com/&#34;&gt;IXI&lt;/a&gt; and was previously at &lt;a href=&#34;http://www.iceye.fi&#34;&gt;ICEYE&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;m interested in embedded electronics, visual computing, and experimenting with new technologies and APIs - particularly in travel and aerospace. I love to travel and also enjoy photography.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
