infra:tools:kodakportrait
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
infra:tools:kodakportrait [2023/10/28 13:31] – [WIP] ar | infra:tools:kodakportrait [2024/06/26 17:38] (current) – [Current status] ar | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Kodak Portrait ====== | ====== Kodak Portrait ====== | ||
Despite the name, it's 3d. Despite the vendor/ | Despite the name, it's 3d. Despite the vendor/ | ||
+ | ===== Current status ===== | ||
+ | * configuration still in flux, is editable from the web ui as needed | ||
+ | * not operable; todo: | ||
+ | * < | ||
+ | * Z offset configuration | ||
+ | |||
===== General notes/ | ===== General notes/ | ||
- | * the stock print surface is a mirror. | + | * the stock print surface is a mirror, so try not to break it when removing prints or anything. |
- | * the stock nozzles aren' | + | * if printing pet-g, wait for the bed to cool down before removing the print, |
- | * the printer uses 12V PSU, so heating the print surface takes a while | + | * the nozzle on the right (T0; default) is hardened |
- | * the printer uses the hotend on the right as a Z probe; don't be surprised to see the printer using it for probing the bed before print | + | * web interface is available at http:// |
+ | * the printer uses the hotend on the right as a Z probe | ||
* the printer has been klipperified (WIP)! stock slicer won't work anymore! | * the printer has been klipperified (WIP)! stock slicer won't work anymore! | ||
* password for root user is, for now, identical to hswaw wifi password | * password for root user is, for now, identical to hswaw wifi password | ||
- | * host + printer config | + | * host <del>+ printer</ |
+ | * klipper printer config is here temporarily: | ||
+ | * don't do Nix things when a print is in progress; overloads the RPI and makes klipper unhappy | ||
+ | * takes a while to boot; when it's done you should see [[https:// | ||
===== profile(s) for slicer(s) (WIP) ===== | ===== profile(s) for slicer(s) (WIP) ===== | ||
==== PrusaSlicer ==== | ==== PrusaSlicer ==== | ||
- | Very rudimentary config. | + | Very rudimentary |
- | {{ : | + | |
- | (haven't tested with just a single hotend in use, may misbehave, whoops) | + | There's a bed texture and shape included, but they don't get inlined into config; you'll need to set them yourself. Go to " |
+ | |||
+ | When adding profiles for more filaments, you may want to lower the temperature from what you'd probably use on other printers, to compensate a bit for the poor part cooling of this printer. | ||
+ | |||
+ | ==== Other slicers? ==== | ||
+ | When configuring other slicers use this for "start g-code": | ||
+ | < | ||
+ | PRINT_START T0_USED={ is_extruder_used[0] } T1_USED={ is_extruder_used[1] } T0_TARGET_TEMPERATURE={ first_layer_temperature[0] } T1_TARGET_TEMPERATURE={ first_layer_temperature[1] } BED_TEMPERATURE=[first_layer_bed_temperature] | ||
+ | </ | ||
+ | The printer will handle everything on its own through this macro. | ||
+ | |||
+ | This for "tool change" | ||
+ | < | ||
+ | G1 Z{layer_z + 5} F5000 | ||
+ | |||
+ | T{next_extruder} HOT=1 RETRACT=1 | ||
+ | |||
+ | {if layer_num == 0 } | ||
+ | M109 T{next_extruder} S{first_layer_temperature[next_extruder]} | ||
+ | {else} | ||
+ | M109 T{next_extruder} S{temperature[next_extruder]} | ||
+ | {endif} | ||
+ | |||
+ | G1 Z{layer_z} | ||
+ | </ | ||
+ | |||
+ | And this for finishing the print: | ||
+ | < | ||
+ | FINISH_PRINT | ||
+ | </ | ||
+ | |||
+ | Adjust for macro expansion rules of your slicer. As far as I understand, re-creating these in cura-based slicers may not be trivial. | ||
===== Hardware documentation ===== | ===== Hardware documentation ===== | ||
* standard raspberry pi 3b | * standard raspberry pi 3b | ||
- | * standard | + | * standard |
- | * LED driver board connected to the rpi (needs investigating a bit) | + | * LED driver board connected to the rpi (generic 4pin - rgb+ground - pwm-driven ledstrip) |
* removed most of hotglue as it did not hold the connectors anymore anyway | * removed most of hotglue as it did not hold the connectors anymore anyway | ||
Line 51: | Line 92: | ||
===== TODO ===== | ===== TODO ===== | ||
- | * solve filament/ | + | * pressure advance calibration |
- | * moving bambu to the other shelf helped a bit | + | * accelerometer for input shaping |
- | * fully extending slide-out shelf should actually solve this. | + | |
- | * obtain second print surface | + | |
- | * fix camera/ | + | |
- | * klipper raspberry/ | + | |
- | * possibly maybe fix touchscreen rotation properly; right now it's a hack with [[https:// | + | |
- | * rotating the screen should help with legibility a bit; the viewing angles on it are Not Great™ | + | |
===== WIP ===== | ===== WIP ===== | ||
- | This section needs expansion. You can help by prodding my (ar) ADHD brain to do something with it, or pick an item from TODO list yourself. | + | This section needs expansion. You can help by prodding my (ari) ADHD brain to do something with it, or pick an item from TODO list yourself. |
- | * general usage instructions | ||
* slicer profiles | * slicer profiles | ||
- | * [[https:// | + | * obtain second print surface |
- | * will probably move more of the tool change macros to klipper, to make slicer profile creation easier | + | * pl0myk volunteered for handling |
- | * calibration, | + | |
- | * [[https:// | + | |
- | * didn't boot with impermanence enabled for some reason; will need to investigate that later. | + | |
===== DONE ===== | ===== DONE ===== | ||
- | This section needs expansion. You can help by prodding my (ar) ADHD brain to do something with it, or pick an item from TODO list yourself. | + | This section needs expansion. You can help by prodding my (ari) ADHD brain to do something with it, or pick an item from TODO list yourself. |
* hardware documentation (what' | * hardware documentation (what' | ||
* calibration, | * calibration, | ||
Line 77: | Line 109: | ||
* fluidd for webui | * fluidd for webui | ||
* moonraker accessible over network for slicers | * moonraker accessible over network for slicers | ||
+ | * fix camera/ | ||
+ | * solve filament/ | ||
+ | * now on a shelf next to the entrance, between main room and electronics lab | ||
+ | * filament runout sensors - ordered two, will need installing them properly and changing the printer config a bit | ||
+ | * bonus points for making filament a bit easier to insert | ||
+ | * The printer is now 300% more gay! | ||
+ | * Built-in macros change the chamber color at different parts of the print | ||
+ | * Klipper side of the configuration is now done, for the most part | ||
+ | * Moved significant parts of custom g-code in slicers to klipper gcode macros | ||
+ | * Hotends get primed in their respective areas | ||
+ | * converted the printer from 12V to 24V | ||
+ | * rework part cooling; it's abysmal | ||
+ | * https:// | ||
+ | * < | ||
+ | * skewed bed | ||
+ | * the difference between far-left and front-right corners was around 1mm | ||
+ | * {{: | ||
+ | * shimmed the bed enough to reduce the skew to 0.2mm | ||
+ | * {{: | ||
+ | * actual printing area limitations | ||
+ | * embedding the limitations into actual slicer profile is proving to be difficult/ | ||
+ | * visual aids will have to do for now | ||
+ | * {{: | ||
===== Preliminary findings ===== | ===== Preliminary findings ===== | ||
- | * controlled with a normal rpi3 with raspbian | + | * controlled with a normal rpi3 + smoothieboard combo |
* screen is connected over hdmi (+ usb for touch?), 800x480 res | * screen is connected over hdmi (+ usb for touch?), 800x480 res | ||
* camera uses the camera interface | * camera uses the camera interface | ||
Line 84: | Line 139: | ||
* there' | * there' | ||
* doesn' | * doesn' | ||
- | * didn't complain about creating ''/ | ||
- | * on running system, root filesystem is by-default mounted readonly, which is a Good Choice™ on an rpi with sd card; '' | ||
- | * < | ||
- | </ | ||
- | * the printer runs its control panel using chromium pointed at a webserver running locally. that's listening on all interfaces. try http:// | ||
- | * „Myślę, że w tym przypadku masz do czynienia nie tylko z powierzchnią ataku, ale również z objętością” ~ drozdziak1 | ||
* disassembly, | * disassembly, | ||
- unscrew two screws on left and right (4 total) that hold the bottom panel (regular hex bit) | - unscrew two screws on left and right (4 total) that hold the bottom panel (regular hex bit) | ||
Line 95: | Line 144: | ||
- unscrew 4 screws on the *sides* of the metal box holding the electronics (the ones that you see in front of you hold the fans) | - unscrew 4 screws on the *sides* of the metal box holding the electronics (the ones that you see in front of you hold the fans) | ||
- remember to detach the fans when opening the box | - remember to detach the fans when opening the box | ||
+ | ==== no longer relevant ==== | ||
+ | these items referred to stock software/ | ||
+ | * ran raspbian by default | ||
+ | * didn't complain about creating ''/ | ||
+ | * on running system, root filesystem is by-default mounted readonly, which is a Good Choice™ on an rpi with sd card; '' | ||
+ | * password for '' | ||
+ | * the printer runs its control panel using chromium pointed at a webserver running locally. that's listening on all interfaces. try http:// | ||
+ | * „Myślę, że w tym przypadku masz do czynienia nie tylko z powierzchnią ataku, ale również z objętością” ~ drozdziak1 | ||
===== Resources ===== | ===== Resources ===== | ||
- | " | ||
- | |||
Many resources about the printer from, apparently, its actual vendor: https:// | Many resources about the printer from, apparently, its actual vendor: https:// | ||
===== Plans ===== | ===== Plans ===== | ||
- | Would prefer to keep hardware mostly unmodified, except for following | + | <del>Would prefer to keep hardware mostly unmodified, except for following</ |
* replace the e3d v6 with e3d revo (and obxidian nozzles) which is almost a drop-in replacement | * replace the e3d v6 with e3d revo (and obxidian nozzles) which is almost a drop-in replacement | ||
+ | * done | ||
* replace the 12V PSU with 24V | * replace the 12V PSU with 24V | ||
+ | * done | ||
* add filament runout sensors | * add filament runout sensors | ||
+ | * done | ||
* buy angled cables and rotate the screen proper way round. | * buy angled cables and rotate the screen proper way round. | ||
- | * accelerometer | + | * done & undone; viewing angles on the screen are meh; back to rotation hacks |
+ | * accelerometer | ||
+ | * brushes for automated nozzle cleaning |
infra/tools/kodakportrait.1698499910.txt.gz · Last modified: 2023/10/28 13:31 by ar