I tracked down the formula for pyrodex.
45% potassium nitrate
9% charcoal
6% sulfur
19% potassium perchlorate
11% sodium benzoate
6% dicyandiamide
4% dextrin
1% water
Look familiar? 60% of it IS Black Powder. The other 40% of it is probably there just to keep the BATFE from calling it an explosive.
I make this:
Potassium nitrate 64.3%
Ascorbic acid (Vitamin C) 32.1%
Charcoal 1.8%
Iron oxide (red) 1.8%
You can actually mix, ball mill and puck it the same way as you do Black Powder, but there is no binder in it so the "wet" method is better if you don't want to add dextrin. Its like 10% more power with about half the residue. If you add the Dextrin the power drops to where it basically is the same as BP. It is marketed commercially as "American Pioneer Powder" but Vitamin C was not discovered until 1912 and not commercially made until after WW2 so the Pioneers never used it. Its also called "Golden Powder" (as Yellow powder is something else) but every batch I have made is a light slate grey as I don't wait for it to turn yellow. It does not chemically change so there is no point.
Ascorbic Acid costs over twice as much as any of the other components but its still about a quarter of the price of buying powder. Only real advantage is that you can use petroleum based bullet lube as there is no Sulfur in it. Disadvantage is the high ignition temperature which makes it (along with Pyrodex) not a good choice for flintlocks. I do not know if it is less corrosive as I have never left a gun dirty long enough to find out.
I mainly made this to see if I could, and if it worked. I can. It does.