Showing posts with label Github. Show all posts
Showing posts with label Github. Show all posts

Thursday, April 30, 2026

Ender 3 v2 + Cura + Professional Firmware - Setup

A smooth first layer in black PLA on an Ender 3 v2 with a glass bed.

For my future reference, here are the things I had to do to get an Ender 3 v2 tuned and ready after an extensive rebuild. Thanks past-me! Future-me appreciates you writing it down somewhere that you’ll be able to find.

After a spate of nozzle replacements and struggling with adhesion, I added a runout sensor, a new hot end, and a CRTouch. This sent me down a rabbit hole of software upgrades, and it is MUCH easier to use as a result.

Ender 3 v2 with runout, hotend replacement, and CRTouch

I installed the Professional Firmware by mriscoc on GitHub. The features he collects are impossible to find in a better package.

I upgraded my screen firmware for which I needed to track down an 8GB SD Card formatted in a specific way. They’re becoming super rare locally, but photo stores should have them if you’re Amazon-averse. The firmware is in the source zip for the mriscoc firmware above for multiple different models. Use the test GCode included in the how-to before you move on. You want to make sure you have it right as the slicer setup is cumbersome.

Photo of an Ender 3 v2 screen with the thumbnail image test GCode file.

Follow the recalibration steps to tune the hot end and bed PIDs. Then do the extruder steps calibration and maybe even zsteps. Then set your bed mesh and do Bed Tramming calibrations to get the perfectly level bed. This should resolve most calibration issues with your prints.

Now you're ready to work on your slicer.

The CRTouch requires gcode to be added to the beginning of the printer profile right after G28, auto home. Add “G29 L0 J” to test the bed level just before starting a print.

Was also able to get thumbnails on the new firmware and screen combo. This takes a script for your slicer to be placed in a specific spot, and your pc must have Python installed (on Windows, in a terminal, type “python3 -v” to see if it is installed; then follow instructions) along with supporting libraries (“pip3 install Pillow” if needed; I think this might only be needed for Prusa Slicer). The final step to view thumbnail jpgs is to change your filament color in Cura! If it is black (like the Pro PLA I was using from 3D Fuel) it will look like it is not rendering anything!

While I still am struggling with elephant foot and getting my calibration cubes to be strictly dimensional, this Professional Firmware got me printing fewer leveling passes with fewer problems overall. I level once a session now instead of after every print. I'll update if I get those last few issues handled. Wish me luck!

Monday, August 18, 2014

RadioShack LED Strip Driver

I modified the Pololu RGB LED Strip drivers from version 1.2.0 to support Radio Shack's behind the times model that is 30 LEDs controlled in 3-diode sections.  I had to swap the colors around to match this pinout, and I changed the struct to a class (because why not).

The fix was to physically reorder the declaration of red/gree/blue variables in the struct declaration.  This way, when the information is written to the strip, it is sent in a different (and now correct) order.  You can make the fix yourself by changing the file PololuLedStrip.h:
typedef struct rgb_color  {    
   unsigned char red, green, blue;  
} rgb_color;
becomes:
typedef struct rgb_color  {    
   unsigned char green, blue, red;  
} rgb_color;

And here it is on GitHub: https://github.com/RangerDan/RadioShackTricolorLEDStrip


I should probably talk to Pololu on licensing concerns here.  I found the license from the original driver and copied it into my repo.  I couldn't figure out how to fork this properly, so I just re-uploaded it until I understand git a bit better.