David590 Posté(e) Janvier 13, 2022 Posté(e) Janvier 13, 2022 (modifié) Bonjour à tous, Je suis en train d'installer le Stealthburner de Voron sur ma cr10 Il est encore en version beta pour le moment mais après quelques tests d'impression le refroidissement semble vraiment bon et je trouve la conception très bien pensée, le tout dans un format très compact avec un look de dingue Il est prévu 3 leds Neopixel (2 pour l'éclairage de la buse et 1 pour le logo qui indique l'état de la hotend, en chauffe, en impression...) Je parviens bien à changer la couleur des leds avec les macros mais je ne vois pas comment le faire automatiquement en fonction de ce que fait l'imprimante, ca fait 2 jours que je tourne en rond , quelqu'un aurait une idée ? [neopixel sb_leds] pin: P1.24 chain_count: 3 color_order: GRBW initial_RED: 0.0 initial_GREEN: 0.0 initial_BLUE: 0.0 initial_WHITE: 0.0 # MACROS # # The following status macros are available: # STATUS_READY # STATUS_OFF # STATUS_BUSY # STATUS_HEATING # STATUS_LEVELING # STATUS_HOMING # STATUS_CLEANING # STATUS_MESHING # STATUS_CALIBRATING_Z # With additional macros for direct control: # SET_NOZZLE_LEDS_ON # SET_LOGO_LEDS_OFF # SET_NOZZLE_LEDS_OFF # # Contributed by Voron discord users wile.e, Tetsunosuke, and etherwalker [gcode_macro _sb_vars] # User settings for the StealthBurner status leds. You can change the status colors and led # configurations for the logo and nozzle here. variable_colors: { 'logo': { # Colors for logo states 'busy': {'r': 0.4, 'g': 0.0, 'b': 0.0, 'w': 0.0}, 'cleaning': {'r': 0.0, 'g': 0.02, 'b': 0.5, 'w': 0.0}, 'calibrating_z': {'r': 0.8, 'g': 0., 'b': 0.35, 'w': 0.0}, 'heating': {'r': 0.3, 'g': 0.18, 'b': 0.0, 'w': 0.0}, 'homing': {'r': 0.0, 'g': 0.6, 'b': 0.2, 'w': 0.0}, 'leveling': {'r': 0.5, 'g': 0.1, 'b': 0.4, 'w': 0.0}, 'meshing': {'r': 0.2, 'g': 1.0, 'b': 0.0, 'w': 0.0}, 'off': {'r': 0.0, 'g': 0.0, 'b': 0.0, 'w': 0.0}, 'printing': {'r': 1.0, 'g': 0.0, 'b': 0.0, 'w': 0.0}, 'standby': {'r': 0.01, 'g': 0.01, 'b': 0.01, 'w': 0.1}, }, 'nozzle': { # Colors for nozzle states 'heating': {'r': 0.8, 'g': 0.35, 'b': 0.0, 'w':0.0}, 'off': {'r': 0.0, 'g': 0.0, 'b': 0.0, 'w': 0.0}, 'on': {'r': 0.8, 'g': 0.8, 'b': 0.8, 'w':1.0}, 'standby': {'r': 0.6, 'g': 0.0, 'b': 0.0, 'w':0.0}, }, 'thermal': { 'hot': {'r': 1.0, 'g': 0.0, 'b': 0.0, 'w': 0.0}, 'cold': {'r': 0.3, 'g': 0.0, 'b': 0.3, 'w': 0.0} } } variable_logo_led_name: "sb_leds" # The name of the addressable LED chain that contains the logo LED(s) variable_logo_idx: "1" # A comma-separated list of indexes LEDs in the logo variable_nozzle_led_name: "sb_leds" # The name of the addressable LED chain that contains the nozzle LED(s). This will # typically be the same LED chain as the logo. variable_nozzle_idx: "2,3" # A comma-separated list of indexes of LEDs in the nozzle variable_thermal_config: { 'extruder': { 'cool_temp': 40, 'leds': 'logo', }, 'heater_bed': { 'cool_temp': 40, 'leds': 'nozzle', }, } # temperatures at which cooling will be considered complete gcode: ; Do nothing [gcode_macro _set_sb_leds] gcode: {% set red = params.RED|default(0)|float %} {% set green = params.GREEN|default(0)|float %} {% set blue = params.BLUE|default(0)|float %} {% set white = params.WHITE|default(0)|float %} {% set led = params.LED|string %} {% set idx = (params.IDX|string).split(',') %} {% set transmit_last = params.TRANSMIT|default(1) %} {% for led_index in idx %} {% set transmit=transmit_last if loop.last else 0 %} set_led led={led} red={red} green={green} blue={blue} white={white} index={led_index} transmit={transmit} {% endfor %} [gcode_macro _set_sb_leds_by_name] gcode: {% set leds_name = params.LEDS %} {% set color_name = params.COLOR %} {% set color = printer["gcode_macro _sb_vars"].colors[leds_name][color_name] %} {% set led = printer["gcode_macro _sb_vars"][leds_name + "_led_name"] %} {% set idx = printer["gcode_macro _sb_vars"][leds_name + "_idx"] %} {% set transmit = params.TRANSMIT|default(1) %} _set_sb_leds led={led} red={color.r} green={color.g} blue={color.b} white={color.w} idx="{idx}" transmit={transmit} [gcode_macro _set_logo_leds] gcode: {% set red = params.RED|default(0)|float %} {% set green = params.GREEN|default(0)|float %} {% set blue = params.BLUE|default(0)|float %} {% set white = params.WHITE|default(0)|float %} {% set led = printer["gcode_macro _sb_vars"].logo_led_name %} {% set idx = printer["gcode_macro _sb_vars"].logo_idx %} {% set transmit=params.TRANSMIT|default(1) %} _set_sb_leds led={led} red={red} green={green} blue={blue} white={white} idx="{idx}" transmit={transmit} [gcode_macro _set_nozzle_leds] gcode: {% set red = params.RED|default(0)|float %} {% set green = params.GREEN|default(0)|float %} {% set blue = params.BLUE|default(0)|float %} {% set white = params.WHITE|default(0)|float %} {% set led = printer["gcode_macro _sb_vars"].nozzle_led_name %} {% set idx = printer["gcode_macro _sb_vars"].nozzle_idx %} {% set transmit=params.TRANSMIT|default(1) %} _set_sb_leds led={led} red={red} green={green} blue={blue} white={white} idx="{idx}" transmit={transmit} [gcode_macro set_logo_leds_off] gcode: {% set transmit=params.TRANSMIT|default(1) %} _set_logo_leds red=0 blue=0 green=0 white=0 transmit={transmit} [gcode_macro set_nozzle_leds_on] gcode: {% set transmit=params.TRANSMIT|default(1) %} _set_sb_leds_by_name leds="nozzle" color="on" transmit={transmit} [gcode_macro set_nozzle_leds_off] gcode: {% set transmit=params.TRANSMIT|default(1) %} _set_sb_leds_by_name leds="nozzle" color="off" transmit={transmit} [gcode_macro status_off] gcode: set_logo_leds_off transmit=0 set_nozzle_leds_off [gcode_macro status_ready] gcode: _set_sb_leds_by_name leds="logo" color="standby" transmit=0 _set_sb_leds_by_name leds="nozzle" color="standby" transmit=1 [gcode_macro status_busy] gcode: _set_sb_leds_by_name leds="logo" color="busy" transmit=0 set_nozzle_leds_on [gcode_macro status_heating] gcode: _set_sb_leds_by_name leds="logo" color="heating" transmit=0 _set_sb_leds_by_name leds="nozzle" color="heating" transmit=1 [gcode_macro status_leveling] gcode: _set_sb_leds_by_name leds="logo" color="leveling" transmit=0 set_nozzle_leds_on [gcode_macro status_homing] gcode: _set_sb_leds_by_name leds="logo" color="homing" transmit=0 set_nozzle_leds_on [gcode_macro status_cleaning] gcode: _set_sb_leds_by_name leds="logo" color="cleaning" transmit=0 set_nozzle_leds_on [gcode_macro status_meshing] gcode: _set_sb_leds_by_name leds="logo" color="meshing" transmit=0 set_nozzle_leds_on [gcode_macro status_calibrating_z] gcode: _set_sb_leds_by_name leds="logo" color="calibrating_z" transmit=0 set_nozzle_leds_on [gcode_macro status_printing] gcode: _set_sb_leds_by_name leds="logo" color="printing" transmit=0 set_nozzle_leds_on Modifié (le) Janvier 13, 2022 par David590 1
Savate Posté(e) Janvier 13, 2022 Posté(e) Janvier 13, 2022 (modifié) Alors je n'ai pas essayé mais il y a ça : klipper-led_effect/LED_Effect.md at master · julianschill/klipper-led_effect (github.com) ou ça -KlipperInfo/mentals-temperature-reactive-leds.md at master · AbomShep/-KlipperInfo (github.com) Modifié (le) Janvier 13, 2022 par Savate
David590 Posté(e) Janvier 14, 2022 Auteur Posté(e) Janvier 14, 2022 Il y a 23 heures, Savate a dit : Alors je n'ai pas essayé mais il y a ça : klipper-led_effect/LED_Effect.md at master · julianschill/klipper-led_effect (github.com) ou ça -KlipperInfo/mentals-temperature-reactive-leds.md at master · AbomShep/-KlipperInfo (github.com) J'ai essayé mais c'est juste des effets en plus, très sympa visuellement , le problème c'est que c'est toujours à déclencher avec une macro alors que j'aimerai que ca se fasse automatiquement Je pense être sur une piste, pour le homing par exemple, en modifiant le gcode d'origine apparemment ca fonctionne, je suis en train de voir si je sais adapter le reste [gcode_macro G28] rename_existing: G28.1 gcode: status_homing G28.1 status_off
Eloura74 Posté(e) Mars 12, 2022 Posté(e) Mars 12, 2022 salut, as tu trouvé? j'essaie vraiment de le faire mais je n'ai que le panneau de couleurs.... hi, did you find it? I'm really trying to do it but I only have the color panel....
David590 Posté(e) Mars 12, 2022 Auteur Posté(e) Mars 12, 2022 il y a 41 minutes, Eloura74 a dit : salut, as tu trouvé? j'essaie vraiment de le faire mais je n'ai que le panneau de couleurs.... Oui il faut insérer les macros des leds où tu le souhaites, par contre je n'utilise pas les macros du stealthburner que je trouvais un peu compliquer à comprendre Voici un exemple de ce que j'ai utilisé, dans mon cas j'ai 6 leds car 2 stealthburner en idex [neopixel my_neopixel] pin: PB0 chain_count: 6 color_order: GRBW initial_RED: 0.0 initial_GREEN: 0.0 initial_BLUE: 0.0 initial_WHITE: 0.1 [gcode_macro led_Ready] gcode: SET_LED LED=my_neopixel RED=0 GREEN=0 BLUE=0 WHITE=0.1 transmit=1 [gcode_macro led_Homing] gcode: SET_LED LED=my_neopixel RED=0 GREEN=0 BLUE=0 WHITE=0.8 index=1 transmit=0 SET_LED LED=my_neopixel RED=0 GREEN=0 BLUE=0 WHITE=1 index=2 transmit=0 SET_LED LED=my_neopixel RED=0 GREEN=0 BLUE=0 WHITE=1 index=3 transmit=0 SET_LED LED=my_neopixel RED=0 GREEN=0 BLUE=0 WHITE=0.8 index=4 transmit=0 SET_LED LED=my_neopixel RED=0 GREEN=0 BLUE=0 WHITE=1 index=5 transmit=0 SET_LED LED=my_neopixel RED=0 GREEN=0 BLUE=0 WHITE=1 index=6 transmit=1 [gcode_macro led_Leveling] gcode: SET_LED LED=my_neopixel RED=0.5 GREEN=0.1 BLUE=0.7 WHITE=0 index=1 transmit=0 SET_LED LED=my_neopixel RED=0 GREEN=0 BLUE=0 WHITE=1 index=2 transmit=0 SET_LED LED=my_neopixel RED=0 GREEN=0 BLUE=0 WHITE=1 index=3 transmit=0 SET_LED LED=my_neopixel RED=0.05 GREEN=0 BLUE=0 WHITE=0 index=4 transmit=0 SET_LED LED=my_neopixel RED=0 GREEN=0 BLUE=0 WHITE=0.1 index=5 transmit=0 SET_LED LED=my_neopixel RED=0 GREEN=0 BLUE=0 WHITE=0.1 index=6 transmit=1 Il faut indiquer le numéro de la led dans index, index=1 pour la led 1, index=2 pour la led 2 ... Si tu n'indique pas le "index", c'est toute la chaine de led qui change de couleur Tu peux choisir la couleur en utilisant une valeur comprise entre 0 et 1 RED=0.5 GREEN=0.1 BLUE=0.7 WHITE=0 Le transmit=1 à la fin sert à actualiser toutes les couleurs en même temps Ensuite il suffit de mettre ces macros où tu veux, par exemple: [gcode_macro G28] rename_existing: G28.0 gcode: led_homing ACTIVATE_EXTRUDER EXTRUDER=extruder SET_DUAL_CARRIAGE CARRIAGE=0 G90 ;mode position absolue G28.0 led_ready [gcode_macro G29] gcode: led_leveling BED_MESH_CALIBRATE G90; mode position absolu G1 X-50 Y250 F7800 led_ready Je te joins mes fichiers si tu veux y jeter un œil macros.cfgmacrosled.cfg
David590 Posté(e) Mars 15, 2022 Auteur Posté(e) Mars 15, 2022 Par contre quelqu'un saurait-il me dire comment commander plusieurs leds sur une seule ligne pour remplacer ca: SET_LED LED=my_neopixel RED=0.5 GREEN=0.1 BLUE=0.7 WHITE=0 index=1 SET_LED LED=my_neopixel RED=0.5 GREEN=0.1 BLUE=0.7 WHITE=0 index=2 SET_LED LED=my_neopixel RED=0.5 GREEN=0.1 BLUE=0.7 WHITE=0 index=3 SET_LED LED=my_neopixel RED=0.5 GREEN=0.1 BLUE=0.7 WHITE=0 index=4 par quelque chose comme ca SET_LED LED=my_neopixel RED=0.5 GREEN=0.1 BLUE=0.7 WHITE=0 index=1,2,3,4 ?
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant