Catégories
Programmation

WebSocket Serial Gateway

WebSocket Serial Gateway est un outil développé en Python permettant d’accéder à un port série au travers du protocole WebSocket.

Il répond initialement au besoin de pouvoir facilement communiquer avec un appareil via un port série depuis un navigateur. Certes, Chrome permet déjà de le faire après avoir franchi les avertissements de sécurité. Cette solution permet de d’utiliser n’importe quel navigateur et il n’y a aucune limite de sécurité à franchir. A chacun d’analyser les risques encourus et décider si l’utilisation est appropriée.

De plus, le navigateur et le gateway peuvent  être sur des appareils différents, connectés en réseau. Toute application capable de communiquer avec le protocole WebSocket est utilisable (Unity, Processing, P5.js, etc.)

Code source et instructions disponibles sur:
https://github.com/prossel/WebSocket-Serial-Gateway

Catégories
Programmation

Connect Meta Quest to Eduroam

Eduroam is a Wi-Fi network available around the world to university staff and students. Being able to use it with Meta Quest headsets is very convenient.

Catégories
Programmation Terminal

Web page in kiosk mode

Bash script to run a simple HTTP server with Python and open Chrome in kiosk mode, with some flags to allow access to serial port or automatic download. Written and tested on macOS.

Catégories
Fusion 360

Share a Fusion 360 design

You made a great design using Fusion 360 and now you want / need to share it with someone else. Here are a few possibilities.

  • Share a link to view the design in a browser
  • Share the project and manage permissions
Catégories
Bureautique

Nommer ses fichiers comme un pro

Différentes versions d’un fichier. Mais quelle est la plus récente ?

Les suffixes OK, OK OK, final, final final, etc… pour différencier les versions d’un fichier ne sont pas très pratiques et ne donnent pas une image très professionnelle.

Il y a plusieurs manières de faire mieux. Voici trois propositions.

Catégories
Git Programmation Unity

Smartly git ignore assets from the store

# Add to .gitignore

!Assets/Oculus/
Assets/Oculus/*

# ... read more for full config

In a Unity project, we often use assets from the Asset Store or other sources which sometimes happen to be quite big. For example Oculus Integration uses almost 700 MB. There is no point adding this whole folder to git when you can download it from other source. This is especially important when your git repository has size limits, like with GitHub, Gitlab, Bitbucket, etc.

This post shows a way to ignore such a folder, but still track important files such as configuration or a readme file to track the current version and location to install/update.

Catégories
Programmation Unity

Lancer une app Unity sur Oculus Quest

Une application créée avec Unity par exemple, n’apparait pas directement parmi les autres applications sur un casque VR Oculus.

Cette vidéo montre où la trouver et comment la lancer sans devoir la recompiler à chaque fois.

En option, elle montre aussi l’étape d’activation du suivi des mains, ce qui est demandé si l’application le nécessite, comme dans cet exemple.

Catégories
Programmation

Enregistrer une vidéo 16:9 sur Oculus Quest

Vidéo 1920 x 1080 enregistrée directement sur Oculus Quest 2

Par défaut, les vidéos enregistrées sur un casque de réalité virtuelle Oculus Quest ou Oculus Go sont au format carré de 1024 x 1024 pixels.

Voici comment enregistrer des vidéos au format et à la taille que vous voulez, par exemple 1920 x 1080.

Catégories
p5.js Processing Programmation

Understand and play with translate() and rotate()

p5.js and Processing both have a translate() and rotate() function that basically allows to change default position and orientation of axis.

The p5.js sketch available below allows to play with their parameters and immediately see the result as in this demonstration video.

Catégories
Internet

Compte utilisateur Infomaniak et adresse(s) e-mail

Cet article explique la différence entre un compte utilisateur Infomaniak et son adresse e-mail afin d’éviter les confusions, les problèmes d’accès et savoir quel mot de passe utiliser.