95 liens privés
Les animaux marins ne cessent de nous émerveiller !
Ce site leur est dédié et a pour ambition de mieux les faire connaître en allant à leur rencontre dans leur univers naturel.
Vous pouvez découvrir la page consacrée à chacun d’entre eux, poisson ou mammifère marin. Notre ambition est de vous faire partager notre passion au travers de photos, vidéos, articles scientifiques, récits de rencontres sur le terrain et revues de presse des films, documentaires et livres qui les mettent en lumière.
L’onglet « Actualité » vous tiendra au courant des informations diverses qui concernent le monde marin, ainsi que la sauvegarde de sa faune.
Bon surf !
#!/bin/bash
# @see https://uriesk.wordpress.com/2015/02/13/backup-your-caldav-calendar-with-cadaver/
CALDAV_URL=$1
CALDAV_USER=$2
CALDAV_PASSWD=$3
/bin/cat < ~/.netrc
default
login ${CALDAV_USER}
password ${CALDAV_PASSWD}
EOM
set -e
mkdir -p /tmp/calendar
cd /tmp/calendar
cadaver "$CALDAV_URL" << EOA
mget *.ics
EOA
# check if any files were downloaded
compgen -G "*.ics" > /dev/null || exit 1
FILENAME=/tmp/backups/calendar-${CALDAV_USER}-`date +%Y.%m.%d`.tar.bz2
cd ..
tar cvfj "$FILENAME" calendar
rm -r /tmp/calendar
rm ~/.netrc
echo "Backup file $FILENAME successfully completed on `date`."Technology
Glosbe dictionary
Glosbe dictionary is a place where all languages meet. Here you'll find the translations, sample sentences, pronunciation, images and much more.
MarianNMT
Marian is an efficient, free Neural Machine Translation framework written in pure C++ with minimal dependencies.
NLLB
No Language Left Behind (NLLB) is a first-of-its-kind, AI breakthrough project that open-sources models capable of delivering evaluated, high-quality translations directly between 200 languages.
What is radio-browser?
This is a community driven effort (like wikipedia) with the aim of collecting as many internet radio and TV stations as possible. Any help is appreciated!
- Free for ALL!
- Data license: public domain, software license: GPL, server software: open source
- Open API for usage in own apps
- Everyone is free to use the collected data (station names, tags, links to stream, links to homepages, language, country, state) in their works. I give all the rights I have at the accumulated data to the public domain.
Introduction to pvcreate command
pvcreate command initializes a disk or partition as a physical volume. The physical volumes are used to create a volume group and the LVM logical volumes are created on the volume groups.
Même en ville, où l’éclairage public s’allume dès la nuit tombée, équiper son vélo de lumières adaptées et fonctionnelles est capital. Un récent décret relatif à la visibilité des vélos apporte des modifications importantes concernant leur éclairage.
En matière d’éclairage à vélo, tout n’est pas permis. Le Code de la route liste précisément les dispositifs obligatoires et ceux qui, sans l’être, sont possibles. Un décret vient d’autoriser les clignotants pour indiquer un changement de direction.
Test au multimètre d’un transistor bipolaire inconnu
Pour placer le premier cordon, il y a 3 possibilités, pour placer le deuxième cordon, il reste 2 possibilités. On peut donc faire 6 tests au total :

Un électronicien souhaite déterminer un transistor inconnu en utilisant la fonction diode de son multimètre. Il fait les 6 tests possibles. Lorsque « OL » s’affiche, cela signifie qu’il y a un circuit ouvert.
Seuls les cas a et f affichent une valeur pertinente. Dans ces deux cas, la connexion commune est le + sur la patte 3. La patte 3 est donc reliée aux deux cathodes des deux jonctions. C’est la base d’un transistor NPN.
Si la connexion commune était le -, il s’agirait de la base d’un transistor PNP.
Pour départager collecteur et émetteur, on regarde où apparaît la tension la plus faible : en f. La patte 2 est donc le collecteur
On a donc : 1=émetteur, 2=collecteur, 3=base. C’est un transistor bipolaire NPN.
Cours et montages d'électronique
Que vous soyez passionnés d'électronique, simple débutant, ou curieux, les cours proposés ainsi que les montages sont réalisables par tous.
N'hésitez pas à consulter les différents cours sur l'électronique pour apprendre à pas à pas le domaine électrique. Et si vous êtes vraiment motivés, vous pouvez réaliser différents montages à réaliser vous-même.
Couture & Broderie - Projets & Motifs gratuits
Téléchargez gratuitement des projets de réalisation ou des motifs de broderie.
wget -nd -r --level=1 -e robots=off -A pes -H https://sewingcraft.brother.eu/fr-fr/idees-creatives/motifs-gratuitspyembroidery
Python library for the reading and writing of embroidery files.
Compatible with Python 3.
To install:
pip install pyembroidery
Any suggestions or comments please raise an issue on the github.
pyembroidery was coded from the ground up with all projects in mind. It includes a lot of higher level and middle level pattern composition abilities, and should accounts for any knowable error. If you know an error it does not account for, raise an issue. It should be highly robust with a simple api so as to be reasonable for any python embroidery project.
It should be complex enough to go very easily from points to stitches, fine grained enough to let you control everything, and good enough that you shouldn't want to.
What is CHDK?
- Canon Hack Development Kit
- Temporary – No permanent changes are made to the camera.
- Experimental - No warranty. Read about the risks in the FAQ
- Free – free to use and modify, released under the GPL.

Features
- Professional control - RAW files, bracketing, full manual control over exposure, zebra mode, live histogram, grids, etc.
- Motion detection - Trigger exposure in response to motion, fast enough to catch lightning.
- USB remote - Simple DIY remote allows you to control your camera remotely.
- Scripting - Control CHDK and camera features using uBASIC and Lua scripts. Enables time lapse, motion detection, advanced bracketing, and more.
- more : CHDK Features and CHDK in Brief
Les cartes mères UEFI de nouvelle génération sont livrées avec UEFI Interactive Shell. Le shell interactif UEFI est un programme shell simple (comme bash) responsable du démarrage de votre système d'exploitation. Vous pouvez également utiliser le shell interactif UEFI pour exécuter des commandes et des scripts de shell EFI. Il peut également être utilisé pour mettre à jour le micrologiciel système de votre carte mère.
Cet article vous montrera comment accéder au shell interactif UEFI sur les cartes mères UEFI et utiliser certaines des commandes EFI courantes sur le shell interactif UEFI. Alors, commençons.
Test read/write speed of SD/microSD/USB/SSD/HDD.
Bash script for Mac OS X and Linux to test SD/microSD card or SSD/HDD/USB drive read and write speed.
Usage:
$ bash sd_card_speed_test.sh <path to directory which should be tested>
IE: /Volumes/Untitled and not /dev/disk2
Note: administrator password is necessary for sudo to reset file system cache. Read speed result is incorrect without cache reset.
Paged.js is a free and open-source library that paginates any HTML content to produce beautiful print-ready PDF. The library fragments the content, reads your CSS print declarations and presents a paginated preview in your browser that you can save as PDF.
By paginating content in the browser, Paged.js shows a preview of the PDF output in web browsers. This allows designers to use browsers dev tools (eg. the inspection console built into most browsers) to make changes on the fly and control the rendering of the typesetting.
It’s also possible to use Paged.js within other tools and to extend rendering by adding plugins.
As Paged.js follows the W3C standards, it can easily be a part of a automated workflows thanks to the command line interface version (using an headless browser) that can generate a PDF from scriptable automated commands.
This is a driver for MicroPython to handle cheap displays based on the ST7789 chip. The driver is written in C. Firmware is provided for ESP32, ESP32 with SPIRAM, pyboard1.1, and Raspberry Pi Pico devices.

GAZPAR_ESP8266 (sur module ESP-01)
Un ESP-01 est donc relié au compteur et compte les Pulses disponibles sur une "sortie" tout/rien.
Le compteur Gazpar dispose d'une "sortie" type collecteur/drain ouvert sur un connecteur type JAE MX44 male. Des cordons étanches femelle sont dispobles un peu partout. Des fils équipés avec des broches femelle type Dupont fonctionnent trés bien également. La broche GND semble etre en haut, la broche Pulse en bas. Une pulse est générée tous les 10 litres de gaz.
L'ESP devant etre alimenté par une batterie (Type Chlorure de lithium thionyle, type ER26500 (8.5Ah)/ ER34615 (19Ah)), il doit alors être en trés basse consommation (Deep_Sleep) entre deux pulses. Afin de limiter la consommation (connexion WiFi), le dépot en Wifi sur InfluxDB se fait toutes les N pulses. (configurable en fonction du débit compteur)
L'ESP-01 est placé en Deep_Sleep et reveillé par un PULSE sur la pin RESET. Un compteur est incrementé. Apres N pulses comptées , une connection WiFi est lancée pour effectuer le depot InfluxDB puis retourne en Deep_Sleep. La configuration du WiFi se fait dans le code source.
Gazpar-Light à pour but de récupéré les informations sur le compteur communicant Gazpar. La version Light est minimaliste au possible, elle ne fait que remonter les informations vers Domoticz ( OK ) ou Jeedom ( non testé ) et fonctionne en mode DeepSleep et donc ne fonctionne que lors d'une impulsion du gazpar.
La version full est avec un serveur Web intégré et utilise le SPDIFF, et remonte les informations vers Domoticz ( OK ) ou Jeedom ( non testé )
Montage électronique :
- une résistance de 1 Kohms entre D1 et 3V
- GND connecté à la borne 1 du Gazpar ( celle du bas )
- D1 connecté à la borne 2 de Gazpar ( celle du haut )
Le compteur Linky, installé dans les foyers français, est équipé d’une sortie d’informations numériques, couramment appelée TIC (Télé-Information Client). Celle-ci donne au client la possibilité de se renseigner en temps réel sur sa consommation électrique.

A list of all UTF-8 emojis in bash or zsh
// Paste this code in your console on http://unicode.org/emoji/charts/full-emoji-list.html
const prefix='emoji_'
$$('tr').filter(e =>
e.getElementsByClassName('chars').length > 0
).map(e => {
let chars = e.getElementsByClassName('chars')[0].innerText
if (chars.includes('&zwj')) {
chars = chars.slice(0, chars.indexOf('&z'))
}
let name = e.getElementsByClassName('name')[0].innerText.toLowerCase()
.replace(/[ -]/g, '_')
.replace(/[.:()"“”,’!]/g, '')
.replace('&', 'and')
.replace(/[ãå]/g, 'a')
.replace('é', 'e')
.replace('í', 'i')
.replace('ô', 'o')
.replace('⊛_', '')
.replace('ç', 'c')
.replace('#', 'hashtag')
.replace('*', 'star')
return `${prefix}${name}=${chars}`
}).join("\n")