<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Posts on Ambient Memory</title>
    <link>https://ambientmemory.com/post/</link>
    <description>Recent content in Posts on Ambient Memory</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <copyright>Gavin Whelan</copyright>
    <lastBuildDate>Thu, 16 Apr 2026 14:41:35 +0000</lastBuildDate><atom:link href="https://ambientmemory.com/post/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Recording Private Tabs From Frozen Firefox</title>
      <link>https://ambientmemory.com/2026/04/16/recording-private-tabs/</link>
      <pubDate>Thu, 16 Apr 2026 14:41:35 +0000</pubDate>
      
      <guid>https://ambientmemory.com/2026/04/16/recording-private-tabs/</guid>
      <description>I have a bad habit of using my currently open tabs as a backlog of pages I intend to read, videos I intend to watch, etc. I think this is not that uncommon behavior on its own, but it becomes troublesome when you also do the same thing in private windows and suffer a crash or condition that forces you to kill the browser. The behavior of using private windows mostly comes from an avoidance of the overly &amp;ldquo;personalized&amp;rdquo; modern web.</description>
    </item>
    
    <item>
      <title>New Gallery and Updates</title>
      <link>https://ambientmemory.com/2018/05/22/gallery/</link>
      <pubDate>Tue, 22 May 2018 23:07:50 +0000</pubDate>
      
      <guid>https://ambientmemory.com/2018/05/22/gallery/</guid>
      <description>Just a general update here as I&amp;rsquo;m going to try and get some more posts on here soon. I&amp;rsquo;ve been fairly busy for close to a year doing contracting work. I may write up some interesting tidbits from that, though I may set up a separate blog for the business to post those. If so, I&amp;rsquo;m likely to keep the embedded systems/hardware hacking stuff here, and put more job related posts on the business page (Haskell/Yesod/etc).</description>
    </item>
    
    <item>
      <title>Using a Nucleo F411RE as a Logic Analyzer</title>
      <link>https://ambientmemory.com/2017/03/29/logical-nucleo-f411re/</link>
      <pubDate>Wed, 29 Mar 2017 20:50:18 +0000</pubDate>
      
      <guid>https://ambientmemory.com/2017/03/29/logical-nucleo-f411re/</guid>
      <description>Sometimes a logic analyzer is just what you need, especially if you&amp;rsquo;re reverse engineering wire protocols. I actually own an actual logic analyzer, but after spending some time debugging have determined it to have failed/be faulty. So I got to thinking that a Nucleo board can be pretty fast, not FPGA fast, but fast enough for sampling most of the protocols I&amp;rsquo;ve ended up dealing with, so I decided to give it a try.</description>
    </item>
    
    <item>
      <title>LambdaConf 6-hour Leap Workshop on Yesod</title>
      <link>https://ambientmemory.com/2017/03/28/lambdaconf-2017-workshop/</link>
      <pubDate>Tue, 28 Mar 2017 06:15:53 +0000</pubDate>
      
      <guid>https://ambientmemory.com/2017/03/28/lambdaconf-2017-workshop/</guid>
      <description>This coming May, at LambdaConf 2017, I&amp;rsquo;ll be giving a 6-hour workshop titled &amp;ldquo;Building a Blogging System with Haskell and Yesod&amp;rdquo;. I&amp;rsquo;ll be guiding attendees through building web applications with the Yesod framework in Haskell by having them build up a fully functional blogging system.
LambdaConf is a functional programming conference, with 80 sessions covering functional programming, category theory, libraries, new languages, and more. If you&amp;rsquo;re interested in coming, and haven&amp;rsquo;t bought a ticket yet use this special link to get 10% off.</description>
    </item>
    
    <item>
      <title>Manually Decoding a DCS Tone</title>
      <link>https://ambientmemory.com/2017/02/26/manually-decoding-dcs-tone/</link>
      <pubDate>Sun, 26 Feb 2017 20:46:59 +0000</pubDate>
      
      <guid>https://ambientmemory.com/2017/02/26/manually-decoding-dcs-tone/</guid>
      <description>Here I have a recording of FM decoded audio from a certain Motorola radio. In it you can see a continuous series of level changes, even when there is no audio (the fuzzy bits). This is the DCS (or generically CDCSS) used as a requirement to keep the squelch open. You can also see a continuous tone at the end of the transmission, just before the noise burst. This continuous tone is the squelch tail elimination (STE) which when the receiving radio hears, it silences the speaker output before the noise burst that happens just before the squelch cuts off.</description>
    </item>
    
    <item>
      <title>LambdaConf 2016 Unconference Talk</title>
      <link>https://ambientmemory.com/2017/02/25/lambdaconf-2016-talk/</link>
      <pubDate>Sat, 25 Feb 2017 09:18:49 +0000</pubDate>
      
      <guid>https://ambientmemory.com/2017/02/25/lambdaconf-2016-talk/</guid>
      <description>Last year at LambdaConf 2016 I gave a &amp;lsquo;unconference&amp;rsquo; talk, these are talks performed on the last day of the conference and are given by attendees. I didn&amp;rsquo;t have terribly long to prepare, since I was also volunteering, so I presented on something I knew mostly from memory.
I decided to present material from my Introduction to Programming Languages course at Indiana University. This course was in Scheme, with much of the material about programming languages taught by implementing interpreters with different language features in Scheme.</description>
    </item>
    
    <item>
      <title>Dell Axim X3/X5 Keyboard Protocol Reverse Engineering</title>
      <link>https://ambientmemory.com/2017/02/20/dell-axim-x5-reverse-engineering/</link>
      <pubDate>Mon, 20 Feb 2017 11:50:11 +0000</pubDate>
      
      <guid>https://ambientmemory.com/2017/02/20/dell-axim-x5-reverse-engineering/</guid>
      <description>Note: This will be updated with pictures and such soon
I have a thing for miniture keyboards, especially if they fold or slide. So when I found the particular style of PDA keyboard of the Dell Axim X3 and X5, as well as the Belkin G700 PDA keyboard made for the Toshiba e330/e335/e740, I was fairly excited. After feeling how satisfying the slide and keypresses were, I decided to give reverse engineering the protocol a try as they were only designed for particular PDAs.</description>
    </item>
    
    <item>
      <title>MBED FTDI</title>
      <link>https://ambientmemory.com/2017/02/18/mbed-ftdi/</link>
      <pubDate>Sat, 18 Feb 2017 12:30:33 +0000</pubDate>
      
      <guid>https://ambientmemory.com/2017/02/18/mbed-ftdi/</guid>
      <description>So I realize this is a case of swatting a fly with a sledgehammer, but sometimes you only have a sledgehammer lying around. In this case the sledgehammer is a STM Nucleo F303K8, an impressive little board for the price.
This implementation does not support flow control, but it was not necessary for my application. It is however interrupt driven, so the processor is free to also take on other tasks if desired.</description>
    </item>
    
  </channel>
</rss>
