Top 10 Ideas for Successful Continuous Testing

Continuous Testing in 2022. It’s the stuff that Continuous Delivery is built upon. Do it right, and you deliver software at pace. Do it (CT) poorly, and you get nothing but a script to deliver crappy software just like we always have. CD without CT is just a pipe(line?) dream.

So how do you do it right? Lets take a look at 10 ideas that make Continuous Testing effective and successful:

  1. Automate your acceptance criteria
    • Start with a great acceptance criteria. Now take test automation and prove that you did it. Don’t stop short, don’t wave your hands and say it will work. Prove it with a test. Check it in with the code and run it every time you build. This is your oracle for the future. This is where you start putting coins in the bank for the future.
  2. Make your tests focused and fast
    • Forget end to end if you can. Focus your test on a single thing. Sure, write great unit tests that help show function level quality, but strive to create a test that proves working components. System level functionality (not system integration) – make your tests fast. Make them small, with limited scope. Get in, prove, clean up and get out. If you are doing setup to get to your point, you have failed. Think testability and architecture. Refactor so that your test is small, focused and fast.
  3. Develop and live by a definition of done that includes testing in your sprint
    • Your team must live by the fact that you are not done until you have delivered test automation that proves your code is going to work. Sure, that might not happen but that is the cliff we march to. We may find out that our test was not good enough, but the sprint is not done until we have the completed code and tests to go with it checked in and passing. No excuses.
  4. Make the entire team responsible for quality
    • People say this all the time and don’t live by it. Many times we sit around waiting for quality guy or gal to get the testing done. Wrong. If you are waiting for testing to complete, you are doing it wrong. Complete the testing. Make the testing faster. Do the test yourself. Build better testing. Make the framework measure. Your job is to deliver new features with high quality. Whatever your expertise is, use it. You are responsible. I once heard that the best way for a developer to get better at testing is to give them a pager. Give everyone a pager.
  5. Get skilled. Quit pretending that record and playback works
    • Laugh at the sales guy that brings the record and playback “we can make automators out of everyone” BS. It’s a lie. Always has been, always will be. Get some skills on your team – it takes code and hard work by well paid professionals. Big projects will have quality roles for SME’s and analysts with deep product knowledge but we are talking about Continuous Testing here. Automation. It takes engineering – don’t lie to yourself or get lied to by vendors.
  6. Tell your sponsors that systems without tests will not be delivered
    • Hey PM or Product owner. We write quality code. To do that, we have to write tests. It’s part of our estimates. We won’t be done with the sprint without the test automation. There is no CD without CT. Get over it. No, we will not start working on another feature until this one is done, tested, automated and complete. If you need us to skip test automation, please see #6.
  7. Listen to the tests
    • Thou shall not comment out, delete, cripple, or ignore your tests. You built them. If they are complaining, make them better. If they are failing, listen to what they say.
  8. Fight fragility. Mock, isolate, make the tests small
    • Fragility is your enemy. Make your tests boringly pass all of the time. If fragility is your problem, think testability, observability and architecture. Take the battle to the system under test and the way it is designed if there really is no way to stabilize your tests. Mock and isolate your testing using responders or other service virtualization if you can. Resist giant integration tests when small tests will cover the risk. If they are fragile, get everyone in the room and figure this one out – it’s too expensive to live with.
  9. Co-exist your tests
    • Never, ever let your test automation live in another place. They are first class citizens that should live with your production code (I didn’t say deployed with) and should most often be written in the same languages that the system is. Everyone whould be able to fix them. Never let there be an excuse of “i don’t understand that code” or “that harness is in another solution, get Jane/Jack to look at it”. Nope. Not Continuous Testing. Let them co-exist.
  10. Monitor everything, measure FTW
    • Monitor your systems. Measure your testing. Continuous Testing really works when you instrument your systems from production down to have machines looking at things that may help you diagnose and fix quick a problem that is on tested for initially. When you find problems this way, maybe you should go back, and write some test automation. FTW.

Copyright 2022 HeadRevison.com

Porcupine Tree 2022 Setlist


Really looking forward to the Porcupine Tree concert this weekend in Denver Colorado. If the setlist looks like the last few weeks, this will be a show to see for sure. As I listened through the list, I think this really leans on Gavin – great show for showing off your drum master…

  • Set 1:
    • Blackest Eyes
    • Harridan (Live debut)
    • Of the New Day (Live debut)
    • Rats Return (Live debut)
    • Even Less
    • Drown With Me (First time since 2008)
    • Dignity (Live debut)
    • The Sound of Muzak
    • Last Chance to Evacuate Planet Earth Before It Is Recycled (First time since 2003)
    • Chimera’s Wreck (Live debut)
  • Set 2:
    • Fear of a Blank Planet (First time since 2008)
    • Buying New Soul
    • Walk the Plank (Live debut)
    • Sentimental (First time since 2008)
    • Herd Culling (Live debut)
    • Anesthetize (First full performance since 2008)
    • I Drive the Hearse
    • Sleep Together
  • Encore:
    • Collapse the Light Into Earth (Live debut)
    • Halo
    • Trains

I have seen PT/Wilson many times and this one seems to be another great set. I’m especially looking forward to the Last Chance/Collapse/Muzak/Even Less and some of the other less travelled… I have had trouble getting into the latest Closure/Continuation – but maybe this will spark interest.

What are your thoughts on the show?

Here’s the rest of the Tour :

PORCUPINE TREE
CLOSURE/CONTINUATION TOUR 2022

SEPTEMBER
10 – Toronto, ON – Meridian Hall
12 – Laval, QC – Place Bell
14 – Boston, MA – MGM Music Hall at Fenway
16 – New York, NY – Radio City Music Hall
17 – Philadelphia, PA – The Met Philadelphia
18 – Washington, DC – The Anthem
20 – Chicago, IL – Auditorium Theatre
23 – Irving, TX – The Pavilion at Toyota Music Factory
25 – Denver, CO – Bellco Theatre
28 – San Francisco, CA – The Masonic
30 – Los Angeles, CA – Greek Theatre

OCTOBER
4 – Mexico City, MX – Pepsi Center
7 – Santiago, CL – Movistar Arena
21 – Berlin, DE – Max Schmelinghalle
23 – Vienna, AU – Gasometer
24 – Milan, IT – Forum
27 – Stockholm, SW – Globe
28 – Copenhagen, DK – Falkoner Theatre
30 – Katowice, PO – Spodek Hall

NOVEMBER
2 – Paris, FR – Le Zenith
4 – Stuttgart, DE – Porsche Arena
6 – Oberhausen, DE – KP Arena
7 – Amsterdam, NL – Ziggodome
9 – Zurich, CH – Halle 622
11 – London, UK – SSE Arena, Wembley

ReoLink Security Camera 810A Review 2022

ReoLink has really been upping the game on security camera products over the last few years. One of the most interesting products from a price/performance standpoint is the 810A security camera. This is a IP camera with PoE, onboard SD card availability and a really good app that makes it a breeze to set up and tweak the settings to get things just right.

Take a look at the specs:

Image Sensor1/2.49″ CMOS Sensor
Video Resolution3840×2160 (8.0 Megapixels) at 25 frames/sec
Lensf=4.0mm fixed; F=2.0, with IR-cut filter
Night Vision30 meters (100ft)
PoE PowerIEEE 802.3af PoE Switch/Injector, 48V Active (Not included)
Field of ViewHorizontal: 87° Vertical: 44°
Video Compression FormatH.265
Smart AlarmMotion detection/Human detection/Vehicle detection
OS SupportedPC: Windows, Mac OS; Smartphone: iOS, Android; Web Browser (Edge, Chrome, Firefox, Safari)
Record ModeMotion-triggered recording (default); scheduled recording; 24/7 recording
ReoLink 810 Specs

Setting up the camera is as simple as connecting it to a PoE switch or injector, scanning the 2D code on the camera, and following the prompts. Aside from the drilling and getting the ladder out etc. I had my first camera up in literally minutes.

  • IP66 Waterproof Rating
  • Great App to easily add and monitor cameras
  • No cloud storage fees if you use SD cards in each camera and have reliable internet
  • Integration with Google Assistant on Chromecast connected TV’s
  • Easily share the cameras with other people by simply installing the app and scanning a code
  • UHD 4k Recording
  • Pet/Person/Vehicle detection
  • You can push files to a computer via FTP for 24×7 recording of each camera
  • ReoLink sells a dedicated NVR to store your camera video – bundles with a couple of cameras in the $350 range
  • Did I say no monthly charges for your cameras like Arlo and others?
  • Self hosting your video gives you peace of mind
  • Great night video recording in low light
  • Connect them to other systems like Blue Iris, Zoneminder and Shinobi
  • 2 Year Warranty
  • 4k Video makes 1080p look like the 80’s 🙂

Take a look at the ReoLink 810A and it’s cousin the 811. The wider angle view and integrated lighting of that model may make sense to mix and match depending on your situation. I have tried several other types of cameras over the years, and switching from Arlo to the ReoLink brand has been a win in so many ways. Grab a couple and give them a shot!

Google Assistant Automation is a Mess – Amazon Alexa is Going to Win?

I love an automated assistant experience. I have lighting, heat and air, TV’s, dedicated assistant devices like Hub, phones, you name it. Lately though, the entire system is a flakey mess. Here are just a few of the failures that are plaguing the Google Assistant experience in my house that will likely lead to people looking to Amazon Alexa as a replacement, especially with their ever increasing device integration and open ecosystem:

  • Amazon face recognition on Google Nest Hub Max – settings go missing. The Home app shows it no longer is set to recognize owners/users. Things like reminders and the ability to perform actions like removing a pic from the slideshow stopped working, as it no longer recognizes me. Settings in Google home are greyed out, and only removing the device, setting up facial recognition etc. brings them back.
  • Google Home Nest Max stops recording and alerting activity that it sees. Much like the above, the Max and Google Home settings are jacked without a change on my part. Recording and notifications just stopped working. Greyed out in menus, and cannot connect. Remote Nest app shows that the device is no longer connected to the internet, but the Home app while home just shows the settings are all removed.
  • With the latest patch (December 2019??) Google assistant just stopped working on my phone. I sit in the car and say “OK Google, should I switch to Alexa??”. No response. Not even a snarky reply, as it now doesn’t work at all. Settings again, completely reset. (not to mention the auto screen rotation setting that is re-set every fucking time I get a system update).
  • Assistant devices on new devices like Sonos Beam and Move act like red-headed step children. They are listed as in my home and part of rooms just like any device, but they are ignored like 3rd rate citizens, most of the time they cannot control Nest or anything other than Sonos (poorly) and complain that they don’t know what I am talking about – though the same command works on the Google branded assistants.
  • The new shopping list integration into Bring lists is cool, but half the time I say “OK Google add razorblades to slit my wrists to the shopping list” it puts it into the insanely useless default Google shopping list instead of Bring shopping list. I then leave the store without 5 things and curse automation, harking back to killing trees and using pencils.
  • Routines… OMG. They so rarely work, maybe the team leading routines could at least add a damn “Test this stupid routine out” button so I can tell (much more quickly) that it will never work.
  • Sonos integration – OK this one is not a Google issue I guess, but trying to control a Sonos device using voice is the most frustrating thing in the whole world. Add to that a ridiculously broken Spotify integration, and I never even try anymore – I just use the dedicated apps. This may be a Sonos/Spotify issue, but to the user, Alexa is way better and regardless of that, it feels like a broken Google Assistant. Don’t get me started on other integrations like viewing Arlo cameras on Hub devices, holy crap that sucks. The list can go of literally all day for Sonos. How about “groups”? What about “on all of the sonos devices”? Maybe Shuffle or Repeat? What about… fuck. Forget it…
  • I can’t tell you how sick I am of “I’m sorry I don’t know how to help with that” when I say things that work on a second try. Add to that the “OK Google turn on all the lights” with a response of “12 lights are now off” as I stand in the dark. That makes me want to throw things.
  • Take a look at the user groups that support home automation of Google stuff for the nightmares surrounding IFTTT, HomeAssistant.io etc etc. You will run for the hills. It’s a nightmare.

Scam Alert: Amazon Google Pixel 4 and 4XL Pre-order Scam

Amazon has a pretty good scam going with Google Pixel 4/4XL pre-orders. If you were duped like me into buying from Amazon by pre-ordering the new device, you probably found out today that your order is now going to arrive a month later instead of by the end of the day. I purchased a white version of the phone from Amazon with the same deal, a $100 gift card – comparable to the Play Store $100 credit that was being offered last week, and a great release day delivery date last week when the device was announced.

So what is the scam? Well, if you are like me, today the shipping date slips to 1 to 1.5 months later with a new range of November 22 to December 15th. OK, I get it. Amazon sold something they didn’t have their hands on, and the supply chain failed or something, maybe they took too many orders, whatever. Sad. But the issue here is that they ship the $100 gift card the second you order the device. So you get a $100 card in the mail a day or 2 later, and READ THE FINE PRINT – NO REFUNDS OR RETURNS. WTF! Now I have a $100 forced purchase with Amazon, and no phone. I now get to choose from 2 terrible choices: wait forever for the device and get the deal they promised, or cancel the order and find it somewhere else and BE FORCED to spend $100 on Amazon. That is a SCAM. They probably sold a million devices, with 50% or more likely to cancel when they see the “Oh, sorry you aren’t getting this anytime soon” email, they rack up 50 million dollars in sales DOING ABSOLUTELY NOTHING.

I love me some Amazon goodness, and have been shopping with them since the early days of books only. This experience has really put me in a new place with them though. I think this is really a deliberate move on their part to drive sales knowing that they win, without having to provide an actual product. Maybe I’m wrong. But I’m guessing that there are a bunch of people out there that just got a mandatory $100 purchase forced on them today should they cancel and grab a Pixel somewhere else. Way to piss off a customer base Amazon, you do evil.

OK Google: Just Call Google Assistant Gigi

With all of the Google Home Assistant users out there that clamor for a better alternative to the “OK Google” and “Hey Google” methods of accessing the Assistant mode on your phone or Google Home device, I have often wondered why calling it “GiGi” wouldn’t be the perfect solution. Even better than that would be to have to say nothing at all, and have those devices just know when you are speaking to the intelligent helper, but there is no practical way to do that, as well as no way to solve the implementation of having it always listening and trying to discern what the always on recording of your life means to privacy and recognition of a question asked of the “machine” vs. asking your dog if it’s hungry.

It seems to me that calling it Gigi makes the most sense. Apple uses Siri. Amazon is Alexa. Microsoft is… Well. Who really cares? Making it a woman’s name has precedence. Gigi is a nice name. Easy to say. Google has 2 G’s in it. Saying “OK Google what is the weather today” is way harder than “Gigi what is the weather today”. Two less syllables, and kids can never say Google right anyway (I have a 5 year old). The default voice for Assistant is a woman, so she can now be GiGi. Or GG, or whatever and it totally makes sense.

Google added manners a while back. Fire up Assistant and say “OK Google what time is it” and it responds. If you say “Thank you” you are saying it to a machine that responds to you with a polite response. But saying “Thanks GiGi” would be so much more personal and like your personal assistant, who has a name, who helps you every day, who is a part of your life, who is respected and valued as something other than a machine, that this just really makes sense.

My assistant needs a name. Google assistant is my go to life automator now, and I’m really tired of “OK Google”. Make her Gigi. Make her real. Do some fun stuff with deep fake Max Headroom type personalities that make her a member of my family or something – appearing in mirrors, TV’s, monitors, my Google Home devices, whatever. Have her follow me and use voice recognition or biometrics that have her travel with me to other people’s devices. Make Gigi have a persona that is removed from the machine, and part of my world.

Sonos Move Review: The Speaker You Have Been Waiting For

I have a bunch of Sonos stuff, so let me start off by saying I am a fanboy of the awesome products that they put out. The audio quality of the Sonos line is great, and when you throw in the convenience of great apps, the convenience of linking all of your favorite streaming services like Spotify, and zones, party mode, and Google Assistant and Alexa integration on some of the newer devices – you just can’t go wrong with them.

Then the Sonos Move came along this week (9/2019).

I went ahead and preordered the move hoping that all of the hype would make this just another solid product in the Sonos line. Let me say, I was completely mistaking. This little Sonos is a game changer.

First off, the setup was a breeze as usual. I just plugged it in, opened the app, hit the + button and followed along for a few minutes of connecting, a quick update to the device and it was now a part of the system. I went ahead and added the Google Assistant integration, and it nicely threw me into the Home app and I was able to add it to the home automation devices there.

First up? Well, this thing is pretty. Great design and looks awesome, wherever you put it – and guess what? It’s called the Sonos Move, and you can put it anywhere!

And that is the game changer. I have had bluetooth speakers of all shapes and sizes. The Sonos Move is the top end of this genre though, at just under 10 inches tall – it’s fairly large and as any decent speaker is, heavy too. With that heft comes BIG sound. I mean like really BIG SOUND. Like I look at it with a puzzled look sometimes wondering how they could possibly have packed that into this thing, that while large for a bluetooth device, is pretty small for what this thing kicks out. This easily fills a large room with great dynamic range, impressive bass, and crisp clear highs. It really is amazing for the size.

But the magic is that this speaker sounds like a million bucks, and truth be told, it’s roughly $400 – so part way there – it’s not cheap. But that is the game changer, it’s not cheap. It has an amazing design, with sexy lines, touch buttons, perfect lighting, just enough grill to see the nice sized speakers, a great handle in the back to grab it and move to the deck, or a nice soak in the tub. This thing is portable, and instead of some tinny semblance of music on the go, you bring bass and great all around sound with you.

There are a ton of features packed into this amazing unit. Google Assistant and Alexa are built in, and they work just as well as the dedicated devices in the house we own. There is a set of microphones that magically adjust equalizer settings when you tote it into a new space that dynamically adjust the sound of the unit for the surroundings. The charging ring is a simple affair that charges the unit at lightning speed and acts as a additional stabilizer in it’s “home” spot at 10V, 2.5 amps.

The battery holds a ton of juice and has easily taken all day listening jams without a top-off and has been left alone on stand-by for days, only to come right to life when summoned by the mobile app or PC. You can also hook up a USB-C cable, and depending on the power supply, can charge in that fashion though somewhat slower.

There is a dedicated bluetooth button on the back side for pairing and switching from wifi to bluetooth. This makes it worth every penny. I have seriously grabbed this thing while on bluetooth, walked to my car, thrown it on the seat and rocked out on the way to my destination just as happy as if my awesome truck stereo had been on – all without skipping a beat. Oh, and wait until my camping neighbors hear this thing! They are going to LOVE me! 😉

I’m all in on this new speaker from Sonos. I’ll be buying another to pair for stereo and taking it to the pool, in my car, trips to the park and beach, to picnics with friends and outside while I garden and wash the car. This thing is amazing. I bought into the Sonos ecosystem long ago, and it just keeps stepping up a notch, making me oh so happy that I am the fanboy that I have become. This changes the game.

HOW TO: Calibrate Ender 3 Extrusion

Calibrating your 3D printer’s extrusion rate is a great way to really dial in the quality of your prints. I find that when using the same brand filament I can get away with calculating the extrusion once, and checking it now and again to make sure I’m fairly close. When introducing a new filament or type (like switching from PLA to PETG for example) you probably want to run this quick check again and make sure you are within a few percent for the new stuff. Calibrating is easy, and if you use Octoprint or Repetier Host or Simplify 3D and can send terminal commands, it’s just this simple:

  1. Set your extruder to relative mode by issuing a M83; command
  2. Next mark your filament 120 mm from the entrance to the extruder with a Sharpie
  3. Then tell the printer to extrude 100mm of filament using the G1 E100 F100; command
  4. Now measure the amount of filament yet to enter the extruder. I had 30mm left over. That means that 10mm is not extruded, though the machine settings think it has. So lets fix that now. (If you have 20mm yet to enter the extruder, congrats. You are done and can go get a tasty beverage.)
  5. Lets find out what the current steps/mm setting is on the printer. Enter the command M503;
  6. You will get a bunch of settings returned, and we are looking for the M92 output, mine was:
    M92 X80.00 Y80.00 Z400.00 E93.00
  7. So lets calculate what we need here instead. I had 30mm left over. So 120mm-30mm= 90mm. My printer is pushing 90mm through, thinking it is 100. That is a 10% difference, and pretty significant. The original output above shows that my extruder steps value was 93 (see E93.00 above.) Lets calculate the correct value. A quick formula for this is (original step value x 100) / actual distance. In my case, this is (93×100)/90=103.333
  8. Lets set this value as the new extruder step value with the command M92 E103.333;
  9. And save those settings to the board with a M500;
  10. Now your extruder should be set, so lets test! Run through the instructions again by measuring another 120mm and running the
    G1 E100 F100; command one more time and you should be pretty darn close.

Happy printing! Leave a comment below if this helped your or you have feedback on your results.

How To: 3D Print PETG on an Ender 3

Printing beyond PLA on an Ender 3 can be tricky. Here are a few tips to get you started with printing PETG, a filament that is stronger and has some qualities like better heat resistance than PLA. If you head into a print with PETG using your stock tried and true PLA settings, you may be up for a surprise – it just isn’t that easy. After some testing, here are some tips that will help you get started:

  1. SLOW it DOWN – Running PETG through your Ender 3 is going to be troublesome on many prints running it through at the stock 60mm/s. You need to slow it down. 40mm/s may work, but 30mm/s is probably the sweet spot for this machine and filament. This one is going to be the key to your success. You might get lucky on some prints, like cubes or anything that is pretty continuous in laying down a layer, but for anything with even a bit of complexity, just slow it down.
  2. GET the TEMP RIGHT – This one is going to vary. You can choose a nice test cube and start at the low end of the temp range for the PETG you buy, let it print for a while, and up the temp by 5-10 degrees. Keep track of what you are doing, and when you are done give the layers some pressure with your thumb and find out where the strength and layers are really holding tight. If you head too high, you will get a solid print, but you will end up with stringy prints that take a lot of cleanup or just plain fail. Also, you will note that when you start getting to that sweet spot, the color will start to change from a milky white to clear. This is when you are getting the temp right. I find that most PETG likes it HOT! Try 250C – this may just be your Ender 3 sweet spot too.
  3. FAN all DAY LONG – Sure, let the first layer or two go down without a fan to get a nice adhesion, then blow on! Let the fan run on high, add better cooling by printing a better cooling duct for your machine (I like the PetsFang on Thingiverse – even went with the dual blower version).
  4. BED HEAT – PETG does not require a heated bed, and you may not need any heat there if you have a nice sticky magnetic mat or tape or the like but on glass and some other surfaces you may find that getting the surface up to 70C will help a bunch with keeping the print down, without warping or just plain coming loose.
  5. CLEAN the NOZZLE – Going from PLA to PETG or any other high temp filament is a huge bump up over what you have been using for PLA. Heat up your hot end to 250 degrees and let it sit for 15 minutes and clean it very thoroughly – pulling off everything you can find, even wire brushing around before you get started. You will not be happy if you skip this step and find an overnight print that has lumps of that awesome orange PLA that has dripped into your new PETG piece of trash.
  6. FLOW – Increase the flow (OK maybe decrease – but usually increase). PETG needs it hot, and if your hot end doesn’t keep up (slowing it down as I said in #1 helps a BUNCH) it will lay down layers that don’t have enough material. Use your slicer to increase the flow to 105% or more and see if the layers go down happier. This one you will need to test yourself. If you are doing a bunch of PETG prints, you may even want to calibrate the machine to the filament and your extruder to get it just right.
  7. THINK SUPPORT – Here you may want to just rethink some of the support that you are planning on printing for your model. I have found that the support blocking in Cura is useful for PETG sometimes – eliminating support that is unnecessary and causing you stringing issues that bleed into the quality of the finished product. Mess around here and find out which supports are going to work, and which are failing you. Another great thing to look into (in addition to standard brims potentially) is the ability to support your support with support brims – lol. Check it out in Cura 4.x, you can add brims to your supports while keeping skirts as your starting layer.
  8. BABYSIT those first few layers – and give them a a helping hand if need be. The first few layers are key to a great print. Babysit them for a while and use tweezers and clippers to remove anything that you can easily remove without stopping the print. Often a bunch of stringing or pulled over support issues can be solved by removing the offending clumps early on, making new layers take over and saving your print. This goes for any type of filament, but taking the time with your PETG will pay off even more in my experience.
  9. Lastly, use a profile for your slicing software that has some great extrusion and speed settings for retraction. This one should get you going for PETG if you are using Cura:

3D Printing Layer Shift Troubleshooting Tips

Nothing is less fun than finding that your long print on you 3D printer has failed due to shifting. Here are a few tips to look into if you find that you are having a shifting issue with your printer.

  • Check your belts. If you have belts on your specific printer, make sure they are really tight. Look at your print and determine which axis is shifting. Focus on that belt. A great tip here is to mark your belt and motor gear when you start a print with a sharpie, and see if you are getting slipping. Tighten. Repeat.
  • Check for missed steps. Same as above, mark your belts if you have them. This will show you what might need some tightening.
  • Check the voltage on your stepper motors. Find out what the voltage should be for your stepper motor drivers, use a multi-meter and make sure you have enough voltage heading into them (my Ender 3 for example has upgraded TMC2130 steppers, the correct voltage for these is about .76V)
  • Try different infill patterns. Some patterns jerk the printer around so much that it just can’t keep up, and you will get a shift. Start with a simple infill pattern in your slicer and see if it helps
  • Use a different slicer. I have used Cura, and found that some prints just don’t behave with whatever infill I use, due to the sliced output file. I keep Slic3r on my workstation and load it up there, usually with “different” results – sometimes a complete success, other times with clues to what might be tweaked elsewhere
  • Move the object in your slicer. Sometimes people have success with just moving the object off center in the slicer before exporting it to the printer. Try this if it’s small, otherwise make sure you go through the list above first – or risk printing some plastic trash
  • Slow down the print. My printer defaults to 60mm/s print speed. Some of the objects that I print just don’t like that speed, so slow it down! Try 40mm/s or something and see if your results vary.
  • Replace your stepper. Find the offending stepper driver, and replace it. If you don’t have another on hand, swap the offending axis driver with one that seems to work in your machine and print a test to find out if ordering a replacement might be in the cards for you

Do you have tips that would help with figuring out shift issues with your 3D prints? Let us know in the comments below. Happy printing!