I’m a couple of weeks into 3D printing with a Creality Ender 3 S1 Pro. My initial impressions are: tl;dr: mechanically good, firmware bad. Either install synman’s pro firmware (requires a screen downgrade) or klipper (drops the screen and requires a raspberry pi — I went with MainsailOS) and you’ll have a very good printer for the price.
Here’s my best 3D Benchy so far, printed in 55 minutes in PETG using Klipper
Pros:
Cons:
M413 S0
command added to the start g-code in your slicer (or changing to a different firmware, which you should do anyway). Here’s a comparison of the exact same part with and without “resume on power loss” enabled, both printed back when I was using the stock firmware: I tuned mine up with the usual tools until I was satisfied with the prints using the stock firmware. Then I installed klipper and set up pressure advance and input shaping, vastly improving performance and usability.
20mm calibration cubes printed 1) on the stock firmware, 2) Klipper with a speed profile, and 3) Klipper with a detail profile (i.e. slower outer perimeters):
Here’s my current Prusa Slicer config files for the printer itself (Klipper) and my 0.16mm layer height optimal speed print profile.
Here’s what my Klipper START_PRINT
and END_PRINT
macros ended up looking like:
[gcode_macro START_PRINT]
gcode:
{% set TOTAL_LAYER_COUNT = params.TOTAL_LAYER_COUNT|int %}
{% set BED_TEMP = params.BED_TEMP|float %}
{% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|float %}
SET_PRINT_STATS_INFO TOTAL_LAYER={TOTAL_LAYER_COUNT}
G90 ; use absolute coordinates
M83 ; extruder relative mode
M140 S{BED_TEMP} ; set final bed temp
M104 S{EXTRUDER_TEMP - 90} ; set temporary nozzle temp to prevent oozing during homing and auto bed leveling
G4 S10 ; allow partial nozzle warmup
G28 ; home all axis
M190 S{BED_TEMP} ; wait for bed temp to stabilize so that the bed mesh is accurate
BED_MESH_CALIBRATE
M104 S{EXTRUDER_TEMP} ; set final nozzle temp
G1 Z50 F240
G1 X2 Y10 F3000
M109 S{EXTRUDER_TEMP} ; wait for nozzle temp to stabilize
G1 Z0.28 F240
G92 E0
G1 Y140 E10 F1500 ; prime the nozzle
G1 X2.3 F5000
G92 E0
G1 Y10 E10 F1200 ; prime the nozzle
G92 E0
[gcode_macro END_PRINT]
gcode:
M140 S0 ; turn off heatbed
M104 S0 ; turn off temperature
M107 ; turn off fan
# Move nozzle away from print while retracting
G91
G1 X-2 Y-2 E-3 F300
# Raise nozzle by 10mm
G1 Z10 F3000
# Move out of the way
G90
G0 X20 Y150
# Disable steppers
M84 X Y E
From now on I will be making all reaction rolls with this die
Finished the ER rando run by pivoting to the ever-reliable blasphemous blade. I tried to deal with Fire Dragonkin+Placidusax with rot daggers and the ornamental straight swords, but it just wasn’t happening. Farum Azula was a breeze, with Godskin Horah Loux, Field Trip Rennala and Fire Giant. Godskin Duo replaced Gideon Ofnir (continuing the theme of duo fights in that arena), which also wasn’t much of a challenge.
Unfortunately, Gideon had moved one step ahead as the first phase of Godfrey/HL, followed by Mohg, Lord of Blood. Two of my least favourite fights, but blasphemous blade prevailed.
I was getting pretty tired of the rando at this point, but my patience was rewarded when Leonine Misbegotten of the Golden Order was followed not only by Elden Apostle, but also Elden Noble, resulting in a four-phase final boss fight culminating in the dramatic defeat of… Elden Snail.
First Elden Ring randomiser attempt highlights so far:
Started out with dual rot daggers, quickly found Ornamental straight swords, Millicent’s Prosthetic and consecutive attack tear for a no-brainer dex build
Malenia, the Fell Omen. I’m good at the Malenia fight… in her arena, with a level 125 character. Stormveil is off-limits for most of the game, but it doesn’t prevent progress.
First hard wall was Valiant Gargoyles, The First Elden Lord. Their poison clouds can almost fill the entire arena. Eventually got them with Death’s Poker and a +10 Mimic Tear, well-supplied with rotten meat dumplings for healing.
Smooth sailing through the underground and mountaintops until Fire Giant turned out to be ice lightning dragonkin into Placidusax. Time for a break, I’ll figure out how to deal with them later. Maybe dig out the rot daggers again…
#TIL tvtropes.org has a bizarre registration policy which completely rejects accounts from “suspicious” IP addresses, even if you prove in an extended email conversation that you’re a regular human who just wanted to make one small edit.
|🔵|-|🔵| |-|☕|-| |🐧|-|-|
$50 per month patrons vs $5 per month patrons, 1761 edition
From imslp.org/wiki/Lessons_for_the_Harpsichord_(Jones%2C_John)
Finally got koreader and plato set up on my Kobo, and calibre set up for managing and converting ebooks. The default {author}/{title}
file structure for moving ebooks to the reader doesn’t work at all for me, but fortunately(?) calibre supports no less than three different template languages allowing for very flexible ebook organisation schemes. These can be configured by opening the “Configure this Device” menu and editing the “Save Template” field.
I ended up using this little script to organise books in a way which makes navigation easy for my collection:
program:
# If the book is in a series, make a folder for that series, and ensure books are in order
# by prepending their series index to their file name.
if (field('series')) then
strcat(field('series'), '/', field('series_index'), ' - ', field('title'))
# Otherwise, if a book has tags, make a folder for the first tag and put it there.
elif (list_count(field('tags'), ',') > 0) then
strcat(sublist(field('tags'), 0, 1, ','), '/', field('title'))
# Otherwise, simply place the book at the top level for easy access and future sorting.
else
field('title')
fi
A couple of books ended up in the wrong folders, presumably due to some error with tag ordering or metadata syncing, but it was quick to clear up manually in the filesystem.
For anyone who wants to play current patch Hollow Knight enemy randomiser but is confused about where to find it and doesn’t want to wade through/sign up for discord: here is the google docs list of HK mods linked from discord. Enemy Randomizer [1.5 port] is the one you’re looking for
If playing with item rando, I’d recommend NOT randomising boss geo or the coloseums, as both seem buggy and unreliable.
Heads-up for anyone in need of some OPA1642 op-amps, Mouser has a few in stock, get ‘em while they’re hot
Never realised scorpion flies have such long noses
Not the most notable, but possibly my favourite #CityNatureChallenge 2022 sighting: a dancing caterpillar!
Sadly, this isn’t an extremely rare musical species which will revolutionise animal rhythmic entrainment research! It’s a defensive behaviour triggered in this case by the fly which I was actually trying to photograph.
#CNC 2022 Day 4 Highlights — was pretty tired at this point so just went for a short walk through the Laaer Wald. Not much of note, but I did finally get to see a bristly millipede
Also found a buzzing spider and a weevil with an amusingly long nose
That’s a total of 260 observations over the four days, of which 106 have already been IDed to species. I’ll wait a few days before posting my usual unique and notable species analysis, and will update it a few times as more observations get IDs.
#CNC 2022 (belated) Day 3 Highlights! Rain during the day, so I went out at night.
Several Flat-backed millipedes and Blue Ground Beetles
A little Flower Longhorn Beetle and a Laena viennensis
A Bronze Ground Beetle and a Four-spotted Carrion Beetle
#CNC 2022 Day 2 Highlights! Only 90 observations today, despite much more time outside — yesterday cleared out the low-hanging fruit.
I think there’s a European pond turtle hiding in this picture somewhere
This Aesculapian Snake was much less camera-shy!
And I finally saw an Ant Woodlouse
#CNC 2022 Day 1 Highlights! Spent a few hours wandering around Wienerberg and ended up with 97 observations (so close to a clean 100!)
Many Greater Bee Flies
Some tiny jumping spiders
And an obligatory hamster