Initial issue I recently purchased a new computer and installed Ubuntu 24.04 on it. While everything appeared to be working correctly, I soon noticed that duplex (two sided) scanning on my Brother MFC-9340CDW printer was not working as expected. Despite having the “Both” option selected in simple-scan it only digitized a single size of each page. Inspection My first thought was that…
In this blog post I explain how to use your mobile phone and some cross-platform software to create a custom fisheye landscape for Stellarium. This form of landscape is exceptionally useful for planning observations from less-than-ideal observing locations. For example, I observe from my condo’s covered patio. As shown in the image below, my field of view is restricted by the patio ceiling,…
In my previous post on the Adafruit Ultimate GPS with USB-C, I explored an issue related to the PPS signal being connected to the Ring Indicator (RI) pin, but undetectable by ppscheck or gpsd . I’m happy to report, that I’ve figured out the problem and implemented a solution to the problem. I’ve submitted the relevant changes to the Linux kernel, but if you need a working driver…
While exploring methods to receive PPS signal over USB , I purchased the Adafruit Ultimate GPS with USB-C thinking that it offered everything I needed to receive the PPS signal over USB and route it to GPSD. Unfortunately, it doesn’t work as expected due to some not-so-easily discovered technical limitations. While researching things for this blog post, I also uncovered some information that…
Introduction Since returning to astronomy as the Executive Director of the AAVSO in September 2022, I’ve been participating in more public outreach events and attending star parties in different states. Whenever I can, I take along my telescope so it can continue collecting data on my science projects while I’m taking with the local crowd. Unfortunately, moving my telescope around…
Completing my series on restic backup solutions, this post describes how to automate Restic backups on Windows. The technique I present below uses Windows Task Scheduler to automatically execute a PowerShell script at a designated time. The primary script and its configuration are kept as separate files to permit use of the configuration in both interactive and non-interactive modes. Configuration…
Initial architecture was written as a single python script discovered that the pi didn’t have enough horsepower to do that split script into multiple parallel processes that communicate using ZeroMQ messages introduced some custom C code to interface with Python Architecture
Before continuing my series on the Open Source All Sky Camera (now abbreviated as OSASC), I thought it prudent to step back and discuss what I hope to achieve with this project. As I have often imagined building a company that makes products for astrophysics, I’ve built some commercialization ideas into the project already. Objectives I would like a camera that can watch the stars, let me…
This is the second post in a series which discusses the development of an open-source all sky camera built on top of the Raspberry Pi and Raspberry Pi HQ camera. The previous post determined the magnitude limit and general capability restrictions of the setup. In this post, I’ll describe the design of a 3D printable enclosure for the camera. Design After drawing up several ideas, I settled…
Over the last two months, I’ve been experimenting with the Raspberry Pi HQ Camera to determine is suitability for cloud monitoring, wide-field photometry, and detecting bright moving objects (meteors, airplanes, satellites, etc.). I’m happy to report that it works, although it is not ideal for any of these use cases. Background Back in July 2020, a colleague of mine alerted me to his…
Shortly after COVID hit in March of 2019, it became apparent that I couldn’t keep my business running doing data science, machine learning, and GPU acceleration. Not only had the market nearly vanished over night, but also the number of opportunities to network and find new business was gone. So I decided to pivot my business to focus on data acquisition and software development for the…
Every decade or so some new technology comes along that vastly simplifies the maintenance and operation of my personal website. In the late 1990s I wrote pure HTML. In the early 2000s I wrote HTML with server-side includes. Later I started using custom Perl or PHP scripts. I tried out a few content management systems, like WordPress and Drupal but found them too complex for my needs. I hopped on…
Here is a list of long-period variable stars that have anomalously long eclipses. This list may constitute the beginnings of a new class of variable star which I’ve coined “the epsilon Aurigaes”. Object Period V Reference / Note eps Aur 9890d (27.1 yr) 3.0 Many EE Cep 2049d 10.9 Many, precessing disk ELHC 10 219d 13.9 Garrido et al. 2016 TYC 2505-672-1 25227d (69.1 yr) 10.7…
After upgrading from Ubuntu 18.04 to 20.04 over the weekend, I was surprised to learn that my go-to password manager since 2008 had been discontinued. Yes, the package maintainers finally dropped support for Revelation . However, given that the last update to Revelation was on July 1, 2012, perhaps I shouldn’t have been so surprised after all. In either case, I was in a pickle. I had over…
This tool converts a Revelation XML export files to a CSV format compatible with KeePassXC. It preserves the organizational structure and all fields in the Revelation XML output. The Code is Open Source (GPL-v3) and posted on GitHub . Amusingly, this was the first Open Source project for which I received a monetary donation.
This post is a continuation of my bcache installation instruction series that began six years ago with Ubuntu 14.04 This edition includes instructions for setting up bcache on Ubuntu 20.04. Unfortunately, even after all of this time, Canonical has yet to include built-in support for bcache in the initial initramfs . Thus the instructions here remain largely unchanged from my prior posts, save one…
When I was in my teens I was obsessed with Maxis video games. I spent a considerable amount of time to playing SimCity, SimFarm, SimCopter, and Streets of SimCity. I even constructed a medium-sized website dedicated to these games. These facts were lost to me until I found several old floppies, hard drives, CDs and zip disks containing partial copies of my website from 1999, 2004, 2008, and 2009.…
This is the third post in a four-part series which discusses my backup solution which uses dedicated backup machines, restic, and the restic REST server. In my first post, I discuss how I decided to use restic rather than other backup clients after evaluating various backup solutions over the last six years. In the second post , I setup a dedicated backup server with a btrfs RAID1 filesystem,…
In my previous post discussing backup software I outlined why I selected restic as my preferred backup solution. In this post, I provide information on how to configure a HP r5800 desktop unit as a dedicated restic backup server. Hardware For this build I selected a refurbished HP r5800 desktop unit which the local Micro Center had on sale for $150. This machine has 2x 3.5" HDD slots and 1x 5.25"…
Over the last six years I’ve tried out a variety of synchronization, mirroring, and backup software looking for one that does not preclude application of the 3-2-1 backup strategy while supporting multiple operating systems and I’m happy to report I’ve found an ideal solution. My data loss story In 2013, I had four computers that continually synced of data using SyncThing . The…
Introduction While doing some spring cleaning, I found a hard drive which contained backups of all of my websites from the early 2000s and a few photos of the equipment which I used to host said sites. Seeing these things inspired me to resurrect some of this content (see tag: old-content ). In doing so, I realized that learning how to code and host my own services at such a young age forged a…
In 2002 a friend and I attempted to start a wireless Internet service provider, called “Hastings Wireless” in our home town of Hastings, NE. Our objective was to blanket public spaces with WiFi which the public could use at some minimal cost. The project ran for about 1.5 years and collected a small, 5-person following, but didn’t achieve critical mass and ultimately closed on…
This post is a continuation of my bcache installation instruction series that began three years ago with Ubuntu 14.04 This edition includes instructions for setting up bcache on Ubuntu 17.10. Unfortunately, Ubuntu still has not included bcache support in the initial initramfs , so the instructions remain largely unchanged, save a slight change to deal with the new systemd-based DNS system.…
Recently a client expressed interest in developing a pre-built Home Theater PC (HTPC) solution with Digital Video Recorder (DVR) functionality for Over The Air (OTA) broadcasts. They considered both low-end devices, like the Raspberry Pi, and high-end devices like dedicated PCs. As part of their marketing research, they wanted to have a broader perspective of existing solutions on Windows, Mac,…
I wrote a new, massively parallel photometric reduction pipeline for the American Association of Variable Star Observers (AAVSO) AAVSO Photometric All-Sky Survey (APASS) program. The software permitted all 21 TB of the survey’s data to be re-reduced for Data Release 10. The pipeline is open source and can be downloaded from here .
Several months ago we purchased an Arduino Starter Kit from OddWires to experiment with during downtime. We’ve used it for several fun projects, but not much more because it didn’t have Internet access. After talking with some friends at ArrayFire , we decided to purchase an ESP8266 for some wifi-enabled microcontroller fun. For those of you who don’t know, the ESP8266, an obnoxiously inexpensive…
A few days ago I attempted to upgrade my Gigabyte P34w v5 from Ubuntu 15.10 (whose installation I documented in a previous post ) to Ubuntu 16.04 using the auto-upgrade functionality. Suffice it to say, that process failed miserably due to some PPAs I forgot to disable. I salved the system, but something really low level in the OS was busted so badly I was getting random segfaults from several…
Through much experimentation I have finally been able to get optimus to work on the Gigabyte p34w v5; however, the specific implementation is far from flawless. In particular, starting the bumblebee daemon on boot causes the system to hang indefinitely. Thus one must start and stop bumblebeed as needed. Before getting started, please read through my previous post about this machine and ensure you…
A few weeks ago I picked up a Gigabyte p34w v5 from Excaliber PC to replace my previous work laptop. In my normal fashion, I tried to get Linux running on it as soon as possible. Because the p34w v5 features an Intel Skylake i7-6700HQ processor, getting Linux running on it was a bit more complicated than normal, but still quite easy. Machine specifications Device Specification Note CPU i7-6700HQ…
A few years ago I had an HP Envy 6T ultra book which shipped with Intel Smart Response software that permitted me to use the SSD as a cache for my hard disk. As the HDD operated at 5400 RPM, the SSD cache resulted in a noticeable improvement in performance in Windows. Sadly, at the time there was not any similar functionality in Linux. As you can imagine, I was quite ecstatic when I learned about…
Background During graduate school my wife and I had an awesome apartment that featured a wonderfully large, 8 x 30 foot deck on the 8th floor of an apartment building. The deck provided us with a lovely view of the nearby Rocky Mountains, but it was on the north side of the building so it didn’t get the most amount of sunshine. Nevertheless, I started gardening. It was one of the few…
It seems that every July or August I get the sudden urge to blog and this year appears to follow that trend. I think my primary reason to not write more is that making posts is annoyingly awful. Sure, I could write blog as a bunch of HTML pages, but I really hate writing pure HTML. On the flip side, I could use a full-fledged blogging platform like WordPress (or any of the other top 20 blogging…
It seems that every July or August I get the sudden urge to blog and this year appears to follow that trend. I think my primary reason to not write more is that making posts is annoyingly awful. Sure, I could write blog as a bunch of HTML pages, but I really hate writing pure HTML. On the flip side, I could use a full-fledged blogging platform like WordPress (or any of the other top 20 blogging…
I wrote the benchmark library for the ArrayFire GPU computing library. This tool was used to evaluate performance between releases. The code is freely distributed on GitHub
The instructions for setting up bcache on 14.10 are nearly identical to what Wei Dong wrote on his blog , except I had to create a manual addition for the bootloader before grub2 would recognize the bcache device. Installing Ubuntu 14.10 I used the same prescription as Wei Dong, namely we first install the OS to a small partition (that will later become swap space) and later copy it over to the…
While doing a little spring cleaning today I found one of my old Linksys WRTSL54GS router I purchased back in 2007. Like its better known sibling, the WRT54G (after which projects like OpenWRT and DD-WRT were named), this was a 5 port router with 2.4 GHz wireless networking. Most of the Linksys WRT-series routers were easily modified with third-party firmware. Although it has been nearly a decade…
Continuing my posts on getting Ubuntu to run on the HP Envy 6/6T, we have a (belated) update on getting Ubuntu 13.04 to run on this machine. My general attitude during my last post was quite good. In fact, nearly everything worked right out of the box without much effort. The most difficult thing was getting ATI switchable graphics to work which required some very simple steps. In Ubuntu 13.04,…
When I first migrated from Gnome 2.6 to the 3.x branch I hated it. I even started running Unity in fallback mode just so I could get work done. I was not alone in this opinion. Indeed, the controversy over Gnome3 even has its own Wikipedia page! Eventually I read up on some of the new features added to Gnome 3 and gave the new UI a fair chance. The new interface is, shall we say, minimal. Gone is…
Several months ago I picked up a Nook Tablet on sale at Radio Shack. I quickly found the stock software lacking in several regards: You could only install software purchased from B&N’s app store (i.e. no Amazon Marketplace or Google Play store) Out of the 16 GB on the device most of it is reserved for B&N downloaded content. The user could only place 1 GB of their own content on the…
As with my previous post on installing Ubuntu 12.04 , the HP Envy 6 is not supported by Ubuntu 12.10 out of the box. Some work is required to get ATI switchable graphics working and the card reader still requires a manual driver installation. On the bright side, the drivers for the Broadcom BCM4313 [14e4:4727] wireless card work flawlessly out of the box and the kernel no longer requires…
Shortly after starting my job at the Max Planck Institute for Radio Astronomy I received an HP Envy 6 to replace my older MSI MS1719 (GX700). The HP Envy 6 is very similar to the HP Envy 6T so the instructions listed here should work for it as well. I was able to get everything (including switchable graphics) working on Linux except the white “audio muted” LED on the keyboard and the…
Now begins the story of the move and our first few weeks in Germany, all compressed into one post. Prior to our departure we were visiting our family back in Nebraska. Our itinerary was to take the Amtrak from Hastings, NE to Denver, spend one night at my adviser’s house, then fly on United from Denver to Washington, DC (Dulles), Dulles to Munich Germany, and then Munich to Colonel. After…
One of the most important things for geeks is keeping in constant communication. That means email, internet, SMS, etc. Fortunately my cellphone (Droid 3) is a CDMA and GSM device. With Verizon you have two options, you can either pay for their international data service on Vodaphone’s network, or you can pick up a SIM card with data when you arrive at your destination. For me, the second…
I have often heard people say “as one door closes, another one opens,” but few have said exactly where that second door may reside. In my case, I have spent the last five years studying astrophysics in the University of Denver’s Department of Physics and Astronomy . Recently I completed my Ph.D. and have accepted a postdoc, my “next doorway,” at the Max Planck…
I wrote new control software for Optec Inc’s SSP-4 Near-Infrared (NIR) photometer . This device is controlled via. a RS-232 serial connection. This software unlocks the full capabilities of the device by permitting integration times from 0.01 - 65.53 seconds and 1-9999 exposures. The code is written in C# using Microsoft Visual Studio 2005 and distributed on GitHub .
The SImulation and Modeling Tool for Optical Interferometry is a fast, GPU-enabled geometric model fitting program for optical interferometric data. The program supports a variety of models that are rendered in a 3D, fully time-dependent environment. This code is open source (GPL v3) and distributed on GitHub.
The OpenCL Interferometry Library (liboi) implements several commonly needed routines in optical interferometry in the a heterogeneous computing environment using OpenCL. This library serves as the backend for SIMTOI and GPAIR. This code is open source (LGPL) and distributed on GitHub.
Standards of Fundamental Astronomy (SOFA) is a FORTRAN/C library from the IAU that provides a variety of useful functions for astronomy that deal with time and astrometric calculations. Unfortunately, the library ships with a very ugly license that prohibits its modification and/or redistribution. As such, it isn’t widely used, despite being packed with very useful functions that provide:…
The OIFITS SIMulator is a tool to assist in observation planning or in reconstructed image artifact analysis. The program has the ability to either (1) simulate the data from an interferometer given a list of observational hour angles and a FITS image of what the source looks like, or (2) copy the UV coverage of an existing observation and simulate the data given a FITS image of the source. The…