Text
Checklist — achat d’un Macbook Pro d’occasion
J'ai récemment changé mon Macbook Pro Unibody Mid-2010 pour un Mid-2012 (le dernier modèle à peu près customisable au niveau de la RAM, des disques et de la batterie — les Retina sont pas loin d'irréparables, tous notés 1/10 en réparabilité par iFixit). Vu qu'il n'était plus en vente dans le circuit du neuf, je me suis dirigé vers le marché de l'occasion. Dangereux pour un ordinateur me direz-vous, mais je me suis fait une checklist de vérification sur place pour être sûr de le ramener en bon état...
Cette liste n'est pas exhaustive mais s'assure de certains aspects dont j'ai évalué la fragilité en 7 ans d'utilisation du Macbook Pro Mid-2010.
Les prix sont basés sur ceux de iFixit, pour moi la référence en documentation pour réparer son matériel et en achat de pièces détachées Apple. Et les liens ne sont pas sponsorisés, ça vient vraiment du coeur :)
Charnières d'écran
TEST → ouvrir et fermer l'écran, entièrement puis seulement partiellement ("jouer" un peu avec).
✔ OK → il n'y a pas de jeu dans les charnières, l'écran s'arrête bien à la position dans laquelle on le laisse, qu'il soit proche de la fermeture ou ouvert au maximum.
✖ NOK → il y a du jeu, on sent que l'écran est mal fixé au corps de l'ordinateur. En jouant avec les coins inférieurs (lorsqu'ouvert en face de soi) avec des mouvements de va-et-vient, si on se rend compte qu'il y a également du jeu c'est que les charnières sont complètement déserrées.
SOLUTION → un coup de tournevis — l'étape 12 du tutoriel iFixit nous montre les vis en question (il faut donc suivre le tutoriel jusqu'à l'étape 12).
Clavier
PRÉPARATION → afficher le visualiseur de clavier (Préférences > Clavier > cocher Afficher le visualiseur de clavier, d'Emojis et de symboles dans la barre de menu en bas puis sélectionnez-le dans la barre de menu).
TEST → appuyer sur chacune des touches du clavier.
✔ OK →
Toutes les touches répondent (y compris les combinaisons de touches) et se mettent bien en surbrillance dans le visualiseur de clavier.
Le feeling est le même sur toutes les touches (pas de touche qui semble plus douce ou dure que les autres — témoin probable d'un épanchement de liquide).
Les grandes touches (Entrée, Espace, Majuscule, Shift Droite, Effacer) répondent de façon identique peu importe la zone où on les frappe. En effet, ces touchent sont les quelques unes qui nécessitent plusieurs ressorts (des "tétines" en caoutchouc en l'occurrence) ce qui augmente la probabilité que l'un d'eux soit défectueux. Exception : la touche Majuscule doit être frappée légèrement plus longtemps que les autres pour être activée (it's not a bug, it's a feature !).
✖ NOK → l'un des tests OK ci-dessus n'est pas passé.
SOLUTION → le changer soi-même (150-200$) ou le faire changer.
Trackpad
TEST → appuyer sur toutes les zones du trackpad.
✔ OK →
La zone inférieure (celle du clic) répond bien et le son est sec (*clic*) plutôt qu'étouffé (*cloc*).
Tout le trackpad garde bien la trace des mouvements, il n'y a pas de zone morte.
✖ NOK → l'un des tests OK ci-dessus n'est pas passé.
SOLUTION → le changer soi-même (50-100$) ou le faire changer.
Entrées audio
PRÉPARATION → munissez-vous d'un câble mini-jack mâle-mâle pour relier une source audio à l'ordinateur (par exemple un smartphone ou un baladeur) ainsi que d'un casque ou d'une paire d'écouteurs.
TEST → ouvrir le panneau de préférences Son. Dans l'onglet Entrées sélectionner l'entrée à tester : Microphone interne ou Entrée de ligne.
✔ OK → pour chacune des deux entrées, le niveau d'entrée (situé en-dessous de la zone de sélection) varie bien. Pensez bien à jouer un son depuis votre source externe lorsque vous testez l'entrée ligne.
✖ NOK → l'un des tests OK ci-dessus n'est pas passé.
SOLUTION → les entrées étant reliées à la carte mère, il faudra la changer soi-même (assez compliqué) ou la faire changer. Dans les deux cas c'est très cher donc à vous de juger si ça vaut le coup compte tenu du prix de l'ordinateur.
Sorties audio
TEST → jouer un son depuis iTunes ou un navigateur. Ouvrir le panneau de préférences Son. Dans l'onglet Sorties sélectionner Hauts-parleurs internes puis mettre la balance à gauche toutes puis à droite toutes, pour tester chacun des hauts-parleurs. Brancher les écouteurs et vérifier que le son ne grésille pas et n'est pas sensible si on joue légèrement avec le jack dans la prise.
✔ OK → les deux hauts-parleurs fonctionnent ainsi que la sortie jack.
✖ NOK → le son s'arrête lorsque la balance est d'un côté et/ou le son ne sort pas dans les écouteurs.
SOLUTION → changer les hauts-parleurs soi-même (10-20$) ou les faire changer. Si c'est la sortie jack qui ne fonctionne pas, il faudra changer la carte mère (voir SOLUTION de Entrées audio).
Batterie
PRÉPARATION → télécharger et installer Coconut Battery
TEST → lancer Coconut Battery.
✔ OK → la batterie a moins de 600 cycles de recharge, et sa capacité maximale n'est pas inférieure à 60% de sa capacité initiale (à ajuster selon le prix qu'on vous en propose).
✖ NOK → plus de 600 cycles et une capacité maximale inférieure à 60%, ce qui veut dire qu'elle a déjà bien vécue et ne tient probablement pas plus de 2 heures.
SOLUTION → changer la batterie soi-même au besoin (~90$) ou la faire changer.
Écran, pixels morts
TEST → se rendre sur cette page et ouvrir chacune des pages de couleur dans des onglets. Pour chaque onglet, vérifier qu'il n'y a aucun pixel mort et passer au suivant.
✔ OK → aucun pixel mort.
✖ NOK → il y a des pixels morts.
SOLUTION → selon le nombre de pixels morts, changer l'écran soi-même (400-600$) ou le faire changer.
Autres
Sans trop rentrer dans les détails, il est judicieux de vérifier également que les éléments suivants fonctionnent bien :
Connecteur Magsafe
Webcam
Variation de la luminosité de l'écran
Variation de la luminosité du clavier
Ports USB, FireWire, Thunderbolt / Mini DisplayPort
Lecteur de carte SD
Une bonne chose à faire également est de lancer l'utilitaire Apple Hardware Test qui va tester plusieurs composants internes.
Conclusion
Ces quelques tests et un peu de bon sens vous permettrons de vous assurer de l'état d'un Macbook Pro. Selon le prix auquel vous pouvez l'acheter, il est parfois intéressant de changer quelques pièces soi-même si tout n'est pas nickel à l'achat.
Pour la plupart des pièces ce n'est pas très compliqué, un peu de patience et de délicatesse feront amplement l'affaire — la joie d'avoir réparé un truc soi-même et d'avoir économisé des centaines d'euros au passage n'est pas négligeable :)
0 notes
Text
One-liner to mount your RaspberryPi with NFS
A very useful script for allowing remote code edition on a RaspberryPi
... or really any Debian-based machine :)
https://gist.github.com/raphaelyancey/b9c6a297b7bb52eb8aba1b4de01cb641
Make sure you've installed the packages in the top comment, and added the mentionned line to your /etc/exports file.
Place the script in your home folder (/home/pi by default) and rename it to nfs-start.sh. Allow execution with chmod +x nfs-start.sh.
Each time you want to remotely edit files on your RaspberryPi, launch the script with ssh pi@[hostname-or-ip] ./nfs-start.sh.
Then, on OSX / macOs, open the Finder and hit ⌘ + K. Add your server like so : nfs://[hostname-or-ip]/home and you're done! Next time, the server will already be listed and you won't have to type it again.
0 notes
Text
Treasure hunt music collaboration
TL;DR
You can listen to this ping-pong, but the point is in the realisation so I encourage you to read how it's made (the links make you jump to the desired section below).
Batch #1 (him) Batch #2 (me) Batch #3 (him) Batch #4 (me)
I have a long-time friend now living 500 kilometers away from me, with whom I share similar music tastes. He recently got into making music with analog gear (cassettes recorders and stuff) and I recently switched from a "computer music station" to a full-analog setup in which the MPC1000 takes the main role, making music as a hobbie for almost 10 years now.
This post is a summary of a music collaboration my friend and I are doing. In the web era and easier-than-ever digital collaboration, our not-so-much guideline is to use different supports to record and/or play the successive versions we send each other. In other words, to make it complicated, like a treasure hunt. To create a story, an atmosphere this whole collab. The real guideline is just to have fun making it :)
Batch #1 (him)
This is what I received in the mailbox: the first piece of music to begin our collab. It's a looped cassette. It plays like a usual cassette but never ends, because both ends of the tape are glued together. Here is a tutorial on how to make one.
Here is the extract (WARNING, the level is loud!), played with a cassette walkman
Batch #2 (me)
I loaded the extract in my MPC1000 and worked the loop with a bit of delay from the Boss RE-20
Then I sent my friend a rather mysterious message...
That's morse code printed on a white sheet, on which I dropped some coffee and burned the edges. It translates to an URL on which I uploaded the following bare web page.
Clicking on the image would play the audio in a loop.
Batch #3 (him)
I received a big enveloppe containing what seemed to be an army file with several sheets about a fighter pilot and diverse missions he has done during WWII.
On one of the sheets I could read the following
> It's on April 25th 1994 that the incident occurred. During the exercise, an UFO entered the flight zone and seemed to follow us at reasonable distance. [...] It looked like an observation approach rather than a fighting approach. Jacques M. plane didn't follow the usual procedure, the radio link with him was impossible. The UFO was chased by Jacques M. and taken down at 5.52PM. Once back to the ground, Jacques M. behaviour became very strange. He seemed to not recover from recent events, he was in a kind of traumatic amnesia. He kept repeating during 2 minutes the following number : 05459092XX
As you can see, I redacted the last digits. It's a phone number, that I indeed called. It rang, and a voicemail began to transmit was I expected, the third batch he made !
Batch #4 (me)
The idea was to transmit the track over the air, on the FM band. I quickly looked if it was possible, and I found this wonderful software: PiFM. It allows you to do exactly that, with a single wire as the antenna. I never thought this was possible! Please note that it is illegal to emit on the FM band without authorization in most countries.
Treasure hunt music collaboration : the pirate radio
The challenge for my friend was first to figure out this little black box was a radio, then to find the frequency it emitted on. I spent a lot of time on this, mostly for building the battery circuit with the LiPoPi tutorial and building the cardboard case: it's 3mm thick black cardboard (foam-coardboard as translated from french, not regular cardboard) with Meccano pieces to both harden it and give it this badass look-and-feel. Two LEDs for indicating the power and broadcasting status, a switch, et voilà!
Finally, here is my version of the collab the radio was transmitting
The radio played by my friend
Exhibition
We had the chance to present our work (up to the fourth batch) to the Instr/humains exhibition in Paris, hosted by the art collective La Main. Thanks to them!
I will keep this thread updated with the further batches. See you soon!
0 notes
Text
Fix slow Wi-Fi on the Raspberry Pi
You have a Raspberry Pi with a USB Wi-Fi dongle and you experience:
Very slow speed when using apt and other network-related commands involving downloads
Intermittent keyboard freezes when in an ssh session
High packet drop rate when using ping -c 10 google.com (more than 30%)
Switching from a 2A to a 3A power supply resolved my issues.
My setup is a Raspberry Pi A+ with only the dongle connected (not anything else). I bought this one and it's working great.
0 notes
Text
Akai MPC 1000 tact switch replacement
TL;DR Use the ALPS SKHHAKA010 to replace faulty tact switches on the MPC 1000.
I've browse almost every forum to find a replacement for dead tact switches on my Akai MPC 1000 without finding an absolute answer to my question. The switches sold in my area (Paris) were too low (in height) and I had to glue a piece of plastic on the top to fill the gap.
My shot at trying to make a tact switch higher
It did the trick for a time, but some other switches went dead and I needed the real stuff to fix my MPC 1000 : same height, same push force. The push force is important for me because I neither wanted a different feel from the other buttons, nor to have to push too hard buttons that will be pushed hundreds of time per music session.
The candidates cited in the forums were all by the manufacturer ALPS, but opinions differed wether it should be the AMA, ALA or AKA. You can find a comparison of below. The original tact switch part number mentionned in the MPC 1000 service manual is the SKHHAM004A but I couldn't find it anywhere on the Internet.
Candidates comparison
The original tact switches on my MPC 1000 were 5mm high, so the the ALA was out: too low. I knew that the switches I bought in my local shop required more than 1N of push force, and I found it too much compared to the soft feeling from the original switches from the MPC. So the AMA was out.
It left me with the AKA, of which I bought 30 pieces plus some other stuff I needed, to reach the minimum cart amount on Farnell.
SKHHAKA010 (left) vs. original from the MPC 1000 (right)
The functions buttons board updated with SKHHAKA010 switches
Waiting to buy a temperature-controlled soldering iron before fixing the right board switches (I had a hard time desoldering). But I'm formal : the ALPS SKHHAKA010 is the perfect replacement for broken MPC 1000 switches, and I guess other MPCs as well. Mine is a MPC 1000 BK, the second version (black) and not the blue, but I'm sure it'll fit the blue too.
Thanks for reading, I'll happily answer any questions!
UPDATE
I've fixed the right board as well, works like a charm. Just make sure nothing touches the underneath metal structure when screwing it back or testing it unscrewed. It made some funny shorts when testing the buttons and I feared I had broken it for good!
The right board updated with SKHHAKA010 switches
0 notes
Text
Display Internet radio station name with mpd/mpc
In the process of making my own Internet radio with a Raspberry Pi, I struggled with mpd (the player I'm using on the Pi to read the streams) to display, via its mpc client, the custom names I wanted to set for each station. mpd was fine displaying tags broadcasted by the stream (artist, track, etc. when available) but no way to set "static" names for the stations.
Moreover, mpd doesn't handle ExtM3U tags very well. As replied by the maintainer I contacted, it merges the ExtM3U tags with received tags from the stream. I tried several days to modify the source code to not merge the tags, but not being a C++ developper and not wanting to spend too much time on that, I found a better solution.
TL;DR The solution is to append your custom station name to the stream URL, and then to extract it.
In your .m3u file: http://mystreamurl/;?station_name=MY_STATION_NAME
In your radio script (Python in my case), get the currently playing URL with mpc -f %file% current and then extract the station name with a regex.
#!/usr/bin/env python station_url = subprocess.check_output("mpc -f %file% current", stderr=subprocess.STDOUT, shell=True) # http://mystreamurl/;?station_name=MY_STATION_NAME result = findall(r'\?station_name=(.*)', station_url) # ['MY_STATION_NAME'] print(result[0].replace('_', ' ')) # MY STATION NAME
Note: if your stream URL has nothing after the host name, e.g. http://mystreamurl:8080 or http://mystreamurl, you must add a ; before the query parameter ?station_name=X as I did it in the example. Else, you can omit it.
Then do whatever you planned to do with it! I use it to display it on a LCD. You don't even need ExtM3U with this, simple M3U playlists will work.
Feel free to ask questions or suggest modifications!
0 notes
Text
Git post-receive deployment script
This post-receive script will deploy a repository to /home/[repository-name] after a git push
https://gist.github.com/raphaelyancey/0df67eb38cf090613501
0 notes
Text
Pinwatcher lets you backup & save your Pinterest pins
I wrote a little script that allows you to backup & save your Pinterest pins to your hard drive. As a graphic designer, I use Pinterest to bookmark pictures that inspire me, or that I like. I wanted to have all these pictures on a hard drive, for multiple reasons (backing up, offline viewing, etc).
Pinwatcher retrieves every 3 hours (customizable of course) the last 50 pins (not customizable of course, thanks Pinterest!) of a profile and save them onto your hard drive.
Feel free to contribute, comment and suggest features!
0 notes
Text
Berceuse pour Intelligence Artificielle
## Expérimentation de spectacle interactif dans laquelle un musicien monte sur scène pour apaiser une intelligence artificielle
--- **Une intelligence artificielle** (IA) représentée par une pyramide d'environ un mètre de côté est placée sur une scène, pointée vers le public. En émettant des **sons stridents** ainsi que des **visuels anguleux et stroboscopiques**, elle irrite le spectateur dès le début du spectacle. Va-t-elle se calmer ? Si oui, quand et comment ? Un musicien monte alors sur scène et va tenter de l'apaiser par son art. ---
--- **Et elle y est effectivement sensible.** Petit à petit, l'artiste semble avoir trouvé et précisé l'harmonie de notes à laquelle l'IA réagit. Les sons qu'elle émet sont de plus en plus **doux, légers et discrets**. Les visuels sur ses trois faces sont également plus **ronds, fondus et moins saturés**. La berceuse suit son cours et l'artiste arrive finalement à apaiser complètement cette entité artificielle. ---
--- Tout cela est rendu possible grâce aux technologies suivantes : * **Max**, **Ableton Live** avec **Max for Live** * **Logiciel de mapping vidéo** et vidéo-projecteur * Carton-plume, cutter et pistocolle 🤘 À chaque lancement du spectacle, **un patch Max for Live décide d'une suite de note**. **Un projet Live** préparé à l'avance contient des séquences sonores calmes et des séquences bruyantes. À chaque note jouée, si elle se trouve dans la suite de notes déterminée au lancement, le curseur de lecture du projet avance et joue une séquence plus apaisée. Sinon, le projet continue de jouer la séquence en cours. Le logiciel de **mapping vidéo** est quand à lui relié en **MIDI** à Live, qui lui communique sa position temporelle, et donc indirectement le score du musicien. Les visuels génératifs évoluent donc également en fonction des "bonnes" notes. ---
--- Notons qu'en théorie, **cela devrait pouvoir fonctionner avec n'importe quel instrument, voire même la voix**. Nous n'avons malheureusement pas pu le tester mais le succès est proportionnel à la performance du composant Max à détecter l'harmonie de notes du signal d'entrée. ---
Guitariste qui apprivoise le mapping vidéo #AdamiCED au @Chateaufmr pic.twitter.com/Dp3fvBr5Zp
— Cultureveille (@cultureveille) 23 avril 2017
Lors de sa réalisation au sein d'un week-end créatif de type hackathon, cette preuve de concept n'était toutefois pas assez finement paramétrée pour être laissée en roue libre à la restitution finale devant les autres participants et l'équipe organisatrice. Le spectacle était donc en partie contrôlé à la main.
Néanmoins, le rendu était convaincant et encourage à continuer de réfléchir sur ce type de spectacle paramétrique, cette communication homme-machine avec sa grande part d'imprévu.
Réalisé avec Quentin Nivromont, Slim Abida, Alexia Blob et Antonin dans le cadre du week-end créatif "Culture Experience Days: Music Maker" organisé par l'ADAMI au Château Éphémère. Photos © Quentin Chevrier
0 notes
Text
Dialogue synesthète
Expérimentation sur la communication entre une personne sourde et une personne aveugle
Les protagonistes s'installent de part et d'autre d'une cloison qui les séparent. Les gestes de la personne sourde sont traduits en sons dans les oreilles de la personne aveugle, et les sons et bruits de la personne aveugle sont traduits en images auprès de la personne sourde.
Processing est utilisé pour convertir un signal audio en art génératif, tandis que Pure Data est utilisé pour transformer les différentes sorties d'un Leap Motion (position 3D de chaque doigt, vélocité des mouvements, etc.) en sons.
Réalisé avec Clément B., Noé F., Hélène C. et Lucie dans le cadre des Culture Experience Days 2015
0 notes
Text
Kévin le robot-guéridon
Rencontre du troisième type avec le cousin art déco de R2D2
Réalisé sur la plateforme Arduino, Kévin est un petit robot très attachant :
Il gazouille grâce à un petit haut-parleur amplifié avec un gobelet
Il hérisse ses cheveux nonchalamment grâce à un petit ventilateur fixé au sommet de sa charpente en carton-plume
Il se déplace comme il peut — souvent aléatoirement — en vibrant, grâce à un moteur auquel un poids légèrement désaxé est fixé
Il réagit au interactions extérieures grâce à un détecteur de distance à ultrasons et un micro
https://gist.github.com/raphaelyancey/6af052d624eeb27ec204cdad2c27f6b3
Réalisé avec Arthur Baude, X et François dans le cadre du weekend créatif Culture Expérience Days 2016. Extraits vidéo: Week-end créatif - Culture Experience Days - 18.19.20 mars 2016
0 notes
Text
Pinterest API useful endpoints
Some useful API endpoints you can use to retrieve pins from an user's profile or specific board :
https://api.pinterest.com/v3/pidgets/boards/[username]/[board_name]/pins/ retrieves last 50 pins for a specific user's board
https://api.pinterest.com/v3/pidgets/users/[username]/pins/ retrieves last 50 pins (globally)
http://i.pinimg.com/originals/[xx]/[yy]/[zz]/[xxyyzz...].jpg retrieves the pin in its original size (this URL format is returned by the previous methods)
Pinterest hasn't released a public API yet, and the API key seems to be hard to get.
Edit: I used these endpoints in my Pinwatcher script that allows you to backup & save your or someone's pins to your hard drive.
0 notes
Text
Claquettes augmentées
Expérimentation à partir de la captation du rythme généré par une claquettiste.
L'augmentation des claquettes se fait grâce à la captation du rythme produit par le jeu d'une claquettiste. Chaque pied dispose de deux surfaces de contact (voir ci-dessous) qui peuvent chacune déclencher une action différente. Dans cette expérimentation, chaque surface de chaque pied incrémente son propre compteur, qui déclenche au-delà d'un certain seuil un échantillon de chant enregistré par l'interprête : les syllabes TECH - NO - LO - GIE enregistrées sur 4 tons différents pour un total de 16 échantillons.
Une fois que le rythme est capté, on peut imaginer une infinité d'applications différentes en considérant les impacts comme de simples notes venant d'un instrument, en MIDI par exemple. Cela ouvre la voie à l'interactivité avec par exemple d'autres instruments, voire même des jeux de lumière ou encore un Dance Dance Revolution revisité !
Côté technique, c'est Makey Makey qui s'en charge. Le tapis et les chaussures sont reliées à la carte (point à améliorer en priorité, la mobilité) et un impact ferme le circuit, déclenchant une lettre selon la surface concernée — la Makey Makey étant considérée comme un clavier par l'ordinateur.
La Makey Makey. En reliant un des pins à la terre, on déclenche une lettre, un mouvement de souris, etc.
Cette lettre est ensuite récupérée par un programme Node.js tournant en tâche de fond, qui incrémente le bon compteur puis lance la lecture d'un échantillon le cas échéant, en réinitialisant le compteur au passage.
Le résultat en conditions normales était stable, peu d'interférences ou de faux-positifs et validait donc avec succès une première étape dans l'augmentation de la pratique des claquettes !
Réalisé avec Clément B. et Sarah dans le cadre de l'atelier "Live Contact / Sur le Corps" organisé par l'ADAMI. Extraits vidéo : Adami CED // Atelier créatif - 29/11/2016 - Live Contact / Sur le Corps
0 notes