DSPIY 2560 - Proto 1

Discutions générales sur le DSPiy et tout ce qui s'y rattache
louisr
Messages : 456
Enregistré le : mar. 14 juil. 2015 15:52
Localisation : Bordeaux/Poitiers

DSPIY 2560 - Proto 1

Messagepar louisr » mar. 14 juil. 2015 16:30

Bonjour,
J'inaugure ce nouveau forum avec mon projet de DSPIY contrôlé par un atmega 2560 ::d
J'ai pas mal avancé mais je bloque sur une partie. Je voudrais récupérer une information sur la présence du signal en entrée analogique du DSPIY2/3 ainsi qu'une information sur le niveau du signal sur le DSPIY1.
Ma première idée pour le DSPIY2/3 c'est mixer les voies L et R (un aop sommateur?), ensuite un détecteur de signal dans ce style : http://www.sonelec-musique.com/electronique_realisations_detecteur_sonore_006.html avec un optocoupleur en sortie pour isoler le dspiy de l'atmega
Pour le DSPIY1, comme j'utilise aussi les entrées numériques, je pense mettre un détecteur en sortie. Ça veut dire un mixeur 2*3 voies. Et au lieu du détecteur, mettre un truc dans ce style http://www.sonelec-musique.com/electron ... o_002.html pour pouvoir afficher le bargraphe comme sur l'écran.
Ça devient super lourd, surtout pour un quelque chose qui n'a pas besoin d'être précis. De plus, le soucis de récupérer les infos en sortie du dspiy, c'est qu'on devient dépendant du volume, et ça c'est pas terrible.
Les idées de Thierry :
Buffer avec grande résistance en entrée pour ne pas perturber le signal audio, redresseur qui peut être simple alternance + RC pour avoir l’enveloppe et passe-bas.
Un oscillateur en dent de scie qui est commun pour toutes les entrées.
Comparateur + opto.
Ca reste lourd, mais ça marcherai très bien pour les DSPIY2/3, car la détection du signal est indépendante du dspiy. Et comme le but c'est d'allumer les dspiy si il y a un signal et les éteindre (après un délai) quand il n'y a plus de signal, ça serait nickel.
Pour le dspiy1, l'µC du DSPiy lit le signal du DSP via l’I2C, peut être voir pour faire un système en I2C isolé qui surveillerait ce qui se passe sur le bus et reprendrais les niveaux. Cette solution me plait, mais sans doute pas évident de récupérer les bonnes infos pour l'atmega.
Il y a aussi la possibilité de sortir cette info sur le trig_out ou une led libre en pwm. Ca serait le plus simple, mais ça demande du code du côté du dspiy, et je suppose que le signal serait en mono.
Il y a aussi la possibilité du dsp le signal en numérique via le SPI.
Voila les possibilités !
Des idées/commentaires/avis ?
Louis
Modifié en dernier par louisr le mar. 3 nov. 2015 19:00, modifié 1 fois.

Avatar de l’utilisateur
thierryvalk
Administrateur du site
Messages : 3519
Enregistré le : jeu. 9 juil. 2015 20:08
Localisation : Belgique

Re: DSPIY 2560 - Detection du signal - Bargraphe

Messagepar thierryvalk » mar. 14 juil. 2015 18:16

Pour une inauguration, il y a de la matière. :amen:

Une idée en passant, le DSPiy1 sera peut-être équipé de l’ADAU1452.
Dans ce cas tu disposes d’une sortie SPdif facilement isolable galvaniquement.
De là il est possible de réceptionner ce signal et le convertir en analogique pour l’Atmega.
C’est du grand luxe pour juste une détection + vu-mètre.

Une seconde qui me vient à l’esprit :
L’ADAU1452 dispose d’une sortie I2S non utilisée qui peut passer par un ASRC.
Je ne connais de mémoire la fréquence de sampling minimum en sortie, mais si l’on descend vers les 8KHz il devrait être possible de lire cet I2S par l’Atmega via un SPI.

louisr
Messages : 456
Enregistré le : mar. 14 juil. 2015 15:52
Localisation : Bordeaux/Poitiers

Re: DSPIY 2560 - Detection du signal - Bargraphe

Messagepar louisr » mar. 14 juil. 2015 20:42

Oui effectivement il y aura l'ADAU1452, donc ces deux idées sont très intéressantes ! La solution avec le spdif serait pas mal avec un dac low-cost facile à integrer. Je sais pas si tu as des références, je connais pas trop les dacs :-|
La version avec l'I2S aussi, mais j'ai regardé sur le net des exemples pour interfacer l'I2S avec le SPI et j'ai pas trouvé grand chose

Avatar de l’utilisateur
thierryvalk
Administrateur du site
Messages : 3519
Enregistré le : jeu. 9 juil. 2015 20:08
Localisation : Belgique

Re: DSPIY 2560 - Detection du signal - Bargraphe

Messagepar thierryvalk » mar. 14 juil. 2015 21:15

En IC complet qui fait spdif vers analog, je n'en connais pas trop.
On part très vite vers des choses compliquées qui nécessiterons de l'I2C pour la configuration.
Mais ça existe surement.

Solution économique mais pas DIY :
http://www.amazon.fr/Numérique-coaxiale-optique-analogique-convertisseur-audio/dp/B008JL2P6E/ref=sr_1_1?ie=UTF8&qid=1436904232&sr=8-1&keywords=convertisseur+toslink+rca

louisr
Messages : 456
Enregistré le : mar. 14 juil. 2015 15:52
Localisation : Bordeaux/Poitiers

Re: DSPIY 2560 - Detection du signal - Bargraphe

Messagepar louisr » mar. 14 juil. 2015 23:05

Je regarde rapidement du coté des DAC qui sont utilisés pour le raspberry, c'est I2S vers analogique. Il y a l'air d'avoir des solutions simples et peu coûteuses mais bon.. pour ce que je vais en faire j'ai vraiment pas envie de mettre un ESS9023 ou quelque chose comme ça, je trouve ça un peu ridicule ! Faut voir si cette sortie aurait un autre intérêt que juste pour le bargraphe.
Si je trouve pas mieux je prendrais un module dans le style que tu m'as envoyé, mais ça sera en dernier recourt :mrgreen:

Avatar de l’utilisateur
thierryvalk
Administrateur du site
Messages : 3519
Enregistré le : jeu. 9 juil. 2015 20:08
Localisation : Belgique

Re: DSPIY 2560 - Detection du signal - Bargraphe

Messagepar thierryvalk » mer. 15 juil. 2015 11:46

Pas si simple si l’on veut rester simple. :happy1:

En décomposant le problème :
Pour les DSPiy2 et 3 il faut juste une détection de signal.
Vu que je dois me replonger dans le firmware pour cette détection de signal, je verrais bien de rajouter l’option de renvoyer cette info vers le trigger-out.
Je pense que l’on peut plus simple.

Pour les DSPiy1 qui sert à afficher le bargraphe via l’Atmega :
I2S-> SPI : l’Atmega ne semble pas pouvoir recevoir du 16 bits et en plus son SPI est déjà utilisée pour l’écran.

Le plus élégant serait que le DSPiy transmette les niveaux en I2C, dans ce cas l’Atmega serait en I2C Slave.
C’est simple à implanter niveau soft et niveau hardware ne nécessite qu’un isolateur.
Ce que je dois juste vérifier c’est si le bus I2C n’est pas trop occupé avec la gestion du DSP et du CS8422.
Attention que la lecture de ces niveaux se fait à une fréquence relativement faible, donc le bargraphe ne sera pas bien mieux que celui du DSPiy.

Sinon le DAC soit en SPdif soit en I2S, le ES9023 n’est pas si idiot vu qu’il est simple à implanter et d’un prix autour des 2€ (de mémoire).

louisr
Messages : 456
Enregistré le : mar. 14 juil. 2015 15:52
Localisation : Bordeaux/Poitiers

Re: DSPIY 2560 - Detection du signal - Bargraphe

Messagepar louisr » mer. 15 juil. 2015 12:58

En fait pour les DSPIY2 et 3, j'espérai pouvoir les éteindre quand il n'y a pas de signal, et de les allumer quand il y a un signal. Donc un système indépendant du dspiy. Je vais regarder ta solution en pwm voir si ça reste raisonnable.
Ok pour l'I2C. J'utilise déjà l'I2C pour les pcf8575, donc atmega en master. Ca ne posera pas de problème ? Je suis pas très alaise avec la notion de master/slave..
Ok, de toute façon c'est plus pour le visuel que pour autre chose .. :]
Oui je suis bien d'accord, mais ça me gêne un peu.. Et l'ESS à l'air dur à trouver, non ? L'avantage c'est qu'on pourrait avoir une meilleure précision que avec l'I2C. Sinon j'ai trouvé un DAC low cost qui devrait faire le travail : UDA1330ATS mais pas sur que ça soit intéressant niveau prix/implémentation par rapport à l'ESS

Avatar de l’utilisateur
thierryvalk
Administrateur du site
Messages : 3519
Enregistré le : jeu. 9 juil. 2015 20:08
Localisation : Belgique

Re: DSPIY 2560 - Detection du signal - Bargraphe

Messagepar thierryvalk » mer. 15 juil. 2015 13:38

En fait pour les DSPIY2 et 3, j'espérai pouvoir les éteindre quand il n'y a pas de signal, et de les allumer quand il y a un signal. Donc un système indépendant du dspiy.

en effet, mauvaise idée de ma part.

Et l'ESS à l'air dur à trouver, non ? L'avantage c'est qu'on pourrait avoir une meilleure précision que avec l'I2C. Sinon j'ai trouvé un DAC low cost qui devrait faire le travail : UDA1330ATS mais pas sur que ça soit intéressant niveau prix/implémentation par rapport à l'ESS

Un ES9023, je dois bien avoir cela dans un tiroir. ;)
Je ne connais pas le UDA, faut voir si son masterclock ne doit pas être synchrone.

louisr
Messages : 456
Enregistré le : mar. 14 juil. 2015 15:52
Localisation : Bordeaux/Poitiers

Re: DSPIY 2560 - Detection du signal - Bargraphe

Messagepar louisr » mer. 15 juil. 2015 14:20

Bon aller, va pour l'ESS !
Je peux repartir sur ton schéma pour le dspiy comme base ? Le 3V3 je peux prendre celui de l'atmega ? Au risque de le pollué mais ça devrait pas être gênant non ? Pareil pour la masterClock, il y possibilité de prendre celle du dspiy (en l'isolant) ou vaut mieux que j'en mette une en local ? Le sample rate de l'adc de l'atmega c'est (de tête) 9,6Khz, et de toute façon on a pas besoin d'aller jusque la. Si on veut seulement l’enveloppe du signal, la cellule RC doit filtrer à quelle ordre de grandeur ?
Beaucoup de question mais les dacs.. je connais vraiment pas trop :gene:

Avatar de l’utilisateur
thierryvalk
Administrateur du site
Messages : 3519
Enregistré le : jeu. 9 juil. 2015 20:08
Localisation : Belgique

Re: DSPIY 2560 - Detection du signal - Bargraphe

Messagepar thierryvalk » mer. 15 juil. 2015 15:07

Je peux repartir sur ton schéma pour le dspiy comme base ?

Oui, c'est le schéma de base donné par ESS.
Il faudra juste mettre un RC pour le mute.

Le 3V3 je peux prendre celui de l'atmega ? Au risque de le pollué mais ça devrait pas être gênant non ?

Oui, je pense.
Pour la pollution, il faut faire un schéma d'ensemble et vérifier qu'il n'y ait aucun courant "digital" qui passe par le 0V analogique.

Par exemple :
si tu as 2 DSPiy en analogique branché sur une source, le 0V sera commun par la source. jusque là pas de soucis.
Mais si l'alimentation des 2 DSPiy est commune, le 0V d'alimentation le sera aussi et donc le courant "digital" va passer aussi (faiblement) via le point commun de la source et donc bruiter les signaux analogiques même si le chemin est plus long.

Pareil pour la masterClock, il y possibilité de prendre celle du dspiy (en l'isolant) ou vaut mieux que j'en mette une en local ?

Surtout pas, c'est plus de 24MHz, il faut un câble spécial pour véhiculer ce genre de signal et tu va rajouter une charge qui risque de créer aussi des problèmes.
C'est l'avantage de l'ES9023, un simple oscillateur entre 27 et 50Mhz et c'est bon (mais à mettre à proximité de l'ES9023).

la cellule RC doit filtrer à quelle ordre de grandeur ?

Si c'est l'Atmega qui fait le détecteur d'enveloppe, je dirais vers 2KHz, à voir pendant les tests, ce n'est qu'une capa à changer.
Si tu redresse avant l'Atmega ce sera quelques Hz voir dizaines de Hz vu que dans ce cas ce n'est plus que la dynamique de la musique et ton bargraphe ne va pas bouger à 50Hz.

louisr
Messages : 456
Enregistré le : mar. 14 juil. 2015 15:52
Localisation : Bordeaux/Poitiers

Re: DSPIY 2560 - Detection du signal - Bargraphe

Messagepar louisr » mer. 15 juil. 2015 15:39

J'ai posté un schéma sur hcfr :
http://www.homecinema-fr.com/forum/diy-filtrage-equalisation/dspiy-atmega-2560-t30061451-15.html
Chaque DSPIY à sa propre masse, chaque IO du dspiy est isolé par rapport à la masse de l'atmega. Donc normalement c'est bon non ?
Ok pour l'horloge.
Ok pour le RC, je ferai le traitement directement dans l'atmega, ça me laissera plus de marche de manœuvre

Avatar de l’utilisateur
thierryvalk
Administrateur du site
Messages : 3519
Enregistré le : jeu. 9 juil. 2015 20:08
Localisation : Belgique

Re: DSPIY 2560 - Detection du signal - Bargraphe

Messagepar thierryvalk » mer. 15 juil. 2015 16:09

J’ai vu, il ne sert à rien de trop isoler et sur un schéma complet on ne voit pas toujours là où ca peut boucler.
C’est pour cela que faire un schéma simplifié en rajoutant source amplis … et les éventuelles mises à la terre peut être utile.

Ok pour le RC, je ferai le traitement directement dans l'atmega, ça me laissera plus de marche de manœuvre

C’est le mieux en effet.
Faudra juste faire attention au bias.
L’ES9023 sort en +V et –V en +-1.9Vrms. il est possible de diminuer cette tension en changeant une résistance pour s’adapter à l’ATmega.
Reste que ce dernier ne va aimer avoir une tension négative.
En général on met une capa + un pont diviseur pour avoir le 0V signal à mi- échelle de l’ADC.

louisr
Messages : 456
Enregistré le : mar. 14 juil. 2015 15:52
Localisation : Bordeaux/Poitiers

Re: DSPIY 2560 - Detection du signal - Bargraphe

Messagepar louisr » mer. 15 juil. 2015 19:15

C’est pour cela que faire un schéma simplifié en rajoutant source amplis … et les éventuelles mises à la terre peut être utile.

Je vais essayer de faire ça dans la soirée
Ok pour l'adc, faut que je regarde tout ça en détail et ce qui a déjà été fait !

louisr
Messages : 456
Enregistré le : mar. 14 juil. 2015 15:52
Localisation : Bordeaux/Poitiers

Re: DSPIY 2560 - Detection du signal - Bargraphe

Messagepar louisr » jeu. 16 juil. 2015 15:41

Bon j'ai essayé de faire un schéma simplifier du système. J'ai fait apparaître les sources, les amplis. Je n'ai pas représenté les liaisons type UART entre l'atmega et le bluetooth, l'oled etc. Pas facile de faire un truc complet et clair :-/ Je sais pas si ça va aider mais bon :gene:
Image

Avatar de l’utilisateur
thierryvalk
Administrateur du site
Messages : 3519
Enregistré le : jeu. 9 juil. 2015 20:08
Localisation : Belgique

Re: DSPIY 2560 - Detection du signal - Bargraphe

Messagepar thierryvalk » jeu. 16 juil. 2015 18:18

Super et super propre.
Mais sur une image on ne voit pas trop bien.
Normalement tu peux joindre un fichier aux messages, un PDF serait parfait.

(Me fait pensé que je dois refaire celui du schéma du DSPiy V2)

louisr
Messages : 456
Enregistré le : mar. 14 juil. 2015 15:52
Localisation : Bordeaux/Poitiers

Re: DSPIY 2560 - Detection du signal - Bargraphe

Messagepar louisr » jeu. 16 juil. 2015 18:52

Super et super propre.

J'y ai mis du coeur et du temps :mrgreen:
Apparemment on peut pas mettre de pièce jointe au format .pdf
https://drive.google.com/file/d/0BzmHX3-aNQ_Ka1pDcm9tLXdvM0E/view?usp=sharing
Il y a quoi à modifier sur le schéma du dspiy ? Je m'en suis beaucoup servi pour mon projet :gene:

Avatar de l’utilisateur
thierryvalk
Administrateur du site
Messages : 3519
Enregistré le : jeu. 9 juil. 2015 20:08
Localisation : Belgique

Re: DSPIY 2560 - Detection du signal - Bargraphe

Messagepar thierryvalk » jeu. 16 juil. 2015 19:05

Il y a quoi à modifier sur le schéma du dspiy ? Je m'en suis beaucoup servi pour mon projet :gene:

Pas de panique, c'est juste que l'on ne sait lire grand chose sur le pdf qui est dans la doc.

Avatar de l’utilisateur
alka
Administrateur du site
Messages : 2907
Enregistré le : mer. 15 juil. 2015 15:18
Localisation : 92
Contact :

Re: DSPIY 2560 - Detection du signal - Bargraphe

Messagepar alka » jeu. 16 juil. 2015 19:15

thierryvalk a écrit :Pas de panique, c'est juste que l'on ne sait lire grand chose sur le pdf qui est dans la doc.

tiens, c'est un forum en belge du sud :mrgreen:
acheter un DSPiy ? c'est ici


Retourner vers « DSPiy général »

Qui est en ligne

Utilisateurs parcourant ce forum : Google [Bot] et 8 invités