Projet

Général

Profil

@Julien Oculi

Présentation

Stage: 18/12/2023 - 12/01/2024
Projet actuel: #⌛ Plantes connectées revival
Contact:

✉️: oculi.julien.t@gmail.com
🌐: julienoculi.com

Projets

✔️ Tuto FreeCAD - Dé à jouer

Dates Statut Catégories Liens
18/12/2023 - 18/12/2023 Terminé modélisation 3D, FreeCAD, Cura

FreeCAD model
Cura slice

Model
STL

✔️ Remise en état imprimante 3D "Raise3d Pro2 Plus"

Dates Statut Catégories Liens
18/12/2023 - 19/12/2023 Terminé maintenance Raise3d Pro2 series

Inventaire filament 3D fournit

  • PLA [x3] (x1 red, 2x white)
  • PVA [x2] (x2 natural)
  • HIPS [x1] (x1 white)
  • PP [x1] (x1 natural)
  • PET-G [x3] (x2 blue transparent, x1 translucent)
  • Nylon [x1] (x1 clear)
  • colorFabb XT [x1] (x1 black)
  • Tribo [x3] (x2 white, x1 yellow)

Diagnostic imprimante

  • Axes
    x y z
    Montée ✔️ ✔️
    Descente ✔️ ✔️ ✔️
  • Bed
    Leveling Température
    ✔️
  • Nozzles
    Left Right
    Extrudage ✔️ ✔️
    Température ✔️ ✔️
    Alignement
  • Camera
    Photo Vidéo
    ✔️ ✔️
  • Connectivité
    USB Wi-Fi Ethernet
    ✔️ ✔️ ✔️
  • Impression
    Nom Bench État Durée impression
    Dé tuto (taille 30%, hauteur de couche 0.05mm) ✔️ Satisfaisant 14min

Remise en état de l'axe z

  • Courroie et moteur OK








  • Nettoyage complet (acétone) et re graissage (graisse silicone) de l'axe z (guides et filetage).

Réalignement des têtes d'impression

Problème: la buse de droite tombe lors de l'extrusion malgré le serrage.

Essai: démontage complet du bloc d'impression, inspection et resserrage.
Résultats:

  • Alignement réussi (⚠️ attention chaque buse s'aligne indépendamment car changement de hauteur suivant buse d'impression utilisée ⚠️)
  • Vis de maintient du porte buse droit usé (léger tremblement de la buse), ⚠️ ne pas serrer trop fort ⚠️

Tuto remplacement et alignement des buses

Maintenance

  • Re graissage axes guides (x, y)
  • Bed leveling
  • Planéité du bed
  • Test connectivité (USB, wifi, Ethernet)



  • Test impression (#Tuto FreeCAD - Dé à jouer taille 30%)
  • Test impression (#Tuto FreeCAD - Dé à jouer taille 100%)



  • Alignement des buses
  • Ajout tube PTFE temporaire pour la buse de gauche (⚠️ diamètre tubes en stock trop petit ⚠️)

Documentation

Ajout et rédaction de la page machine Raise3d_Pro2_Plus.

✔️ Test impression bi matériaux "Raise3d Pro2 Plus"

Dates Statut Catégories Liens
19/12/2023 - 19/12/2023 Terminé impression 3d, ideaMaker, thingiverse Model - Alduin Dragon High Poly FIXED

Slicer : ideaMaker
Paramètres :

Aide, Video
Bed : 80°C
Bed : 100°C
Extrudeur droit : 230°C
Extrudeur droit : 250°C
Couvercle fermé
⚠️ Bien nettoyer le bed ⚠️
Extrudeur gauche 205°C (défaut)
Préréglage "Rapide" : + support (tout les supports, support extrudeur de gauche, remplissage support extrudeur de droite, support adaptatif)

✔️ Mise en place client VPN Wireguard sur Debian

Dates Statut Catégories Liens
19/12/2023 - 19/12/2023 Terminé linux, vpn

How to Debian
How to Ubuntu

Problème de configuration, interface démarré mais trafic non routé.

✔️ Test d'impression multi matériaux sur raide3D Pro2 Plus

Dates Statut Catégories Liens
20/12/2023 - 20/12/2023 Terminé impression 3d, modélisation, freeCAD, ideaMaker, raise3D

Tampon Coh@bit PLA/TPU

Modèles source (FreeCAD + STL) :

tampon_cohabit.zip

Paramètres ideaMaker :

Preset TPU + support (PLA)
Corps (PLA)
Tampon (TPU ⚠️ penser à imprimer en miroir ⚠️)
Les 2 modèles sont superposés pour tester la double extrusion (pas d'assemblage nécessaire).

Impression :





Détails du résultat :






Test du tampon après nettoyage et ponçage :

✔️ Réparation freeze CR30

Dates Statut Catégories Liens
21/12/2023 - 21/12/2023 Terminé creality, maintenance

Flash du firmware CR-30 1.5MM(thickness) Belt Firmware.

⌛ Plantes connectées revival

Dates Statut Catégories Liens
20/12/2023 - En cours FreeCAD, Raspberry PI, code

Relance du projet plantes connectées. Départ à blanc, infos à venir.

  • 8/01/2024 Étude des précédentes avancées, échange technique avec @Quentin Perret.
  • 9/01/2024 Demande de contact/renseignment Vegetals Signals. Réalisation d'une lib de contrôle des GPIOs du rapsberry sources
  • 10/01/2024 Configuration rapsberry pi (gowest.local). Installation boitier vegetalsignals sur alimentation usb via breadboard.
  • 11/01/2024 Essai analyse connexion série avec ST-Link/v2

⌛ Plastic scanner

Dates Statut Catégories Liens
20/12/2023 - En cours électronique

Étude du projet en cours.

⌛ Recherche de slicer pour la CR30

Dates Statut Catégories Liens
22/12/2023 - En cours CR30, slicer, impression 3D https://www.autodrop3d.com/blackbelt-slicer.html, https://grid.space/

Slicers compatible "printer mill"

Slicer Test Commentaire
ideaMaker (Béta) - ideaMaker for Belt 3D Printer
ideaMaker (Profil) - Creality CR-30 3DPrintmill
ideaMaker (Profil) - NAK 3D Designs CR-30 Profile
ideaMaker (Profil) - Metalhead Printing CR-30 Profile - PLA/PLA+
ideaMaker (Profil) - Metalhead Printing CR-30 Profile - Wood PLA - 0.6 Nozzle
CURA BlackBelt
Kiri:Moto

✔️ Réparation du QR code cohabit - IUT

Dates Statut Catégories Liens
10/01/2024 - 12/01/2024 Terminé server, admin, apache, SSL https://acme.sh, https://httpd.apache.org/docs/2.4/fr/configuring.html

Motivations

Le QR code à l'entrée de l'IUT pointe vers "www.cohabit.fr" qui est bloqué en raison d'une erreur de certificat (certificat pour git.cohabit.fr).

Résumé

  • Création d'un certificat SSL pour www.cohabit.fr avec acme.sh. Utilisation de Let's Encrypt en raison d'un timeout ZeroSSL trop grand (>20 sec).
  • Ajout du certificat SSL à la conf apache.

✔️ Correction et améliorations redirections sites

Dates Statut Catégories Liens
11/01/2024 - 12/01/2024 Terminé server, admin, apache https://httpd.apache.org/docs/2.4/fr/configuring.html

Motivations

  • "www.cohabit.fr" redirige vers "cohabit.fr//"
  • "projets.cohabit.fr" pointe vers un fichier texte inutilisé.

Résumé

  • Suppression du double slash pour la redirection de www.cohabit.fr
  • redirection de "projets.cohabit.fr" vers "projets.cohabit.fr/redmine"

✔️ Mise a jour et refactoring du script de gestion des certificats SSL

Dates Statut Catégories Liens
12/01/2024 - 12/01/2024 Terminé server, admin, SSL, bash https://acme.sh

Motivations

Changement suite à l'ajout du domaine "www".

Résumé

  • Fonctionnalité: Ajout du nouveau domaine "www".
  • Refactor:
  • Découpage du script principal en sous script
  • Renommage des fonctions fonctions et simplification globale du script.
  • Suppression du dead code.
  • Doc: Ajout de bashdoc à toutes les fonctions exportées.

✔️ Correction logo site et typos

Dates Statut Catégories Liens
12/01/2024 - 12/01/2024 Terminé server, SVG, php, laravel

Motivations

  • Le logo du site est croppé en bas de quelques pixels.
  • Typo orthographe page d'accueil du site.

Résumé

  • Correction du viewport du SVG.
  • Correction typo.

✔️ Ajout d'utilisateurs Redmine

Dates Statut Catégories Liens
12/01/2024 - 15/01/2024 Terminé admin, redmine, typescript, dev https://www.redmine.org/projects/redmine/wiki/Rest_api

Motivations

  • Ajout d'une liste d'utilisateur à partir d'un fichier CSV.

Résumé

  • Développement d'une librairie pour faciliter la communication avec l'API de Redmine (sources, doc)
  • Création d'un script pour créer les utilisateurs et les ajouter à un groupe dédiée. (sources)

✔️ Ajouts support actions forgerjo

Dates Statut Catégories Liens
12/01/2024 - 15/01/2024 Terminé admin, fargejo, linux, docker, podman, ci/cd https://forgejo.org/docs/v1.20/user/actions/

Activation des actions sur Fargejo via fargejo-runner.

Motivations

Activaton des actions dans Forgejo afin de réaliser dans un premier temps des déploiements automatiques.
Example : "script-shell-acme" (voir détails : Julien_Oculi) déployé sur le server quand on effectue un push sur la branche master.
Dans un second temps pour le déploiement automatique d'autres fichiers de configuration du server qui seront tracké sur le git.cohabit.fr pour pouvoir les mettre à jour sereinement.

Résumé

Installation de Forgejo runner via Forgejo Actions administrator guide.

  • Activation de la fonctionnalité "actions" et utilisation de https://code.forgejo.org pour les actions de base (DEFAULT_ACTIONS_URL) dans /etc/forgerjo/app.ini.
  • Installation du runner à "partir du binaire"https://forgejo.codeberg.page/docs/v1.20/admin/actions/#installation-of-the-binary dans usr/local/bin/forgejo-runner.
  • Utilisation de podman en tant que backend pour l'exécution des workflows.
  • Registration du runner depuis la cli sur http://localhost:10001.
  • Déplacement du fichier .runner dans /etc/forgejo-runner/.
  • Génération et copie du fichier config.yml dans /etc/forgejo-runner/.
  • Modification de la valeur runner.file: .runner en chemin complet pour éviter les erreurs avec systemctl.
  • Ajout du service forgejo-runner dans systemctl (inspiré de AUR : forgejo-runner.git et Exemple de service de type simple).
    [Unit]
    Description=Continuous integration for Forgejo
    
    [Service]
    Type=exec
    ExecStart=/user/local/bin/forgejo-runner -c /etc/forgejo-runner/config.yml daemon
    PrivateDevices=yes
    PrivateTmp=yes
    Restart=on-failure
    TimeoutStopSec=300
    
    [Install]
    WantedBy=multi-user.target
    
  • Test du runner à partir de Quick start example de Forgejo.

✔️ Maintenance Forgejo Actions (remote actions)

Dates Statut Catégories Liens
17/01/2024 - 22/01/2024 Terminé admin, fargejo, linux, docker, podman, ci/cd https://forgejo.org/docs/v1.20/user/actions/

Erreur lors de l'exécution d'actions issue de repository distants (ex: code.forgejo.org/actions).

Motivations

Pouvoir importer des actions utilitaires tel que checkout@v4 .

Résumé

L'action n'est pas accessible dans le filesystem du runner.

node:internal/modules/cjs/loader:1031
  throw err;
  ^
Error: Cannot find module '/var/run/act/actions/actions-checkout@v4/dist/index.js'
    at Function.Module._resolveFilename (node:internal/modules/cjs/loader:1028:15)
    at Function.Module._load (node:internal/modules/cjs/loader:873:27)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
    at node:internal/main/run_main_module:22:47 {
  code: 'MODULE_NOT_FOUND',
  requireStack: []
}

Le clonage du repository distant semble fonctionner :

Extracting content to '/var/run/act/'
  ☁  git clone 'https://code.forgejo.org/actions/checkout' # ref=v4
  cloning https://code.forgejo.org/actions/checkout to .cache/act/actions-checkout@v4
Cloned https://code.forgejo.org/actions/checkout to .cache/act/actions-checkout@v4
Checked out v4

L'exécution fonctionne :

Removing .cache/act/actions-checkout@v4/.gitignore before docker cp
/var/run/act/actions/actions-checkout@v4
  🐳  docker cp src=.cache/act/actions-checkout@v4/ dst=/var/run/act/actions/actions-checkout@v4/
Writing tarball /tmp/act14809708 from .cache/act/actions-checkout@v4/
Stripping prefix:.cache/act/actions-checkout@v4/ src:.cache/act/actions-checkout@v4/
Extracting content from '/tmp/act14809708' to '/var/run/act/actions/actions-checkout@v4/'
executing remote job container: [node /var/run/act/actions/actions-checkout@v4/dist/index.js]
  🐳  docker exec cmd=[node /var/run/act/actions/actions-checkout@v4/dist/index.js] user= workdir=
Exec command '[node /var/run/act/actions/actions-checkout@v4/dist/index.js]'

Le binding semble aussi fonctionner :

Binds:[/run/podman/podman.sock:/var/run/docker.sock]

Solutions

Fix temporaire, ajouter un fetch manuel avant chaque import, ex:

jobs:
  test:
    runs-on: docker

    steps:
      - name: 'FIX: fetch actions/checkout@v4'
        run: curl -vL --create-dirs -o /var/run/act/actions/actions-checkout@v4/dist/index.js https://raw.githubusercontent.com/actions/checkout/main/dist/index.js

      - name: Setup repo
        uses: actions/checkout@v4

✔️ Maintenance Forgejo Actions (local fetch)

Dates Statut Catégories Liens
17/01/2024 - 22/01/2024 Terminé admin, fargejo, linux, docker, podman, ci/cd https://forgejo.org/docs/v1.20/user/actions/

Problème de copie du repository courant dans le runner lors du setup avec actions/checkout@v4

Motivations

Corriger le problème pour pouvoir créer des actions complexes (ex: synchroniser un repo avec un server).

Résumé

Le git fetch sur http://localhost:10001 échoue car le port du container n'est pas exposé. Impossible de l'exposer car déjà utilisé.

Tentatives :
  1. On modifie l'address du runner tel que dans /etc/forgejo-runner/.runner on ai address = https://git.cohabit.fr.

Pb: on a une erreur 403 Connection refused première investigation sur un possible routage infructeuse (ip, route, iptables indisponibles dans le conteneur).

  1. On change la config dans /etc/forgejo-runner/config.yml et on utilise le réseau de l'host container.network = "host"

Solutions

On utilise temporairement le network de l'host jusqu'à la correction du problème de routage.

Ressources