Covid-19: Prisoner’s Dilemma

Prisoner’s Dilemma comes from game theory. Essentially, two prisoners are not allowed to collaborate, and then are presented a set of options: stay silent and get a guaranteed sentence, or cooperate and get immunity. The optimal solution is to stay silent.

What does this have to do with Corona Virus and Covid-19? Right now, the only effective way to mitigate the spread of the virus is through social distancing: staying away from others to slow the spread. But humans can become irrational in time of panic – really toilet paper?

Corona Virus is now a pandemic and we now have a prisoner’s dilemma problem at a global scale – in absence of a cure/vaccine, the only other way to get this virus to go away would be to blunt the transmission: 7 billion people go on lock down/isolation for ~3 weeks. Otherwise, once people start moving around again (travel, random social contact, etc.) you will just get more flare ups. This isn’t feasible.

What’s not the solution? Self-interest. If you pursue your own self interests, and everyone pursues their own self interests – i.e. everyone goes Mad Max Thunder Dome, that puts excessive demand on supply chains and the health care systems. This will feed panic, which can turn to social unrest, and a bunch of other shitty outcomes.

What is a solution? Cooperation. What does cooperation look like? Practice social distancing. Don’t horde. Help your neighbors and the less fortunate. Maintain your physical and mental health.

Prisoner’s Dilemma. Accept the fact that this Corona Virus pandemic will affect you either directly or indirectly. You will not come out unscathed. The optimal solution for society will be cooperation not individualism.

OpenHPSDR PowerSDR mRX PortAudio Errors and Fix

OpenHPSDR PowerSDR mRX PortAudio Error -9999
OpenHPSDR PowerSDR mRX PortAudio Error -9999 Unanticipated host error

You’re about ready to get your radio geek on and you get a PortAudio Error -9999 Unanticipated host error, followed by a PortAudio Error -9988 Invalid stream pointer.  WTF since everything was working fine on Windows XP/Windows 7/Windows 10.  Well, the mighty fine folks at Microsoft decided to tighten up security with applications (“apps” if you’re cool) permissions to access the microphone.

Windows 10 Allow Access to Microphone

The fix is straight-forward:  On Windows 10, you go to settings->privacy->microphone and enable it.  If you are privacy concerned like me, you can then go through the “Choose which apps can access your microphone” and turn them all off.

For you new software engineers – this is a great example of a shitty error message.  If the message said “Access denied while trying to open your microphone or input device.  Please make sure this device is enabled and the access permissions are correct” that would make it much easier to diagnose the issue.

Machine Learning to Eat Free

This hack is brilliant:
In today’s digital age, a large Instagram audience is considered a valuable currency. I had also heard through the grapevine that I could monetize a large following — or in my desired case — use it to have my meals paid for. So I did just that.

I created an Instagram page that showcased pictures of New York City’s skylines, iconic spots, elegant skyscrapers — you name it. The page has amassed a following of over 25,000 users in the NYC area and it’s still rapidly growing.

Shimano Dura-Ace 32-11T Cassette

 

Put a 32-11T Cassette on your Shimano Dura-ace Drivetrain
32-11T Cassette on a Shimano Dura-ace Drivetrain

I’ve started to get into endurance type riding.  I was doing 50+ mile rides on the hybrid bike, but it was time to graduate to a road bike.  I bought a new Trek Domane SL8 road bike that has carbon with more carbon and a full Shimano Dura-ace group set.  It came with a compact crank (50/34) paired with a 30-11T cassette.  Since I am doing some events with 7000+ feet of climbing, I wanted to be able to “call granny” to save my ass when my legs turn to rubber.  The largest Dura-ace rear cassette is 30-11T, but you can swap in a Shimano Ultegra R8000 32-11T cassette without any problems.  I didn’t have to lengthen the chain or do any other trickery such as using a Roadlink by Wolf Tooth..  The image above shows that the derailleur is not hitting the cassette even when in “big-big.”

Why We Cannot Have Nice Things: Comment SPAM

Just finished trashing 183 spam comments.  The spam techniques were interesting – some used flattery to try to disguise the spam, others were just flat out proud of their spam.  I could install comment filtering tools, but that’s work and cost.  Time to change the comment settings.

BMW S1000R Accessory Light Flasher – First Prototype

I built this about a year ago.  I prototyped a circuit that used an ATTiny85 microcontroller to drive a p-channel (high side) mosfet.  The idea was to use the microcontroller to strobe the Clearwater Darla LED accessory lights.

The circuit worked as expected, but that click-click-click-click noise is bad. I thought the functionality of the led “instant-on” was via a 12v signal to the dc-dc circuit in the led light, but it is actually a mechanical relay. Strobing anything mechanical is no bueno.

I  completely changed my strategy after this test.  A little experimenting and I discovered that the accessory lights are controlled by a PWM signal which controls the light intensity (low to full power).

Rigol Oscilloscope i2c Bus Decoding

I built a weather station last year. Even though I sprayed a conformal coating on the PCB to help it resist humidity exposure, the temp/humidity/barometric pressure sensor flaked out from exposure to the elements.  While fixing it, I decided to “geek out” a bit and hook the oscilloscope up to decode the i2c bus messages.  My notes for reference.

High Level:

  1. Connect probes, make sure they are setup correctly (10:1, etc.). Then set vertical scale and time-base.
  2. Set the triggering conditions to match the signal encoding
  3. Set the decode conditions to match the signal encoding
  4. Optional – use the event table to capture and export the data

Connections
Channel 1 probe to SCL (Clock)
Channel 2 probe to SDA (Data)

Scope Config
Set to 2v/div, 100us
Trigger – i2c, SCL->Channel 1, SDA->Channel 2, When->Start, Sweep->Auto
Decode – i2c, BusStatus->On, SCLK->Channel 1, SDA->Channel 2, SCL Threshold->1.80v, SDAThreshold->1.80v, Format->Hex (whatever is appropriate)

Enable the event table if you want to capture data which allows you to also export the data to a usb drive.

Microsoft Azure Sphere

IoT might be an over-hyped trend, but for ~$8 retail I can buy a EPS8266 NodeMCU board that has built-in WIFI.  Moore’s Law and accessibility will continue to drive costs down, which means eventually all manufacturers will experiment with IoT products.  Why?  Because the data that can be captured is extremely valuable and can be monetized.  One downside is these SoCs do not have any hardware protections where you can stash secrets, such as a code signing key.

For example, when I created the garage-o-matic to monitor and open/close my garage doors, I started looking at how to secure the firmware beyond a simple password.  Ultimately, I would have had to build some additional custom hardware if I wanted to stay in the hobbyist IoT space.

I like the general idea of including some sort of hardware security system, which the Azure Sphere chip is calling “Pluton.”  But what is really telling is Microsoft supporting this ecosystem with a Linux distribution.  I’ve mentioned this before that Microsoft is becoming a cloud-first company, and this really drives that home.  Build whatever you want, using the tooling you want, get even faster time-to-market if you use Visual Studio/Azure boilerplate, and run it on Microsoft’s Azure cloud.

https://azure.microsoft.com/en-us/blog/introducing-microsoft-azure-sphere-secure-and-power-the-intelligent-edge/

HF Voyager Reception

The HF Voyager is an autonomous Wave Glider (drone) traveling from Hawaii to California.  What’s fascinating is the JRFARC club has included a low power HF radio as part of the payload.  The Elecraft KX3 radio only puts out a max of 10 watts (and they’re probably running lower power than that) and I was able to receive the FT8 mode transmission with a simple magnetic loop antenna connected to my Anan 200D HF radio 1600 miles away.

FT8 Reception Report

Heath and Happiness on an Index Card

Over a year ago, I decided to make big changes in my life, take some time off, and invest in myself, especially my health.  I did a bunch of research and ran “mini-experiments” (aka “hacking” myself) to test out different things: how food affected me, how exercise changed my hunger, types of exercise, etc.

A while back I stumbled across an index card with financial advice by Harold Pollack.  It was brilliantly simple as it was effective – very simple advice that is easy to follow and will positively impact your financial well being over time.  So in the same spirit I’ve decided to write down simple things I’ve done that have dramatically transformed my health and happiness.  There”s no “good” vs. “bad” or “right” vs. “wrong.”  These are just some guidelines/suggestions for things to try.

Enjoy.

Simple Health Tips on an Index Card
Simple Health Tips on an Index Card