User Tools

Site Tools


infra:tools:kodakportrait

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
infra:tools:kodakportrait [2023/10/28 13:23] – [WIP] arinfra:tools:kodakportrait [2024/03/02 16:52] ar
Line 1: Line 1:
 ====== Kodak Portrait ====== ====== Kodak Portrait ======
 Despite the name, it's 3d. Despite the vendor/label, it's surprisingly mod-friendly Despite the name, it's 3d. Despite the vendor/label, it's surprisingly mod-friendly
 +===== Current status =====
 +  * configuration still in flux, is editable from the web ui as needed
 +
 ===== General notes/instructions ===== ===== General notes/instructions =====
-  * the stock print surface is a mirror. don't print PET-G (and possibly ABS?) directly on it. they have a tendency to bond with glass too strongly.+  * the stock print surface is a mirror, so try not to break it when removing prints or anything
   * the stock nozzles aren't hardened. don't print filament with additives using them.   * the stock nozzles aren't hardened. don't print filament with additives using them.
-  * the printer uses 12V PSU, so heating the print surface takes a while +  * the printer uses the hotend on the right as a Z probe
-  * 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+
   * 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 are at: https://code.hackerspace.pl/ar/nibylandia/src/branch/main/nixos/akamanto/default.nix+  * host <del>+ printer</del> config is at: https://code.hackerspace.pl/ar/nibylandia/src/branch/main/nixos/akamanto/default.nix 
 +  * klipper printer config is here temporarily: {{ :infra:tools:printer.cfg.zip |}} 
 +  * 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://klipperscreen.readthedocs.io/en/latest/|KlipperScreen]] interface
 =====  profile(s) for slicer(s) (WIP) ===== =====  profile(s) for slicer(s) (WIP) =====
 ==== PrusaSlicer ==== ==== PrusaSlicer ====
-Very rudimentary config. Works, including hotend swaps, but is a bit slow and messy +Very rudimentary working config. Still needs some adjustments. {{ :infra:tools:kodak.zip |}} 
-{{ :infra:tools:klipper-kodak-portrait-bundle.ini |}} + 
-(haven't tested with just single hotend in use, may misbehavewhoops)+There'bed texture and shape includedbut they don't get inlined into config; you'll need to set them yourself. Go to "Printer settings" -> "General", switch settings mode to expert, click "Set" next to bed shape, and load texture and model there. 
 + 
 +When adding profiles for more filaments, you may want to lower the temperature from what you'd probably use on other printersto compensate a bit for the poor part cooling of this printer. 
 + 
 +==== Other slicers? ==== 
 +When configuring other slicers use this for "start g-code": 
 +<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] 
 +</code> 
 +The printer will handle everything on its own through this macro. 
 + 
 +This for "tool change" (subject to change)
 +<code> 
 +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} 
 +</code> 
 + 
 +And this for finishing the print: 
 +<code> 
 +FINISH_PRINT 
 +</code> 
 + 
 +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 smoothieware v1 +  * standard smoothieboard v1 
-  * 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 87:
  
 ===== TODO ===== ===== TODO =====
-  * solve filament/power switch access +  * pressure advance calibration 
-  * profile(s) for slicer(s) +  * accelerometer for input shaping 
-  * obtain second print surface +
-  * fix camera/audio under nixos +
-  * klipper raspberry/linux "mcu" config. should allow us to control the rgb led strips. +
-  * possibly maybe fix touchscreen rotation properly, right now it's a hack: https://code.hackerspace.pl/ar/nibylandia/src/commit/6741165a4fb6c1c6d97be5bb38ffbaf90ce29fbb/nixos/akamanto/default.nix#L12 https://code.hackerspace.pl/ar/nibylandia/src/commit/6741165a4fb6c1c6d97be5bb38ffbaf90ce29fbb/nixos/akamanto/default.nix#L151-L156+
 ===== 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 
-  * [[https://code.hackerspace.pl/ar/kodak-portrait/src/branch/main/klipper|printer klipper config]] +  * obtain second print surface 
-  * calibration, again, this time with klipper: eyeballed, need to check stuff using calipers +    * pl0myk volunteered for handling this? ;)
-  * [[https://code.hackerspace.pl/ar/nibylandia/src/branch/main/nixos/akamanto/default.nix|nixos]] +
-    * didn't boot with impermanence enabled for some reasonwill 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's connected where and how)   * hardware documentation (what's connected where and how)
   * calibration, at least to the extent reasonable before we have proper slicer profiles   * calibration, at least to the extent reasonable before we have proper slicer profiles
 +  * general UI/UX: 
 +    * klipperscreen running in cage on the touchscreen 
 +    * fluidd for webui 
 +    * moonraker accessible over network for slicers 
 +  * fix camera/audio under nixos 
 +  * solve filament/power switch access 
 +    * 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://www.printables.com/model/760731-angled-e3d-revo-adjustable-cooling-fan-clip 
 +  * <del>obtain more hotend socks, and rework the part cooling solution</del> no longer relevant - switched to revo 
 +  * skewed bed 
 +    * the difference between far-left and front-right corners was around 1mm 
 +    * {{:infra:tools:kodak-skewed-bed.png?direct&400|}} 
 +    * shimmed the bed enough to reduce the skew to 0.2mm 
 +    * {{:infra:tools:kodak-unskewed-bed.png?direct&400|}} 
 +  * actual printing area limitations 
 +    * embedding the limitations into actual slicer profile is proving to be difficult/impossible 
 +    * visual aids will have to do for now 
 +    * {{:infra:tools:kodak-bed-texture.png?direct&400|}}
 ===== Preliminary findings ===== ===== Preliminary findings =====
-  * controlled with a normal rpi3 with raspbian + smoothieboard combo+  * 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 77: Line 134:
   * there's a speaker!   * there's a speaker!
   * doesn't appear to do anything fancy to lock-out mods   * doesn't appear to do anything fancy to lock-out mods
-  * didn't complain about creating ''/root/.ssh/authorized_keys'' 
-  * on running system, root filesystem is by-default mounted readonly, which is a Good Choice™ on an rpi with sd card; ''mount -o remount,rw /'' and later ''mount -o remount,ro /'' work as expected. 
-  * <del>password for ''pi'' user is, for now, identical to hswaw wifi password, passwordless sudo is enabled. 
-</del> 
-  * the printer runs its control panel using chromium pointed at a webserver running locally. that's listening on all interfaces. try http://printers-ip-address:8888/home (check setup -> connectivity -> network) 
-    * „Myślę, że w tym przypadku masz do czynienia nie tylko z powierzchnią ataku, ale również z objętością” ~ drozdziak1 
   * disassembly, at least for getting to the electronics compartment is **trivial**:   * disassembly, at least for getting to the electronics compartment is **trivial**:
     - 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 88: Line 139:
     - 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/firmware, leaving them here for future reference for anyone from the wider internets stumbling upon this page
 +  * ran raspbian by default
 +  * didn't complain about creating ''/root/.ssh/authorized_keys''
 +  * on running system, root filesystem is by-default mounted readonly, which is a Good Choice™ on an rpi with sd card; ''mount -o remount,rw /'' and later ''mount -o remount,ro /'' work as expected.
 +  * password for ''pi'' user is, for now, identical to hswaw wifi password, passwordless sudo is enabled.
 +  * the printer runs its control panel using chromium pointed at a webserver running locally. that's listening on all interfaces. try http://printers-ip-address:8888/home (check setup -> connectivity -> network)
 +    * „Myślę, że w tym przypadku masz do czynienia nie tylko z powierzchnią ataku, ale również z objętością” ~ drozdziak1
 ===== Resources ===== ===== Resources =====
-"stock" slicer (really just an old cura, reskinned), stock firmware images: https://cloud.is-a.cat/s/NsaCHnyDMn8cFWE 
- 
 Many resources about the printer from, apparently, its actual vendor: https://exolicious.com Many resources about the printer from, apparently, its actual vendor: https://exolicious.com
 ===== Plans ===== ===== Plans =====
-Would prefer to keep hardware mostly unmodified, except for following+<del>Would prefer to keep hardware mostly unmodified, except for following</del> xD
    * 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 for input shaping 
 +   * brushes for automated nozzle cleaning
infra/tools/kodakportrait.txt · Last modified: 2024/03/04 22:10 by ar

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki