cc @ian57 j'ai réussi à compiler recalbox avec tes modifs et... bon OK tu le sais déjà mais ça tourne nickel
Vivement la 7.0.2 ^^
cc @ian57 j'ai réussi à compiler recalbox avec tes modifs et... bon OK tu le sais déjà mais ça tourne nickel
Vivement la 7.0.2 ^^
@ian57 d'acc c'est effectivement bien compréhensible à voir pour une hypothétique mise à jour de second plan... plus tard Quoi qu'il en soit je trouve le rpi4 bien plus stable que le xu4
Tu penses que je peux faire un essai par un biais ou par un autre ?
Super @ian57
Dans la foulée si c’est compilable pour xu4 sans trop de difficultés j’ai aussi de quoi tester !
Bonsoir,
Après test avec un rpi3 et recalbox 7.0.1... et bien ça fonctionne nickel !
Il n'y a plus qu'à corriger le petit bug de compilation pour rpi4 et je pourrais boucler ma petite upgrade de borne
Vivement la 7.0.2 cc @ian57
Merci du retour @ian57 je testerai donc ce soir avec un pi3 en 7.0.1
Si y'a besoin j'ai ce qu'il faut pour beta tester et faire des retours
@ian57 je crois que j'ai trouvé...
J'ai affiché le contenu de /etc/init.d/S25hyperion :
# cat /etc/init.d/S25hyperion
#!/bin/sh
#
# Start hyperion
#
# Support for hyperion, config file in /recalbox/share/system/configs/hyperion/hyperion.config.json
#
systemsetting="recalbox_settings"
start() {
echo -n "Starting hyperion: "
mkdir -p /recalbox/share/system/configs/hyperion/
start-stop-daemon -b -S -q -m -p /var/run/hyperion.pid --exec /usr/bin/hyperiond -- /recalbox/share/system/configs/hyperion/hyperion.config.json
echo "OK"
}
stop() {
echo -n "Stopping hyperion: "
start-stop-daemon -K -p /var/run/hyperion.pid
echo "OK"
}
enabled="`$systemsetting -command load -key hyperion.enabled`"
case "$1" in
start)
if [ "$enabled" != "1" ];then
echo "Hyperion service: disabled"
exit 0
fi
start
;;
stop)
if [ "$enabled" != "1" ];then
echo "Hyperion service: disabled"
exit 0
fi
stop
;;
restart|reload)
stop
start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
exit $?
Il s'avère que dans /usr/bin on a pas hyperiond !
Donc forcément ça limite beaucoup le fonctionnement...
Merci du retour @ian57 !
J'édite bien depuis nano via SSH mais j'ai quand même revérifié et refais un test en fermant ES.
Ca ne change rien...
quand je lance la commande
# /etc/init.d/S25hyperion stop
Stopping hyperion: start-stop-daemon: warning: killing process 1376: No such process
OK
# /etc/init.d/S25hyperion start
Starting hyperion: OK
# /etc/init.d/S25hyperion stop
Stopping hyperion: start-stop-daemon: warning: killing process 1858: No such process
OK
Comme si hyperion se refermait de suite après avoir démarré.
Je n'ai aucune trace dans /var/log/messages
ni dans /recalbox/share/system/logs/recalbox.log...
On verra ce que ça donne de ton coté avec tes rubans leds...
Merci
Salut !
J'essaie tant bien que mal d'avancer sur ce soucis mais j'aurai besoin d'un petit coup de main pour savoir à quel endroit je peux trouver les journaux et traces des applications...
J'ai tenté le dmesg qui m'a donné :
# dmesg | grep ttyUSB0
[ 4.005401] usb 1-1.4: ch341-uart converter now attached to ttyUSB0
Ce qui sauf si je dis une grosse bêtise, que mon arduino est bien reconnu par le pi4.
J'ai également paramétré recalbox.conf avec cette petite modification la :
## Hyperion
## Hyperion allows you to use an ambilight like led system on your recalbox
## Use hypercon to create your configuration file, and copy it in /recalbox/share/system/configs/hyperion/hyperion.config.json
hyperion.enabled=1
Et bien entendu le fichier hyperion.config.json est bien dans recalbox/share/system/configs/hyperion/ (dont j'ai créé le répertoire puisqu'il n'existait pas à l'origine.
A toutes fin utiles, voici le fichier en question :
// Automatically generated configuration file for Hyperion ambilight daemon
// Notice: All values are explained with comments at our wiki: wiki.hyperion-project.org (config area)
// Generated by: HyperCon (The Hyperion deamon configuration file builder)
// Created with HyperCon V1.03.3 (22.10.2017)
{
// DEVICE CONFIGURATION
"device" :
{
"name" : "MyHyperionConfig",
"type" : "AdalightApa102",
"output" : "/dev/ttyUSB0",
"rate" : 100000,
"delayAfterConnect" : 0,
"colorOrder" : "bgr"
},
// COLOR CALIBRATION CONFIG
"color" :
{
"channelAdjustment" :
[
{
"id" : "default",
"leds" : "*",
"pureRed" :
{
"redChannel" : 255,
"greenChannel" : 0,
"blueChannel" : 0
},
"pureGreen" :
{
"redChannel" : 0,
"greenChannel" : 255,
"blueChannel" : 0
},
"pureBlue" :
{
"redChannel" : 0,
"greenChannel" : 0,
"blueChannel" : 255
}
}
],
"temperature" :
[
{
"id" : "default",
"leds" : "*",
"correctionValues" :
{
"red" : 255,
"green" : 255,
"blue" : 255
}
}
],
"transform" :
[
{
"id" : "default",
"leds" : "*",
"hsl" :
{
"saturationGain" : 1.0000,
"luminanceGain" : 1.0000,
"luminanceMinimum" : 0.0000
},
"red" :
{
"threshold" : 0.0000,
"gamma" : 2.5000
},
"green" :
{
"threshold" : 0.0000,
"gamma" : 2.5000
},
"blue" :
{
"threshold" : 0.0000,
"gamma" : 2.5000
}
}
],
// SMOOTHING CONFIG
"smoothing" :
{
"type" : "linear",
"time_ms" : 200,
"updateFrequency" : 20.0000,
"updateDelay" : 0
}
},
// NO V4L2 GRABBER CONFIG
// FRAME GRABBER CONFIG
"framegrabber" :
{
"width" : 64,
"height" : 64,
"frequency_Hz" : 10.0,
"priority" : 890
},
// BLACKBORDER CONFIG
"blackborderdetector" :
{
"enable" : true,
"threshold" : 0.0,
"unknownFrameCnt" : 600,
"borderFrameCnt" : 50,
"maxInconsistentCnt" : 10,
"blurRemoveCnt" : 1,
"mode" : "default"
},
// BOOTEFFECT CONFIG
"bootsequence" :
{
"color" : [0,0,0],
"effect" : "Rainbow swirl fast",
"duration_ms" : 3000,
"priority" : 700
},
// JSON SERVER CONFIG
"jsonServer" :
{
"port" : 19444
},
// PROTO SERVER CONFIG
"protoServer" :
{
"port" : 19445
},
// EFFECT PATH
"effects" :
{
"paths" :
[
"/storage/hyperion/effects",
"/usr/share/hyperion/effects"
]
},
// NO KODI CHECK CONFIG
// NO BOBLIGHT SERVER CONFIG
// NO JSON/PROTO FORWARD CONFIG
// LED CONFIGURATION
"leds" :
[
{
"index" : 0,
"hscan" : { "minimum" : 0.5000, "maximum" : 0.5385 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 1,
"hscan" : { "minimum" : 0.5385, "maximum" : 0.5769 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 2,
"hscan" : { "minimum" : 0.5769, "maximum" : 0.6154 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 3,
"hscan" : { "minimum" : 0.6154, "maximum" : 0.6538 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 4,
"hscan" : { "minimum" : 0.6538, "maximum" : 0.6923 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 5,
"hscan" : { "minimum" : 0.6923, "maximum" : 0.7308 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 6,
"hscan" : { "minimum" : 0.7308, "maximum" : 0.7692 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 7,
"hscan" : { "minimum" : 0.7692, "maximum" : 0.8077 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 8,
"hscan" : { "minimum" : 0.8077, "maximum" : 0.8462 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 9,
"hscan" : { "minimum" : 0.8462, "maximum" : 0.8846 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 10,
"hscan" : { "minimum" : 0.8846, "maximum" : 0.9231 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 11,
"hscan" : { "minimum" : 0.9231, "maximum" : 0.9615 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 12,
"hscan" : { "minimum" : 0.9615, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 13,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.9375, "maximum" : 1.0000 }
},
{
"index" : 14,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.8750, "maximum" : 0.9375 }
},
{
"index" : 15,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.8125, "maximum" : 0.8750 }
},
{
"index" : 16,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.7500, "maximum" : 0.8125 }
},
{
"index" : 17,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.6875, "maximum" : 0.7500 }
},
{
"index" : 18,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.6250, "maximum" : 0.6875 }
},
{
"index" : 19,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.5625, "maximum" : 0.6250 }
},
{
"index" : 20,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.5000, "maximum" : 0.5625 }
},
{
"index" : 21,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.4375, "maximum" : 0.5000 }
},
{
"index" : 22,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.3750, "maximum" : 0.4375 }
},
{
"index" : 23,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.3125, "maximum" : 0.3750 }
},
{
"index" : 24,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.2500, "maximum" : 0.3125 }
},
{
"index" : 25,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.1875, "maximum" : 0.2500 }
},
{
"index" : 26,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.1250, "maximum" : 0.1875 }
},
{
"index" : 27,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.0625, "maximum" : 0.1250 }
},
{
"index" : 28,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0625 }
},
{
"index" : 29,
"hscan" : { "minimum" : 0.9615, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 30,
"hscan" : { "minimum" : 0.9231, "maximum" : 0.9615 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 31,
"hscan" : { "minimum" : 0.8846, "maximum" : 0.9231 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 32,
"hscan" : { "minimum" : 0.8462, "maximum" : 0.8846 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 33,
"hscan" : { "minimum" : 0.8077, "maximum" : 0.8462 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 34,
"hscan" : { "minimum" : 0.7692, "maximum" : 0.8077 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 35,
"hscan" : { "minimum" : 0.7308, "maximum" : 0.7692 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 36,
"hscan" : { "minimum" : 0.6923, "maximum" : 0.7308 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 37,
"hscan" : { "minimum" : 0.6538, "maximum" : 0.6923 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 38,
"hscan" : { "minimum" : 0.6154, "maximum" : 0.6538 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 39,
"hscan" : { "minimum" : 0.5769, "maximum" : 0.6154 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 40,
"hscan" : { "minimum" : 0.5385, "maximum" : 0.5769 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 41,
"hscan" : { "minimum" : 0.5000, "maximum" : 0.5385 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 42,
"hscan" : { "minimum" : 0.4615, "maximum" : 0.5000 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 43,
"hscan" : { "minimum" : 0.4231, "maximum" : 0.4615 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 44,
"hscan" : { "minimum" : 0.3846, "maximum" : 0.4231 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 45,
"hscan" : { "minimum" : 0.3462, "maximum" : 0.3846 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 46,
"hscan" : { "minimum" : 0.3077, "maximum" : 0.3462 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 47,
"hscan" : { "minimum" : 0.2692, "maximum" : 0.3077 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 48,
"hscan" : { "minimum" : 0.2308, "maximum" : 0.2692 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 49,
"hscan" : { "minimum" : 0.1923, "maximum" : 0.2308 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 50,
"hscan" : { "minimum" : 0.1538, "maximum" : 0.1923 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 51,
"hscan" : { "minimum" : 0.1154, "maximum" : 0.1538 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 52,
"hscan" : { "minimum" : 0.0769, "maximum" : 0.1154 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 53,
"hscan" : { "minimum" : 0.0385, "maximum" : 0.0769 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 54,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0385 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 55,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0625 }
},
{
"index" : 56,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.0625, "maximum" : 0.1250 }
},
{
"index" : 57,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.1250, "maximum" : 0.1875 }
},
{
"index" : 58,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.1875, "maximum" : 0.2500 }
},
{
"index" : 59,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.2500, "maximum" : 0.3125 }
},
{
"index" : 60,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.3125, "maximum" : 0.3750 }
},
{
"index" : 61,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.3750, "maximum" : 0.4375 }
},
{
"index" : 62,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.4375, "maximum" : 0.5000 }
},
{
"index" : 63,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.5000, "maximum" : 0.5625 }
},
{
"index" : 64,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.5625, "maximum" : 0.6250 }
},
{
"index" : 65,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.6250, "maximum" : 0.6875 }
},
{
"index" : 66,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.6875, "maximum" : 0.7500 }
},
{
"index" : 67,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.7500, "maximum" : 0.8125 }
},
{
"index" : 68,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.8125, "maximum" : 0.8750 }
},
{
"index" : 69,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.8750, "maximum" : 0.9375 }
},
{
"index" : 70,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.9375, "maximum" : 1.0000 }
},
{
"index" : 71,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0385 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 72,
"hscan" : { "minimum" : 0.0385, "maximum" : 0.0769 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 73,
"hscan" : { "minimum" : 0.0769, "maximum" : 0.1154 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 74,
"hscan" : { "minimum" : 0.1154, "maximum" : 0.1538 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 75,
"hscan" : { "minimum" : 0.1538, "maximum" : 0.1923 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 76,
"hscan" : { "minimum" : 0.1923, "maximum" : 0.2308 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 77,
"hscan" : { "minimum" : 0.2308, "maximum" : 0.2692 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 78,
"hscan" : { "minimum" : 0.2692, "maximum" : 0.3077 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 79,
"hscan" : { "minimum" : 0.3077, "maximum" : 0.3462 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 80,
"hscan" : { "minimum" : 0.3462, "maximum" : 0.3846 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 81,
"hscan" : { "minimum" : 0.3846, "maximum" : 0.4231 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 82,
"hscan" : { "minimum" : 0.4231, "maximum" : 0.4615 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 83,
"hscan" : { "minimum" : 0.4615, "maximum" : 0.5000 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
}
],
"endOfJson" : "endOfJson"
}
Chose étrange que j'ai pu voir dans /recalbox/share/system/logs/recalbox.log :
Mais je ne sais pas si c'est lié ou non...
[ 40.18] ADDING user defined to /recalbox/share/system/recalbox.conf : hyperion.enabled=0
Si tu passes par la @ian57
@ian57 Avait tu testé en 6.1.1 ?
Je viens de remettre mon pi3 en 6.1.1 et malgré la restauration de la config ça ne fonctionne pas...
Je suis pourtant pratiquement certain que ça fonctionnait... mais c'était peut-être sur une version antérieure...
Toujours est-il que la en 6.1.1 ou en 7... c'est HS...
Que puis-je faire comme tests pour aider / avancer sur la question ?
Merci
Je pense déjà pouvoir le confirmer...
Saurais tu m'indiquer où je pourrais trouver les logs d'Hyperion pour permettre d'avancer la dessus ?
J'ai regardé le dmesg et dans les logs via le manager web mais je n'ai rien trouvé...
Aucune ligne concernant Hyperion même en le lançant "à la main" c'est très surprenant.
J'aimerai bien refaire fonctionner les rubans LED sur ma borne
Merci
Salut @ian57 elle l'était sur rpi3 / rb6.1 en tout cas
En précisant le port ttyUSB0 ca tournait parftaitement bien...
Depuis mon passage en pi4/RB7 ça ne fonctionne plus...
Je vais retester avec ce software arduino sur rb6.1 ce soir..
Salut à tous (et particulièrement @ian57 )
Je suis passé sur pi4 à la sortie de recalbox 7 et je voudrais paramétrer hyperion comme avant... sur la 6.x
J'utilise un arduino uno piloté en USB (sur ttyUSB0 en 115200) pour le faire fonctionner. Ca fonctionne nickel sous windows avec hyperion NG. Mais ça reste totalement noir sous recalbox7.
Le fichier json généré avec hypercon est strictement identique à celui que j'utilisai dans la version précédente et hyperion est bien activé dans recalbox.conf.
Je ne vois pas ce que j'ai loupé dans ma config...
lorsque je lancer hyperion via /etc/init.d/S25hyperion start
, ca me dit OK
mais si je fais un /etc/init.d/S25hyperion stop
juste après j'ai une erreur comme quoi le process n'est pas lancé...
J'ai regardé le dmesg
, et les différents logs mais je n'ai rien trouvé...
Un peu d'aide serait la bienvenue
Merci !
![Bonjour,
Je me réponds à moi même (vu l'engouement généré par mon post !), j'en ai profité pour apprendre à présenter correctement mon post avec les balises markdown si spécifiques à ce forum
Après avoir testé différents programmes arduino qui faisaient planter le contrôleur du ruban LED, j'ai fini par trouver je crois le bon compromis pour arriver à mes fins ! Cela fait maintenant plusieurs heures de jeux et de film et le ruban répond parfaitement !
La prochaine étape est de remettre la vitre qui cache mon écran en mettant un film translucide pour diffuser la lumière des LED de manière plus harmonieuse. J'ajouterai aussi un fond blanc derrière pour maximiser la réverbération de la lumière... To be continued !
J'ai programmé mon arduino Uno avec le script suivant (dispo ici)
Puis j'ai paramétré Hypérion avec Hypercon à l'aide de ce tutorial. En adaptant les sections en fonction de mon nombre de LED etc... Je vous mets mon fichier en dessous du programme arduino, si ça peut éviter de galérer comme je l'ai fait
Vidéos des tests :
Test 1
https://www.youtube.com/watch?v=rIc5GLOregQ
Test 2
https://www.youtube.com/watch?v=mNXFrbEYtDY
Photos :
Code Arduino Uno :
#include "FastLED.h"
// How many leds in your strip?
#define NUM_LEDS 91
// For led chips like Neopixels, which have a data line, ground, and power, you just
// need to define DATA_PIN. For led chipsets that are SPI based (four wires - data, clock,
// ground, and power), like the LPD8806 define both DATA_PIN and CLOCK_PIN
#define DATA_PIN 11
#define CLOCK_PIN 13
#define COLOR_ORDER RGB
// Adalight sends a "Magic Word" (defined in /etc/boblight.conf) before sending the pixel data
uint8_t prefix[] = {'A', 'd', 'a'}, hi, lo, chk, i;
// Baudrate, higher rate allows faster refresh rate and more LEDs (defined in /etc/boblight.conf)
#define serialRate 115200
// Define the array of leds
CRGB leds[NUM_LEDS];
void setup() {
// Uncomment/edit one of the following lines for your leds arrangement.
FastLED.addLeds<APA102, DATA_PIN, CLOCK_PIN>(leds, NUM_LEDS);
// FastLED.addLeds<TM1803, DATA_PIN, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<TM1804, DATA_PIN, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<TM1809, DATA_PIN, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<WS2811, DATA_PIN, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<WS2812, DATA_PIN, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<WS2812B, DATA_PIN, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<NEOPIXEL, DATA_PIN>(leds, NUM_LEDS);
// FastLED.addLeds<UCS1903, DATA_PIN, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<UCS1903B, DATA_PIN, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<GW6205, DATA_PIN, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<GW6205_400, DATA_PIN, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<WS2801, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<SM16716, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<LPD8806, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<WS2801, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<SM16716, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<LPD8806, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS);
// initial RGB flash
//LEDS.showColor(CRGB(255, 0, 0));
//delay(500);
//LEDS.showColor(CRGB(0, 255, 0));
//delay(500);
//LEDS.showColor(CRGB(0, 0, 255));
//delay(500);
//LEDS.showColor(CRGB(0, 0, 0));
Serial.begin(serialRate);
Serial.print("Ada\n"); // Send "Magic Word" string to host
}
void loop() {
// wait for first byte of Magic Word
for(i = 0; i < sizeof prefix; ++i) {
waitLoop: while (!Serial.available()) ;;
// Check next byte in Magic Word
if(prefix[i] == Serial.read()) continue;
// otherwise, start over
i = 0;
goto waitLoop;
}
// Hi, Lo, Checksum
while (!Serial.available()) ;;
hi=Serial.read();
while (!Serial.available()) ;;
lo=Serial.read();
while (!Serial.available()) ;;
chk=Serial.read();
// if checksum does not match go back to wait
if (chk != (hi ^ lo ^ 0x55))
{
i=0;
goto waitLoop;
}
memset(leds, 0, NUM_LEDS * sizeof(struct CRGB));
// read the transmission data and set LED values
for (uint8_t i = 0; i < NUM_LEDS; i++) {
byte r, g, b;
while(!Serial.available());
r = Serial.read();
while(!Serial.available());
g = Serial.read();
while(!Serial.available());
b = Serial.read();
leds[i].r = r;
leds[i].g = g;
leds[i].b = b;
}
// shows new values
FastLED.show();
}
Config Hyperion
// Automatically generated configuration file for Hyperion ambilight daemon
// Notice: All values are explained with comments at our wiki: wiki.hyperion-project.org (config area)
// Generated by: HyperCon (The Hyperion deamon configuration file builder)
// Created with HyperCon V1.03.3 (22.10.2017)
{
// DEVICE CONFIGURATION
"device" :
{
"name" : "MyHyperionConfig",
"type" : "adalight",
"output" : "/dev/ttyUSB0",
"rate" : 115200,
"delayAfterConnect" : 0,
"colorOrder" : "bgr"
},
// COLOR CALIBRATION CONFIG
"color" :
{
"channelAdjustment" :
[
{
"id" : "default",
"leds" : "*",
"pureRed" :
{
"redChannel" : 255,
"greenChannel" : 0,
"blueChannel" : 0
},
"pureGreen" :
{
"redChannel" : 0,
"greenChannel" : 255,
"blueChannel" : 0
},
"pureBlue" :
{
"redChannel" : 0,
"greenChannel" : 0,
"blueChannel" : 255
}
}
],
"temperature" :
[
{
"id" : "default",
"leds" : "*",
"correctionValues" :
{
"red" : 255,
"green" : 255,
"blue" : 255
}
}
],
"transform" :
[
{
"id" : "default",
"leds" : "*",
"hsl" :
{
"saturationGain" : 1.0000,
"luminanceGain" : 1.0000,
"luminanceMinimum" : 0.0000
},
"red" :
{
"threshold" : 0.0000,
"gamma" : 2.5000
},
"green" :
{
"threshold" : 0.0000,
"gamma" : 2.5000
},
"blue" :
{
"threshold" : 0.0000,
"gamma" : 2.5000
}
}
],
// SMOOTHING CONFIG
"smoothing" :
{
"type" : "linear",
"time_ms" : 200,
"updateFrequency" : 20.0000,
"updateDelay" : 0
}
},
// NO V4L2 GRABBER CONFIG
// FRAME GRABBER CONFIG
"framegrabber" :
{
"width" : 64,
"height" : 64,
"frequency_Hz" : 5.0,
"priority" : 890
},
// JSON SERVER CONFIG
"jsonServer" :
{
"port" : 19444
},
// PROTO SERVER CONFIG
"protoServer" :
{
"port" : 19445
},
// EFFECT PATH
"effects" :
{
"paths" :
[
"/storage/hyperion/effects",
"/usr/share/hyperion/effects"
]
},
// NO BLACKBORDER CONFIG
// NO KODI CHECK CONFIG
// NO BOOTEFFECT CONFIG
// NO BOBLIGHT SERVER CONFIG
// NO JSON/PROTO FORWARD CONFIG
// LED CONFIGURATION
"leds" :
[
{
"index" : 0,
"hscan" : { "minimum" : 0.4519, "maximum" : 0.5096 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 1,
"hscan" : { "minimum" : 0.4135, "maximum" : 0.4712 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 2,
"hscan" : { "minimum" : 0.3750, "maximum" : 0.4327 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 3,
"hscan" : { "minimum" : 0.3365, "maximum" : 0.3942 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 4,
"hscan" : { "minimum" : 0.2981, "maximum" : 0.3558 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 5,
"hscan" : { "minimum" : 0.2596, "maximum" : 0.3173 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 6,
"hscan" : { "minimum" : 0.2212, "maximum" : 0.2788 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 7,
"hscan" : { "minimum" : 0.1827, "maximum" : 0.2404 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 8,
"hscan" : { "minimum" : 0.1442, "maximum" : 0.2019 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 9,
"hscan" : { "minimum" : 0.1058, "maximum" : 0.1635 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 10,
"hscan" : { "minimum" : 0.0673, "maximum" : 0.1250 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 11,
"hscan" : { "minimum" : 0.0288, "maximum" : 0.0865 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 12,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0481 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 13,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.9375, "maximum" : 1.0000 }
},
{
"index" : 14,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.8875, "maximum" : 0.9625 }
},
{
"index" : 15,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.8375, "maximum" : 0.9125 }
},
{
"index" : 16,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.7875, "maximum" : 0.8625 }
},
{
"index" : 17,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.7375, "maximum" : 0.8125 }
},
{
"index" : 18,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.6875, "maximum" : 0.7625 }
},
{
"index" : 19,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.6375, "maximum" : 0.7125 }
},
{
"index" : 20,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.5875, "maximum" : 0.6625 }
},
{
"index" : 21,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.5375, "maximum" : 0.6125 }
},
{
"index" : 22,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.4875, "maximum" : 0.5625 }
},
{
"index" : 23,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.4375, "maximum" : 0.5125 }
},
{
"index" : 24,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.3875, "maximum" : 0.4625 }
},
{
"index" : 25,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.3375, "maximum" : 0.4125 }
},
{
"index" : 26,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.2875, "maximum" : 0.3625 }
},
{
"index" : 27,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.2375, "maximum" : 0.3125 }
},
{
"index" : 28,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.1875, "maximum" : 0.2625 }
},
{
"index" : 29,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.1375, "maximum" : 0.2125 }
},
{
"index" : 30,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.0875, "maximum" : 0.1625 }
},
{
"index" : 31,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.0375, "maximum" : 0.1125 }
},
{
"index" : 32,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0500 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0625 }
},
{
"index" : 33,
"hscan" : { "minimum" : 0.0000, "maximum" : 0.0481 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 34,
"hscan" : { "minimum" : 0.0288, "maximum" : 0.0865 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 35,
"hscan" : { "minimum" : 0.0673, "maximum" : 0.1250 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 36,
"hscan" : { "minimum" : 0.1058, "maximum" : 0.1635 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 37,
"hscan" : { "minimum" : 0.1442, "maximum" : 0.2019 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 38,
"hscan" : { "minimum" : 0.1827, "maximum" : 0.2404 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 39,
"hscan" : { "minimum" : 0.2212, "maximum" : 0.2788 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 40,
"hscan" : { "minimum" : 0.2596, "maximum" : 0.3173 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 41,
"hscan" : { "minimum" : 0.2981, "maximum" : 0.3558 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 42,
"hscan" : { "minimum" : 0.3365, "maximum" : 0.3942 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 43,
"hscan" : { "minimum" : 0.3750, "maximum" : 0.4327 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 44,
"hscan" : { "minimum" : 0.4135, "maximum" : 0.4712 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 45,
"hscan" : { "minimum" : 0.4519, "maximum" : 0.5096 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 46,
"hscan" : { "minimum" : 0.4904, "maximum" : 0.5481 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 47,
"hscan" : { "minimum" : 0.5288, "maximum" : 0.5865 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 48,
"hscan" : { "minimum" : 0.5673, "maximum" : 0.6250 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 49,
"hscan" : { "minimum" : 0.6058, "maximum" : 0.6635 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 50,
"hscan" : { "minimum" : 0.6442, "maximum" : 0.7019 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 51,
"hscan" : { "minimum" : 0.6827, "maximum" : 0.7404 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 52,
"hscan" : { "minimum" : 0.7212, "maximum" : 0.7788 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 53,
"hscan" : { "minimum" : 0.7596, "maximum" : 0.8173 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 54,
"hscan" : { "minimum" : 0.7981, "maximum" : 0.8558 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 55,
"hscan" : { "minimum" : 0.8365, "maximum" : 0.8942 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 56,
"hscan" : { "minimum" : 0.8750, "maximum" : 0.9327 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 57,
"hscan" : { "minimum" : 0.9135, "maximum" : 0.9712 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 58,
"hscan" : { "minimum" : 0.9519, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0800 }
},
{
"index" : 59,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.0000, "maximum" : 0.0625 }
},
{
"index" : 60,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.0375, "maximum" : 0.1125 }
},
{
"index" : 61,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.0875, "maximum" : 0.1625 }
},
{
"index" : 62,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.1375, "maximum" : 0.2125 }
},
{
"index" : 63,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.1875, "maximum" : 0.2625 }
},
{
"index" : 64,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.2375, "maximum" : 0.3125 }
},
{
"index" : 65,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.2875, "maximum" : 0.3625 }
},
{
"index" : 66,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.3375, "maximum" : 0.4125 }
},
{
"index" : 67,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.3875, "maximum" : 0.4625 }
},
{
"index" : 68,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.4375, "maximum" : 0.5125 }
},
{
"index" : 69,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.4875, "maximum" : 0.5625 }
},
{
"index" : 70,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.5375, "maximum" : 0.6125 }
},
{
"index" : 71,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.5875, "maximum" : 0.6625 }
},
{
"index" : 72,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.6375, "maximum" : 0.7125 }
},
{
"index" : 73,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.6875, "maximum" : 0.7625 }
},
{
"index" : 74,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.7375, "maximum" : 0.8125 }
},
{
"index" : 75,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.7875, "maximum" : 0.8625 }
},
{
"index" : 76,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.8375, "maximum" : 0.9125 }
},
{
"index" : 77,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.8875, "maximum" : 0.9625 }
},
{
"index" : 78,
"hscan" : { "minimum" : 0.9500, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.9375, "maximum" : 1.0000 }
},
{
"index" : 79,
"hscan" : { "minimum" : 0.9519, "maximum" : 1.0000 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 80,
"hscan" : { "minimum" : 0.9135, "maximum" : 0.9712 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 81,
"hscan" : { "minimum" : 0.8750, "maximum" : 0.9327 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 82,
"hscan" : { "minimum" : 0.8365, "maximum" : 0.8942 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 83,
"hscan" : { "minimum" : 0.7981, "maximum" : 0.8558 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 84,
"hscan" : { "minimum" : 0.7596, "maximum" : 0.8173 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 85,
"hscan" : { "minimum" : 0.7212, "maximum" : 0.7788 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 86,
"hscan" : { "minimum" : 0.6827, "maximum" : 0.7404 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 87,
"hscan" : { "minimum" : 0.6442, "maximum" : 0.7019 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 88,
"hscan" : { "minimum" : 0.6058, "maximum" : 0.6635 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 89,
"hscan" : { "minimum" : 0.5673, "maximum" : 0.6250 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
},
{
"index" : 90,
"hscan" : { "minimum" : 0.5288, "maximum" : 0.5865 },
"vscan" : { "minimum" : 0.9200, "maximum" : 1.0000 }
}
],
"endOfJson" : "endOfJson"
}
Enjoy
Bonjour à tous
J'essaie d'améliorer ma borne récalbox avec la nouvelle fonction intégrée Hyperion mais j'avoue patauger un peu...
J'ai un ruban LED de 5m APA102 avec 4 fils, un arduino UNO et un peu de patience (quoique de moins en moins !)
Comme j'utilise les GPIO de mon Rpi3 pour mes boutons et joysticks, je n'ai pas la possibilité d'utiliser les pin 19 et 23 car prises par les boutons START#1 et UP#2.
J'ai donc décider de brancher un arduino en USB de façons a ce que l'hyperion de la recalbox le pilote par cette interface.
J'ai chargé la librairie fastled 3.1.6 et chargé le programme suivant :
#include "FastLED.h"
// How many leds in your strip?
#define NUM_LEDS 300
// For led chips like Neopixels, which have a data line, ground, and power, you just
// need to define DATA_PIN. For led chipsets that are SPI based (four wires - data, clock,
// ground, and power), like the LPD8806 define both DATA_PIN and CLOCK_PIN
#define DATA_PIN 6
#define CLOCK_PIN 13
#define COLOR_ORDER RGB
// Adalight sends a "Magic Word" (defined in /etc/boblight.conf) before sending the pixel data
uint8_t prefix[] = {'A', 'd', 'a'}, hi, lo, chk, i;
// Baudrate, higher rate allows faster refresh rate and more LEDs (defined in /etc/boblight.conf)
#define serialRate 460800
// Define the array of leds
CRGB leds[NUM_LEDS];
void setup() {
// Uncomment/edit one of the following lines for your leds arrangement.
// FastLED.addLeds<TM1803, DATA_PIN, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<TM1804, DATA_PIN, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<TM1809, DATA_PIN, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<WS2811, DATA_PIN, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<WS2812, DATA_PIN, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<WS2812B, DATA_PIN, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<NEOPIXEL, DATA_PIN>(leds, NUM_LEDS);
// FastLED.addLeds<UCS1903, DATA_PIN, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<UCS1903B, DATA_PIN, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<GW6205, DATA_PIN, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<GW6205_400, DATA_PIN, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<WS2801, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<SM16716, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<LPD8806, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<WS2801, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS);
FastLED.addLeds<APA102, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<SM16716, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS);
// FastLED.addLeds<LPD8806, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS);
// initial RGB flash
LEDS.showColor(CRGB(255, 0, 0));
delay(500);
LEDS.showColor(CRGB(0, 255, 0));
delay(500);
LEDS.showColor(CRGB(0, 0, 255));
delay(500);
LEDS.showColor(CRGB(0, 0, 0));
Serial.begin(serialRate);
Serial.print("Ada\n"); // Send "Magic Word" string to host
}
void loop() {
// wait for first byte of Magic Word
for(i = 0; i < sizeof prefix; ++i) {
waitLoop: while (!Serial.available()) ;;
// Check next byte in Magic Word
if(prefix[i] == Serial.read()) continue;
// otherwise, start over
i = 0;
goto waitLoop;
}
// Hi, Lo, Checksum
while (!Serial.available()) ;;
hi=Serial.read();
while (!Serial.available()) ;;
lo=Serial.read();
while (!Serial.available()) ;;
chk=Serial.read();
// if checksum does not match go back to wait
if (chk != (hi ^ lo ^ 0x55))
{
i=0;
goto waitLoop;
}
memset(leds, 0, NUM_LEDS * sizeof(struct CRGB));
// read the transmission data and set LED values
for (uint8_t i = 0; i < NUM_LEDS; i++) {
byte r, g, b;
while(!Serial.available());
r = Serial.read();
while(!Serial.available());
g = Serial.read();
while(!Serial.available());
b = Serial.read();
leds[i].r = r;
leds[i].g = g;
leds[i].b = b;
}
// shows new values
FastLED.show();
}
J'ai chargé une conf hypercon en paramétrant ttyUSB0 (port sur lequel l'arduino est reconnu vu dans dmesg)
Le problème c'est que mes leds s'allument et changent de couleur de manière aléatoire mais ca n'a pas vraiment de sens...
Est ce que quelque chose saute aux yeux des utilisateurs plus avertis dans ma conf ?
Merci !