Skip to content

Instantly share code, notes, and snippets.

View ymollard's full-sized avatar
🐧

Yoan Mollard ymollard

🐧
View GitHub Profile
@ymollard
ymollard / clickshare.md
Created April 4, 2023 16:19
sudo iw dev wlan0 interface add wlan1 type station

Connect to Barco Clickshare via Linux

The USB-C Clickshare is just an external Network card.

Get the password of the Clickshare network and connect to it.

Create a virtual Wifi card so that you can still access the web:

Replace wlan0 by your own card:

sudo iw dev wlan0 interface add wlanvirt type station 
@ymollard
ymollard / invite_body.html
Last active January 10, 2023 21:48
Mattermost invite body personnalisé
{{define "invite_body"}}
<!-- FILE: invite_body.mjml -->
<!doctype html>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office">
<head>
<title>
</title>
<!--[if !mso]><!-->
@ymollard
ymollard / navigate.py
Last active May 31, 2022 13:55
english
#!/usr/bin/env python3
import rospy, actionlib, tf
from move_base_msgs.msg import MoveBaseAction, MoveBaseGoal
from actionlib_msgs.msg import GoalStatus
from geometry_msgs.msg import Pose, Point, Quaternion
def goto(x, y, theta, timeout=120):
goal = MoveBaseGoal()
goal.target_pose.header.frame_id = 'map'
goal.target_pose.header.stamp = rospy.Time.now()
@ymollard
ymollard / persistent_ubuntu.md
Last active May 31, 2026 16:48
Create Ubuntu Live sticks with persistence

1. If you are creating the image

1.1. Create the Live stick

Install DUS/MKUSB :

sudo add-apt-repository ppa:mkusb/ppa
sudo apt update
sudo apt install mkusb mkusb-nox usb-pack-efi
dus
  1. i (install)
@ymollard
ymollard / gpx_gpicsync.md
Created August 18, 2018 00:14
Generating GPX by hand and Geocoding pictures with GPicSync on Linux

Generating GPX by hand and Geocoding pictures with GPicSync

This reminder applies if you have pictures that need geocoding (e.g. to be uploaded on Mapillary) but you have no GPX file. We assume you have captured pictures alonside a path from a start point to an en point and that you are able to redraw this path precisely on a map. The first step will be to generate manually a GPX file, then to synchronize it with your pictures thanks to timestamps, and then GPicSync will geocode.

  1. Download GPicSync, install dependencies and make sure you can run the GUI with Python 2, e.g. python2 gpicsync-GUI.py
  2. Draw you actual path on https://geojson.net/ with these recommandations:
  • Place points at every key location, e.g. when you turned or passed in front of a remarkable location that is easy to distinguish visually on pictures (building, square, monuments...)
  • Find a good compromise between numerous points (= very accurate pat
@ymollard
ymollard / xcode_provisioning.md
Last active August 26, 2018 16:09
XCode provisionging/signing mess

Problem

AppName has conflicting provisioning settings.
AppName is automatically signed for development, but a conflicting code signing identity iPhone Distribution has been manually specified. Set the code signing identity value to iPhone Developer in the build settings editor, or switch to manual signing in the project editor.`

Solution

  1. In left section, double click the project name to open the project editor
  2. In left section, Select the project (AF), select Build settings, then All and Combined
  3. In Signing section select iOS Developer for all entries within Code Signing identity
  4. In left section, Select the target (AF), select Build settings, then All and Combined
@ymollard
ymollard / two_pass_ffmpeg.md
Created May 19, 2017 14:45
Two pass FFMPEG

Your video is 10 minutes (600 seconds) long and an output of 200 MiB is desired. Since bitrate = file size / duration:

(200 MiB * 8192 [converts MiB to kBit]) / 600 seconds = ~2730 kBit/s total bitrate 2730 - 128 kBit/s (desired audio bitrate) = 2602 kBit/s video bitrate

ffmpeg -y -i input -c:v libx264 -preset medium -b:v 2600k -pass 1 -c:a aac -b:a 128k -f mp4 /dev/null
ffmpeg -i input -c:v libx264 -preset medium -b:v 2600k -pass 2 -c:a aac -b:a 128k output.mp4
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@ymollard
ymollard / freecad_svg_to_board.md
Last active August 28, 2016 21:56
Freecad to Inkscape board
  1. Objet vers Chemin
  2. Redimensionner à L+0.1, H+0.1, épaisseur de ligne = 0.1
  3. Dégrouper
  4. Sur chaque couple de noeuds superposés, les sélectionner, ils disparaissent
  5. Maj + J sur chaque couple
  6. Dupliquer la forme globale
  7. Appliquer un miroir (attention : est-ce symétrique ?)
  8. Sur chaque segment partagé de la forme dupliquée -> Alt+Suppr (pas Alt Gr)
  9. Lors de la dernière suppression, la largeur est réduite de 0.05
  10. Aligner verticalement
@ymollard
ymollard / profile_module.sh
Created August 22, 2016 18:07
Profile a python module and plot
pip install pyprof2calltree
sudo apt-get install kcachegrind
python -mcProfile -o module.cprof $(python -c 'import runpy; print runpy.__file__.rstrip("co")') the.module.to.profile
pyprof2calltree -k -i module.cprof