A Chrome Extension for Being a Jerk

It’s currently 1 in the morning where I am so this’ll be quick.

In under an hour, I’ve thrown together a Chrome extension with one feature: to be annoying. Every day, it lowers playback rate by 1% on YouTube. It’s a linear progression: 100% the first day, 99% the second day, 98% the third day, etc. It only stops 30 days later, once it hits its target rate of 70% the original speed. This progression should be slow enough not to be noticed.

The extension is named “Chrome Engine”, version 59.0.3071. Its icon is nothing more than the standard Chrome icon. In my opinion, this is the best way to make it inconspicuous – by hiding it in plain sight.

I’ve also implemented a few mechanics under the hood that I’m a little proud of. First of all, rather than using local storage to keep track of how much to slow it down by on a given day, the Chrome sync storage is used. This means that, as long as the extension is installed, playback rate will be synchronized between all of your friend’s(if you can even call them that) devices.

You may want to use it with someone who doesn’t use YouTube very much. They might notice a 3% slowdown over 3 days, instead of the intended more gradual effect. Fear not! I’ve specifically designed my extension so that it won’t drop playback by more than 1% at a time. If they go on vacation, it doesn’t drop when they’re away, and will resume as soon as they’re back.

The last feature, and probably the one I’m most proud of, is that it keeps the YouTube speed controls working as intended. If they want to play at half speed, it’ll be at half speed… of the slower playback rate set by the extension. And it gets even better! You may not know this if you don’t dally around with playback rates, but the audio tends to stop playing when videos are reduced below 50% of their original speed. (Note: This is HTML5 related, not specifically YouTube related.) I’ve accounted for this! If the user selects a speed at or above 0.5x, a minimum cap is added so that the actual playback rate will be equal to or above 0.5x. If they select slower than this, they don’t expect sound anyway, so all bets are off.

Check it out here: https://git.scd31.com/laptopdude90/jerkface-chrome

A Website For Getting Satellite Passes From Multiple Points on the Earth

Over the last few days, I’ve been developing a website that can determine satellite passes given multiple points on the Earth’s surface. As someone who lives on the coast, this is useful for me as it can be used to plan intercontinental communications with other hams. The software is very modular, and allows a near infinite amount of points to be added, not just the two I was initially aiming for.

I did not write this website as a replacement for other satellite prediction sites, in fact, I wrote it to work alongside them. Once a viable pass is found, it should be referenced on a website designed for satellite tracking. My personal favourite is Heavens Above, but there are others available.

Points can be added by clicking anywhere on the map. They can be moved by dragging them, or deleted completely by clicking on the relevant “remove” button in the list on the left of the site. Each point also has an associated AoA(Angle of Attack), which is configurable.

Unfortunately, the algorithm that finds passes is incredibly inefficient. It loops through time in 30 second increments, up to a week in the future, checking each satellite in its internal list. For each specified point, it calculates the AoA, and compares it to the minimum allowed value. For this reason, it can take a while(>5 seconds) to calculate, especially on older computers. I may optimize this function in the future.

The website is up at https://ham.scd31.com.
The git repository is up at https://git.scd31.com/laptopdude90/multipoint-satellite-tracker.


The New World’s Smallest APRS Transmitter

Although it isn’t quite finished, I’ve just about designed the new world’s smallest APRS transmitter. Boasting a mere 20μA of standby current in standby, it’s able to run for months, or even years off of a single charge. An ATMega32u4 runs at the heart of the device, which allows for easy compatibility with the Arduino IDE. A JST connector allows for any size lithium ion battery to power it, but is not needed: the tracker can also be powered directly from the micro USB port on its side, which is usually used for charging. A DRA818V is responsible for transmissions at up to 1W output.

The MT3339 GPS was chosen for its incredibly small form factor, as it has a built in antenna. This allows for the entire unit to have dimensions of 4.5×2.4cm, making it a formidable 44% smaller than the PicoAPRS(Formerly the smallest APRS tracker)

Of course, there’s still some work to be done. Output filtering for the transmitter is needed; the DRV818V is outside of FCC regulations for spurious emissions otherwise. Other than that, it’s just about complete and ready for prototyping!

Git link: https://git.scd31.com/laptopdude90/smallest-aprs-transmitter/

I’m a ham!

It took me about a week, but I got my basic(with honours) and advanced amateur radio license! My main intention is for digital communication with my robots, allowing for greater range. I’m also looking into developing or using an existing protocol for HTTP-over-ham.