Skip to content

Instantly share code, notes, and snippets.

joshka /
Last active October 14, 2022 19:32
8/Any pin PIO based UART TX code for a Raspberry Pi Pico

Raspberry Pi Pico PIO 8 Pin UART TX

This code creates a UART TX on 8 sequential pins of the Raspberry Pi Pico. The main use case being MIDI splitter devices

The second 16 port implementation should work for any number of pins, but just acts as a pure copy to those pins instead of having individual control over every pin of every byte. Hence while less flexible, the controlling software is simpler (just send a uart byte and it's copied to every pin).

Only tested in the simulator so far.

Used to go from uart_tx.pio.h to uart_tx.h

joshka / Global.asax.cs
Created October 14, 2014 05:56
HTTP -> HTTPS redirect and add HSTS header
// ...
protected void Application_BeginRequest(object sender, EventArgs e)
switch (Request.Url.Scheme)
case "http":
case "https":
joshka / plex.diff
Last active August 29, 2015 14:06
diff plexmediaserver vs plexmediaserver-plexpass aur package tarball
diff -u plexmediaserver/.AURINFO plexmediaserver-plexpass/.AURINFO
--- plexmediaserver/.AURINFO 2014-08-04 23:25:13.000000000 +1000
+++ plexmediaserver-plexpass/.AURINFO 2014-08-17 04:13:21.000000000 +1000
@@ -1,24 +1,20 @@
-pkgbase = plexmediaserver
- pkgdesc = Plex Media Server for Linux
- pkgver =
+pkgbase = plexmediaserver-plexpass
+ pkgdesc = PlexPass Release of Plex Media Server for Linux
+ pkgver =
Build started 9/19/2014 4:46:37 AM.
Project "C:\a\src\WebApplication1\WebApplication1.sln" on node 1 (default targets).
Building solution configuration "Debug|Any CPU".
Project "C:\a\src\WebApplication1\WebApplication1.sln" (1) is building "C:\a\src\WebApplication1\WebApplication1\WebApplication1.csproj" (2) on node 1 (default targets).
Creating directory "obj\Debug\".
C:\Program Files (x86)\MSBuild\12.0\bin\amd64\Csc.exe /noconfig /nowarn:1701,1702 /nostdlib+ /errorreport:prompt /warn:4 /define:DEBUG;TRACE /highentropyva+ /reference:C:\a\src\WebApplication1\packages\Antlr.\lib\Antlr3.Runtime.dll /reference:C:\a\src\WebApplication1\packages\EntityFramework.6.1.1\lib\net45\EntityFramework.dll /reference:C:\a\src\WebApplication1\packages\EntityFramework.6.1.1\lib\net45\EntityFramework.SqlServer.dll /reference:C:\a\src\WebApplication1\packages\Microsoft.AspNet.Identity.Core.2.1.0\lib\net45\Microsoft.AspNet.Identity.Core.dll /reference:C
<Project xmlns="">

Keybase proof

I hereby claim:

  • I am joshka on github.
  • I am joshka ( on keybase.
  • I have a public key whose fingerprint is 926D 6ACA 9B76 8E3C 470F F96E 77AB 325D 0F31 E2F1

To claim this, I am signing this object:

joshka / .AURINFO
Last active August 29, 2015 14:06
plexmediaserver-plexpass archilinux package
pkgbase = plexmediaserver-plexpass
pkgdesc = PlexPass Release of Plex Media Server for Linux
pkgver =
pkgrel = 1
url =
install = plexmediaserver.install
arch = i686
arch = x86_64
license = closed
depends = rsync
joshka / ExceptionalFibonacciCalculator.cs
Created August 2, 2014 05:17
Calculate Fibonacci by using parallel tasks and aggregate exceptions. I did it for the cookie.
using System;
using System.Threading.Tasks;
namespace Fib
class ExceptionalFibonacciCalculator
public int Calculate(uint n)
joshka / Cell.cs
Created April 13, 2013 16:21
Game of life in C#
using System.Collections.Generic;
namespace GameOfLife1
struct Cell
public Cell(int x, int y) : this()
Y = y;
X = x;