wDSPiy - commander le DSPiy par Wifi (et par Alexa et en MQTT)

Discutions générales sur le DSPiy et tout ce qui s'y rattache
Avatar de l’utilisateur
thierryvalk
Administrateur du site
Messages : 3519
Enregistré le : jeu. 9 juil. 2015 20:08
Localisation : Belgique

Re: wDSPiy - commander le DSPiy par Wifi

Messagepar thierryvalk » sam. 21 nov. 2020 21:47

Je m'insurge sur ton point de vue du langage c. :diable:
Tu aurais pu écrire : char c= 3; et là c aurait eu comme valeur 3.
'3' indique un caractère ASCII, maintenant utf-8. C'est bien un code et non une valeur et c'est grâce au langage c que tu as pu en extraire sa valeur très simplement sans a avoir à rajouter une lib.

Le c reste l'un des rares langage performant utilisé par des gens qui comprennent ce qu'ils font. :langue2:

Je prévois de migrer le forum de son hébergement actuel pas vraiment fiable vers un serveur virtuel privé et par la même occasion y installer un Broker MQTT.
Broker qui sera mis a disposition des membres du forum.

Mais il faut du temps et du courage car je ne métrise pas trop les serveurs ni Linux.

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

Re: wDSPiy - commander le DSPiy par Wifi

Messagepar alka » dim. 22 nov. 2020 11:06

J'ai pas vraiment eu le choix, ca vient d'un code externe. Quand c'est moi, pour une chaine de caractères, j'utilise String. C'est un type spécifique à Arduino bien plus manipulable même s'il n'est pas parfait.

Bien sûr c'est parfois utile en programmation de pouvoir se mettre au niveau de la machine mais pas tout le temps. c a près de 50 ans, on ne peut rien lui demander mais c++ pourrait être plus "developer-friendly".
Faut quand meme être tordu pour nommer (int) une conversion qui ne retourne pas la valeur de la variable mais celle du code ascii. Confusion entre la forme et le fond. Ils n'avaient qu'a nommer ça (intascii). Sans stackoverflow c'est impossible de programmer en c :mrgreen:

en c, (bière)chouffe renverrait 5410769300085.Indigeste :diable:

Je prévois de migrer le forum de son hébergement actuel pas vraiment fiable vers un serveur virtuel privé et par la même occasion y installer un Broker MQTT.
Broker qui sera mis a disposition des membres du forum.

cool. l'intérêt d'un broker MQTT externe c'est qu'on peut y accéder de n'importe où.
Ca me donnera l'occasion de tester la communication de broker a broker ;)
acheter un DSPiy ? c'est ici

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

Re: wDSPiy - commander le DSPiy par Wifi

Messagepar thierryvalk » dim. 22 nov. 2020 14:42

Oui, passer par un String aurait plus élégant.
En C un String est un tableau de caractères, là encore c'est au final plus parlant: une suite de char et un zéro pour indiquer la fin.

Ton code aurait été, par exemple :
//j'aime le c
char c ='3';
char str[20];

str[0]=c;
str[1]=0;
int cn = atoi(str);

Au fait, ta ligne :
int cn = c - '0'; // cn contient 3

Fonctionne en c, mais tu fais : int = char-char

Le c , c'est très vieux, développé principalement pour Unix et n'a que très peu évolué tout en étant standardisé. Rien que pour cela, s'il ne fallait connaitre qu'un langage ce serait le c.

C'est pas stackoverflow qu'il te faut mais ceci : la bible, c'est pas bien gros tout en étant très simple à lire.
Image

Et c'est pas cher :https://www.amazon.fr/langage-C-ANSI/dp/2225820708

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

Re: wDSPiy - commander le DSPiy par Wifi

Messagepar alka » dim. 22 nov. 2020 17:58

je l'ai eu ce livre il y a fort longtemps! Il a fait l'objet du grand débarras en même temps que quelques dictionnaires :mrgreen:

Attention : en Arduino il y a string (celui du c/c++) et String (propre à Arduino). La classe String est plus souple avec des opérations comme substing() ou toInt() qui sont quand même plus claires pour moi.

int cn = c - '0'; // cn contient 3
c'est une super ruse de programmeur c ! Se base sur le fait que les codes ascii des chiffres se suivent. 51- 48 = 3
acheter un DSPiy ? c'est ici

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

Re: wDSPiy - commander le DSPiy par Wifi

Messagepar alka » mar. 24 nov. 2020 12:51

a l'heure du café, je me rappelle de vieux souvenirs d'école. On m'avait dit que les gars des Bell Labs qui ont fait Unix avaient besoin d'un langage pour le développer et en même temps il fallait un langage pour faire des programmes une fois que l'OS était prêt.
Comme A était déjà pris (assembleur) et B aussi (un obscur langage oublié, aussi fait chez Bell) ils l'ont appelé C. Imagination d'informaticien.
Bien plus tard est arrivé ce qui devait être l'évolution du C, C++ toujours dans les Bell Labs. Humour d’informaticien.

J'en retiens surtout que les informaticiens avaient une imagination et un humour limité à l'époque. Contrairement aux électroniciens a qui on doit le "bug" en cas de panne.

L'humour et l'imagination ont bien progressé par la suite:
- un type nommé Gates qui fait Windows.
- Java nommé d'après une sorte de café que l'équipe buvait beaucoup. Les conteneurs appelé Beans. On a échappé de peu à Margarita ou Calzone !
- Eclipse, nommé pour faire de l'ombre à l'outil de développement Java originel, détenu à l'époque par SUN.
- Python nommé d'après les Monthy Pythons. Un IDE nommé Boa.
- un de mes préférés : l'encodeur MP3 LAME pour Lame Ain't an MP3 Encoder.
acheter un DSPiy ? c'est ici

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

Re: wDSPiy - commander le DSPiy par Wifi

Messagepar thierryvalk » mar. 24 nov. 2020 14:15


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

Re: wDSPiy - commander le DSPiy par Wifi

Messagepar louisr » mar. 24 nov. 2020 15:06

Au labo c'est toujours le grand jeu quand on doit nommer une carte ou une puce. Le but étant de trouver un acronyme qui tient aussi la route...
Les grands champions étant la puce "Fish'n'chip" qui fait suivi de poisson et son PCB qui équipé d'une communication RF "Wi-Fish"... :gene: :happy1:

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

Re: wDSPiy - commander le DSPiy par Wifi

Messagepar alka » mer. 25 nov. 2020 11:10

louisr a écrit :Au labo c'est toujours le grand jeu quand on doit nommer une carte ou une puce. Le but étant de trouver un acronyme qui tient aussi la route...
Les grands champions étant la puce "Fish'n'chip" qui fait suivi de poisson et son PCB qui équipé d'une communication RF "Wi-Fish"... :gene: :happy1:

:mrgreen: :mrgreen: excellent
acheter un DSPiy ? c'est ici

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

Re: wDSPiy - commander le DSPiy par Wifi

Messagepar alka » mar. 1 déc. 2020 20:40

comme je sais que vous aimez bien avoir de mes nouvelles, voici le chapitre suivant du "C qui me rend chèvre 🐐 dommage qu'on puisse pas en faire du fromage"

J'ai eu cette idée de baisser le contraste de l'affichage OLED de mon système quand le soleil se couche.

Le site meteo norvégien offre une api pour connaitre l' heure de lever et coucher du soleil. On lui donne sa longitude, latitude, hauteur et la date et il répond instantanément en xml ou Json. Il donne plein d'infos sur le soleil ou la lune.

Depuis quelques jours, j'ai appris a dompter la chèvre pour
- faire des requêtes https depuis ma carte esp8266.
- convertir les formats de date et heure dans tous les sens (et il y en a des sens !)
- l'overload de fonctions selon le type de leurs paramètres
- les fonctions avec des paramètres optionnels (dont la déclaration possède une capacité chevresque élevée !)

Ca marche :)

A partir de demain, je m'attaque au client mqtt. Ca va encore bêler 🐐 🐐 🐐
acheter un DSPiy ? c'est ici

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

Re: wDSPiy - commander le DSPiy par Wifi

Messagepar thierryvalk » mer. 2 déc. 2020 08:58

Une petite table + quelques calculs et l'on a les infos de lever/coucher du soleil.

De manière globale, l'utilisation de tous ces services "connectés" sont tout de même interpellant.

Que se passe t'il si le site interrompt son service ?
Un jour il faudra évaluer l'impact énergétique de ce genre de service.

Tu te lances dans l'élevage ? :)

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

Re: wDSPiy - commander le DSPiy par Wifi

Messagepar alka » mer. 2 déc. 2020 11:47

thierryvalk a écrit :Une petite table + quelques calculs et l'on a les infos de lever/coucher du soleil.
C'est sur que a mon échelle et la faible précision requise, je pourrai me contenter de beaucoup moins précis. Simplement recopier l'éphéméride de l'almanach que le facteur me vend chaque année a cette période par exemple :)


De manière globale, l'utilisation de tous ces services "connectés" sont tout de même interpellant.
Que se passe t'il si le site interrompt son service ?
un message dans le log du wDSPiy pour me prévenir que la Norvège a fermé ;) Il y a des dizaines de sites qui fournissent une API pour ça. J'ai pris le premier qui me paraissait sérieux.


Un jour il faudra évaluer l'impact énergétique de ce genre de service.
une personne qui regarde un film sur netflix en 4K doit consommer plus que ces services en 100 ans. Et je ne te parle pas des gamers dont les consoles consomment 60W + écran 50W pendant des heures en utilisant des ressources internet et serveur pharaoniques juste pour dégommer leurs avatars virtuels avec leur pouce. Une vraie question.

Tu te lances dans l'élevage ? :)
bêêêêê bêêêêê 🐐🐑 🐀 🐄 🐇 🐕 🐥 🐦


ps: le forum ne m'envoie plus de notification par mail a nouveau. C'est pas le week end pourtant ? avec ce confinement je ne suis plus sur de faire la différence et le forum non plus manifestement :mrgreen:
acheter un DSPiy ? c'est ici

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

Re: wDSPiy - commander le DSPiy par Wifi

Messagepar thierryvalk » mer. 2 déc. 2020 11:58

ps: le forum ne m'envoie plus de notification par mail a nouveau. C'est pas le week end pourtant ? avec ce confinement je ne suis plus sur de faire la différence et le forum non plus manifestement

Le forum, LUI, fait des économies d'énergie. :mrgreen:

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

Re: wDSPiy - commander le DSPiy par Wifi

Messagepar alka » lun. 5 avr. 2021 17:36

Je prend le temps de faire une vidéo de la télécommande rowD (remote oled wifi DSPiy).
Les commandes passent en MQTT vers ma carte wDSPiy qui pilote le DSPiy :)

https://youtu.be/aIV5bIr_4vM
acheter un DSPiy ? c'est ici

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

Re: wDSPiy - commander le DSPiy par Wifi

Messagepar thierryvalk » lun. 5 avr. 2021 18:21

Fonctionne pas :pleur4: :pleur4: :pleur4: "vidéo privée" et cela même après m'être connecté à mon compte Google.

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

Re: wDSPiy - commander le DSPiy par Wifi

Messagepar alka » lun. 5 avr. 2021 22:08

ca devrait aller maintenant. j'ai été fort en la mettant privée !
acheter un DSPiy ? c'est ici

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

Re: wDSPiy - commander le DSPiy par Wifi

Messagepar thierryvalk » mar. 6 avr. 2021 08:26

Impressionnant, cela semble presque simple. :super:

Dommage de ne pas avoir de démo des commandes vocales ni de la commande en MQtt via Smartphone.

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

Re: wDSPiy - commander le DSPiy par Wifi

Messagepar alka » mar. 6 avr. 2021 11:01

merci. C'est fait pour être super simple à utiliser ;)
j'ai dernièrement ajouté en haut a gauche un bouton poussoir pour changer les sources. Design toujours aussi "tripes a l'air" qui fait très DIY et qui plait beaucoup.
Alexa sait changer de source par commande vocale mais j'aime bien un bouton physique :)

Jusqu'il y a quelques semaines, je n'écoutais quasiment qu' en Bluetooth.
J'ai récemment rebranché mon vieux ChromeCast Audio (CCA) sur l'entrée toslink du DSPiy. Le CCA stream en wifi via Spotify Connect. La qualité est nettement supérieure a ce que j'obtiens en BT et en plus c'est super pratique avec spotify.

Pour parler boutique, j'ai fait dans mon code ESP8266 une sorte d'API pour piloter le DSPiy avec des fonctions du type set/get (par exemple setVolume(x) ou getVolume() ).
Toutes les interfaces que j'ai ajoutées (boutons, HTTP, MQTT, Alexa) utilisent les fonctions de l'API. Simple a maintenir.

Les commandes par smartphone sont par pages web et utilisent l'interface HTTP. Je réfléchis a faire une interface native android qui envoie des commandes MQTT. C'est un gros morceau pour moi car le fonctionnement que je veux n'a pas l'air si simple à faire. Il y a tellement de possibilités sur android que je suis bloqué au démarrage. Faut que je trouve une bonne âme compétente qui me guide pour partir dans la bonne voie.
acheter un DSPiy ? c'est ici

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

Re: wDSPiy - commander le DSPiy par Wifi

Messagepar thierryvalk » mar. 6 avr. 2021 17:12

Tu veux développer ta propre application Android ?
Pourquoi ne pas utiliser une appli tel que MQtt dash ?


Retourner vers « DSPiy général »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 6 invités