Hobi Posté(e) Mars 11, 2019 Posté(e) Mars 11, 2019 Ah en effet si le boîtier pris en compte n est pas le bon ça va pas marcher! J ai suivi la méthode utilisée pour les autres cartes mais en effet pour nous le profil est un stm32f103ze générique et pas sûr que le boîtier soit le bon... damned. Je vérifie ça!
Epsylon3 Posté(e) Mars 11, 2019 Posté(e) Mars 11, 2019 (modifié) Le port série ca peut deja aider pas mal... au moins tu peux lire certains gpios en theorie. J'ai pas encore osé toucher au stlink... je me remets dans le bain avec un ESP https://drive.google.com/file/d/1g3cOYCwftL2bi_1vJ_7ky3AQeO2c-H2y/view?usp=sharing Modifié (le) Mars 11, 2019 par Epsylon3
Hobi Posté(e) Mars 11, 2019 Posté(e) Mars 11, 2019 Il y a 14 heures, CacaoTor a dit : Très rapidement @Hobi, j'ai remarqué que tu as fait ton pins.h avec les noms logique du STM32. Grosse erreur, j'ai utilisé leurs numéros de pins... Il faut faire une association Datasheet <> Carte-mère, et pins réels Ça peut tout expliquer. Par exemple PB13 donne 52. Helllooo, bon bhein j'ai fait une bêtise, car j'ai pas pris le bon boitier, et du coup, les affectations de pins sont fausses.... J'ai eu du bol que le port série marche! Nous avons un STM32F103VE ( 100 pins), et j'avais un profil STM32F103ZE... ( 144 pins) . Normal d'avoir des problèmes!. Et du coup il faut exclure du fichier FSMC les définitions des pins qui ne sont pas présentes sur le boitier 100 broches. Un petit essai ce soir prevu! Dammned, une pile de bugs!
CacaoTor Posté(e) Mars 11, 2019 Auteur Posté(e) Mars 11, 2019 Il y a 4 heures, Hobi a dit : Helllooo, bon bhein j'ai fait une bêtise, car j'ai pas pris le bon boitier, et du coup, les affectations de pins sont fausses.... J'ai eu du bol que le port série marche! Nous avons un STM32F103VE ( 100 pins), et j'avais un profil STM32F103ZE... ( 144 pins) . Normal d'avoir des problèmes!. Et du coup il faut exclure du fichier FSMC les définitions des pins qui ne sont pas présentes sur le boitier 100 broches. Un petit essai ce soir prevu! Dammned, une pile de bugs! Ah ouai quand même Pourtant en première page... LQFP100
amonteff Posté(e) Mars 11, 2019 Posté(e) Mars 11, 2019 BRAVO pour les chercheurs, j'ai hâte de mettre ma U20 sous alternatif !!!!! 1
Hobi Posté(e) Mars 12, 2019 Posté(e) Mars 12, 2019 Un petit point vite fait. > Flag "disable Debug" a supprimer dans le fichier des pins, pour garder la mainavec le ST Link apres lancement du code > Nettoyage de la definition des pins d'adresse de l'interface TFT pour un boitier 100 broches. Debuggage dans plaftormIO en cours. Il y a un bug qui empeche l'initialisation complete. Une des differences entre cette carte Alfawise, et les autres est que le port SPI2 est utilise par le touch screen, alors que tout est en SPI 1 visiblement sur les autres. Petite adaptation a prevoir. On continue ce soir!
Sifakao Posté(e) Mars 12, 2019 Posté(e) Mars 12, 2019 Ben je viens de lire les 8 pages et j'ai compris un mot sur 3 ^^ A la base je cherche le moyen de piloter mon U30 avec repetier host et repetier server, vous pensez que c'est possible avec votre marlin modifié ? Et une question en passant pour le nouveau que je suis, le flash ça se fait avec une carte SD ? et il y a moyen de le faire au câble USB ? Merci pour votre travail titanesque en tout cas !
Hobi Posté(e) Mars 12, 2019 Posté(e) Mars 12, 2019 Bonsoir, le but c est d avoir un software marlin qui se comporte exactement comme un marlin. Je ne connais pas repetier donc je peux pas trop commenter. Pour télécharger le code pour l instant cela se fait grâce à une interface “stlink v2”. On trouve sur eBay des copies chinoises pour quelques euros. D un côté ça se branche sur usb et de l autre il y a 4 fils à brancher sur la carte. Je réutilise 99% du travail fait par d autres ( le code marlin deja modifié) et 1% d adaptation de ma part pour la configuration de la carte. Croisons les doigts!
Ganesha0581 Posté(e) Mars 12, 2019 Posté(e) Mars 12, 2019 (modifié) est-ce que vous utilisez CubeMX ? C'est un outil puissant de chez ST pour leur uC. Les codeurs là où je travaille l'utilise tout le temps et moi ça me permet de choisir les broches du composant lorsque je designe une carte électronique. Modifié (le) Mars 12, 2019 par Ganesha0581
Hobi Posté(e) Mars 12, 2019 Posté(e) Mars 12, 2019 Bonsoir non car marlin utilise platformio comme environnement de développement et il y a déjà plein de code écrit pour stm32f1. Et platformio est pas mal , en tout cas comparé à un environnement arduino. a+
CacaoTor Posté(e) Mars 12, 2019 Auteur Posté(e) Mars 12, 2019 (modifié) il y a 40 minutes, Ganesha0581 a dit : est-ce que vous utilisez CubeMX ? C'est un outil puissant de chez ST pour leur uC. Les codeurs là où je travaille l'utilise tout le temps et moi ça me permet de choisir les broches du composant lorsque je designe une carte électronique. Moi oui, et nanoFactory pour compile/balancer Marlin. Il n'y a que comme ça que j'avais eu un truc correct. nano à servis à l'origine pour le portage Marlin 1.1.x en 32bits. Voir ici Modifié (le) Mars 12, 2019 par CacaoTor
Hobi Posté(e) Mars 13, 2019 Posté(e) Mars 13, 2019 Petit progres du jour. Toute la phase d'initialisation est correcte. Pour ne pas avoir de hard fault, il faut decrire les pins dans le fichier pins.h par rapport à leur fonction, genre #define FSMC_CS_NE1 PD7 // PD7 or 88 et non pas 88.... Pourquoi? No idea! Il y a encore un crash apres l'initialisation, mais ca avance ! start echo:PowerUp Marlin bugfix-2.0.x echo: Last Updated: 2018-01-20 | Author: Hobi, Alfawise Ux0 echo:Compiled: Mar 13 2019 echo: Free Memory: 55711 PlannerBufferBytes: 1344 echo:Queue setup done echo:Hardcoded Default Settings Loaded echo: G21 ; Units in mm (mm) echo: M149 C ; Units in Celsius echo:Filament settings: Disabled echo: M200 D1.75 echo: M200 D0 echo:Steps per unit: echo: M92 X80.00 Y80.00 Z4000.00 E500.00 echo:Maximum feedrates (units/s): echo: M203 X300.00 Y300.00 Z5.00 E25.00 echo:Maximum Acceleration (units/s2): echo: M201 X3000.00 Y3000.00 Z100.00 E10000.00 echo:Acceleration (units/s2): P<print_accel> R<retract_accel> T<travel_accel> echo: M204 P3000.00 R3000.00 T3000.00 echo:Advanced: B<min_segment_time_us> S<min_feedrate> T<min_travel_feedrate> X<max_x_jerk> Y<max_y_jerk> Z<max_z_jerk> E<max_e_jerk> echo: M205 B20000.00 S0.00 T0.00 X10.00 Y10.00 Z0.30 E5.00 echo:Home offset: echo: M206 X0.00 Y0.00 Z0.00 echo:Material heatup parameters: echo: M145 S0 H200 B60 F0 echo: M145 S1 H250 B100 F0 echo:PID settings: echo: M301 P22.20 I1.08 D114.00 echo: M304 P10.00 I0.02 D305.40 echo:settings loaded echo:M206 passed Et apres... plantage. Prochain update ce week end! 1
Hobi Posté(e) Mars 14, 2019 Posté(e) Mars 14, 2019 @CacaoTor Bonjour, Peux tu demander à nos amis de chine la confirmation du driver d'ecran dans le petit LCD STP? Marlin boot et tourne, reagi aux commandes envoyees sur le port serie, mais le LCD est tou blanc, et ca peut venir du controleur legerment different d'un LCD à l'autre. ILI9341? ST7789V? ou autre. Il y a 6 controleurs possibles... Merci.
CacaoTor Posté(e) Mars 14, 2019 Auteur Posté(e) Mars 14, 2019 (modifié) il y a une heure, Hobi a dit : @CacaoTor Bonjour, Peux tu demander à nos amis de chine la confirmation du driver d'ecran dans le petit LCD STP? Marlin boot et tourne, reagi aux commandes envoyees sur le port serie, mais le LCD est tou blanc, et ca peut venir du controleur legerment different d'un LCD à l'autre. ILI9341? ST7789V? ou autre. Il y a 6 controleurs possibles... Merci. I will. A noter que les U20/U30 n'ont pas toute le même écran et donc drivers. Attention au piège. Bon ba si il tourne et qu'il ne reste "que" l'écran c'est déjà beaucoup beaucoup mieux. Modifié (le) Mars 14, 2019 par CacaoTor
Hobi Posté(e) Mars 15, 2019 Posté(e) Mars 15, 2019 @CacaoTor Pas grave, j'ai maintenant un bout de code qui permet de detecter le type de controleur utilise. 6 modeles differents . Je charge ca ce soir, et j'essaie. Si ca marche je posterai l'exe + code ici. Comme ca tu pourras regarder sur ta carte. Question : As tu pu avoir acces à la flash sans effacer le chip? J'ai merde, et tout efface en direct. Une image de la flash d'origine serait bien pour remettre les cartes "en etat" avec le bootloader d'origine. A+
Hobi Posté(e) Mars 17, 2019 Posté(e) Mars 17, 2019 Je galere un peu pour controler le LCD avec le port FMSC du STM32. Passage a l'analyseur logique car il y a un truc que je controle mal... timings? Bref, une traque au bug classique... Ca tombe bien, une de mes copines travaille chez Tektronix... ;-) Donc, ca avance doucement... Ce qui rend la chose un peu delicate c'est la dimension des connecteurs. Brancher une sonde d'analyseur c'est pas facile avec les tout petits fils. A+ 1
amonteff Posté(e) Mars 19, 2019 Posté(e) Mars 19, 2019 bonjour je m'excuse de de poser une question HS, mais il me semble pourtant que c'est ici que je pourrais trouver les réponses adéquates... J'ai une U20 depuis quelques jours et j'ai essayé d'imprimer par usb avec s3d....impossible !!! les moteurs bougent, le lit et la buse chauffent (sans monitoring de température) mais dès que je lance l'impression rien et meme cela arrete tout question est ce que cette carte permet l'impression par usb et si oui comment ? encore une fois excusez moi du HS
CacaoTor Posté(e) Mars 19, 2019 Auteur Posté(e) Mars 19, 2019 Le 15/03/2019 at 16:33, Hobi a dit : Question : As tu pu avoir acces à la flash sans effacer le chip? J'ai merde, et tout efface en direct. Une image de la flash d'origine serait bien pour remettre les cartes "en etat" avec le bootloader d'origine. La flemme à l'époque Sinon pas de réponse de nos amis. Hé bien on a pas les mêmes copines
CacaoTor Posté(e) Mars 19, 2019 Auteur Posté(e) Mars 19, 2019 (modifié) il y a 42 minutes, amonteff a dit : bonjour je m'excuse de de poser une question HS, mais il me semble pourtant que c'est ici que je pourrais trouver les réponses adéquates... J'ai une U20 depuis quelques jours et j'ai essayé d'imprimer par usb avec s3d....impossible !!! les moteurs bougent, le lit et la buse chauffent (sans monitoring de température) mais dès que je lance l'impression rien et meme cela arrete tout question est ce que cette carte permet l'impression par usb et si oui comment ? encore une fois excusez moi du HS Salut, Le sujet a été abordé nombre de fois dans la catégorie AlfaWise. Ce que tu décrit est une maladie caractéristiques de nos imprimantes. La longer3D ne fais pas mieux en communication USB. Il faudrait que l'USB attaque le SPI directement pour avoir de meilleurs débits. Ou bien ton drivers sur ton PC n'est pas bon. Modifié (le) Mars 19, 2019 par CacaoTor
amonteff Posté(e) Mars 19, 2019 Posté(e) Mars 19, 2019 MERCI de ta réponse Pour le moment, donc je me contente de la carte sd
Hobi Posté(e) Mars 19, 2019 Posté(e) Mars 19, 2019 @CacaoTor la copine en question est plutôt bien placée le Fmsc est pas simple et en plus y’en à qui prennent leur pied à développer du code en c++ imbitable..... Même un bête accès à un registre se transforme en discours de geek.... mais ça avance doucement !
Hobi Posté(e) Mars 23, 2019 Posté(e) Mars 23, 2019 @CacaoTor Premiere seance de debug avec analyseur 8 voies. Le code d'init de Marlin fait ce qu'il doit faire, et la lecture du registre d'ID du controleur de LCD est faite correctement par le code, mais la valeur retournee par le LCD n'est pas celle attendue. switch(lcdId) { case 0x1505: Serial1.println("LCD Controller: R61505U"); sprintf(controller, "R61505U"); break; case 0x8552: Serial1.println("LCD Controller: ST7789V"); sprintf(controller, "ST7789V"); break; case 0x8989: Serial1.println("LCD Controller: SSD1289"); sprintf(controller, "SSD1289"); break; case 0x9325: Serial1.println("LCD Controller: ILI9325"); sprintf(controller, "ILI9325"); break; case 0x9328: Serial1.println("LCD Controller: ILI9328"); sprintf(controller, "ILI9328"); break; case 0x9341: Serial1.println("LCD Controller: ILI9341"); sprintf(controller, "ILI9341"); break; case 0x0404: Serial1.println("No LCD Controller detected"); break; default: Serial1.print("LCD Controller: Unknown (0x"); Serial1.print(data & 0xFFFF, HEX); Serial1.println(")"); sprintf(controller, "Unknown"); break; } Normalement, on devrait avoir en lisant le registre d'identification du controleur une ID qui correspond au type de chip utilise dans LCD, mais on obtient 0.... Et c'est pas bon. Prochaine etape : connection de toutes les broches du LCD sur un gros analyseur logique pour comprendre quel est le chip controleur utilise dans le LCD, et espionner les trames de commandes envoyees par le code Alfawise.
oudini Posté(e) Mars 23, 2019 Posté(e) Mars 23, 2019 Tous savaient que c'était impossible, mais Hobi ne le savait pas et il l'a fait, enfin presque Félicitations pour ton opiniâtreté.
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant