alors l'ESP32 recrois parfaitement les infos, par contre il n'affiche rien sur les dalles (même pas ton logo de boot) Par contre avec le même montage et le même pinout, les exemples de la librairie display fonctionnent parfaitement.
Si ça peut faire avancer je peut faire quelques tests
Super d'avoir essayé, merci. Je suis hyper surpris, même pas le logo???? Le logo se lance dès le début et ne fait que remplir la mémoire avec un fichier stocké, tu as bien fait le transfert du contenu data? Les instructions pour aller jusqu'à l'affichage du logo sont vraiment basiques et sans difficulté. Je ne suis pas sûr qu'afficher le logo demande quelque chose de différent de l'exemple display. Du coup, ça m'inquièterait si juste le logo s'affichait, mais là, ça doit être tout con...
Donc avec ta modif, rien de mieux. Je vais tout reprendre à zero Pour info je suis bien en CP2102, et si je lance le sketch 2patternplasma d'exemple de la librairie, cela fonctionne parfaitement, et pareil avec les autres sketch de test, et ce avec plusieur type de dalle... Je reprends tout à zero coté prog usb et coté config pincab.
Question, ton logo doit s'afficher au boot de l'ESP même si non config coté PC ?
Oui, le logo est chargé dans la mémoire SPIFFS du µC et affiché dès le début, que ça soit connecté ou non. Tu es sûr d'avoir fait l'étape "ESP32 Sketch Data Upload"? et ça a affiché que le fichier a été transféré?
Je te confirme que oui j'ai même remonté un peu le brightness dans ton code pour etre sur, mais rien. Pour info le moniteur série me fait ça en boucle :
HUB75_I2S_CFG mxconfig; Serial.println("OK4"); delay(1000); mxconfig.mx_height = PANEL_HEIGHT; // we have 32 pix high panels Serial.println("OK5"); delay(1000); mxconfig.mx_width = PANEL_WIDTH; // we have 64 pix wide panels Serial.println("OK6"); delay(1000); mxconfig.chain_length = PANELS_NUMBER; // we have 2 pannels chained Serial.println("OK7"); delay(1000); mxconfig.clkphase = false; // change if you have some parts of the pannel with a shift Serial.println("OK8"); delay(1000); dma_display = new MatrixPanel_I2S_DMA(mxconfig); Serial.println("OK9"); delay(1000); dma_display->setBrightness8(90); // range is 0-255, 0 - 0%, 255 - 100% Serial.println("OK10"); delay(1000); dma_display->clearScreen(); Serial.println("OK11"); delay(1000); dma_display->begin(); Serial.println("OK12"); delay(1000); LoadOrdreRGB(); Serial.println("OK13"); delay(1000);
DisplayLogo();
InitPalettes(255,109,0); }
et tu surveilles le moniteur série. Il suffit de voir le dernier OKx affiché et de me dire lenombre, STP
EDIT: je viens de mettre des minuscules à Delay -> delay
@arnoz, je ne suis pas loin de penser que ton système de fichier SPIFFS est mal installé ou ne fonctionne pas. Tu dois avoir le "OK1" mais pas les suivants, si?
Les 2 fichiers sur le MEGA (l'un avec les fichiers à décompresser dans VPinMAME sur le PC et l'autre à injecter dans l'ESP32) ont été mis à jour pour répondre à une demande de Freezy.
Pour ceux qui ont déjà installé, seules les étapes (@arnoz, essaye déjà ça avant les 2 solutions au dessus):
Dans l'Arduino IDE:
Télécharge le code ici https://mega.nz/file/WBInmBAA#zQ7UC9-dY…XTcHR7caeg, extrait le zip n'importe où sur ton disque et charge "ZePinDMD.ino" dans l'Arduino IDE.
Va dans "Croquis" puis clique sur "Téléverser". Attends que le transfert se termine.
Sur le PC:
Télécharge juste le fichier https://mega.nz/file/7EAFGKRT#Lv7wi3sY7…GcDgXXCaMs et décompresse le avec 7-zip pour éviter les fichiers EXE et DLL bloqués dans ton répertoire "Visual Pinball\VPinMAME". Si on te demande pour remplacer des fichiers, fais "Oui pour tous".
Ouvre le fichier "DmdDevice.ini" avec un éditeur de texte quelconque (le bloc-notes de Windows va très bien) et si tu as les ligne
Code:
[ZePinDMD] ;if false, doesn't bother looking for a ZePinDMD enabled=false
Première modif rien, le nouveau fichier à DL, rien les modifs sur le fichier, rien juste un truc, dans le troisième bloc à inclure, le fill panel, le ""OK"+str(6+tj)" me fait une erreur de str non déclaré dans le scope. j'ai modif à l'arrache pour juste avoir le OK6 dans le moniteur, il passe...
Je vais essayer de me dégager un peu de temps pour comprendre les différences avec les codes qui fonctionnent sur mon système, et le tien, voir si je trouve un truc...
C'est ce qui m'embête un peu avec des cartes génériques comme l'esp32, c'est pas cher, mais ce sont des clones de clone... Ce que je te disais dans l'autre post, c'est que prendre une carte précise et sur, comme par exemple, une TEENSY, c'est certes plus cher, mais moins de contraintes à mon sens
Bon de toute façon, si tu as fait les modifs des changements de fichiers à télécharger sur le mega, il faut bien que tu ne fasses les modifs que sur cette version du fichier ino pour l'ESP32. En fait, ce n'est pas "str(6+tj)", c'est "String(6+tj)"... Désolé Du coup, à partir de la mise à jour, ne modifie que la fonction fillpannel() par celle-ci:
Bonjour Une fois encore je vais faire le malin sans avoir rien fait. Je suggère que tu crées un repo sur github - si tu es d'accord pour patager le code que tu as déjà donné à tout le monde sur Mega. De là tu pourras tirer des branches pour debuguer et éventuellement récupérer les changements proposés par les uns et les autres.
Non c'est bon @actarus, je vais y arriver t'inquiète, perso Github me gave et ça me va bien de chercher. Ceci dit, tu as raison, on va peut-être passer en mp avec @arnoz, de toute façon je nettoierai ce thread après (tout en laissant un petit message remerciant arnoz pour le coup de main de déboggage)
ça roule, j'essaye de me dégager du temps dans la journée pour approfondir et decortiquer ton code. Ton dernier code m'affiche une espece de matrice de carré de 10*10 en dégradé du noir -> rouge -> vert.... Et je te confirme que les sketch d'exemple de la librairie fonctionne...
une matrice carrée????? tes panneaux font bien 64x32 et sont positionnés l'un à côté de l'autre pour faire 128x32? normalement, ça doit te faire un truc qui part du noir et fait de plus en plus rouge vers la droite et de plus en plus bleu vers le bas (donc violet en bas à droite), après l'ordre des couleurs dépend d'un panneau à l'autre donc ça doit être le rouge et le vert pour toi, mais le pattern doit rester le même. tu peux m'envoyer une photo à un moment, STP? Par contre que tu n'aies que 10x10 pixels d'allumés, c'est vraiment bizarre. ça devrait d'abord remplir les lignes, d'abord les 128 premiers pixels en haut, puis les 128 suivants en dessous, etc...