lördag 2 december 2023

How to Prep one's Boots for Winter

This is mostly quite obvious stuff - like ramming in an open door - but the true purpose of the post is actually to write down the recipe on DIY leather conditioner for safe-keeping.

The most important step to prepare one's boots for winter usage is, of course, to wear a second pair of thick enough wool socks over your ordinay socks. That goes a long way. The second most important step is to have a good insole. I prefer wool ones. This is basically enough for winter and - by just adjusting how heavy socks one is wearing - can be used all year around.

But one trick I just recently stumbled upon that makes a lot of difference for colder days is to also add a plastic mesh insole under your wool one, to trap some air and thus give better isolation and warmth and also help keep the wool insole dry. This actually plays out pretty well if you, like me, have a standing desk in the office and is too lazy to change footwear when at work.

It is, of course, a bit sad that the mesh insoles are made of plastic but I imagine that wooden ones might break too easily and that textile fiber based ones might compress too easily - but perhaps metal ones should be a possibility? Anyways, it also seems to be a military thing - mine are the kind the Swedish army uses but I've also seen Czech ones for sale on the web.

In the picture above, I've turned the plastic mesh insole from the stripped boot upside down, so you can see the ridges and gorges that is doing the air-trapping. The side that should be facing up against your wool insole is just flat with holes.

In the not yet stripped boot, you can also see how you always should take the insoles out of the foodbed and place them in the boot-shaft when you're not using the boot, to make them dry quicker and be ready for next time you put your boots on again.

Finally, regardless of winter or summer, you should clean your boots when dirty and regulary treat them with leather conditioner to prevent the leather from drying out and cracking and overall prolong the lifespan of your boots (and remember that a good cobbler probably can resole your boots as the outer sole is likely to wear out before the upper boot).

I spent some time of searching for a good recipe of DIY leather conditioner and let me tell you, there are surprisingly many out on the Internet! But I kept searching until I found one that I liked the look of (although I should probably spent years on testing them all out on actual leather instead, but in the end, I'm only human). The following recipe has A) just a few ingredients and B) just organic ingredients - no syntetic or mineralbased oils. Here's the web-page where I found it: https://propolis-ratgeber.info/lederpflege-selber-machen/

DIY Leather Conditioner

  • 5 parts coconut oil (or olive oil)
  • 4 parts Lanolin (i.e., woolfat)
  • 1 part beeswax (2 parts for a firmer creme)
Melt in a double boiler (or over a water bath), whisk to mix, let cool. Apply thinly with soft cloth. Allow to soak. Buff out any extra.

torsdag 23 november 2023

Disaster! The Perils of a Cheap ProMicro and How to Save One's Homebuilt Daily Driver

After having used my second Isogherkin prototype as my daily driver at work for over two years, it suddenly happened. As I was packing it into the case one morning after a day of working home to bring it to the office, the USB port on the ProMicro MCU snapped right off, despite having been drenched in hot-gun glue (not enough glue, it seems...)
Despair! What a sinking feeling to the stomache...
Well, not much to do - needed to whip out the soldering iron and desolder it, pin by pin.
Damned little sucker...
OK, but that the USB port on the ProMicros are pretty flimsy is a well-know fact. Luckily, there are other MCUs around that has addesses the issue by instead having a through hole mounted USB port. For example, the Elite-C is one of those and also have the good taste of having an USB C port, more pins, and multiple other advantages over the ProMicro while still being a drop-in replacement for it. It is somewhat more expensive though. Furthermore, I already had an Elite-C at home for another project that I haven't gotten around to do yet, so I quickly settled on soldering it to the Prototype instead.

The three row pins done:

All done:
In theory, I could have soldered each row and column to the same pin as on the ProMicro - then I would have been able to just flash the old image onto the Elite-C and everything should just have worked. Instead, I tried to make a more tidy use of the Elite-C pins - D1 to D3 for the rows and B0 to B7 and F4 to F7 for the rows, but then confused F5 to F7 with the pins on the opposite side of the MCU. Not a big problem, as it is just a matter of updating the pins in the QMK code. Or so I thought. It turns out that QMK have gone through a lot of changes during the last couple of years and I quickly found out that it wasn't trivial to re-create the Isogherkin firmware in the new style in an evening. Alas, my old checkout refused to build with Python errors, probably due to the OS having moved on... It looked like I would have to go the long way and be without my daily driver for weeks, but then I found a checkout on my old Chromebook(!) that still was in a preserved enough eco-system that it still allowed me to compile - so I updated the pins to match the actual ones used on the Elite-C, compiled, exported the image to another laptop that actually could flash, too (Chromebooks generally cannot flash MCUs), flashed the Elite-C and - hey Presto! - I have my daily driver working again! But next step will be to do the homework and modernize my Isogherkin QMK firmware code to match the current QMK standards (then it can start to grow outdated again).

fredag 6 augusti 2021

Slant Board Build with Scrap Wood

In the Starretts' and Glen Cordoza's Deskbound they recommend having a slant board under your standing desk, to further add variation to your standing habits (stand on it to stretch the calves, use it as a foot rail, etc). Since I've used a standing desk at work close to ten years, I figure it was about time to get myself a slant board, but the nice US wooden ones cost a fortune in shipping and customs and the locally available ones were just too plastic, so I checked out the photos of a nice one online and set out to build something similar myself. Here's the result:

As can be seen below, the top board is not one but two joinced pieces of some upscale panel that the contractors left after our kitchen renovation the other year. After I had sawed the uneven side straight, it was 75 cm long, so after cutting it in half and joining the to pieces together (and fixating them with a couple of screws), the top board is almost exactly 37.5 x 37.5 cm (just under 15 x 15 inces). Most commercial wooden ones are around 13 x 16 inches, so close enough.

For the supporting part, I used 120 x 28 mm Sibirian Larch we had left over since we rebuilt our terrace the other year. Figuring that if a right triangle with equally long legs have the other two angles at 45 degress, we should end up at 15 degrees if we make one of the legs three times as long as the other. Since the boards are 120 mm wide, we should thus take a 360 mm long piece and cut it diagonally. That worked out very well - especially since that diagonal according to Pythagoras' theorem would be just under 380 mm and thus matches the length of the top board very well.

EDIT (2021-08-09): OK, the simple heurestic is of course flawed. Actually calculating the trigonomics shows that with the opposite leg 120 mm and the adjacent 360 mm, we get the true angle with tan-1(1/3) which gives ~18.43 degrees. Close to 15 but not quite 15. The same way, the last "third" won't be at 30 degrees but at tan-1(2/3) or ~33.69. Look like I would have needed a 448 mm long diagonally cut board to really get a 15 degrees angle (tan-1(120/448) ~ 14.995 degrees).

Finally, given that the top bord already had a number of convenient recesses, I gave up on making the slant board adjustable at exact degrees of angle and just cut a suitable piece of board with slanted end, fastened it with hinges - slightly off centre to prevent it from falling down between the two bottom boards - and verified that I could use it to have the top board fixated at a number of different angles with at least one with the top edge half-way up my shin to work perfect as a foot rail.

Working beautifully!

As I intend to use this first one mostly at home without shoes, I'm not sure whether any anti-slip tape really is needed, but it sure looks nice with it added. Now I just hope I will be able to muster up enough scrap wood to build a second one to have at work.

torsdag 10 juni 2021

Today, I Finished the First Jar of DIY Shaving-soap and Three Ingredient Deodorant

I had planned to make a post about the Aball and Ploopy Nano trackballs I built since last post, but then this morning the first of the three jars of DIY Shaving-soap of the last post ran out, so I thought I should mention that.

However, as impressive it may sound with a jar from a relatively small batch lasting seven months, I must confess that I on average only shave once a week - so it lastest about 30 shavings. On the other hand, as I still experiment on how to get the perfect, thick, lasting foam, I tend to work way too much soap into the brush, so I've been wasting some of it - especially when I've poured a table-spoon of water into the jar to loosen the surface up while showering, that really reduces the life of the jar. Between retained mosture and our recent warm spell, it was more mushy cream than hard soap in the jar this morning. That's really why it ran out this morning.

While on the topic of DIY hygiene products, I've actually gone against the principle of using as few ingredients as possible and increased the ones for my deodorant from one to three (an increase of 200% ;-) ). I was happy using pure Potassium Alum deo sticks but then came across an recipe in Martina Johansson's and Fanny Lindkvist's book "Giftfri" (Poison-free): equal parts coconut oil, bicarbonate, and starch. The recipe listed corn starch but I used potatoe starch instead since I figure that a lot more of the latter is produced locally in Sweden than the former.

Surprisingly, it really doesn't get sticky but seems to be quickly absorbed by my skin and works equally well as the Potassium Alum sticks - and if I ever would be trapped somewhere without food and starving, I could sustain my life a little longer by eating the oil-bicarbonate-starch deodorant, something that would work with the crystal Potassium Alum one! :-)

fredag 30 oktober 2020

DIY Shaving Soap

Since I am so happy with my homemade shampoo soap bars (I'm on my third batch now - each batch usually lasts around 10 months), I wanted to see if I could find a manageable recipe for homemade shaving soap as well. In all honesty, I've ever only tried one commercial shaving soap and one commercial shaving cream, but never been really happy with the foam from either of them. This probably have a lot to do with my brush-whipping technique, too, but it cannot hurt to try with a DIY shaving soap, can it?

However, most of the recipes online calls for a gazillion ingredients while I want more of a redux recipe. I took me quite some time, but eventually I stumbled upon this excellent thread by enthusiast soap-maker JBLA with his promising, small batch recipe with just stearic acid, coconut oil, water, potassium lye, and extra glycerin (when making soap, some glycerin results naturally but in the soap factories, that glycerin is allegedly taken out and used/sold for other purposes, but extra glycerin increases the soaps moisturising capabilities). 

I use to make my shampoo soap bars using cold process soap making but since the creator of this recipe recommended the hot process for this shaving soap, since it otherwise traces really quickly due to the stearic acid. Hence, I fired up our trusty double-boiler and used that to simmer the soap mixture for a bit over two hours. This has the benefit of letting me use the soap as soon as it has cold down without any need of letting it cure for four weeks.

I had already saved a few suitable jars since before but also used the jar the coconut oil came in. Here is how it turned out:


So how did the shaving soap turn out? Not bad at all! It definitely matches the commercial brands of shaving soap and cream I have used before, but I still haven't got the perfect technique for making a rich, lasting foam happen. Possibly, I need a better cup to whip it in for that, but I get by with loading my brush and generate some foam directly on my face - enough to make the actual shaving pretty efficient and my skin feels rather good afterwards.

As with all other DIY experiments, one have to do some extended evaluation (for instance, I had to give up on the DIY toothpaste...), but this shaving soap seems pretty promising.


söndag 12 juli 2020

An Isogherkin (or a long Gherkin or a narrow Planck) Build Log/Write-Up

"-Hey dude, why did you build a 3x12 Isogherkin when you just could have tried it out on the three lower rows of a 4x12 Planck?"

Well, I actually did just that, but the early keymap tries on the Planck indicated that a protoype 3x12 keyboard was motivated and I wanted to build a keyboard of my own, for the kicks of it and for practice. As you can see below, the build of this prototype didn't exactly reach tip-top quality in all phases, showing that the practice was sorely needed.

Background


Many years ago now, I had a colleague whom used a private HHKB in the office, which fascinated me and prompted me to go for a mechanical keyboard of my own, a 60% Vortex Pok3r. It was fun to program it, but the programming had its limitations and by now I had got wind of qmk and that led me to get a 60% GH Satan kit that I soldered together and had lots of fun programming and flashing with QMK. By now, I had discovered the mechkeys online scene and had seen lots of really cool keyboards, like the 3x10 Gherkin mini-keyboard from 40procentclub that I on the one hand felt an urge to own but didn't acquire as I realised that it wouldn't work for me. Instead I got my first Jack Humbert's excellent 4x12 Planck - rev 4 off Massdrop. Once I had developed a keymap ("Nordic off-by-one iso") that worked really well for me, I got myself a rev 6 Plank directly from olkb.com and a Datamancer wooden case from Massdrop, so I could have one at home and one at the office (lots of colleagues forgot whatever errand brought them to my desk and instead discussed my Planck and keyboards with me).

For a while, this worked great - pressing space together with a modifier on a full-size keyboard out of Planck habit is a pretty harmless error. Then I got interested in the qmk combos feature and realised that I only used a subset of the bottom row keys on my Planks.

Converting Escape, Backspace, Tab and Enter from space-involved layer 1 keys to layer zero combos worked excellently and as I wanted to try out a split keyboard, too, I quickly put my haircross on Foostan's CRKBD, which looks a lot like a potential end-game for me. I got a kit for it from KeyHive but have yet to get around building it.

Instead, I launched into this Isogherkin experiment.

Keymap


These are the goals with the Isogherkin keymap:
  • it should maximise the use of the muscle memory of full-size Iso (Nordic) keyboard users
  • i.e., everything should be close to where it logically would be on a full-size Iso (Nordic) keyboard
  • as much as possible should be crammed into the default layer
Just like with my "Nordic (Swedish) Off-by-one Iso Planck" keymap, this is the basic inspiration:


The central alphas on a Iso keyboard are 12 keys wide - a great fit for a 4x12 Planck or a 3x12 Isogherkin. Also, the num row keys between Escape and Backspace are 12, too, just like the number of Function keys.

Now, here's how to use that fact to reach our above listed goals:


  • All the Isogherkin keys primarily map to the same keys that are outlined in red on the above picture of my laptop keyboard.
  • But KC_NUBS is left-Shift when held and KC_NUBS when tapped (LSFT_T(KC_NUBS))
  • Then the edge modifiers are two key combos where one logically would expect them to be: Escape in the top-left corner (Q and W), Backspace in the top-right corner (KC_LBRC and KC_RBRC), Tab top-left second row (A and S), Enter in the top-right second row (KC_QUOT and KC_NUHS). Although do note that since an Iso enter is a vertically long key, we could have made it KC_RBRC and KC_NUHS or KC_NUHS and KC_RSFT instead)
  • I really rarely use Caps Lock, so I am fine stowing it away on some other layer
  • The bottom row by necessity get combo heavy, since the Isogherkin are lacking the Planck's fourth row
  • The most important combo is B and N as space when tapped and layer 1 when held. It didn't work with TT(1, KC_SPC) even with Sevanteri's qmk fork so here some code is due (I also should implement repeating spaces after an initial tap)
  • V and B and N and M enters layer 2/numbers row and layer 3/function keys, respectively. Here I should add some code to make them emulate TT(<layer>) rather than MO(<layer>)
  • C and V and M and KC_COMM are LAlt and Ralt, respectively
  • Z and X and KC_DOT and KC_SLSH are LGui and RGui, respectively
  • KC_SLSH and KC_RSFT makes RCtl, as expected, but for LCtl, we needed Sevanteri's qmk fork in order to be able to use LSFT_T(KC_NUBS) and Z as the combo, without having to write code of our own to implement the "LSFT_T:iness"
  • Another thing Sevanteri's qmk fork is needed for is to make it possible to combine several combos, like to write a @ - the layer 2 combo V+B and the AltGR combo M+KC_COMM and shift and W.

Challenges

  • That the arrow keys ends up on layer 1 is no biggie, nor CapsLock as I so rarely use it, but that Delete have to do it as well is a bit sad. Also, real afterthought has to be put into where to place Page Up, Page Down, Home and End - preferably logically grouped with the arrow keys
  • KC_GRV, of course, also ends up on layer 1, on the top-leftmost key (Q) - but I never use it. Do you? 
  • My sense of order is a bit upset by the homing keys, F and J, not being on the same distance of the keyboard centreline. Instead, J is directly to the right of the centre while F is three columns to the left of it. I do appreciate that they are far from the centre of full-size keyboards, too, especially the ones with numpads, but it still irks me...
  • I hope Sevanteri's qmk fork might solve it, but otherwise, there seems to be some challenges with combining multiple combos, like LAlt and Tab to cycle through Windows or Ctrl-Alt-Delete
  • At some point, I will implement a mouse layer as well, as that is something I really like about qmk.
  • A left hand-only ctrl-z is impossible when Z is a part of the LCtl combo... (EDIT 2021-01-26: Actually, if you strike a combo, you can keep it activated by keeping one key pressed and then tap the other, so it turns out I can do a left hand-only ctrl-z after all!)

Build

Now, how to build a Isogherkin prototype? Handwiring one with a real top-plate? Naa, let's go for 40procentclub super-cool Tetrominoes:


I should emphasis that KB of 40PercentClub does point out that the Tetrominoes would only work well with a solid plate to support the switches. If I ever deem the Isogherkin usable enough to warrant a real keyboard, I will need a solid plate - but for this prototype, let's go for the Tetrominoes without support.


Taping them together carefully.


And soldering the Tetrominoes together. It seems I didn't tape them together hard enough or that I should somehow soldered them from the other side as well, because it ended up with a slight banana-bend in the resulting PCB...


Then the through the hole diods are due. They should be directed towards the square hole - but do note that that means different directions on different Tetrominoes!


I'm saving the legs of the diods to use to socket the Promicro with.


As can be seen, I didn't keep all the diods pressed down through the holes well enough... This is good practice for future projects or keyboard kits, though.


To connect the rows, I use 0 Ohm resistors, as recommended by 40PercentClub. As can be seen on the fourth one from the camera on the left side, not all of them got professionally soldered either...


Now let's get started on the switches! Red Cherry MX:es from AliExpress (all tested to be working with a Multimeter).

AND, YES, OF COURSE THEY SHOULD HAVE GONE ON THE SAME SIDE AS THE DIODS AND RESISTORS! 

By doing this stupid mistake, the prototype keyboard will be using the diods and resistors as feet to rest on. Far from ideal...


All done! But another reason to use a solid top plate is that the holes are big enough for the switches to turn just a little and some of them turned a little in each others directions... I hope they won't be too close so that the key-caps will touch...

I also tested all switches on the PCB with the multimeter and found one column end terminal to be a dud - but the one directly under, on the other side of the Tetrominoe, worked, so either I solder the wires on the opposite side of the column or on the bottom rather than the top of that column terminal.


The Promicro flashed OK and this is already a usable Isogherkin, even if it is a tad bit harder to use the jumper to connect the right column pin with the right row pin - and don't get me started on combos - but it sufficed to map out and verify all pins.


Time for another practical lesson - let's practise on socketing a Promicro.


So far, so good.


I really could have cut the pins closer to the solder - but I wanted to have the GND and RST pins a little longer to simplify resetting the Promicro.


I should probably been more patient and got myself some more suitable cables, but I had already got so far, so I wanted to get the prototype Isogherkin working as soon as possible. Hence, I am working with prototype board cables. At least they're in multiple colours.


Things got messy quickly... It was a good idea to socket the Promicro, but the question is whether or not the socket took so much beating that the Promicro would be impossible to pry out of it... Once, I had to use a knife to cut through the short-circuit I had soldered between to pins. I also by mistake messed up the order of the cables and had to fix that in code by reordering the column pins...


One pin on the socket got so totally destroyed along with the terminal of the matching cable that I had to trim the end of the cable and solder it directly to the Promicro. So now we do know - at least for this cable, the socketing of the Promicro is not working...


It's a wonder that they don't short-circuit each others! But despite all the despair, it was quite a fun and educational challenge!


This prototype, with it's pointy cables, isn't exactly case-friendly. Nevertheless, it's just intended as a live prototype to put the concept to the test.


Dressed with keycaps. You can see how the absence of a top plate and my naivety when soldering the switches have made quite a few keys a little funnily oriented... But I have a fully functional Isogherkin prototype!

First time I tried it out, I discovered that while the intuitive order of pins in MATRIX_ROW_PINS worked, I had to reverse the order of the pins in MATRIX_COL_PINS as the keyboard initially had left to right ordered columns. How lucky that I just had to reverse the MATRIX_COL_PINS and reflash.

First Impressions

  • The prototype is really fragile. It would be quite easy to break it in half (but it is only a prototype)
  • It's easy to write text on
  • It's a bit harder to use for coding (V-B+M-COMM+U for a left curly bracket)
  • It will take a while to either get the TAPPING_TERM and COMBO_TERM just right - or learn to live with/adjust to them
  • The bottom row combos are easiest to strike with one's thumbs but a lot harder with one's other fingers - especially the pinkies
  • I don't like the fact that I seem to have to add code for any combinations of combos that might be needed (if nothing else, too much code will not fit the memory of the Promicro)
  • Regardless of whether I will ever deem the Isogherkin really usable or not, this experiment has been a really rewarding project, to equally amounts entertaining and educational

söndag 24 november 2019

The Gamified Timed Static Contractions Extended

Quite a while ago, when I had hit a stubborn plateau with my counter-weight assisted Chin-Ups, I decided to replace them - at least for a while - with "gamified" Timed Static Contraction (TSC) Pull-Downs and Pull-Overs as per Drew Baye's book "Timed Static Contraction Training", since it had worked very well for me with my gamified TSC Squats.


Above, you can see my combined rig for the Gamified TSC Pull-Downs and -Overs. The Phidgets' load-cells are the same as I use with my Squats, as are the off-picture bridge to my laptop. The DIY handles (PVC pipe, chains, and carabiners) I use with a underhand grip for the Pull-Downs are old ones from another, ancient project. I added the webbing loops for the Pull-Overs (left in Swedish is vänster and right is höger, hence the V and H - they need to be marked as if they are switched, they won't be level with each other, due to differences in the hooks and chains...).

Only this week, I also got around to craft myself a piece of webbing for Chest-Presses - yepp, I've kinda-sorta hit a plateau with my Dumbbell Bench Presses lately...


It was tailored to be of the right length for Baye-style TSC Chest-Presses but - by sheer luck - it also work for me for his TSC Compound Row. I wonder if that is generally true for the majority of people or if it is more specific to my anatomy?

On the photo, you can also see my newish Phidgets Wheatstone Bridge and Vint Hub taped together with silver tejp. My old bridge, that could be connected directly to a computer, was dead as a Dodo one morning workout (not a good workout, spent waaaay to long trying to revive the Phidgets bridge...). The new Vint Hub also forced me to upgrade to the Phidget22 library and - since it doesn't have any official Ruby support - hunt down a third-party integration in order to adopt my existing Ruby script to work with the new Phidgets library version and hardware. On the plus side, it seems like the new ones are a bit more stable.

With equipment to do gamified TSC Squats, Pull-Downs, Compound Rows, and Chest Presses, I'm only lacking one for Standing Presses - then I would be able to do a complete Big Five workout of the Doug McGuff/John Little "Body By Science" variety but in a Baye:esque TSC interpretation. Perhaps I should dig out the old sewing machine again? ;-)