<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
		<id>https://projets-ima.plil.fr/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Adorian</id>
		<title>Wiki de Projets IMA - Contributions de l’utilisateur [fr]</title>
		<link rel="self" type="application/atom+xml" href="https://projets-ima.plil.fr/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Adorian"/>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php/Sp%C3%A9cial:Contributions/Adorian"/>
		<updated>2026-05-14T05:11:00Z</updated>
		<subtitle>Contributions de l’utilisateur</subtitle>
		<generator>MediaWiki 1.29.2</generator>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=64851</id>
		<title>IMA5 2018/2019 P28</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=64851"/>
				<updated>2018-12-20T16:19:20Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Documents Rendus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Construire un clone de la calculatrice open-source NumWorks. Effectuer quelques modifications sur le code source et sur le hardware.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
Il y a plusieur Axes sur le projet&lt;br /&gt;
en premier temps sur une calculatrice officiel&lt;br /&gt;
Logiciel : &lt;br /&gt;
&lt;br /&gt;
Préambule&lt;br /&gt;
- compilation du firmware sur linux / windows &lt;br /&gt;
- mettre a jour un calculatrice&lt;br /&gt;
- compréhension du code dans sa généraliter &lt;br /&gt;
&lt;br /&gt;
Réquis&lt;br /&gt;
- Modification du mode examen pour garder les programme &lt;br /&gt;
- Modification du calculateur pour rajouter des fonction&lt;br /&gt;
- Ajout de memoire a python ( 13 ko disponnible)&lt;br /&gt;
&lt;br /&gt;
Hardware &lt;br /&gt;
&lt;br /&gt;
- Rajout de memoire vive (seulement 256kb) &lt;br /&gt;
- Recherche ecran compatible &lt;br /&gt;
&lt;br /&gt;
en un second temps modifier la calculatrice en rajoutant des fonction non utiliser &lt;br /&gt;
comme lecture de carte sd et utilisation des entrée sortie&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
Pour éviter de me retrouver avec une seul version qui a tout les modification je travail par petit segment qui seront appeler buildx (x étant un chiffre croissant)&lt;br /&gt;
les petit modification pourront comme sa ajouter dans une version futur et des modification juger non pertinent n'impacterons pas sur le peux de place qui a en mémoire flash&lt;br /&gt;
&lt;br /&gt;
Installation : &lt;br /&gt;
&lt;br /&gt;
[https://www.numworks.com/resources/engineering/software/sdk/ source]&lt;br /&gt;
&lt;br /&gt;
Linux &lt;br /&gt;
&lt;br /&gt;
Partant d'un linux vierge pourvoir installer l'environnent sdk pour qu'on puisse mettre a jour et modifier la numwork il faut quel que ressource&lt;br /&gt;
seront nécessaire pour compiler&lt;br /&gt;
 make gcc g++ &lt;br /&gt;
utiliser par &amp;quot;os&amp;quot; de numwork&lt;br /&gt;
 bison build-essential dfu-util flex gcc-arm-none-eabi libfltk1.3-dev libfreetype6-dev libpng12-dev&lt;br /&gt;
une fois tout sa installer linux et enfin prés a compiler et envoyer le code sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Windows&lt;br /&gt;
&lt;br /&gt;
Cette fois n'ayant pas de console il faut l'installer Numwork nous propose Msys2 une fois installer comme sur linux il faut installer pas mal de ressource &lt;br /&gt;
 pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-freetype mingw-w64-x86_64-pkg-config mingw-w64-x86_64-fltk git make bison python&lt;br /&gt;
&lt;br /&gt;
Mac&lt;br /&gt;
aucun mac pour les tests mais sa doit fonctionner correctement &lt;br /&gt;
&lt;br /&gt;
Mise a jour : &lt;br /&gt;
une fois l'ordinateur configurer on compiler et essayer soit le simulateur soit envoyer le code sur la calculatrice (sachant que le simulateur ne simule pas la led et d'autre fonction de la calculatrice)&lt;br /&gt;
Pour compiler le code vers la calculatrice&lt;br /&gt;
 make clean&lt;br /&gt;
 make&lt;br /&gt;
 make epsilon_flash&lt;br /&gt;
Pour compiler le code pour le simulateur&lt;br /&gt;
 make PLATFORM=simulator clean&lt;br /&gt;
 make PLATFORM=simulator&lt;br /&gt;
sachant que le clean et très important on ne peux pas exporter un code qui a était a but du simulateur &lt;br /&gt;
&lt;br /&gt;
Pour exécuter le simulateur &lt;br /&gt;
 ./epsilon.elf&lt;br /&gt;
&lt;br /&gt;
'''Build 1''' désactivation du mode examen &lt;br /&gt;
&lt;br /&gt;
Le mode examen et obligatoire pour tout les calculatrice programmable a partir de la rentrée 2018  le but de se mode et de bloquer l'accès au programme qui on était dejai enregistré dans la calculatrice et de l'indiquer pour aider les surveillant a verifier que le mode et bien actif.&lt;br /&gt;
&lt;br /&gt;
Pour se faire Numwork a choisir d'appliquer 3 action en activant le mode examen &lt;br /&gt;
&lt;br /&gt;
- ajout d'une icone examen dans le menu &lt;br /&gt;
&lt;br /&gt;
- clignotement d'une led en rouge &lt;br /&gt;
&lt;br /&gt;
- effacement des programme python (et non dés-affichage des programme comme le font certain concurrent)&lt;br /&gt;
&lt;br /&gt;
Pour sortir du mode d'examen il suffit soit de reset sa calculatrice ou d'alimenter la calculatrice &lt;br /&gt;
&lt;br /&gt;
Cette dernier fonction et vraiment contraignante même pour une utilisation normal, une mauvaise manipulation et les programmes réaliser s'envole &lt;br /&gt;
&lt;br /&gt;
Pour que la supercherie que le mode examen aie était truquer les indicateur visuel doivent rester il faut juste modifier la dernier fonction&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
Ayant avancée sur la partie software et compris un partie du code je me lance sur la liste des materiel requis pour réaliser un clone.&lt;br /&gt;
tout les composant sont disponible dans le commerce sauf l'ecran qui a réaliser sur mesure pour numwork &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Connecteur_ecran.png]]&lt;br /&gt;
&lt;br /&gt;
On peux voire que la schème donnée par numwork qu'il utiliser des fonction particulier du controleur qui sont: &lt;br /&gt;
&lt;br /&gt;
-un bus de donnée de 16 bits &lt;br /&gt;
&lt;br /&gt;
-4 led de retroéclairage&lt;br /&gt;
&lt;br /&gt;
-Te : Tearing Effect  &lt;br /&gt;
&lt;br /&gt;
-EXTC : extended comande &lt;br /&gt;
&lt;br /&gt;
connaisant les port qui sont requis je peux commencer a chercher un ecran compatible sachant qu'aprés une demande a numwork le ports EXTC n'ai pas encore utiliser et le ports TE peux être desactiver sans vraiment poser de problème&lt;br /&gt;
&lt;br /&gt;
Il et dur de trouver d'un concepteur d'ecran utilisant le controleur ST7789V pour leurs ecran il faut donc se tourner vers la chine &lt;br /&gt;
sur 8 fabricant seulment 4 réponse et sur les 4 réponse seulment 2 avec des produit correspondant a la demande &lt;br /&gt;
l'un viens de [http://www.szelida.cn szelida] et l'autre de [http://www.youritech.com Youri Technology]&lt;br /&gt;
je choisi donc le ET024QV01 [[https://projets-ima.plil.fr/mediawiki/index.php/Fichier:ET024QV01.pdf]]&lt;br /&gt;
&lt;br /&gt;
on peux voire a sa liste de PIN qui a certain PIN qui deveront être fixer a vcc ou gnd pour bloquer le mode d'affichage de la calculatrice mais il posséde les pin requis pour fonctionner avec la calculatice il et juste plus petit&lt;br /&gt;
&lt;br /&gt;
[[Fichier:RAM_numwork.png]]&lt;br /&gt;
&lt;br /&gt;
En paralléle une recherche sur le hardware montre que la place pour la RAM et dejai prévu sur le PCB il faudrait juste modifier une partie software pour qu'il soit pris en compte l'ajout de la RAM boostera fortement les capacité de cette calculatrice et pourra permet normalment de faire des petit calcul formel &lt;br /&gt;
'''&lt;br /&gt;
Partie Software :'''&lt;br /&gt;
&lt;br /&gt;
Vu que le recherche sur la ram a était effectuer je me concentre se coup si sur l'augmentation de la taille alouer a python en prévision de l'augmentation qui serra fait dans le futur !&lt;br /&gt;
&lt;br /&gt;
De base python dispose de 16Kb de mémoire alouer pour fonctionner en peux le pousser a aller jusqu'a 128Kb sans augmentation matériel mais du a l'achirecture de la mémoire du procésseur une fois qu'on dépace les 64 Kb le temps de traitement deviens long tellement que les premier fois j'ai penser la calculatrice totalment planter !&lt;br /&gt;
&lt;br /&gt;
Si on essaye d'alouer plus que 128Kb de mémoire a python la calculatrice bloque l'action et empêche d'ouvrire la console , il existe une petit sécuriter pour éviter de vraiment planter la calculatrice &lt;br /&gt;
&lt;br /&gt;
cette modification permet d'avancer l'hypothése que le système epilson prend 128kb dans la mémoire vive actuel&lt;br /&gt;
&lt;br /&gt;
Une autre modification mineur a était réaliser pour modifier la version de la numwork il n'ai possible que de rentrée un numéro de version ayant 7 char chose intéressant le site de numwork affiche bien notre version modifier &lt;br /&gt;
[[Fichier:Version.png]]&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
Je commence cette semaine par étudier l'utiliter du port TearingEffect et ExtendedCommand on debute par tout commenter pour voir l'effet sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:TE exc.png]]&lt;br /&gt;
(d'autre ligne on était commenter)&lt;br /&gt;
&lt;br /&gt;
je charge donc cette modification dans la calculatrice pour voire le résultat grace a la fonction graphique je charge des fonction assez lourde graphiquement pour voire les changement ( un fonction de base comme f(x)=x n'ai aucun bug graphique)&lt;br /&gt;
&lt;br /&gt;
je test donc tan(x²⁴) et sin(x⁴)&lt;br /&gt;
&lt;br /&gt;
(pour les images de cette partie il n'aie pas possible d'utiliser le simulateur)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Original.png]]&lt;br /&gt;
&lt;br /&gt;
en effectuant quel que déplacement sur la courbe on obtiens des léger bug graphique comme celui la ,ou seulment un petit portion disparaît par a coup&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit bug.png]]&lt;br /&gt;
&lt;br /&gt;
en changent de fenêtre l'as on obtient des bug graphique plus important &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Gros bug.png]]&lt;br /&gt;
&lt;br /&gt;
même si les bug graphique sont présent il ne sont pas gênant car :&lt;br /&gt;
&lt;br /&gt;
- sur des fonctions de base il ne sont pas présent donc pas contraignant pour un étudiant au collège/lycéen &lt;br /&gt;
&lt;br /&gt;
- sur des fonction avancer les bug ne dure quel que seconde et ne sont donc pas gênant &lt;br /&gt;
&lt;br /&gt;
il pourrai donc poser problème sur des fonction plus graphique et dynamique&lt;br /&gt;
&lt;br /&gt;
En cherchant sur internet on peux découvrire un mode de test on y accédes viens le menus paramètres -&amp;gt; A propos on se place sur FCC ID puis on appuis sur la touche 6 on valide et nous voila dans le mode de test &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test usine.png]] [[Fichier:Test bouton.png]]&lt;br /&gt;
&lt;br /&gt;
sur simulateur on ne peux pas dépasser le test bouton car le bouton home n'est pas accessible via le clavier sinon il comporte en plus d'un test ecran pours les couleur primaire , test de led et de l'affichage d'un code (serie) de la calculatrice&lt;br /&gt;
&lt;br /&gt;
Pour rajouter du calcul formel 2 option s'offre a moi crée un application dédier a sa ou l'ajouter a la fonction de math dejai existant la 2 éme option et étudier en se moment &lt;br /&gt;
&lt;br /&gt;
en lisant le code on comprent certain chose : il font des arrondis pour éviter les erreur de la librairie qui peux renvoyer 4^-17&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
Cette semaine je réalise le nouveaux schéma électronique &lt;br /&gt;
&lt;br /&gt;
tout les fonction de base se répéter sans modification (pour le moment) je capable le nouveaux comme afficher sur la datasheet de l’écran (en laissant le TE et EXTC déconnecter) &lt;br /&gt;
&lt;br /&gt;
[[Fichier:NEW ECRAN.png]]&lt;br /&gt;
&lt;br /&gt;
fessant un version beta test je laisse quand même un emplacement pour que la calculatrice soit compatible avec les ancien ecran qui permettrais de valider le fonctionnement de correct de l'ecran et de la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Ancien ecran.png]]&lt;br /&gt;
&lt;br /&gt;
en réalisant le pcd de la &amp;quot;nouvelle&amp;quot; calculatrice je remarque que faire un adaptateur pour que les nouveaux ecran puisse être tester sur les calculatrice de base (qui validerai leurs fonctionnement )&lt;br /&gt;
&lt;br /&gt;
Etude du clavier Numwork&lt;br /&gt;
&lt;br /&gt;
Refaire le clavier de la numwork comprend refaire aussi sont clavier qui actuellement composer comme se si &lt;br /&gt;
&lt;br /&gt;
Une premier partie électrique&lt;br /&gt;
 &lt;br /&gt;
[[Fichier:C elec.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une Seconde partie de silicone et de carbone  qui assure le contact &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C sili.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une dernier partie de touche en plastique &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C plastique.jpg]]&lt;br /&gt;
&lt;br /&gt;
en regardant la doc technique de numwork on remarque que le clavier et un clavier matrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Num matrice.png]]&lt;br /&gt;
&lt;br /&gt;
en fessant quel que recherche sur la création de clavier matrice on remarque une fonction que numwork n'ai pas pris en compte la fonction antighosting (anti touche fantôme )&lt;br /&gt;
(source [https://bepo.fr/wiki/Atelier_referencestechniques])&lt;br /&gt;
&lt;br /&gt;
la conception de la croix directionnel fait qu'on ne peux pas appuyer sur 2 touche en même temps ,en démontant la calculatrice et en appuyant sur 2 des touche cela n'as aucun influence donc la croix peux être remplacer par un D-pad&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
du au nombre croissant d'étudiant dans la filière SC une matinée a était consacrée a l'installation d'ordinateur pour la réalisation du tp ASR&lt;br /&gt;
&lt;br /&gt;
Etude WebUSB DFU&lt;br /&gt;
&lt;br /&gt;
Numwork se sert de se petit addon disponible sur les navigateur web (seulement google chrome pour le moment ) &lt;br /&gt;
&lt;br /&gt;
La prise en main du petit script de base et simple et fonctionnel j'ai pu lancer la page d'un autre ordinateur &lt;br /&gt;
&lt;br /&gt;
la réalisation d'un page comme https://zardam.github.io/webnofrendo/ pourrai être envisager pour héberger différente version modifier pour qu'un élève puisse changer de version au besoin du prof facilement sans devoir utiliser tout les fonction de compile etc &lt;br /&gt;
&lt;br /&gt;
Sur le script de base on peux aussi récupéré les version firmware des calculatrice &lt;br /&gt;
&lt;br /&gt;
Mais vu certain des version crée a se jour par m'as part la diffusion a grande échelle (un site web visible depuis n'importe quel pc ) poserai quel que problème (évitons de simplifier la tache des tricheur )&lt;br /&gt;
&lt;br /&gt;
Création d'un boitier et impression du modèle l'original &lt;br /&gt;
&lt;br /&gt;
Numwork propose un modèle pour réaliser leurs calculatrice en moulage plastique mais le modèle et le même pour réaliser une impression 3D ( https://github.com/numworks/dieter ) &lt;br /&gt;
&lt;br /&gt;
Dans une optic de democratiser le project au plus grand nombre et baisser les coûts de fabrication j'ai réaliser un modèle réalisable a la découpeuse laser&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Calc decou.png]]&lt;br /&gt;
&lt;br /&gt;
le produit fini &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Découpe bois plexi.jpg]]&lt;br /&gt;
&lt;br /&gt;
3 découpe on était réaliser sur 3 matériaux différent : bois (contreplaquer peuplier 3 mm ), plexiglas (3mm) et carton (1,5 mm) le modèle et optimal pour des matériaux de 1mm  &lt;br /&gt;
les touches réaliser grâce a l'impression 3D sont compatible avec les boîtiers découper .&lt;br /&gt;
&lt;br /&gt;
Du au arrondit de la calculatrice certaine partie on du mal a être imprimer correctement il faut donc augmenter le précision de la calculatrice donc le prix du boîtier  , la modification du modèle en enlevant les arrondis pourrai éviter se problème mais se n'ai pas un problème urgent.&lt;br /&gt;
&lt;br /&gt;
Au niveau prix le boîtier en impression 3D donc en pla revient a 10€ , le modèle en bois étant a 14€/m² on arrive a moins de 0,50€ a le boîtier en bois et pour le modèle en carton on arrive a trouver du carton dans les 1,5€/m2 se qui fait&lt;br /&gt;
que le boîtier arrive a moins de 0,05€&lt;br /&gt;
&lt;br /&gt;
Ajout Flash externe &lt;br /&gt;
&lt;br /&gt;
Dans le but de rajouter giac sur la calculatrice numwork il faut en premier temps rajouter de la flash pour avoir assez de place pour l'installer&lt;br /&gt;
plusieu puce sont possible mais pour respecter la datasheet de la numwork j'utiliserai la AT25SF641 de adesto &lt;br /&gt;
&lt;br /&gt;
premier etat mais pas la moindre le soudage de la puce il faut faire attention en manipuolant se genre de composant il sont sensible a l'electricité statique &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Flash_souder.jpg|200px]]&lt;br /&gt;
&lt;br /&gt;
Pour programmer la flash j'utilise qspi-loader qui se sert lui même de flashrom &lt;br /&gt;
&lt;br /&gt;
 en utilisant la puce de flash AT25SF641 il faut rajouter quel que ligne dans flashrom pour pouvoir l'utiliser (fichier flashchip.c et flashchip.h)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Flashchip.png]]&lt;br /&gt;
&lt;br /&gt;
une fois installation de flashrom correctement fait on peux utiliser qspi de façon correct  en suivant le procédure suivante  &lt;br /&gt;
&lt;br /&gt;
 Reset la calculatrice&lt;br /&gt;
 Charger Qspi-loader (make run_qpsi_loader)&lt;br /&gt;
 Patcher la flash (excecuter le script python enable_qspi_AT25SF641.py cela permet de set les port QE correctement attention si cette etape n'ai pas respecter il a y des risquer pour la calculatrice)&lt;br /&gt;
&lt;br /&gt;
après cette courte procédure qspi et fonctionnel et permet d'ecrire sur la flash externe &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Qpsi loader.png]]&lt;br /&gt;
&lt;br /&gt;
Installation de giac sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Je me baserai pour le moment sur le travaux de zardam (version intérieure de la calculatrice )&lt;br /&gt;
&lt;br /&gt;
il nous faut utiliser une version modifier de giac et tommath (alléger) pour pouvoir reussir a faire rentrer le programme dans la flash rajouter &lt;br /&gt;
&lt;br /&gt;
une fois fait on compile le version puis on commence a installer dans la flash externe (qspi loader doit et charger dans la flash interne)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Flash ext.png]]&lt;br /&gt;
&lt;br /&gt;
ensuite on reset la calculatrice et on flash la interne &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Flash interne.png]]&lt;br /&gt;
&lt;br /&gt;
Voila la calculatrice redemarre et fonctionne normalment (si la calculatrice reset a chaque calcu symbolique c'est que la vitesse d'accés a la flash et trop haut et doit etre changer ou que la flash externe et morte)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Calcul integrale reel.jpg|300px]]&lt;br /&gt;
&lt;br /&gt;
on confirme le résultat grace au simulateur online de la numwork &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Simu integrale.png]]&lt;br /&gt;
&lt;br /&gt;
on remarque bien que le calcul et sur forme symbolique et non developper&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
[[Fichier:Presentation PFE.pdf]]&lt;br /&gt;
[https://archives.plil.fr/adorian/PFE_28.git le code avec les différentes version]&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=64636</id>
		<title>IMA5 2018/2019 P28</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=64636"/>
				<updated>2018-12-18T16:04:22Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Documents Rendus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Construire un clone de la calculatrice open-source NumWorks. Effectuer quelques modifications sur le code source et sur le hardware.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
Il y a plusieur Axes sur le projet&lt;br /&gt;
en premier temps sur une calculatrice officiel&lt;br /&gt;
Logiciel : &lt;br /&gt;
&lt;br /&gt;
Préambule&lt;br /&gt;
- compilation du firmware sur linux / windows &lt;br /&gt;
- mettre a jour un calculatrice&lt;br /&gt;
- compréhension du code dans sa généraliter &lt;br /&gt;
&lt;br /&gt;
Réquis&lt;br /&gt;
- Modification du mode examen pour garder les programme &lt;br /&gt;
- Modification du calculateur pour rajouter des fonction&lt;br /&gt;
- Ajout de memoire a python ( 13 ko disponnible)&lt;br /&gt;
&lt;br /&gt;
Hardware &lt;br /&gt;
&lt;br /&gt;
- Rajout de memoire vive (seulement 256kb) &lt;br /&gt;
- Recherche ecran compatible &lt;br /&gt;
&lt;br /&gt;
en un second temps modifier la calculatrice en rajoutant des fonction non utiliser &lt;br /&gt;
comme lecture de carte sd et utilisation des entrée sortie&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
Pour éviter de me retrouver avec une seul version qui a tout les modification je travail par petit segment qui seront appeler buildx (x étant un chiffre croissant)&lt;br /&gt;
les petit modification pourront comme sa ajouter dans une version futur et des modification juger non pertinent n'impacterons pas sur le peux de place qui a en mémoire flash&lt;br /&gt;
&lt;br /&gt;
Installation : &lt;br /&gt;
&lt;br /&gt;
[https://www.numworks.com/resources/engineering/software/sdk/ source]&lt;br /&gt;
&lt;br /&gt;
Linux &lt;br /&gt;
&lt;br /&gt;
Partant d'un linux vierge pourvoir installer l'environnent sdk pour qu'on puisse mettre a jour et modifier la numwork il faut quel que ressource&lt;br /&gt;
seront nécessaire pour compiler&lt;br /&gt;
 make gcc g++ &lt;br /&gt;
utiliser par &amp;quot;os&amp;quot; de numwork&lt;br /&gt;
 bison build-essential dfu-util flex gcc-arm-none-eabi libfltk1.3-dev libfreetype6-dev libpng12-dev&lt;br /&gt;
une fois tout sa installer linux et enfin prés a compiler et envoyer le code sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Windows&lt;br /&gt;
&lt;br /&gt;
Cette fois n'ayant pas de console il faut l'installer Numwork nous propose Msys2 une fois installer comme sur linux il faut installer pas mal de ressource &lt;br /&gt;
 pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-freetype mingw-w64-x86_64-pkg-config mingw-w64-x86_64-fltk git make bison python&lt;br /&gt;
&lt;br /&gt;
Mac&lt;br /&gt;
aucun mac pour les tests mais sa doit fonctionner correctement &lt;br /&gt;
&lt;br /&gt;
Mise a jour : &lt;br /&gt;
une fois l'ordinateur configurer on compiler et essayer soit le simulateur soit envoyer le code sur la calculatrice (sachant que le simulateur ne simule pas la led et d'autre fonction de la calculatrice)&lt;br /&gt;
Pour compiler le code vers la calculatrice&lt;br /&gt;
 make clean&lt;br /&gt;
 make&lt;br /&gt;
 make epsilon_flash&lt;br /&gt;
Pour compiler le code pour le simulateur&lt;br /&gt;
 make PLATFORM=simulator clean&lt;br /&gt;
 make PLATFORM=simulator&lt;br /&gt;
sachant que le clean et très important on ne peux pas exporter un code qui a était a but du simulateur &lt;br /&gt;
&lt;br /&gt;
Pour exécuter le simulateur &lt;br /&gt;
 ./epsilon.elf&lt;br /&gt;
&lt;br /&gt;
'''Build 1''' désactivation du mode examen &lt;br /&gt;
&lt;br /&gt;
Le mode examen et obligatoire pour tout les calculatrice programmable a partir de la rentrée 2018  le but de se mode et de bloquer l'accès au programme qui on était dejai enregistré dans la calculatrice et de l'indiquer pour aider les surveillant a verifier que le mode et bien actif.&lt;br /&gt;
&lt;br /&gt;
Pour se faire Numwork a choisir d'appliquer 3 action en activant le mode examen &lt;br /&gt;
&lt;br /&gt;
- ajout d'une icone examen dans le menu &lt;br /&gt;
&lt;br /&gt;
- clignotement d'une led en rouge &lt;br /&gt;
&lt;br /&gt;
- effacement des programme python (et non dés-affichage des programme comme le font certain concurrent)&lt;br /&gt;
&lt;br /&gt;
Pour sortir du mode d'examen il suffit soit de reset sa calculatrice ou d'alimenter la calculatrice &lt;br /&gt;
&lt;br /&gt;
Cette dernier fonction et vraiment contraignante même pour une utilisation normal, une mauvaise manipulation et les programmes réaliser s'envole &lt;br /&gt;
&lt;br /&gt;
Pour que la supercherie que le mode examen aie était truquer les indicateur visuel doivent rester il faut juste modifier la dernier fonction&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
Ayant avancée sur la partie software et compris un partie du code je me lance sur la liste des materiel requis pour réaliser un clone.&lt;br /&gt;
tout les composant sont disponible dans le commerce sauf l'ecran qui a réaliser sur mesure pour numwork &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Connecteur_ecran.png]]&lt;br /&gt;
&lt;br /&gt;
On peux voire que la schème donnée par numwork qu'il utiliser des fonction particulier du controleur qui sont: &lt;br /&gt;
&lt;br /&gt;
-un bus de donnée de 16 bits &lt;br /&gt;
&lt;br /&gt;
-4 led de retroéclairage&lt;br /&gt;
&lt;br /&gt;
-Te : Tearing Effect  &lt;br /&gt;
&lt;br /&gt;
-EXTC : extended comande &lt;br /&gt;
&lt;br /&gt;
connaisant les port qui sont requis je peux commencer a chercher un ecran compatible sachant qu'aprés une demande a numwork le ports EXTC n'ai pas encore utiliser et le ports TE peux être desactiver sans vraiment poser de problème&lt;br /&gt;
&lt;br /&gt;
Il et dur de trouver d'un concepteur d'ecran utilisant le controleur ST7789V pour leurs ecran il faut donc se tourner vers la chine &lt;br /&gt;
sur 8 fabricant seulment 4 réponse et sur les 4 réponse seulment 2 avec des produit correspondant a la demande &lt;br /&gt;
l'un viens de [http://www.szelida.cn szelida] et l'autre de [http://www.youritech.com Youri Technology]&lt;br /&gt;
je choisi donc le ET024QV01 [[https://projets-ima.plil.fr/mediawiki/index.php/Fichier:ET024QV01.pdf]]&lt;br /&gt;
&lt;br /&gt;
on peux voire a sa liste de PIN qui a certain PIN qui deveront être fixer a vcc ou gnd pour bloquer le mode d'affichage de la calculatrice mais il posséde les pin requis pour fonctionner avec la calculatice il et juste plus petit&lt;br /&gt;
&lt;br /&gt;
[[Fichier:RAM_numwork.png]]&lt;br /&gt;
&lt;br /&gt;
En paralléle une recherche sur le hardware montre que la place pour la RAM et dejai prévu sur le PCB il faudrait juste modifier une partie software pour qu'il soit pris en compte l'ajout de la RAM boostera fortement les capacité de cette calculatrice et pourra permet normalment de faire des petit calcul formel &lt;br /&gt;
'''&lt;br /&gt;
Partie Software :'''&lt;br /&gt;
&lt;br /&gt;
Vu que le recherche sur la ram a était effectuer je me concentre se coup si sur l'augmentation de la taille alouer a python en prévision de l'augmentation qui serra fait dans le futur !&lt;br /&gt;
&lt;br /&gt;
De base python dispose de 16Kb de mémoire alouer pour fonctionner en peux le pousser a aller jusqu'a 128Kb sans augmentation matériel mais du a l'achirecture de la mémoire du procésseur une fois qu'on dépace les 64 Kb le temps de traitement deviens long tellement que les premier fois j'ai penser la calculatrice totalment planter !&lt;br /&gt;
&lt;br /&gt;
Si on essaye d'alouer plus que 128Kb de mémoire a python la calculatrice bloque l'action et empêche d'ouvrire la console , il existe une petit sécuriter pour éviter de vraiment planter la calculatrice &lt;br /&gt;
&lt;br /&gt;
cette modification permet d'avancer l'hypothése que le système epilson prend 128kb dans la mémoire vive actuel&lt;br /&gt;
&lt;br /&gt;
Une autre modification mineur a était réaliser pour modifier la version de la numwork il n'ai possible que de rentrée un numéro de version ayant 7 char chose intéressant le site de numwork affiche bien notre version modifier &lt;br /&gt;
[[Fichier:Version.png]]&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
Je commence cette semaine par étudier l'utiliter du port TearingEffect et ExtendedCommand on debute par tout commenter pour voir l'effet sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:TE exc.png]]&lt;br /&gt;
(d'autre ligne on était commenter)&lt;br /&gt;
&lt;br /&gt;
je charge donc cette modification dans la calculatrice pour voire le résultat grace a la fonction graphique je charge des fonction assez lourde graphiquement pour voire les changement ( un fonction de base comme f(x)=x n'ai aucun bug graphique)&lt;br /&gt;
&lt;br /&gt;
je test donc tan(x²⁴) et sin(x⁴)&lt;br /&gt;
&lt;br /&gt;
(pour les images de cette partie il n'aie pas possible d'utiliser le simulateur)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Original.png]]&lt;br /&gt;
&lt;br /&gt;
en effectuant quel que déplacement sur la courbe on obtiens des léger bug graphique comme celui la ,ou seulment un petit portion disparaît par a coup&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit bug.png]]&lt;br /&gt;
&lt;br /&gt;
en changent de fenêtre l'as on obtient des bug graphique plus important &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Gros bug.png]]&lt;br /&gt;
&lt;br /&gt;
même si les bug graphique sont présent il ne sont pas gênant car :&lt;br /&gt;
&lt;br /&gt;
- sur des fonctions de base il ne sont pas présent donc pas contraignant pour un étudiant au collège/lycéen &lt;br /&gt;
&lt;br /&gt;
- sur des fonction avancer les bug ne dure quel que seconde et ne sont donc pas gênant &lt;br /&gt;
&lt;br /&gt;
il pourrai donc poser problème sur des fonction plus graphique et dynamique&lt;br /&gt;
&lt;br /&gt;
En cherchant sur internet on peux découvrire un mode de test on y accédes viens le menus paramètres -&amp;gt; A propos on se place sur FCC ID puis on appuis sur la touche 6 on valide et nous voila dans le mode de test &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test usine.png]] [[Fichier:Test bouton.png]]&lt;br /&gt;
&lt;br /&gt;
sur simulateur on ne peux pas dépasser le test bouton car le bouton home n'est pas accessible via le clavier sinon il comporte en plus d'un test ecran pours les couleur primaire , test de led et de l'affichage d'un code (serie) de la calculatrice&lt;br /&gt;
&lt;br /&gt;
Pour rajouter du calcul formel 2 option s'offre a moi crée un application dédier a sa ou l'ajouter a la fonction de math dejai existant la 2 éme option et étudier en se moment &lt;br /&gt;
&lt;br /&gt;
en lisant le code on comprent certain chose : il font des arrondis pour éviter les erreur de la librairie qui peux renvoyer 4^-17&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
Cette semaine je réalise le nouveaux schéma électronique &lt;br /&gt;
&lt;br /&gt;
tout les fonction de base se répéter sans modification (pour le moment) je capable le nouveaux comme afficher sur la datasheet de l’écran (en laissant le TE et EXTC déconnecter) &lt;br /&gt;
&lt;br /&gt;
[[Fichier:NEW ECRAN.png]]&lt;br /&gt;
&lt;br /&gt;
fessant un version beta test je laisse quand même un emplacement pour que la calculatrice soit compatible avec les ancien ecran qui permettrais de valider le fonctionnement de correct de l'ecran et de la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Ancien ecran.png]]&lt;br /&gt;
&lt;br /&gt;
en réalisant le pcd de la &amp;quot;nouvelle&amp;quot; calculatrice je remarque que faire un adaptateur pour que les nouveaux ecran puisse être tester sur les calculatrice de base (qui validerai leurs fonctionnement )&lt;br /&gt;
&lt;br /&gt;
Etude du clavier Numwork&lt;br /&gt;
&lt;br /&gt;
Refaire le clavier de la numwork comprend refaire aussi sont clavier qui actuellement composer comme se si &lt;br /&gt;
&lt;br /&gt;
Une premier partie électrique&lt;br /&gt;
 &lt;br /&gt;
[[Fichier:C elec.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une Seconde partie de silicone et de carbone  qui assure le contact &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C sili.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une dernier partie de touche en plastique &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C plastique.jpg]]&lt;br /&gt;
&lt;br /&gt;
en regardant la doc technique de numwork on remarque que le clavier et un clavier matrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Num matrice.png]]&lt;br /&gt;
&lt;br /&gt;
en fessant quel que recherche sur la création de clavier matrice on remarque une fonction que numwork n'ai pas pris en compte la fonction antighosting (anti touche fantôme )&lt;br /&gt;
(source [https://bepo.fr/wiki/Atelier_referencestechniques])&lt;br /&gt;
&lt;br /&gt;
la conception de la croix directionnel fait qu'on ne peux pas appuyer sur 2 touche en même temps ,en démontant la calculatrice et en appuyant sur 2 des touche cela n'as aucun influence donc la croix peux être remplacer par un D-pad&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
du au nombre croissant d'étudiant dans la filière SC une matinée a était consacrée a l'installation d'ordinateur pour la réalisation du tp ASR&lt;br /&gt;
&lt;br /&gt;
Etude WebUSB DFU&lt;br /&gt;
&lt;br /&gt;
Numwork se sert de se petit addon disponible sur les navigateur web (seulement google chrome pour le moment ) &lt;br /&gt;
&lt;br /&gt;
La prise en main du petit script de base et simple et fonctionnel j'ai pu lancer la page d'un autre ordinateur &lt;br /&gt;
&lt;br /&gt;
la réalisation d'un page comme https://zardam.github.io/webnofrendo/ pourrai être envisager pour héberger différente version modifier pour qu'un élève puisse changer de version au besoin du prof facilement sans devoir utiliser tout les fonction de compile etc &lt;br /&gt;
&lt;br /&gt;
Sur le script de base on peux aussi récupéré les version firmware des calculatrice &lt;br /&gt;
&lt;br /&gt;
Mais vu certain des version crée a se jour par m'as part la diffusion a grande échelle (un site web visible depuis n'importe quel pc ) poserai quel que problème (évitons de simplifier la tache des tricheur )&lt;br /&gt;
&lt;br /&gt;
Création d'un boitier et impression du modèle l'original &lt;br /&gt;
&lt;br /&gt;
Numwork propose un modèle pour réaliser leurs calculatrice en moulage plastique mais le modèle et le même pour réaliser une impression 3D ( https://github.com/numworks/dieter ) &lt;br /&gt;
&lt;br /&gt;
Dans une optic de democratiser le project au plus grand nombre et baisser les coûts de fabrication j'ai réaliser un modèle réalisable a la découpeuse laser&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Calc decou.png]]&lt;br /&gt;
&lt;br /&gt;
le produit fini &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Découpe bois plexi.jpg]]&lt;br /&gt;
&lt;br /&gt;
3 découpe on était réaliser sur 3 matériaux différent : bois (contreplaquer peuplier 3 mm ), plexiglas (3mm) et carton (1,5 mm) le modèle et optimal pour des matériaux de 1mm  &lt;br /&gt;
les touches réaliser grâce a l'impression 3D sont compatible avec les boîtiers découper .&lt;br /&gt;
&lt;br /&gt;
Du au arrondit de la calculatrice certaine partie on du mal a être imprimer correctement il faut donc augmenter le précision de la calculatrice donc le prix du boîtier  , la modification du modèle en enlevant les arrondis pourrai éviter se problème mais se n'ai pas un problème urgent.&lt;br /&gt;
&lt;br /&gt;
Au niveau prix le boîtier en impression 3D donc en pla revient a 10€ , le modèle en bois étant a 14€/m² on arrive a moins de 0,50€ a le boîtier en bois et pour le modèle en carton on arrive a trouver du carton dans les 1,5€/m2 se qui fait&lt;br /&gt;
que le boîtier arrive a moins de 0,05€&lt;br /&gt;
&lt;br /&gt;
Ajout Flash externe &lt;br /&gt;
&lt;br /&gt;
Dans le but de rajouter giac sur la calculatrice numwork il faut en premier temps rajouter de la flash pour avoir assez de place pour l'installer&lt;br /&gt;
plusieu puce sont possible mais pour respecter la datasheet de la numwork j'utiliserai la AT25SF641 de adesto &lt;br /&gt;
&lt;br /&gt;
premier etat mais pas la moindre le soudage de la puce il faut faire attention en manipuolant se genre de composant il sont sensible a l'electricité statique &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Flash_souder.jpg|200px]]&lt;br /&gt;
&lt;br /&gt;
Pour programmer la flash j'utilise qspi-loader qui se sert lui même de flashrom &lt;br /&gt;
&lt;br /&gt;
 en utilisant la puce de flash AT25SF641 il faut rajouter quel que ligne dans flashrom pour pouvoir l'utiliser (fichier flashchip.c et flashchip.h)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Flashchip.png]]&lt;br /&gt;
&lt;br /&gt;
une fois installation de flashrom correctement fait on peux utiliser qspi de façon correct  en suivant le procédure suivante  &lt;br /&gt;
&lt;br /&gt;
 Reset la calculatrice&lt;br /&gt;
 Charger Qspi-loader (make run_qpsi_loader)&lt;br /&gt;
 Patcher la flash (excecuter le script python enable_qspi_AT25SF641.py cela permet de set les port QE correctement attention si cette etape n'ai pas respecter il a y des risquer pour la calculatrice)&lt;br /&gt;
&lt;br /&gt;
après cette courte procédure qspi et fonctionnel et permet d'ecrire sur la flash externe &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Qpsi loader.png]]&lt;br /&gt;
&lt;br /&gt;
Installation de giac sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Je me baserai pour le moment sur le travaux de zardam (version intérieure de la calculatrice )&lt;br /&gt;
&lt;br /&gt;
il nous faut utiliser une version modifier de giac et tommath (alléger) pour pouvoir reussir a faire rentrer le programme dans la flash rajouter &lt;br /&gt;
&lt;br /&gt;
une fois fait on compile le version puis on commence a installer dans la flash externe (qspi loader doit et charger dans la flash interne)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Flash ext.png]]&lt;br /&gt;
&lt;br /&gt;
ensuite on reset la calculatrice et on flash la interne &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Flash interne.png]]&lt;br /&gt;
&lt;br /&gt;
Voila la calculatrice redemarre et fonctionne normalment (si la calculatrice reset a chaque calcu symbolique c'est que la vitesse d'accés a la flash et trop haut et doit etre changer ou que la flash externe et morte)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Calcul integrale reel.jpg|300px]]&lt;br /&gt;
&lt;br /&gt;
on confirme le résultat grace au simulateur online de la numwork &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Simu integrale.png]]&lt;br /&gt;
&lt;br /&gt;
on remarque bien que le calcul et sur forme symbolique et non developper&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
Fichier:Presentation PFE.pdf&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Presentation_PFE.pdf&amp;diff=64635</id>
		<title>Fichier:Presentation PFE.pdf</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Presentation_PFE.pdf&amp;diff=64635"/>
				<updated>2018-12-18T16:02:45Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : Diapo de présentation du pfe version pdf&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Diapo de présentation du pfe version pdf&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Projets_IMA5_2018/2019&amp;diff=64633</id>
		<title>Projets IMA5 2018/2019</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Projets_IMA5_2018/2019&amp;diff=64633"/>
				<updated>2018-12-18T14:31:33Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Répartition des binômes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Merci de référencer vos pages de projets ici. Merci aussi d'uniformiser vos formats que ce soit en regardant la présentation des projets déjà créés ou en demandant une modification du format des précédents si votre façon de faire vous semble la meilleure. Dans tous les cas un minimum de communication entre les binômes est conseillée.&lt;br /&gt;
&lt;br /&gt;
Toutes les sources doivent être déposées sur notre archive GIT. Le service est disponible à l'URL [https://archives.plil.fr archives.plil.fr]. Connectez-vous avec vos identifiants Polytech'Lille. Sauf indication contraire de vos encadrants, rendez le projet public et mettez le lien sur votre Wiki. Vous pouvez trouver de la documentation sur ce système d'archives sur ce [https://git-scm.com/book/fr/v1 site].&lt;br /&gt;
&lt;br /&gt;
== Répartition des binômes ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Projet !! Elèves !! Encadrants école !! Rapport intermédiaire !! Rapport final !! Vidéo&lt;br /&gt;
|-&lt;br /&gt;
| P0 [[IMA5 2018/2019 P0|Modèle]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P04 [[IMA5 2018/2019 P04|Conception mécatronique d'un gant haptique pour la réalité virtuelle]]&lt;br /&gt;
| Thomas Hubert&lt;br /&gt;
| Frédéric Giraud / Betty Semail&lt;br /&gt;
|[[Fichier:RapportIntermédiaire 2018P04.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P05 [[IMA5 2018/2019 P05|Simulation on the Web]]&lt;br /&gt;
| Rodolphe Toin&lt;br /&gt;
| Jérémie Dequidt&lt;br /&gt;
|[[Fichier:Rapport_intermediaire_P05.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P06 [[IMA5 2018/2019 P06|Développement d'un système de gestion d'un réseau de capteurs]]&lt;br /&gt;
| Simon Feutrier / Antoine Duquenoy&lt;br /&gt;
| Thomas Vantroys / Alexandre Boé&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P10 [[ IMA5 2018/2019 P10|Traces d’exécution de système temps réel]]&lt;br /&gt;
| Amine El Messaoudi&lt;br /&gt;
| Julien Forget&lt;br /&gt;
|[[Fichier:rapport1_P10.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P13 [[ IMA5 2018/2019 P13|Réseau de capteurs pour parking intelligent]]&lt;br /&gt;
| Baptiste Cartier&lt;br /&gt;
| Alexandre Boé / Xavier Redon / Thomas Vantroys&lt;br /&gt;
|[[Fichier:RapportIntermédiaire.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P16 [[IMA5 2018/2019 P16|Le Sportif Augmenté]]&lt;br /&gt;
| Matthieu Delobelle&lt;br /&gt;
| Alexandre Boé / Xavier Redon / Thomas Vantroys &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P17 [[IMA5 2018/2019 P17|Système multisources de production d'hydrogène]]&lt;br /&gt;
| François-Xavier Cockenpot&lt;br /&gt;
| Anne-Lise Gehin &lt;br /&gt;
|&lt;br /&gt;
|[[fichier:Rapport_PFE17_Cockenpot.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P21 [[IMA5 2018/2019 P21|Pilotage automatique d'un drone]]&lt;br /&gt;
| Claire Vandamme / Justine Senellart&lt;br /&gt;
| Aziz Nakrachi / Claudine Lecocq&lt;br /&gt;
|[[Fichier:Rapport de projet intermediaire P21 Pilotage automatique de drone.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P22 [[IMA5 2018/2019 P22|Commande en position d'un drone]]&lt;br /&gt;
| Lijie YAO / Lirui ZHANG&lt;br /&gt;
| Komi Midzodzi PEKPE&lt;br /&gt;
|[[Fichier:Rapport_Intermédiaire_P22.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P26 [[IMA5 2018/2019 P26|Interaction 2D en réalité virtuelle]]&lt;br /&gt;
| Ji YANG&lt;br /&gt;
| Laurent Grisoni&lt;br /&gt;
| [[Fichier:Ji_YANG_PRE_Intermediaire.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P28 [[IMA5 2018/2019 P28|Clonage d'une calculatrice open-source NumWorks]]&lt;br /&gt;
| Alexis Dorian&lt;br /&gt;
| Xavier Redon / Alexandre Boé / Thomas Vantroys&lt;br /&gt;
| &lt;br /&gt;
| [[Fichier:Rapport PFE 28 Alexis DORIAN.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P31 [[IMA5 2018/2019 P31|Supervision des serveurs de la plateforme informatique]]&lt;br /&gt;
| Taky Djeraba&lt;br /&gt;
| Xavier Redon / Thomas Vantroys&lt;br /&gt;
| [[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P36 [[IMA5 2018/2019 P36|Pilotage automatique d'un drone]]&lt;br /&gt;
| Abass Ayoub / Alexis Viscogliosi&lt;br /&gt;
| Aziz Nakrachi / Claudine Lecocq&lt;br /&gt;
|[[Fichier:rapport_P36_Viscogliosi_Ayoub.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P42 [[IMA5 2018/2019 P42 |Traçage d'empreintes de navigateur en utilisant des techniques avancées d'apprentissage automatique]]&lt;br /&gt;
| Mehanna Naif&lt;br /&gt;
| Walter Rudametkin / Romain Rouvoy&lt;br /&gt;
| [[Media:Rapport intermediaire de PFE.pdf|Rapport de mi-projet]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P43 [[IMA5 2018/2019 P43 |Réalisation d'un synthétiseur]]&lt;br /&gt;
| Untereiner Antoine&lt;br /&gt;
| Alexandre Boé&lt;br /&gt;
| Rapport intermédiaire de PFE : [[Media:Rapport_AU.pdf|Rapport de mi-projet]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P19 [[IMA5 2018/2019 P19 |Détection de menaces IOT sur FPGA]]&lt;br /&gt;
| MACHEREZ Alexis&lt;br /&gt;
| Alexandre Boé / Thomas Vantroys&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P24 [[IMA5 2018/2019 P24 |Filtrage de Kalman pour la détection de défaut sur un robot mobile]]&lt;br /&gt;
| Samy Belhouachi&lt;br /&gt;
| Komi Midzodzi PEKPE&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Matériel à acquérir ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Projet !! Matériel&lt;br /&gt;
|-&lt;br /&gt;
| P28 [[IMA5 2018/2019 P28|Clonage d'une calculatrice open-source NumWorks]]&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/Adesto-Technologies/AT25SF641-SUB-T?qs=H7WEQPD31y1rOaelqGYUaQ== AT25SF641  ](Ram)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/STMicroelectronics/STM32F412VGT6?qs=qzCNEk%252bRr%252baGf9Ry5zWpvw%3D%3D&amp;amp;gclid=EAIaIQobChMI8OWLjsq63QIVxIjVCh0HCADGEAAYASAAEgKz5_D_BwE STM32F412VGT6  ] (microcontroleur)&lt;br /&gt;
&lt;br /&gt;
[https://www.alibaba.com/product-detail/2-4-portait-LCD-module-ET024QV01_60727925701.html?spm=a2700.details.pronpeci14.2.5d9f12f4aeUQCE ET024QV01-K] (ecran)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/Newhaven-Display/NHD-24-240320CF-CTXI-F?qs=sGAEpiMZZMu%2fRY1bNe3bOwi7Ku0KTtuWVqK2peAZKeQH3KKyXLxcNw== NHD-2.4-240320CF] (autre ecran)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/hirose-hrs/fh12s-40s-0-5sh-55/fiche-femelle-ffc-fpc-0-5mm-zif/dp/1324588?MER=sy-me-pd-mi-alte connecteur nappe]&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/richtek/rt9365gqw/driver-de-led-boost-250khz-wqfn/dp/2729821 RT9365GQW ](control retro éclairage)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/richtek/rt9078-28gj5/regul-ldo-fixe-2-8v-0-3a-tsot/dp/2729807?krypto=MSyMhsZJSwpJzbmMaWZGoRn20imQ%2Bn8JeH7D4MHTZf%2B2dB6VsTHGLrm%2FOLrSWQ7xeojNK5JXTGImaV58n0tJ9A%3D%3D&amp;amp;ddkey=https%3Afr-FR%2FElement14_France%2Fsearch RT9078-28GJ5 ](régulateur de tension)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/richtek/rt9526age/chargeur-bat-li-ion-0-5a-wdfn/dp/2433119?krypto=HIqdjNHqabMYeF39WOpX9xKeZ2JYmYKNIiZzSQh83hC6pdrzMzXqu1zU68gCpKyvU1HQLlLe%2FHV60YNgVaXvsg%3D%3D&amp;amp;ddkey=https%3Afr-FR%2FElement14_France%2Fsearch RT9526AGE ](chargeur lipo)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/stmicroelectronics/usblc6-2sc6/esd-protection-smd-sot-23-6/dp/1269406?st=USBLC6-2SC6 USBLC6-2SC6 ] (protection USB)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/Lite-On/LTST-S310F2KT?qs=xb8aMrBSZRKYryAdlDhh3g== TST-S310F2KT] (led multi couleur)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/ECS/ECS-2520MV-250-BN-TR?qs=sGAEpiMZZMtldj7qu1ydrQG1afnrXLdGjWqvhZ7yquORJy%252b1U87asg%3d%3d Oscillateurs]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| P16 [[IMA5 2018/2019 P16|Le Sportif Augmenté]]&lt;br /&gt;
|&lt;br /&gt;
*2 [https://www.digikey.com/product-detail/en/garmin-canada-inc/ANTAP281M5IB/1094-1004-ND/2748494 Module RF Ant+]&lt;br /&gt;
[https://www.digikey.com/product-detail/en/stmicroelectronics/STM32L031K6T7/497-16269-ND/5805501 MCU (Cortex M0) STM32-L0 (32-LQFP)]&lt;br /&gt;
&lt;br /&gt;
[https://www.digikey.com/product-detail/en/stmicroelectronics/STM32L152CBT6/497-11197-ND/2640843 MCU (Cortex M3) STM32-L1 (64-LQFP)]&lt;br /&gt;
*4 [https://www.digikey.com/product-detail/en/yageo/CC0603CRNPO9BN4R3/311-3858-6-ND/8025870  Capacités 4,3 pF] (pour l'oscillateur 32k768 Hz)&lt;br /&gt;
*2 [https://www.digikey.com/product-detail/en/epson/FC-135-32.7680KA-A0/SER4077CT-ND/5604233 Oscillateur 32k768 Hz]&lt;br /&gt;
&lt;br /&gt;
*4 [https://www.digikey.com/product-detail/en/kemet/C0603C180K5GACTU/399-7866-1-ND/3471589 Capacités 18 pF] (pour l'oscillateur 16 MHz)&lt;br /&gt;
*2 [https://www.digikey.com/product-detail/en/abracon-llc/ABLS-16.000MHZ-B4-T/535-10226-1-ND/2184261 Oscillateur 16MHz]&lt;br /&gt;
&lt;br /&gt;
[https://www.digikey.com/product-detail/en/sparkfun-electronics/SEN-13944/1568-1424-ND/6193601 Capteur 9-DOF]&lt;br /&gt;
&lt;br /&gt;
[https://www.digikey.com/product-detail/en/stmicroelectronics/NUCLEO-L031K6/497-16283-ND/5806780 Carte NUCLEO-L031]&lt;br /&gt;
[https://www.digikey.com/product-detail/en/stmicroelectronics/NUCLEO-L152RE/497-14363-ND/4695528 Carte NUCLEO-L152]&lt;br /&gt;
&lt;br /&gt;
*6 [https://www.digikey.com/product-detail/en/rohm-semiconductor/SML-D12U1WT86/SML-D12U1WT86CT-ND/5843858 LED RED CMS]&lt;br /&gt;
*6 [https://www.digikey.com/product-detail/en/rohm-semiconductor/ESR03EZPJ131/RHM130DCT-ND/1762927 Resistances 130Ω (Pour LED)]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*15 [https://www.digikey.com/product-detail/en/samsung-electro-mechanics/CL10F104ZA8NNNC/1276-1011-1-ND/3889097 Capacités 100nF] (découplage/stabilité)&lt;br /&gt;
*6 [https://www.digikey.com/product-detail/en/rohm-semiconductor/ESR03EZPF1002/RHM10KADCT-ND/1983753 Resistances 10kΩ]&lt;br /&gt;
Les composants passifs permettant la mise en place de l'environnement des STM32 (resistances/capa) est deja en la possession de M. Redon (en 0603)&lt;br /&gt;
|-}&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Projets_IMA5_2018/2019&amp;diff=64564</id>
		<title>Projets IMA5 2018/2019</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Projets_IMA5_2018/2019&amp;diff=64564"/>
				<updated>2018-12-17T22:37:42Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Répartition des binômes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Merci de référencer vos pages de projets ici. Merci aussi d'uniformiser vos formats que ce soit en regardant la présentation des projets déjà créés ou en demandant une modification du format des précédents si votre façon de faire vous semble la meilleure. Dans tous les cas un minimum de communication entre les binômes est conseillée.&lt;br /&gt;
&lt;br /&gt;
Toutes les sources doivent être déposées sur notre archive GIT. Le service est disponible à l'URL [https://archives.plil.fr archives.plil.fr]. Connectez-vous avec vos identifiants Polytech'Lille. Sauf indication contraire de vos encadrants, rendez le projet public et mettez le lien sur votre Wiki. Vous pouvez trouver de la documentation sur ce système d'archives sur ce [https://git-scm.com/book/fr/v1 site].&lt;br /&gt;
&lt;br /&gt;
== Répartition des binômes ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Projet !! Elèves !! Encadrants école !! Rapport intermédiaire !! Rapport final !! Vidéo&lt;br /&gt;
|-&lt;br /&gt;
| P0 [[IMA5 2018/2019 P0|Modèle]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P04 [[IMA5 2018/2019 P04|Conception mécatronique d'un gant haptique pour la réalité virtuelle]]&lt;br /&gt;
| Thomas Hubert&lt;br /&gt;
| Frédéric Giraud / Betty Semail&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P06 [[IMA5 2018/2019 P06|Développement d'un système de gestion d'un réseau de capteurs]]&lt;br /&gt;
| Simon Feutrier / Antoine Duquenoy&lt;br /&gt;
| Thomas Vantroys / Alexandre Boé&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P10 [[ IMA5 2018/2019 P10|Traces d’exécution de système temps réel]]&lt;br /&gt;
| Amine El Messaoudi&lt;br /&gt;
| Julien Forget&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P13 [[ IMA5 2018/2019 P13|Réseau de capteurs pour parking intelligent]]&lt;br /&gt;
| Baptiste Cartier&lt;br /&gt;
| Alexandre Boé / Xavier Redon / Thomas Vantroys&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P16 [[IMA5 2018/2019 P16|Le Sportif Augmenté]]&lt;br /&gt;
| Matthieu Delobelle&lt;br /&gt;
| Alexandre Boé / Xavier Redon / Thomas Vantroys &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P17 [[IMA5 2018/2019 P17|Système multisources de production d'hydrogène]]&lt;br /&gt;
| François-Xavier Cockenpot&lt;br /&gt;
| Anne-Lise Gehin &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P21 [[IMA5 2018/2019 P21|Pilotage automatique d'un drone]]&lt;br /&gt;
| Claire Vandamme / Justine Senellart&lt;br /&gt;
| Aziz Nakrachi / Claudine Lecocq&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P22 [[IMA5 2018/2019 P22|Commande en position d'un drone]]&lt;br /&gt;
| Lijie YAO / Lirui ZHANG&lt;br /&gt;
| Komi Midzodzi PEKPE&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P26 [[IMA5 2018/2019 P26|Interaction 2D en réalité virtuelle]]&lt;br /&gt;
| Ji YANG&lt;br /&gt;
| Laurent Grisoni&lt;br /&gt;
| [[Fichier:Ji_YANG_PRE_Intermediaire.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P28 [[IMA5 2018/2019 P28|Clonage d'une calculatrice open-source NumWorks]]&lt;br /&gt;
| Alexis Dorian&lt;br /&gt;
| Xavier Redon / Alexandre Boé / Thomas Vantroys&lt;br /&gt;
| [[Fichier:Rapport PFE 28 Alexis DORIAN.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P31 [[IMA5 2018/2019 P31|Supervision des serveurs de la plateforme informatique]]&lt;br /&gt;
| Taky Djeraba&lt;br /&gt;
| Xavier Redon / Thomas Vantroys&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P36 [[IMA5 2018/2019 P36|Pilotage automatique d'un drone]]&lt;br /&gt;
| Abass Ayoub / Alexis Viscogliosi&lt;br /&gt;
| Aziz Nakrachi / Claudine Lecocq&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P42 [[IMA5 2018/2019 P42 |Traçage d'empreintes de navigateur en utilisant des techniques avancées d'apprentissage automatique]]&lt;br /&gt;
| Mehanna Naif&lt;br /&gt;
| Walter Rudametkin / Romain Rouvoy&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P43 [[IMA5 2018/2019 P43 |Réalisation d'un synthétiseur]]&lt;br /&gt;
| Untereiner Antoine&lt;br /&gt;
| Alexandre Boé&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P19 [[IMA5 2018/2019 P19 |Détection de menaces IOT sur FPGA]]&lt;br /&gt;
| MACHEREZ Alexis&lt;br /&gt;
| Alexandre Boé / Thomas Vantroys&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P24 [[IMA5 2018/2019 P24 |Filtrage de Kalman pour la détection de défaut sur un robot mobile]]&lt;br /&gt;
| Samy Belhouachi&lt;br /&gt;
| Komi Midzodzi PEKPE&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Matériel à acquérir ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Projet !! Matériel&lt;br /&gt;
|-&lt;br /&gt;
| P28 [[IMA5 2018/2019 P28|Clonage d'une calculatrice open-source NumWorks]]&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/Adesto-Technologies/AT25SF641-SUB-T?qs=H7WEQPD31y1rOaelqGYUaQ== AT25SF641  ](Ram)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/STMicroelectronics/STM32F412VGT6?qs=qzCNEk%252bRr%252baGf9Ry5zWpvw%3D%3D&amp;amp;gclid=EAIaIQobChMI8OWLjsq63QIVxIjVCh0HCADGEAAYASAAEgKz5_D_BwE STM32F412VGT6  ] (microcontroleur)&lt;br /&gt;
&lt;br /&gt;
[https://www.alibaba.com/product-detail/2-4-portait-LCD-module-ET024QV01_60727925701.html?spm=a2700.details.pronpeci14.2.5d9f12f4aeUQCE ET024QV01-K] (ecran)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/Newhaven-Display/NHD-24-240320CF-CTXI-F?qs=sGAEpiMZZMu%2fRY1bNe3bOwi7Ku0KTtuWVqK2peAZKeQH3KKyXLxcNw== NHD-2.4-240320CF] (autre ecran)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/hirose-hrs/fh12s-40s-0-5sh-55/fiche-femelle-ffc-fpc-0-5mm-zif/dp/1324588?MER=sy-me-pd-mi-alte connecteur nappe]&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/richtek/rt9365gqw/driver-de-led-boost-250khz-wqfn/dp/2729821 RT9365GQW ](control retro éclairage)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/richtek/rt9078-28gj5/regul-ldo-fixe-2-8v-0-3a-tsot/dp/2729807?krypto=MSyMhsZJSwpJzbmMaWZGoRn20imQ%2Bn8JeH7D4MHTZf%2B2dB6VsTHGLrm%2FOLrSWQ7xeojNK5JXTGImaV58n0tJ9A%3D%3D&amp;amp;ddkey=https%3Afr-FR%2FElement14_France%2Fsearch RT9078-28GJ5 ](régulateur de tension)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/richtek/rt9526age/chargeur-bat-li-ion-0-5a-wdfn/dp/2433119?krypto=HIqdjNHqabMYeF39WOpX9xKeZ2JYmYKNIiZzSQh83hC6pdrzMzXqu1zU68gCpKyvU1HQLlLe%2FHV60YNgVaXvsg%3D%3D&amp;amp;ddkey=https%3Afr-FR%2FElement14_France%2Fsearch RT9526AGE ](chargeur lipo)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/stmicroelectronics/usblc6-2sc6/esd-protection-smd-sot-23-6/dp/1269406?st=USBLC6-2SC6 USBLC6-2SC6 ] (protection USB)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/Lite-On/LTST-S310F2KT?qs=xb8aMrBSZRKYryAdlDhh3g== TST-S310F2KT] (led multi couleur)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/ECS/ECS-2520MV-250-BN-TR?qs=sGAEpiMZZMtldj7qu1ydrQG1afnrXLdGjWqvhZ7yquORJy%252b1U87asg%3d%3d Oscillateurs]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| P16 [[IMA5 2018/2019 P16|Le Sportif Augmenté]]&lt;br /&gt;
|&lt;br /&gt;
*2 [https://www.digikey.com/product-detail/en/garmin-canada-inc/ANTAP281M5IB/1094-1004-ND/2748494 Module RF Ant+]&lt;br /&gt;
[https://www.digikey.com/product-detail/en/stmicroelectronics/STM32L031K6T7/497-16269-ND/5805501 MCU (Cortex M0) STM32-L0 (32-LQFP)]&lt;br /&gt;
&lt;br /&gt;
[https://www.digikey.com/product-detail/en/stmicroelectronics/STM32L152CBT6/497-11197-ND/2640843 MCU (Cortex M3) STM32-L1 (64-LQFP)]&lt;br /&gt;
*4 [https://www.digikey.com/product-detail/en/yageo/CC0603CRNPO9BN4R3/311-3858-6-ND/8025870  Capacités 4,3 pF] (pour l'oscillateur 32k768 Hz)&lt;br /&gt;
*2 [https://www.digikey.com/product-detail/en/epson/FC-135-32.7680KA-A0/SER4077CT-ND/5604233 Oscillateur 32k768 Hz]&lt;br /&gt;
&lt;br /&gt;
*4 [https://www.digikey.com/product-detail/en/kemet/C0603C180K5GACTU/399-7866-1-ND/3471589 Capacités 18 pF] (pour l'oscillateur 16 MHz)&lt;br /&gt;
*2 [https://www.digikey.com/product-detail/en/abracon-llc/ABLS-16.000MHZ-B4-T/535-10226-1-ND/2184261 Oscillateur 16MHz]&lt;br /&gt;
&lt;br /&gt;
[https://www.digikey.com/product-detail/en/sparkfun-electronics/SEN-13944/1568-1424-ND/6193601 Capteur 9-DOF]&lt;br /&gt;
&lt;br /&gt;
[https://www.digikey.com/product-detail/en/stmicroelectronics/NUCLEO-L031K6/497-16283-ND/5806780 Carte NUCLEO-L031]&lt;br /&gt;
[https://www.digikey.com/product-detail/en/stmicroelectronics/NUCLEO-L152RE/497-14363-ND/4695528 Carte NUCLEO-L152]&lt;br /&gt;
&lt;br /&gt;
*6 [https://www.digikey.com/product-detail/en/rohm-semiconductor/SML-D12U1WT86/SML-D12U1WT86CT-ND/5843858 LED RED CMS]&lt;br /&gt;
*6 [https://www.digikey.com/product-detail/en/rohm-semiconductor/ESR03EZPJ131/RHM130DCT-ND/1762927 Resistances 130Ω (Pour LED)]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*15 [https://www.digikey.com/product-detail/en/samsung-electro-mechanics/CL10F104ZA8NNNC/1276-1011-1-ND/3889097 Capacités 100nF] (découplage/stabilité)&lt;br /&gt;
*6 [https://www.digikey.com/product-detail/en/rohm-semiconductor/ESR03EZPF1002/RHM10KADCT-ND/1983753 Resistances 10kΩ]&lt;br /&gt;
Les composants passifs permettant la mise en place de l'environnement des STM32 (resistances/capa) est deja en la possession de M. Redon (en 0603)&lt;br /&gt;
|-}&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Rapport_PFE_28_Alexis_DORIAN.pdf&amp;diff=64563</id>
		<title>Fichier:Rapport PFE 28 Alexis DORIAN.pdf</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Rapport_PFE_28_Alexis_DORIAN.pdf&amp;diff=64563"/>
				<updated>2018-12-17T22:37:12Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : Rapport de PFE projet 28&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Rapport de PFE projet 28&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=62955</id>
		<title>IMA5 2018/2019 P28</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=62955"/>
				<updated>2018-11-27T14:23:03Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Semaine 5 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Construire un clone de la calculatrice open-source NumWorks. Effectuer quelques modifications sur le code source et sur le hardware.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
Il y a plusieur Axes sur le projet&lt;br /&gt;
en premier temps sur une calculatrice officiel&lt;br /&gt;
Logiciel : &lt;br /&gt;
&lt;br /&gt;
Préambule&lt;br /&gt;
- compilation du firmware sur linux / windows &lt;br /&gt;
- mettre a jour un calculatrice&lt;br /&gt;
- compréhension du code dans sa généraliter &lt;br /&gt;
&lt;br /&gt;
Réquis&lt;br /&gt;
- Modification du mode examen pour garder les programme &lt;br /&gt;
- Modification du calculateur pour rajouter des fonction&lt;br /&gt;
- Ajout de memoire a python ( 13 ko disponnible)&lt;br /&gt;
&lt;br /&gt;
Hardware &lt;br /&gt;
&lt;br /&gt;
- Rajout de memoire vive (seulement 256kb) &lt;br /&gt;
- Recherche ecran compatible &lt;br /&gt;
&lt;br /&gt;
en un second temps modifier la calculatrice en rajoutant des fonction non utiliser &lt;br /&gt;
comme lecture de carte sd et utilisation des entrée sortie&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
Pour éviter de me retrouver avec une seul version qui a tout les modification je travail par petit segment qui seront appeler buildx (x étant un chiffre croissant)&lt;br /&gt;
les petit modification pourront comme sa ajouter dans une version futur et des modification juger non pertinent n'impacterons pas sur le peux de place qui a en mémoire flash&lt;br /&gt;
&lt;br /&gt;
Installation : &lt;br /&gt;
&lt;br /&gt;
[https://www.numworks.com/resources/engineering/software/sdk/ source]&lt;br /&gt;
&lt;br /&gt;
Linux &lt;br /&gt;
&lt;br /&gt;
Partant d'un linux vierge pourvoir installer l'environnent sdk pour qu'on puisse mettre a jour et modifier la numwork il faut quel que ressource&lt;br /&gt;
seront nécessaire pour compiler&lt;br /&gt;
 make gcc g++ &lt;br /&gt;
utiliser par &amp;quot;os&amp;quot; de numwork&lt;br /&gt;
 bison build-essential dfu-util flex gcc-arm-none-eabi libfltk1.3-dev libfreetype6-dev libpng12-dev&lt;br /&gt;
une fois tout sa installer linux et enfin prés a compiler et envoyer le code sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Windows&lt;br /&gt;
&lt;br /&gt;
Cette fois n'ayant pas de console il faut l'installer Numwork nous propose Msys2 une fois installer comme sur linux il faut installer pas mal de ressource &lt;br /&gt;
 pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-freetype mingw-w64-x86_64-pkg-config mingw-w64-x86_64-fltk git make bison python&lt;br /&gt;
&lt;br /&gt;
Mac&lt;br /&gt;
aucun mac pour les tests mais sa doit fonctionner correctement &lt;br /&gt;
&lt;br /&gt;
Mise a jour : &lt;br /&gt;
une fois l'ordinateur configurer on compiler et essayer soit le simulateur soit envoyer le code sur la calculatrice (sachant que le simulateur ne simule pas la led et d'autre fonction de la calculatrice)&lt;br /&gt;
Pour compiler le code vers la calculatrice&lt;br /&gt;
 make clean&lt;br /&gt;
 make&lt;br /&gt;
 make epsilon_flash&lt;br /&gt;
Pour compiler le code pour le simulateur&lt;br /&gt;
 make PLATFORM=simulator clean&lt;br /&gt;
 make PLATFORM=simulator&lt;br /&gt;
sachant que le clean et très important on ne peux pas exporter un code qui a était a but du simulateur &lt;br /&gt;
&lt;br /&gt;
Pour exécuter le simulateur &lt;br /&gt;
 ./epsilon.elf&lt;br /&gt;
&lt;br /&gt;
'''Build 1''' désactivation du mode examen &lt;br /&gt;
&lt;br /&gt;
Le mode examen et obligatoire pour tout les calculatrice programmable a partir de la rentrée 2018  le but de se mode et de bloquer l'accès au programme qui on était dejai enregistré dans la calculatrice et de l'indiquer pour aider les surveillant a verifier que le mode et bien actif.&lt;br /&gt;
&lt;br /&gt;
Pour se faire Numwork a choisir d'appliquer 3 action en activant le mode examen &lt;br /&gt;
&lt;br /&gt;
- ajout d'une icone examen dans le menu &lt;br /&gt;
&lt;br /&gt;
- clignotement d'une led en rouge &lt;br /&gt;
&lt;br /&gt;
- effacement des programme python (et non dés-affichage des programme comme le font certain concurrent)&lt;br /&gt;
&lt;br /&gt;
Pour sortir du mode d'examen il suffit soit de reset sa calculatrice ou d'alimenter la calculatrice &lt;br /&gt;
&lt;br /&gt;
Cette dernier fonction et vraiment contraignante même pour une utilisation normal, une mauvaise manipulation et les programmes réaliser s'envole &lt;br /&gt;
&lt;br /&gt;
Pour que la supercherie que le mode examen aie était truquer les indicateur visuel doivent rester il faut juste modifier la dernier fonction&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
Ayant avancée sur la partie software et compris un partie du code je me lance sur la liste des materiel requis pour réaliser un clone.&lt;br /&gt;
tout les composant sont disponible dans le commerce sauf l'ecran qui a réaliser sur mesure pour numwork &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Connecteur_ecran.png]]&lt;br /&gt;
&lt;br /&gt;
On peux voire que la schème donnée par numwork qu'il utiliser des fonction particulier du controleur qui sont: &lt;br /&gt;
&lt;br /&gt;
-un bus de donnée de 16 bits &lt;br /&gt;
&lt;br /&gt;
-4 led de retroéclairage&lt;br /&gt;
&lt;br /&gt;
-Te : Tearing Effect  &lt;br /&gt;
&lt;br /&gt;
-EXTC : extended comande &lt;br /&gt;
&lt;br /&gt;
connaisant les port qui sont requis je peux commencer a chercher un ecran compatible sachant qu'aprés une demande a numwork le ports EXTC n'ai pas encore utiliser et le ports TE peux être desactiver sans vraiment poser de problème&lt;br /&gt;
&lt;br /&gt;
Il et dur de trouver d'un concepteur d'ecran utilisant le controleur ST7789V pour leurs ecran il faut donc se tourner vers la chine &lt;br /&gt;
sur 8 fabricant seulment 4 réponse et sur les 4 réponse seulment 2 avec des produit correspondant a la demande &lt;br /&gt;
l'un viens de [http://www.szelida.cn szelida] et l'autre de [http://www.youritech.com Youri Technology]&lt;br /&gt;
je choisi donc le ET024QV01 [[https://projets-ima.plil.fr/mediawiki/index.php/Fichier:ET024QV01.pdf]]&lt;br /&gt;
&lt;br /&gt;
on peux voire a sa liste de PIN qui a certain PIN qui deveront être fixer a vcc ou gnd pour bloquer le mode d'affichage de la calculatrice mais il posséde les pin requis pour fonctionner avec la calculatice il et juste plus petit&lt;br /&gt;
&lt;br /&gt;
[[Fichier:RAM_numwork.png]]&lt;br /&gt;
&lt;br /&gt;
En paralléle une recherche sur le hardware montre que la place pour la RAM et dejai prévu sur le PCB il faudrait juste modifier une partie software pour qu'il soit pris en compte l'ajout de la RAM boostera fortement les capacité de cette calculatrice et pourra permet normalment de faire des petit calcul formel &lt;br /&gt;
'''&lt;br /&gt;
Partie Software :'''&lt;br /&gt;
&lt;br /&gt;
Vu que le recherche sur la ram a était effectuer je me concentre se coup si sur l'augmentation de la taille alouer a python en prévision de l'augmentation qui serra fait dans le futur !&lt;br /&gt;
&lt;br /&gt;
De base python dispose de 16Kb de mémoire alouer pour fonctionner en peux le pousser a aller jusqu'a 128Kb sans augmentation matériel mais du a l'achirecture de la mémoire du procésseur une fois qu'on dépace les 64 Kb le temps de traitement deviens long tellement que les premier fois j'ai penser la calculatrice totalment planter !&lt;br /&gt;
&lt;br /&gt;
Si on essaye d'alouer plus que 128Kb de mémoire a python la calculatrice bloque l'action et empêche d'ouvrire la console , il existe une petit sécuriter pour éviter de vraiment planter la calculatrice &lt;br /&gt;
&lt;br /&gt;
cette modification permet d'avancer l'hypothése que le système epilson prend 128kb dans la mémoire vive actuel&lt;br /&gt;
&lt;br /&gt;
Une autre modification mineur a était réaliser pour modifier la version de la numwork il n'ai possible que de rentrée un numéro de version ayant 7 char chose intéressant le site de numwork affiche bien notre version modifier &lt;br /&gt;
[[Fichier:Version.png]]&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
Je commence cette semaine par étudier l'utiliter du port TearingEffect et ExtendedCommand on debute par tout commenter pour voir l'effet sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:TE exc.png]]&lt;br /&gt;
(d'autre ligne on était commenter)&lt;br /&gt;
&lt;br /&gt;
je charge donc cette modification dans la calculatrice pour voire le résultat grace a la fonction graphique je charge des fonction assez lourde graphiquement pour voire les changement ( un fonction de base comme f(x)=x n'ai aucun bug graphique)&lt;br /&gt;
&lt;br /&gt;
je test donc tan(x²⁴) et sin(x⁴)&lt;br /&gt;
&lt;br /&gt;
(pour les images de cette partie il n'aie pas possible d'utiliser le simulateur)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Original.png]]&lt;br /&gt;
&lt;br /&gt;
en effectuant quel que déplacement sur la courbe on obtiens des léger bug graphique comme celui la ,ou seulment un petit portion disparaît par a coup&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit bug.png]]&lt;br /&gt;
&lt;br /&gt;
en changent de fenêtre l'as on obtient des bug graphique plus important &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Gros bug.png]]&lt;br /&gt;
&lt;br /&gt;
même si les bug graphique sont présent il ne sont pas gênant car :&lt;br /&gt;
&lt;br /&gt;
- sur des fonctions de base il ne sont pas présent donc pas contraignant pour un étudiant au collège/lycéen &lt;br /&gt;
&lt;br /&gt;
- sur des fonction avancer les bug ne dure quel que seconde et ne sont donc pas gênant &lt;br /&gt;
&lt;br /&gt;
il pourrai donc poser problème sur des fonction plus graphique et dynamique&lt;br /&gt;
&lt;br /&gt;
En cherchant sur internet on peux découvrire un mode de test on y accédes viens le menus paramètres -&amp;gt; A propos on se place sur FCC ID puis on appuis sur la touche 6 on valide et nous voila dans le mode de test &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test usine.png]] [[Fichier:Test bouton.png]]&lt;br /&gt;
&lt;br /&gt;
sur simulateur on ne peux pas dépasser le test bouton car le bouton home n'est pas accessible via le clavier sinon il comporte en plus d'un test ecran pours les couleur primaire , test de led et de l'affichage d'un code (serie) de la calculatrice&lt;br /&gt;
&lt;br /&gt;
Pour rajouter du calcul formel 2 option s'offre a moi crée un application dédier a sa ou l'ajouter a la fonction de math dejai existant la 2 éme option et étudier en se moment &lt;br /&gt;
&lt;br /&gt;
en lisant le code on comprent certain chose : il font des arrondis pour éviter les erreur de la librairie qui peux renvoyer 4^-17&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
Cette semaine je réalise le nouveaux schéma électronique &lt;br /&gt;
&lt;br /&gt;
tout les fonction de base se répéter sans modification (pour le moment) je capable le nouveaux comme afficher sur la datasheet de l’écran (en laissant le TE et EXTC déconnecter) &lt;br /&gt;
&lt;br /&gt;
[[Fichier:NEW ECRAN.png]]&lt;br /&gt;
&lt;br /&gt;
fessant un version beta test je laisse quand même un emplacement pour que la calculatrice soit compatible avec les ancien ecran qui permettrais de valider le fonctionnement de correct de l'ecran et de la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Ancien ecran.png]]&lt;br /&gt;
&lt;br /&gt;
en réalisant le pcd de la &amp;quot;nouvelle&amp;quot; calculatrice je remarque que faire un adaptateur pour que les nouveaux ecran puisse être tester sur les calculatrice de base (qui validerai leurs fonctionnement )&lt;br /&gt;
&lt;br /&gt;
Etude du clavier Numwork&lt;br /&gt;
&lt;br /&gt;
Refaire le clavier de la numwork comprend refaire aussi sont clavier qui actuellement composer comme se si &lt;br /&gt;
&lt;br /&gt;
Une premier partie électrique&lt;br /&gt;
 &lt;br /&gt;
[[Fichier:C elec.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une Seconde partie de silicone et de carbone  qui assure le contact &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C sili.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une dernier partie de touche en plastique &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C plastique.jpg]]&lt;br /&gt;
&lt;br /&gt;
en regardant la doc technique de numwork on remarque que le clavier et un clavier matrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Num matrice.png]]&lt;br /&gt;
&lt;br /&gt;
en fessant quel que recherche sur la création de clavier matrice on remarque une fonction que numwork n'ai pas pris en compte la fonction antighosting (anti touche fantôme )&lt;br /&gt;
(source [https://bepo.fr/wiki/Atelier_referencestechniques])&lt;br /&gt;
&lt;br /&gt;
la conception de la croix directionnel fait qu'on ne peux pas appuyer sur 2 touche en même temps ,en démontant la calculatrice et en appuyant sur 2 des touche cela n'as aucun influence donc la croix peux être remplacer par un D-pad&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
du au nombre croissant d'étudiant dans la filière SC une matinée a était consacrée a l'installation d'ordinateur pour la réalisation du tp ASR&lt;br /&gt;
&lt;br /&gt;
Etude WebUSB DFU&lt;br /&gt;
&lt;br /&gt;
Numwork se sert de se petit addon disponible sur les navigateur web (seulement google chrome pour le moment ) &lt;br /&gt;
&lt;br /&gt;
La prise en main du petit script de base et simple et fonctionnel j'ai pu lancer la page d'un autre ordinateur &lt;br /&gt;
&lt;br /&gt;
la réalisation d'un page comme https://zardam.github.io/webnofrendo/ pourrai être envisager pour héberger différente version modifier pour qu'un élève puisse changer de version au besoin du prof facilement sans devoir utiliser tout les fonction de compile etc &lt;br /&gt;
&lt;br /&gt;
Sur le script de base on peux aussi récupéré les version firmware des calculatrice &lt;br /&gt;
&lt;br /&gt;
Mais vu certain des version crée a se jour par m'as part la diffusion a grande échelle (un site web visible depuis n'importe quel pc ) poserai quel que problème (évitons de simplifier la tache des tricheur )&lt;br /&gt;
&lt;br /&gt;
Création d'un boitier et impression du modèle l'original &lt;br /&gt;
&lt;br /&gt;
Numwork propose un modèle pour réaliser leurs calculatrice en moulage plastique mais le modèle et le même pour réaliser une impression 3D ( https://github.com/numworks/dieter ) &lt;br /&gt;
&lt;br /&gt;
Dans une optic de democratiser le project au plus grand nombre et baisser les coûts de fabrication j'ai réaliser un modèle réalisable a la découpeuse laser&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Calc decou.png]]&lt;br /&gt;
&lt;br /&gt;
le produit fini &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Découpe bois plexi.jpg]]&lt;br /&gt;
&lt;br /&gt;
3 découpe on était réaliser sur 3 matériaux différent : bois (contreplaquer peuplier 3 mm ), plexiglas (3mm) et carton (1,5 mm) le modèle et optimal pour des matériaux de 1mm  &lt;br /&gt;
les touches réaliser grâce a l'impression 3D sont compatible avec les boîtiers découper .&lt;br /&gt;
&lt;br /&gt;
Du au arrondit de la calculatrice certaine partie on du mal a être imprimer correctement il faut donc augmenter le précision de la calculatrice donc le prix du boîtier  , la modification du modèle en enlevant les arrondis pourrai éviter se problème mais se n'ai pas un problème urgent.&lt;br /&gt;
&lt;br /&gt;
Au niveau prix le boîtier en impression 3D donc en pla revient a 10€ , le modèle en bois étant a 14€/m² on arrive a moins de 0,50€ a le boîtier en bois et pour le modèle en carton on arrive a trouver du carton dans les 1,5€/m2 se qui fait&lt;br /&gt;
que le boîtier arrive a moins de 0,05€&lt;br /&gt;
&lt;br /&gt;
Ajout Flash externe &lt;br /&gt;
&lt;br /&gt;
Dans le but de rajouter giac sur la calculatrice numwork il faut en premier temps rajouter de la flash pour avoir assez de place pour l'installer&lt;br /&gt;
plusieu puce sont possible mais pour respecter la datasheet de la numwork j'utiliserai la AT25SF641 de adesto &lt;br /&gt;
&lt;br /&gt;
premier etat mais pas la moindre le soudage de la puce il faut faire attention en manipuolant se genre de composant il sont sensible a l'electricité statique &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Flash_souder.jpg|200px]]&lt;br /&gt;
&lt;br /&gt;
Pour programmer la flash j'utilise qspi-loader qui se sert lui même de flashrom &lt;br /&gt;
&lt;br /&gt;
 en utilisant la puce de flash AT25SF641 il faut rajouter quel que ligne dans flashrom pour pouvoir l'utiliser (fichier flashchip.c et flashchip.h)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Flashchip.png]]&lt;br /&gt;
&lt;br /&gt;
une fois installation de flashrom correctement fait on peux utiliser qspi de façon correct  en suivant le procédure suivante  &lt;br /&gt;
&lt;br /&gt;
 Reset la calculatrice&lt;br /&gt;
 Charger Qspi-loader (make run_qpsi_loader)&lt;br /&gt;
 Patcher la flash (excecuter le script python enable_qspi_AT25SF641.py cela permet de set les port QE correctement attention si cette etape n'ai pas respecter il a y des risquer pour la calculatrice)&lt;br /&gt;
&lt;br /&gt;
après cette courte procédure qspi et fonctionnel et permet d'ecrire sur la flash externe &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Qpsi loader.png]]&lt;br /&gt;
&lt;br /&gt;
Installation de giac sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Je me baserai pour le moment sur le travaux de zardam (version intérieure de la calculatrice )&lt;br /&gt;
&lt;br /&gt;
il nous faut utiliser une version modifier de giac et tommath (alléger) pour pouvoir reussir a faire rentrer le programme dans la flash rajouter &lt;br /&gt;
&lt;br /&gt;
une fois fait on compile le version puis on commence a installer dans la flash externe (qspi loader doit et charger dans la flash interne)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Flash ext.png]]&lt;br /&gt;
&lt;br /&gt;
ensuite on reset la calculatrice et on flash la interne &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Flash interne.png]]&lt;br /&gt;
&lt;br /&gt;
Voila la calculatrice redemarre et fonctionne normalment (si la calculatrice reset a chaque calcu symbolique c'est que la vitesse d'accés a la flash et trop haut et doit etre changer ou que la flash externe et morte)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Calcul integrale reel.jpg|300px]]&lt;br /&gt;
&lt;br /&gt;
on confirme le résultat grace au simulateur online de la numwork &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Simu integrale.png]]&lt;br /&gt;
&lt;br /&gt;
on remarque bien que le calcul et sur forme symbolique et non developper&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Simu_integrale.png&amp;diff=62954</id>
		<title>Fichier:Simu integrale.png</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Simu_integrale.png&amp;diff=62954"/>
				<updated>2018-11-27T14:22:27Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : calcul integrale par le simulateur&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;calcul integrale par le simulateur&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Calcul_integrale_reel.jpg&amp;diff=62953</id>
		<title>Fichier:Calcul integrale reel.jpg</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Calcul_integrale_reel.jpg&amp;diff=62953"/>
				<updated>2018-11-27T14:20:42Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : la calcul d'une integrale en calcule formel&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;la calcul d'une integrale en calcule formel&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Flash_interne.png&amp;diff=62952</id>
		<title>Fichier:Flash interne.png</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Flash_interne.png&amp;diff=62952"/>
				<updated>2018-11-27T14:12:49Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : flash de la flash interne&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;flash de la flash interne&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=62951</id>
		<title>IMA5 2018/2019 P28</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=62951"/>
				<updated>2018-11-27T14:11:53Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Semaine 5 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Construire un clone de la calculatrice open-source NumWorks. Effectuer quelques modifications sur le code source et sur le hardware.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
Il y a plusieur Axes sur le projet&lt;br /&gt;
en premier temps sur une calculatrice officiel&lt;br /&gt;
Logiciel : &lt;br /&gt;
&lt;br /&gt;
Préambule&lt;br /&gt;
- compilation du firmware sur linux / windows &lt;br /&gt;
- mettre a jour un calculatrice&lt;br /&gt;
- compréhension du code dans sa généraliter &lt;br /&gt;
&lt;br /&gt;
Réquis&lt;br /&gt;
- Modification du mode examen pour garder les programme &lt;br /&gt;
- Modification du calculateur pour rajouter des fonction&lt;br /&gt;
- Ajout de memoire a python ( 13 ko disponnible)&lt;br /&gt;
&lt;br /&gt;
Hardware &lt;br /&gt;
&lt;br /&gt;
- Rajout de memoire vive (seulement 256kb) &lt;br /&gt;
- Recherche ecran compatible &lt;br /&gt;
&lt;br /&gt;
en un second temps modifier la calculatrice en rajoutant des fonction non utiliser &lt;br /&gt;
comme lecture de carte sd et utilisation des entrée sortie&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
Pour éviter de me retrouver avec une seul version qui a tout les modification je travail par petit segment qui seront appeler buildx (x étant un chiffre croissant)&lt;br /&gt;
les petit modification pourront comme sa ajouter dans une version futur et des modification juger non pertinent n'impacterons pas sur le peux de place qui a en mémoire flash&lt;br /&gt;
&lt;br /&gt;
Installation : &lt;br /&gt;
&lt;br /&gt;
[https://www.numworks.com/resources/engineering/software/sdk/ source]&lt;br /&gt;
&lt;br /&gt;
Linux &lt;br /&gt;
&lt;br /&gt;
Partant d'un linux vierge pourvoir installer l'environnent sdk pour qu'on puisse mettre a jour et modifier la numwork il faut quel que ressource&lt;br /&gt;
seront nécessaire pour compiler&lt;br /&gt;
 make gcc g++ &lt;br /&gt;
utiliser par &amp;quot;os&amp;quot; de numwork&lt;br /&gt;
 bison build-essential dfu-util flex gcc-arm-none-eabi libfltk1.3-dev libfreetype6-dev libpng12-dev&lt;br /&gt;
une fois tout sa installer linux et enfin prés a compiler et envoyer le code sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Windows&lt;br /&gt;
&lt;br /&gt;
Cette fois n'ayant pas de console il faut l'installer Numwork nous propose Msys2 une fois installer comme sur linux il faut installer pas mal de ressource &lt;br /&gt;
 pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-freetype mingw-w64-x86_64-pkg-config mingw-w64-x86_64-fltk git make bison python&lt;br /&gt;
&lt;br /&gt;
Mac&lt;br /&gt;
aucun mac pour les tests mais sa doit fonctionner correctement &lt;br /&gt;
&lt;br /&gt;
Mise a jour : &lt;br /&gt;
une fois l'ordinateur configurer on compiler et essayer soit le simulateur soit envoyer le code sur la calculatrice (sachant que le simulateur ne simule pas la led et d'autre fonction de la calculatrice)&lt;br /&gt;
Pour compiler le code vers la calculatrice&lt;br /&gt;
 make clean&lt;br /&gt;
 make&lt;br /&gt;
 make epsilon_flash&lt;br /&gt;
Pour compiler le code pour le simulateur&lt;br /&gt;
 make PLATFORM=simulator clean&lt;br /&gt;
 make PLATFORM=simulator&lt;br /&gt;
sachant que le clean et très important on ne peux pas exporter un code qui a était a but du simulateur &lt;br /&gt;
&lt;br /&gt;
Pour exécuter le simulateur &lt;br /&gt;
 ./epsilon.elf&lt;br /&gt;
&lt;br /&gt;
'''Build 1''' désactivation du mode examen &lt;br /&gt;
&lt;br /&gt;
Le mode examen et obligatoire pour tout les calculatrice programmable a partir de la rentrée 2018  le but de se mode et de bloquer l'accès au programme qui on était dejai enregistré dans la calculatrice et de l'indiquer pour aider les surveillant a verifier que le mode et bien actif.&lt;br /&gt;
&lt;br /&gt;
Pour se faire Numwork a choisir d'appliquer 3 action en activant le mode examen &lt;br /&gt;
&lt;br /&gt;
- ajout d'une icone examen dans le menu &lt;br /&gt;
&lt;br /&gt;
- clignotement d'une led en rouge &lt;br /&gt;
&lt;br /&gt;
- effacement des programme python (et non dés-affichage des programme comme le font certain concurrent)&lt;br /&gt;
&lt;br /&gt;
Pour sortir du mode d'examen il suffit soit de reset sa calculatrice ou d'alimenter la calculatrice &lt;br /&gt;
&lt;br /&gt;
Cette dernier fonction et vraiment contraignante même pour une utilisation normal, une mauvaise manipulation et les programmes réaliser s'envole &lt;br /&gt;
&lt;br /&gt;
Pour que la supercherie que le mode examen aie était truquer les indicateur visuel doivent rester il faut juste modifier la dernier fonction&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
Ayant avancée sur la partie software et compris un partie du code je me lance sur la liste des materiel requis pour réaliser un clone.&lt;br /&gt;
tout les composant sont disponible dans le commerce sauf l'ecran qui a réaliser sur mesure pour numwork &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Connecteur_ecran.png]]&lt;br /&gt;
&lt;br /&gt;
On peux voire que la schème donnée par numwork qu'il utiliser des fonction particulier du controleur qui sont: &lt;br /&gt;
&lt;br /&gt;
-un bus de donnée de 16 bits &lt;br /&gt;
&lt;br /&gt;
-4 led de retroéclairage&lt;br /&gt;
&lt;br /&gt;
-Te : Tearing Effect  &lt;br /&gt;
&lt;br /&gt;
-EXTC : extended comande &lt;br /&gt;
&lt;br /&gt;
connaisant les port qui sont requis je peux commencer a chercher un ecran compatible sachant qu'aprés une demande a numwork le ports EXTC n'ai pas encore utiliser et le ports TE peux être desactiver sans vraiment poser de problème&lt;br /&gt;
&lt;br /&gt;
Il et dur de trouver d'un concepteur d'ecran utilisant le controleur ST7789V pour leurs ecran il faut donc se tourner vers la chine &lt;br /&gt;
sur 8 fabricant seulment 4 réponse et sur les 4 réponse seulment 2 avec des produit correspondant a la demande &lt;br /&gt;
l'un viens de [http://www.szelida.cn szelida] et l'autre de [http://www.youritech.com Youri Technology]&lt;br /&gt;
je choisi donc le ET024QV01 [[https://projets-ima.plil.fr/mediawiki/index.php/Fichier:ET024QV01.pdf]]&lt;br /&gt;
&lt;br /&gt;
on peux voire a sa liste de PIN qui a certain PIN qui deveront être fixer a vcc ou gnd pour bloquer le mode d'affichage de la calculatrice mais il posséde les pin requis pour fonctionner avec la calculatice il et juste plus petit&lt;br /&gt;
&lt;br /&gt;
[[Fichier:RAM_numwork.png]]&lt;br /&gt;
&lt;br /&gt;
En paralléle une recherche sur le hardware montre que la place pour la RAM et dejai prévu sur le PCB il faudrait juste modifier une partie software pour qu'il soit pris en compte l'ajout de la RAM boostera fortement les capacité de cette calculatrice et pourra permet normalment de faire des petit calcul formel &lt;br /&gt;
'''&lt;br /&gt;
Partie Software :'''&lt;br /&gt;
&lt;br /&gt;
Vu que le recherche sur la ram a était effectuer je me concentre se coup si sur l'augmentation de la taille alouer a python en prévision de l'augmentation qui serra fait dans le futur !&lt;br /&gt;
&lt;br /&gt;
De base python dispose de 16Kb de mémoire alouer pour fonctionner en peux le pousser a aller jusqu'a 128Kb sans augmentation matériel mais du a l'achirecture de la mémoire du procésseur une fois qu'on dépace les 64 Kb le temps de traitement deviens long tellement que les premier fois j'ai penser la calculatrice totalment planter !&lt;br /&gt;
&lt;br /&gt;
Si on essaye d'alouer plus que 128Kb de mémoire a python la calculatrice bloque l'action et empêche d'ouvrire la console , il existe une petit sécuriter pour éviter de vraiment planter la calculatrice &lt;br /&gt;
&lt;br /&gt;
cette modification permet d'avancer l'hypothése que le système epilson prend 128kb dans la mémoire vive actuel&lt;br /&gt;
&lt;br /&gt;
Une autre modification mineur a était réaliser pour modifier la version de la numwork il n'ai possible que de rentrée un numéro de version ayant 7 char chose intéressant le site de numwork affiche bien notre version modifier &lt;br /&gt;
[[Fichier:Version.png]]&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
Je commence cette semaine par étudier l'utiliter du port TearingEffect et ExtendedCommand on debute par tout commenter pour voir l'effet sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:TE exc.png]]&lt;br /&gt;
(d'autre ligne on était commenter)&lt;br /&gt;
&lt;br /&gt;
je charge donc cette modification dans la calculatrice pour voire le résultat grace a la fonction graphique je charge des fonction assez lourde graphiquement pour voire les changement ( un fonction de base comme f(x)=x n'ai aucun bug graphique)&lt;br /&gt;
&lt;br /&gt;
je test donc tan(x²⁴) et sin(x⁴)&lt;br /&gt;
&lt;br /&gt;
(pour les images de cette partie il n'aie pas possible d'utiliser le simulateur)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Original.png]]&lt;br /&gt;
&lt;br /&gt;
en effectuant quel que déplacement sur la courbe on obtiens des léger bug graphique comme celui la ,ou seulment un petit portion disparaît par a coup&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit bug.png]]&lt;br /&gt;
&lt;br /&gt;
en changent de fenêtre l'as on obtient des bug graphique plus important &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Gros bug.png]]&lt;br /&gt;
&lt;br /&gt;
même si les bug graphique sont présent il ne sont pas gênant car :&lt;br /&gt;
&lt;br /&gt;
- sur des fonctions de base il ne sont pas présent donc pas contraignant pour un étudiant au collège/lycéen &lt;br /&gt;
&lt;br /&gt;
- sur des fonction avancer les bug ne dure quel que seconde et ne sont donc pas gênant &lt;br /&gt;
&lt;br /&gt;
il pourrai donc poser problème sur des fonction plus graphique et dynamique&lt;br /&gt;
&lt;br /&gt;
En cherchant sur internet on peux découvrire un mode de test on y accédes viens le menus paramètres -&amp;gt; A propos on se place sur FCC ID puis on appuis sur la touche 6 on valide et nous voila dans le mode de test &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test usine.png]] [[Fichier:Test bouton.png]]&lt;br /&gt;
&lt;br /&gt;
sur simulateur on ne peux pas dépasser le test bouton car le bouton home n'est pas accessible via le clavier sinon il comporte en plus d'un test ecran pours les couleur primaire , test de led et de l'affichage d'un code (serie) de la calculatrice&lt;br /&gt;
&lt;br /&gt;
Pour rajouter du calcul formel 2 option s'offre a moi crée un application dédier a sa ou l'ajouter a la fonction de math dejai existant la 2 éme option et étudier en se moment &lt;br /&gt;
&lt;br /&gt;
en lisant le code on comprent certain chose : il font des arrondis pour éviter les erreur de la librairie qui peux renvoyer 4^-17&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
Cette semaine je réalise le nouveaux schéma électronique &lt;br /&gt;
&lt;br /&gt;
tout les fonction de base se répéter sans modification (pour le moment) je capable le nouveaux comme afficher sur la datasheet de l’écran (en laissant le TE et EXTC déconnecter) &lt;br /&gt;
&lt;br /&gt;
[[Fichier:NEW ECRAN.png]]&lt;br /&gt;
&lt;br /&gt;
fessant un version beta test je laisse quand même un emplacement pour que la calculatrice soit compatible avec les ancien ecran qui permettrais de valider le fonctionnement de correct de l'ecran et de la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Ancien ecran.png]]&lt;br /&gt;
&lt;br /&gt;
en réalisant le pcd de la &amp;quot;nouvelle&amp;quot; calculatrice je remarque que faire un adaptateur pour que les nouveaux ecran puisse être tester sur les calculatrice de base (qui validerai leurs fonctionnement )&lt;br /&gt;
&lt;br /&gt;
Etude du clavier Numwork&lt;br /&gt;
&lt;br /&gt;
Refaire le clavier de la numwork comprend refaire aussi sont clavier qui actuellement composer comme se si &lt;br /&gt;
&lt;br /&gt;
Une premier partie électrique&lt;br /&gt;
 &lt;br /&gt;
[[Fichier:C elec.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une Seconde partie de silicone et de carbone  qui assure le contact &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C sili.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une dernier partie de touche en plastique &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C plastique.jpg]]&lt;br /&gt;
&lt;br /&gt;
en regardant la doc technique de numwork on remarque que le clavier et un clavier matrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Num matrice.png]]&lt;br /&gt;
&lt;br /&gt;
en fessant quel que recherche sur la création de clavier matrice on remarque une fonction que numwork n'ai pas pris en compte la fonction antighosting (anti touche fantôme )&lt;br /&gt;
(source [https://bepo.fr/wiki/Atelier_referencestechniques])&lt;br /&gt;
&lt;br /&gt;
la conception de la croix directionnel fait qu'on ne peux pas appuyer sur 2 touche en même temps ,en démontant la calculatrice et en appuyant sur 2 des touche cela n'as aucun influence donc la croix peux être remplacer par un D-pad&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
du au nombre croissant d'étudiant dans la filière SC une matinée a était consacrée a l'installation d'ordinateur pour la réalisation du tp ASR&lt;br /&gt;
&lt;br /&gt;
Etude WebUSB DFU&lt;br /&gt;
&lt;br /&gt;
Numwork se sert de se petit addon disponible sur les navigateur web (seulement google chrome pour le moment ) &lt;br /&gt;
&lt;br /&gt;
La prise en main du petit script de base et simple et fonctionnel j'ai pu lancer la page d'un autre ordinateur &lt;br /&gt;
&lt;br /&gt;
la réalisation d'un page comme https://zardam.github.io/webnofrendo/ pourrai être envisager pour héberger différente version modifier pour qu'un élève puisse changer de version au besoin du prof facilement sans devoir utiliser tout les fonction de compile etc &lt;br /&gt;
&lt;br /&gt;
Sur le script de base on peux aussi récupéré les version firmware des calculatrice &lt;br /&gt;
&lt;br /&gt;
Mais vu certain des version crée a se jour par m'as part la diffusion a grande échelle (un site web visible depuis n'importe quel pc ) poserai quel que problème (évitons de simplifier la tache des tricheur )&lt;br /&gt;
&lt;br /&gt;
Création d'un boitier et impression du modèle l'original &lt;br /&gt;
&lt;br /&gt;
Numwork propose un modèle pour réaliser leurs calculatrice en moulage plastique mais le modèle et le même pour réaliser une impression 3D ( https://github.com/numworks/dieter ) &lt;br /&gt;
&lt;br /&gt;
Dans une optic de democratiser le project au plus grand nombre et baisser les coûts de fabrication j'ai réaliser un modèle réalisable a la découpeuse laser&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Calc decou.png]]&lt;br /&gt;
&lt;br /&gt;
le produit fini &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Découpe bois plexi.jpg]]&lt;br /&gt;
&lt;br /&gt;
3 découpe on était réaliser sur 3 matériaux différent : bois (contreplaquer peuplier 3 mm ), plexiglas (3mm) et carton (1,5 mm) le modèle et optimal pour des matériaux de 1mm  &lt;br /&gt;
les touches réaliser grâce a l'impression 3D sont compatible avec les boîtiers découper .&lt;br /&gt;
&lt;br /&gt;
Du au arrondit de la calculatrice certaine partie on du mal a être imprimer correctement il faut donc augmenter le précision de la calculatrice donc le prix du boîtier  , la modification du modèle en enlevant les arrondis pourrai éviter se problème mais se n'ai pas un problème urgent.&lt;br /&gt;
&lt;br /&gt;
Au niveau prix le boîtier en impression 3D donc en pla revient a 10€ , le modèle en bois étant a 14€/m² on arrive a moins de 0,50€ a le boîtier en bois et pour le modèle en carton on arrive a trouver du carton dans les 1,5€/m2 se qui fait&lt;br /&gt;
que le boîtier arrive a moins de 0,05€&lt;br /&gt;
&lt;br /&gt;
Ajout Flash externe &lt;br /&gt;
&lt;br /&gt;
Dans le but de rajouter giac sur la calculatrice numwork il faut en premier temps rajouter de la flash pour avoir assez de place pour l'installer&lt;br /&gt;
plusieu puce sont possible mais pour respecter la datasheet de la numwork j'utiliserai la AT25SF641 de adesto &lt;br /&gt;
&lt;br /&gt;
premier etat mais pas la moindre le soudage de la puce il faut faire attention en manipuolant se genre de composant il sont sensible a l'electricité statique &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Flash_souder.jpg|200px]]&lt;br /&gt;
&lt;br /&gt;
Pour programmer la flash j'utilise qspi-loader qui se sert lui même de flashrom &lt;br /&gt;
&lt;br /&gt;
 en utilisant la puce de flash AT25SF641 il faut rajouter quel que ligne dans flashrom pour pouvoir l'utiliser (fichier flashchip.c et flashchip.h)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Flashchip.png]]&lt;br /&gt;
&lt;br /&gt;
une fois installation de flashrom correctement fait on peux utiliser qspi de façon correct  en suivant le procédure suivante  &lt;br /&gt;
&lt;br /&gt;
 Reset la calculatrice&lt;br /&gt;
 Charger Qspi-loader (make run_qpsi_loader)&lt;br /&gt;
 Patcher la flash (excecuter le script python enable_qspi_AT25SF641.py cela permet de set les port QE correctement attention si cette etape n'ai pas respecter il a y des risquer pour la calculatrice)&lt;br /&gt;
&lt;br /&gt;
après cette courte procédure qspi et fonctionnel et permet d'ecrire sur la flash externe &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Qpsi loader.png]]&lt;br /&gt;
&lt;br /&gt;
Installation de giac sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Je me baserai pour le moment sur le travaux de zardam (version intérieure de la calculatrice )&lt;br /&gt;
&lt;br /&gt;
il nous faut utiliser une version modifier de giac et tommath (alléger) pour pouvoir reussir a faire rentrer le programme dans la flash rajouter &lt;br /&gt;
&lt;br /&gt;
une fois fait on compile le version puis on commence a installer dans la flash externe (qspi loader doit et charger dans ka flash interne)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Flash ext.png]]&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Flash_ext.png&amp;diff=62950</id>
		<title>Fichier:Flash ext.png</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Flash_ext.png&amp;diff=62950"/>
				<updated>2018-11-27T14:11:41Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : flash de la flash externe&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;flash de la flash externe&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Qpsi_loader.png&amp;diff=62949</id>
		<title>Fichier:Qpsi loader.png</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Qpsi_loader.png&amp;diff=62949"/>
				<updated>2018-11-27T14:08:01Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : qpsi loader installer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;qpsi loader installer&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Flashchip.png&amp;diff=62947</id>
		<title>Fichier:Flashchip.png</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Flashchip.png&amp;diff=62947"/>
				<updated>2018-11-27T14:01:19Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : Ligne rajouter dans flashchip de flashrom&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ligne rajouter dans flashchip de flashrom&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Flash_souder.jpg&amp;diff=62946</id>
		<title>Fichier:Flash souder.jpg</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Flash_souder.jpg&amp;diff=62946"/>
				<updated>2018-11-27T13:57:00Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : flash souder&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;flash souder&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=61372</id>
		<title>IMA5 2018/2019 P28</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=61372"/>
				<updated>2018-11-05T10:43:55Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : a&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Construire un clone de la calculatrice open-source NumWorks. Effectuer quelques modifications sur le code source et sur le hardware.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
Il y a plusieur Axes sur le projet&lt;br /&gt;
en premier temps sur une calculatrice officiel&lt;br /&gt;
Logiciel : &lt;br /&gt;
&lt;br /&gt;
Préambule&lt;br /&gt;
- compilation du firmware sur linux / windows &lt;br /&gt;
- mettre a jour un calculatrice&lt;br /&gt;
- compréhension du code dans sa généraliter &lt;br /&gt;
&lt;br /&gt;
Réquis&lt;br /&gt;
- Modification du mode examen pour garder les programme &lt;br /&gt;
- Modification du calculateur pour rajouter des fonction&lt;br /&gt;
- Ajout de memoire a python ( 13 ko disponnible)&lt;br /&gt;
&lt;br /&gt;
Hardware &lt;br /&gt;
&lt;br /&gt;
- Rajout de memoire vive (seulement 256kb) &lt;br /&gt;
- Recherche ecran compatible &lt;br /&gt;
&lt;br /&gt;
en un second temps modifier la calculatrice en rajoutant des fonction non utiliser &lt;br /&gt;
comme lecture de carte sd et utilisation des entrée sortie&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
Pour éviter de me retrouver avec une seul version qui a tout les modification je travail par petit segment qui seront appeler buildx (x étant un chiffre croissant)&lt;br /&gt;
les petit modification pourront comme sa ajouter dans une version futur et des modification juger non pertinent n'impacterons pas sur le peux de place qui a en mémoire flash&lt;br /&gt;
&lt;br /&gt;
Installation : &lt;br /&gt;
&lt;br /&gt;
[https://www.numworks.com/resources/engineering/software/sdk/ source]&lt;br /&gt;
&lt;br /&gt;
Linux &lt;br /&gt;
&lt;br /&gt;
Partant d'un linux vierge pourvoir installer l'environnent sdk pour qu'on puisse mettre a jour et modifier la numwork il faut quel que ressource&lt;br /&gt;
seront nécessaire pour compiler&lt;br /&gt;
 make gcc g++ &lt;br /&gt;
utiliser par &amp;quot;os&amp;quot; de numwork&lt;br /&gt;
 bison build-essential dfu-util flex gcc-arm-none-eabi libfltk1.3-dev libfreetype6-dev libpng12-dev&lt;br /&gt;
une fois tout sa installer linux et enfin prés a compiler et envoyer le code sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Windows&lt;br /&gt;
&lt;br /&gt;
Cette fois n'ayant pas de console il faut l'installer Numwork nous propose Msys2 une fois installer comme sur linux il faut installer pas mal de ressource &lt;br /&gt;
 pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-freetype mingw-w64-x86_64-pkg-config mingw-w64-x86_64-fltk git make bison python&lt;br /&gt;
&lt;br /&gt;
Mac&lt;br /&gt;
aucun mac pour les tests mais sa doit fonctionner correctement &lt;br /&gt;
&lt;br /&gt;
Mise a jour : &lt;br /&gt;
une fois l'ordinateur configurer on compiler et essayer soit le simulateur soit envoyer le code sur la calculatrice (sachant que le simulateur ne simule pas la led et d'autre fonction de la calculatrice)&lt;br /&gt;
Pour compiler le code vers la calculatrice&lt;br /&gt;
 make clean&lt;br /&gt;
 make&lt;br /&gt;
 make epsilon_flash&lt;br /&gt;
Pour compiler le code pour le simulateur&lt;br /&gt;
 make PLATFORM=simulator clean&lt;br /&gt;
 make PLATFORM=simulator&lt;br /&gt;
sachant que le clean et très important on ne peux pas exporter un code qui a était a but du simulateur &lt;br /&gt;
&lt;br /&gt;
Pour exécuter le simulateur &lt;br /&gt;
 ./epsilon.elf&lt;br /&gt;
&lt;br /&gt;
'''Build 1''' désactivation du mode examen &lt;br /&gt;
&lt;br /&gt;
Le mode examen et obligatoire pour tout les calculatrice programmable a partir de la rentrée 2018  le but de se mode et de bloquer l'accès au programme qui on était dejai enregistré dans la calculatrice et de l'indiquer pour aider les surveillant a verifier que le mode et bien actif.&lt;br /&gt;
&lt;br /&gt;
Pour se faire Numwork a choisir d'appliquer 3 action en activant le mode examen &lt;br /&gt;
&lt;br /&gt;
- ajout d'une icone examen dans le menu &lt;br /&gt;
&lt;br /&gt;
- clignotement d'une led en rouge &lt;br /&gt;
&lt;br /&gt;
- effacement des programme python (et non dés-affichage des programme comme le font certain concurrent)&lt;br /&gt;
&lt;br /&gt;
Pour sortir du mode d'examen il suffit soit de reset sa calculatrice ou d'alimenter la calculatrice &lt;br /&gt;
&lt;br /&gt;
Cette dernier fonction et vraiment contraignante même pour une utilisation normal, une mauvaise manipulation et les programmes réaliser s'envole &lt;br /&gt;
&lt;br /&gt;
Pour que la supercherie que le mode examen aie était truquer les indicateur visuel doivent rester il faut juste modifier la dernier fonction&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
Ayant avancée sur la partie software et compris un partie du code je me lance sur la liste des materiel requis pour réaliser un clone.&lt;br /&gt;
tout les composant sont disponible dans le commerce sauf l'ecran qui a réaliser sur mesure pour numwork &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Connecteur_ecran.png]]&lt;br /&gt;
&lt;br /&gt;
On peux voire que la schème donnée par numwork qu'il utiliser des fonction particulier du controleur qui sont: &lt;br /&gt;
&lt;br /&gt;
-un bus de donnée de 16 bits &lt;br /&gt;
&lt;br /&gt;
-4 led de retroéclairage&lt;br /&gt;
&lt;br /&gt;
-Te : Tearing Effect  &lt;br /&gt;
&lt;br /&gt;
-EXTC : extended comande &lt;br /&gt;
&lt;br /&gt;
connaisant les port qui sont requis je peux commencer a chercher un ecran compatible sachant qu'aprés une demande a numwork le ports EXTC n'ai pas encore utiliser et le ports TE peux être desactiver sans vraiment poser de problème&lt;br /&gt;
&lt;br /&gt;
Il et dur de trouver d'un concepteur d'ecran utilisant le controleur ST7789V pour leurs ecran il faut donc se tourner vers la chine &lt;br /&gt;
sur 8 fabricant seulment 4 réponse et sur les 4 réponse seulment 2 avec des produit correspondant a la demande &lt;br /&gt;
l'un viens de [http://www.szelida.cn szelida] et l'autre de [http://www.youritech.com Youri Technology]&lt;br /&gt;
je choisi donc le ET024QV01 [[https://projets-ima.plil.fr/mediawiki/index.php/Fichier:ET024QV01.pdf]]&lt;br /&gt;
&lt;br /&gt;
on peux voire a sa liste de PIN qui a certain PIN qui deveront être fixer a vcc ou gnd pour bloquer le mode d'affichage de la calculatrice mais il posséde les pin requis pour fonctionner avec la calculatice il et juste plus petit&lt;br /&gt;
&lt;br /&gt;
[[Fichier:RAM_numwork.png]]&lt;br /&gt;
&lt;br /&gt;
En paralléle une recherche sur le hardware montre que la place pour la RAM et dejai prévu sur le PCB il faudrait juste modifier une partie software pour qu'il soit pris en compte l'ajout de la RAM boostera fortement les capacité de cette calculatrice et pourra permet normalment de faire des petit calcul formel &lt;br /&gt;
'''&lt;br /&gt;
Partie Software :'''&lt;br /&gt;
&lt;br /&gt;
Vu que le recherche sur la ram a était effectuer je me concentre se coup si sur l'augmentation de la taille alouer a python en prévision de l'augmentation qui serra fait dans le futur !&lt;br /&gt;
&lt;br /&gt;
De base python dispose de 16Kb de mémoire alouer pour fonctionner en peux le pousser a aller jusqu'a 128Kb sans augmentation matériel mais du a l'achirecture de la mémoire du procésseur une fois qu'on dépace les 64 Kb le temps de traitement deviens long tellement que les premier fois j'ai penser la calculatrice totalment planter !&lt;br /&gt;
&lt;br /&gt;
Si on essaye d'alouer plus que 128Kb de mémoire a python la calculatrice bloque l'action et empêche d'ouvrire la console , il existe une petit sécuriter pour éviter de vraiment planter la calculatrice &lt;br /&gt;
&lt;br /&gt;
cette modification permet d'avancer l'hypothése que le système epilson prend 128kb dans la mémoire vive actuel&lt;br /&gt;
&lt;br /&gt;
Une autre modification mineur a était réaliser pour modifier la version de la numwork il n'ai possible que de rentrée un numéro de version ayant 7 char chose intéressant le site de numwork affiche bien notre version modifier &lt;br /&gt;
[[Fichier:Version.png]]&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
Je commence cette semaine par étudier l'utiliter du port TearingEffect et ExtendedCommand on debute par tout commenter pour voir l'effet sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:TE exc.png]]&lt;br /&gt;
(d'autre ligne on était commenter)&lt;br /&gt;
&lt;br /&gt;
je charge donc cette modification dans la calculatrice pour voire le résultat grace a la fonction graphique je charge des fonction assez lourde graphiquement pour voire les changement ( un fonction de base comme f(x)=x n'ai aucun bug graphique)&lt;br /&gt;
&lt;br /&gt;
je test donc tan(x²⁴) et sin(x⁴)&lt;br /&gt;
&lt;br /&gt;
(pour les images de cette partie il n'aie pas possible d'utiliser le simulateur)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Original.png]]&lt;br /&gt;
&lt;br /&gt;
en effectuant quel que déplacement sur la courbe on obtiens des léger bug graphique comme celui la ,ou seulment un petit portion disparaît par a coup&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit bug.png]]&lt;br /&gt;
&lt;br /&gt;
en changent de fenêtre l'as on obtient des bug graphique plus important &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Gros bug.png]]&lt;br /&gt;
&lt;br /&gt;
même si les bug graphique sont présent il ne sont pas gênant car :&lt;br /&gt;
&lt;br /&gt;
- sur des fonctions de base il ne sont pas présent donc pas contraignant pour un étudiant au collège/lycéen &lt;br /&gt;
&lt;br /&gt;
- sur des fonction avancer les bug ne dure quel que seconde et ne sont donc pas gênant &lt;br /&gt;
&lt;br /&gt;
il pourrai donc poser problème sur des fonction plus graphique et dynamique&lt;br /&gt;
&lt;br /&gt;
En cherchant sur internet on peux découvrire un mode de test on y accédes viens le menus paramètres -&amp;gt; A propos on se place sur FCC ID puis on appuis sur la touche 6 on valide et nous voila dans le mode de test &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test usine.png]] [[Fichier:Test bouton.png]]&lt;br /&gt;
&lt;br /&gt;
sur simulateur on ne peux pas dépasser le test bouton car le bouton home n'est pas accessible via le clavier sinon il comporte en plus d'un test ecran pours les couleur primaire , test de led et de l'affichage d'un code (serie) de la calculatrice&lt;br /&gt;
&lt;br /&gt;
Pour rajouter du calcul formel 2 option s'offre a moi crée un application dédier a sa ou l'ajouter a la fonction de math dejai existant la 2 éme option et étudier en se moment &lt;br /&gt;
&lt;br /&gt;
en lisant le code on comprent certain chose : il font des arrondis pour éviter les erreur de la librairie qui peux renvoyer 4^-17&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
Cette semaine je réalise le nouveaux schéma électronique &lt;br /&gt;
&lt;br /&gt;
tout les fonction de base se répéter sans modification (pour le moment) je capable le nouveaux comme afficher sur la datasheet de l’écran (en laissant le TE et EXTC déconnecter) &lt;br /&gt;
&lt;br /&gt;
[[Fichier:NEW ECRAN.png]]&lt;br /&gt;
&lt;br /&gt;
fessant un version beta test je laisse quand même un emplacement pour que la calculatrice soit compatible avec les ancien ecran qui permettrais de valider le fonctionnement de correct de l'ecran et de la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Ancien ecran.png]]&lt;br /&gt;
&lt;br /&gt;
en réalisant le pcd de la &amp;quot;nouvelle&amp;quot; calculatrice je remarque que faire un adaptateur pour que les nouveaux ecran puisse être tester sur les calculatrice de base (qui validerai leurs fonctionnement )&lt;br /&gt;
&lt;br /&gt;
Etude du clavier Numwork&lt;br /&gt;
&lt;br /&gt;
Refaire le clavier de la numwork comprend refaire aussi sont clavier qui actuellement composer comme se si &lt;br /&gt;
&lt;br /&gt;
Une premier partie électrique&lt;br /&gt;
 &lt;br /&gt;
[[Fichier:C elec.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une Seconde partie de silicone et de carbone  qui assure le contact &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C sili.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une dernier partie de touche en plastique &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C plastique.jpg]]&lt;br /&gt;
&lt;br /&gt;
en regardant la doc technique de numwork on remarque que le clavier et un clavier matrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Num matrice.png]]&lt;br /&gt;
&lt;br /&gt;
en fessant quel que recherche sur la création de clavier matrice on remarque une fonction que numwork n'ai pas pris en compte la fonction antighosting (anti touche fantôme )&lt;br /&gt;
(source [https://bepo.fr/wiki/Atelier_referencestechniques])&lt;br /&gt;
&lt;br /&gt;
la conception de la croix directionnel fait qu'on ne peux pas appuyer sur 2 touche en même temps ,en démontant la calculatrice et en appuyant sur 2 des touche cela n'as aucun influence donc la croix peux être remplacer par un D-pad&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
du au nombre croissant d'étudiant dans la filière SC une matinée a était consacrée a l'installation d'ordinateur pour la réalisation du tp ASR&lt;br /&gt;
&lt;br /&gt;
Etude WebUSB DFU&lt;br /&gt;
&lt;br /&gt;
Numwork se sert de se petit addon disponible sur les navigateur web (seulement google chrome pour le moment ) &lt;br /&gt;
&lt;br /&gt;
La prise en main du petit script de base et simple et fonctionnel j'ai pu lancer la page d'un autre ordinateur &lt;br /&gt;
&lt;br /&gt;
la réalisation d'un page comme https://zardam.github.io/webnofrendo/ pourrai être envisager pour héberger différente version modifier pour qu'un élève puisse changer de version au besoin du prof facilement sans devoir utiliser tout les fonction de compile etc &lt;br /&gt;
&lt;br /&gt;
Sur le script de base on peux aussi récupéré les version firmware des calculatrice &lt;br /&gt;
&lt;br /&gt;
Mais vu certain des version crée a se jour par m'as part la diffusion a grande échelle (un site web visible depuis n'importe quel pc ) poserai quel que problème (évitons de simplifier la tache des tricheur )&lt;br /&gt;
&lt;br /&gt;
Création d'un boitier et impression du modèle l'original &lt;br /&gt;
&lt;br /&gt;
Numwork propose un modèle pour réaliser leurs calculatrice en moulage plastique mais le modèle et le même pour réaliser une impression 3D ( https://github.com/numworks/dieter ) &lt;br /&gt;
&lt;br /&gt;
Dans une optic de democratiser le project au plus grand nombre et baisser les coûts de fabrication j'ai réaliser un modèle réalisable a la découpeuse laser&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Calc decou.png]]&lt;br /&gt;
&lt;br /&gt;
le produit fini &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Découpe bois plexi.jpg]]&lt;br /&gt;
&lt;br /&gt;
3 découpe on était réaliser sur 3 matériaux différent : bois (contreplaquer peuplier 3 mm ), plexiglas (3mm) et carton (1,5 mm) le modèle et optimal pour des matériaux de 1mm  &lt;br /&gt;
les touches réaliser grâce a l'impression 3D sont compatible avec les boîtiers découper .&lt;br /&gt;
&lt;br /&gt;
Du au arrondit de la calculatrice certaine partie on du mal a être imprimer correctement il faut donc augmenter le précision de la calculatrice donc le prix du boîtier  , la modification du modèle en enlevant les arrondis pourrai éviter se problème mais se n'ai pas un problème urgent.&lt;br /&gt;
&lt;br /&gt;
Au niveau prix le boîtier en impression 3D donc en pla revient a 10€ , le modèle en bois étant a 14€/m² on arrive a moins de 0,50€ a le boîtier en bois et pour le modèle en carton on arrive a trouver du carton dans les 1,5€/m2 se qui fait&lt;br /&gt;
que le boîtier arrive a moins de 0,05€&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:D%C3%A9coupe_bois_plexi.jpg&amp;diff=61371</id>
		<title>Fichier:Découpe bois plexi.jpg</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:D%C3%A9coupe_bois_plexi.jpg&amp;diff=61371"/>
				<updated>2018-11-05T10:19:27Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : Adorian a téléversé une nouvelle version de Fichier:Découpe bois plexi.jpg&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;résultat de la découpe&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:D%C3%A9coupe_bois_plexi.jpg&amp;diff=61370</id>
		<title>Fichier:Découpe bois plexi.jpg</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:D%C3%A9coupe_bois_plexi.jpg&amp;diff=61370"/>
				<updated>2018-11-05T10:14:50Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : résultat de la découpe&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;résultat de la découpe&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Calc_decou.png&amp;diff=61369</id>
		<title>Fichier:Calc decou.png</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Calc_decou.png&amp;diff=61369"/>
				<updated>2018-11-05T10:11:03Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : modèle de découpe pour la découpeuse laser&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;modèle de découpe pour la découpeuse laser&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=61368</id>
		<title>IMA5 2018/2019 P28</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=61368"/>
				<updated>2018-11-05T09:57:11Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Semaine 5 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Construire un clone de la calculatrice open-source NumWorks. Effectuer quelques modifications sur le code source et sur le hardware.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
Il y a plusieur Axes sur le projet&lt;br /&gt;
en premier temps sur une calculatrice officiel&lt;br /&gt;
Logiciel : &lt;br /&gt;
&lt;br /&gt;
Préambule&lt;br /&gt;
- compilation du firmware sur linux / windows &lt;br /&gt;
- mettre a jour un calculatrice&lt;br /&gt;
- compréhension du code dans sa généraliter &lt;br /&gt;
&lt;br /&gt;
Réquis&lt;br /&gt;
- Modification du mode examen pour garder les programme &lt;br /&gt;
- Modification du calculateur pour rajouter des fonction&lt;br /&gt;
- Ajout de memoire a python ( 13 ko disponnible)&lt;br /&gt;
&lt;br /&gt;
Hardware &lt;br /&gt;
&lt;br /&gt;
- Rajout de memoire vive (seulement 256kb) &lt;br /&gt;
- Recherche ecran compatible &lt;br /&gt;
&lt;br /&gt;
en un second temps modifier la calculatrice en rajoutant des fonction non utiliser &lt;br /&gt;
comme lecture de carte sd et utilisation des entrée sortie&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
Pour éviter de me retrouver avec une seul version qui a tout les modification je travail par petit segment qui seront appeler buildx (x étant un chiffre croissant)&lt;br /&gt;
les petit modification pourront comme sa ajouter dans une version futur et des modification juger non pertinent n'impacterons pas sur le peux de place qui a en mémoire flash&lt;br /&gt;
&lt;br /&gt;
Installation : &lt;br /&gt;
&lt;br /&gt;
[https://www.numworks.com/resources/engineering/software/sdk/ source]&lt;br /&gt;
&lt;br /&gt;
Linux &lt;br /&gt;
&lt;br /&gt;
Partant d'un linux vierge pourvoir installer l'environnent sdk pour qu'on puisse mettre a jour et modifier la numwork il faut quel que ressource&lt;br /&gt;
seront nécessaire pour compiler&lt;br /&gt;
 make gcc g++ &lt;br /&gt;
utiliser par &amp;quot;os&amp;quot; de numwork&lt;br /&gt;
 bison build-essential dfu-util flex gcc-arm-none-eabi libfltk1.3-dev libfreetype6-dev libpng12-dev&lt;br /&gt;
une fois tout sa installer linux et enfin prés a compiler et envoyer le code sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Windows&lt;br /&gt;
&lt;br /&gt;
Cette fois n'ayant pas de console il faut l'installer Numwork nous propose Msys2 une fois installer comme sur linux il faut installer pas mal de ressource &lt;br /&gt;
 pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-freetype mingw-w64-x86_64-pkg-config mingw-w64-x86_64-fltk git make bison python&lt;br /&gt;
&lt;br /&gt;
Mac&lt;br /&gt;
aucun mac pour les tests mais sa doit fonctionner correctement &lt;br /&gt;
&lt;br /&gt;
Mise a jour : &lt;br /&gt;
une fois l'ordinateur configurer on compiler et essayer soit le simulateur soit envoyer le code sur la calculatrice (sachant que le simulateur ne simule pas la led et d'autre fonction de la calculatrice)&lt;br /&gt;
Pour compiler le code vers la calculatrice&lt;br /&gt;
 make clean&lt;br /&gt;
 make&lt;br /&gt;
 make epsilon_flash&lt;br /&gt;
Pour compiler le code pour le simulateur&lt;br /&gt;
 make PLATFORM=simulator clean&lt;br /&gt;
 make PLATFORM=simulator&lt;br /&gt;
sachant que le clean et très important on ne peux pas exporter un code qui a était a but du simulateur &lt;br /&gt;
&lt;br /&gt;
Pour exécuter le simulateur &lt;br /&gt;
 ./epsilon.elf&lt;br /&gt;
&lt;br /&gt;
'''Build 1''' désactivation du mode examen &lt;br /&gt;
&lt;br /&gt;
Le mode examen et obligatoire pour tout les calculatrice programmable a partir de la rentrée 2018  le but de se mode et de bloquer l'accès au programme qui on était dejai enregistré dans la calculatrice et de l'indiquer pour aider les surveillant a verifier que le mode et bien actif.&lt;br /&gt;
&lt;br /&gt;
Pour se faire Numwork a choisir d'appliquer 3 action en activant le mode examen &lt;br /&gt;
&lt;br /&gt;
- ajout d'une icone examen dans le menu &lt;br /&gt;
&lt;br /&gt;
- clignotement d'une led en rouge &lt;br /&gt;
&lt;br /&gt;
- effacement des programme python (et non dés-affichage des programme comme le font certain concurrent)&lt;br /&gt;
&lt;br /&gt;
Pour sortir du mode d'examen il suffit soit de reset sa calculatrice ou d'alimenter la calculatrice &lt;br /&gt;
&lt;br /&gt;
Cette dernier fonction et vraiment contraignante même pour une utilisation normal, une mauvaise manipulation et les programmes réaliser s'envole &lt;br /&gt;
&lt;br /&gt;
Pour que la supercherie que le mode examen aie était truquer les indicateur visuel doivent rester il faut juste modifier la dernier fonction&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
Ayant avancée sur la partie software et compris un partie du code je me lance sur la liste des materiel requis pour réaliser un clone.&lt;br /&gt;
tout les composant sont disponible dans le commerce sauf l'ecran qui a réaliser sur mesure pour numwork &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Connecteur_ecran.png]]&lt;br /&gt;
&lt;br /&gt;
On peux voire que la schème donnée par numwork qu'il utiliser des fonction particulier du controleur qui sont: &lt;br /&gt;
&lt;br /&gt;
-un bus de donnée de 16 bits &lt;br /&gt;
&lt;br /&gt;
-4 led de retroéclairage&lt;br /&gt;
&lt;br /&gt;
-Te : Tearing Effect  &lt;br /&gt;
&lt;br /&gt;
-EXTC : extended comande &lt;br /&gt;
&lt;br /&gt;
connaisant les port qui sont requis je peux commencer a chercher un ecran compatible sachant qu'aprés une demande a numwork le ports EXTC n'ai pas encore utiliser et le ports TE peux être desactiver sans vraiment poser de problème&lt;br /&gt;
&lt;br /&gt;
Il et dur de trouver d'un concepteur d'ecran utilisant le controleur ST7789V pour leurs ecran il faut donc se tourner vers la chine &lt;br /&gt;
sur 8 fabricant seulment 4 réponse et sur les 4 réponse seulment 2 avec des produit correspondant a la demande &lt;br /&gt;
l'un viens de [http://www.szelida.cn szelida] et l'autre de [http://www.youritech.com Youri Technology]&lt;br /&gt;
je choisi donc le ET024QV01 [[https://projets-ima.plil.fr/mediawiki/index.php/Fichier:ET024QV01.pdf]]&lt;br /&gt;
&lt;br /&gt;
on peux voire a sa liste de PIN qui a certain PIN qui deveront être fixer a vcc ou gnd pour bloquer le mode d'affichage de la calculatrice mais il posséde les pin requis pour fonctionner avec la calculatice il et juste plus petit&lt;br /&gt;
&lt;br /&gt;
[[Fichier:RAM_numwork.png]]&lt;br /&gt;
&lt;br /&gt;
En paralléle une recherche sur le hardware montre que la place pour la RAM et dejai prévu sur le PCB il faudrait juste modifier une partie software pour qu'il soit pris en compte l'ajout de la RAM boostera fortement les capacité de cette calculatrice et pourra permet normalment de faire des petit calcul formel &lt;br /&gt;
'''&lt;br /&gt;
Partie Software :'''&lt;br /&gt;
&lt;br /&gt;
Vu que le recherche sur la ram a était effectuer je me concentre se coup si sur l'augmentation de la taille alouer a python en prévision de l'augmentation qui serra fait dans le futur !&lt;br /&gt;
&lt;br /&gt;
De base python dispose de 16Kb de mémoire alouer pour fonctionner en peux le pousser a aller jusqu'a 128Kb sans augmentation matériel mais du a l'achirecture de la mémoire du procésseur une fois qu'on dépace les 64 Kb le temps de traitement deviens long tellement que les premier fois j'ai penser la calculatrice totalment planter !&lt;br /&gt;
&lt;br /&gt;
Si on essaye d'alouer plus que 128Kb de mémoire a python la calculatrice bloque l'action et empêche d'ouvrire la console , il existe une petit sécuriter pour éviter de vraiment planter la calculatrice &lt;br /&gt;
&lt;br /&gt;
cette modification permet d'avancer l'hypothése que le système epilson prend 128kb dans la mémoire vive actuel&lt;br /&gt;
&lt;br /&gt;
Une autre modification mineur a était réaliser pour modifier la version de la numwork il n'ai possible que de rentrée un numéro de version ayant 7 char chose intéressant le site de numwork affiche bien notre version modifier &lt;br /&gt;
[[Fichier:Version.png]]&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
Je commence cette semaine par étudier l'utiliter du port TearingEffect et ExtendedCommand on debute par tout commenter pour voir l'effet sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:TE exc.png]]&lt;br /&gt;
(d'autre ligne on était commenter)&lt;br /&gt;
&lt;br /&gt;
je charge donc cette modification dans la calculatrice pour voire le résultat grace a la fonction graphique je charge des fonction assez lourde graphiquement pour voire les changement ( un fonction de base comme f(x)=x n'ai aucun bug graphique)&lt;br /&gt;
&lt;br /&gt;
je test donc tan(x²⁴) et sin(x⁴)&lt;br /&gt;
&lt;br /&gt;
(pour les images de cette partie il n'aie pas possible d'utiliser le simulateur)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Original.png]]&lt;br /&gt;
&lt;br /&gt;
en effectuant quel que déplacement sur la courbe on obtiens des léger bug graphique comme celui la ,ou seulment un petit portion disparaît par a coup&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit bug.png]]&lt;br /&gt;
&lt;br /&gt;
en changent de fenêtre l'as on obtient des bug graphique plus important &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Gros bug.png]]&lt;br /&gt;
&lt;br /&gt;
même si les bug graphique sont présent il ne sont pas gênant car :&lt;br /&gt;
&lt;br /&gt;
- sur des fonctions de base il ne sont pas présent donc pas contraignant pour un étudiant au collège/lycéen &lt;br /&gt;
&lt;br /&gt;
- sur des fonction avancer les bug ne dure quel que seconde et ne sont donc pas gênant &lt;br /&gt;
&lt;br /&gt;
il pourrai donc poser problème sur des fonction plus graphique et dynamique&lt;br /&gt;
&lt;br /&gt;
En cherchant sur internet on peux découvrire un mode de test on y accédes viens le menus paramètres -&amp;gt; A propos on se place sur FCC ID puis on appuis sur la touche 6 on valide et nous voila dans le mode de test &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test usine.png]] [[Fichier:Test bouton.png]]&lt;br /&gt;
&lt;br /&gt;
sur simulateur on ne peux pas dépasser le test bouton car le bouton home n'est pas accessible via le clavier sinon il comporte en plus d'un test ecran pours les couleur primaire , test de led et de l'affichage d'un code (serie) de la calculatrice&lt;br /&gt;
&lt;br /&gt;
Pour rajouter du calcul formel 2 option s'offre a moi crée un application dédier a sa ou l'ajouter a la fonction de math dejai existant la 2 éme option et étudier en se moment &lt;br /&gt;
&lt;br /&gt;
en lisant le code on comprent certain chose : il font des arrondis pour éviter les erreur de la librairie qui peux renvoyer 4^-17&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
Cette semaine je réalise le nouveaux schéma électronique &lt;br /&gt;
&lt;br /&gt;
tout les fonction de base se répéter sans modification (pour le moment) je capable le nouveaux comme afficher sur la datasheet de l’écran (en laissant le TE et EXTC déconnecter) &lt;br /&gt;
&lt;br /&gt;
[[Fichier:NEW ECRAN.png]]&lt;br /&gt;
&lt;br /&gt;
fessant un version beta test je laisse quand même un emplacement pour que la calculatrice soit compatible avec les ancien ecran qui permettrais de valider le fonctionnement de correct de l'ecran et de la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Ancien ecran.png]]&lt;br /&gt;
&lt;br /&gt;
en réalisant le pcd de la &amp;quot;nouvelle&amp;quot; calculatrice je remarque que faire un adaptateur pour que les nouveaux ecran puisse être tester sur les calculatrice de base (qui validerai leurs fonctionnement )&lt;br /&gt;
&lt;br /&gt;
Etude du clavier Numwork&lt;br /&gt;
&lt;br /&gt;
Refaire le clavier de la numwork comprend refaire aussi sont clavier qui actuellement composer comme se si &lt;br /&gt;
&lt;br /&gt;
Une premier partie électrique&lt;br /&gt;
 &lt;br /&gt;
[[Fichier:C elec.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une Seconde partie de silicone et de carbone  qui assure le contact &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C sili.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une dernier partie de touche en plastique &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C plastique.jpg]]&lt;br /&gt;
&lt;br /&gt;
en regardant la doc technique de numwork on remarque que le clavier et un clavier matrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Num matrice.png]]&lt;br /&gt;
&lt;br /&gt;
en fessant quel que recherche sur la création de clavier matrice on remarque une fonction que numwork n'ai pas pris en compte la fonction antighosting (anti touche fantôme )&lt;br /&gt;
(source [https://bepo.fr/wiki/Atelier_referencestechniques])&lt;br /&gt;
&lt;br /&gt;
la conception de la croix directionnel fait qu'on ne peux pas appuyer sur 2 touche en même temps ,en démontant la calculatrice et en appuyant sur 2 des touche cela n'as aucun influence donc la croix peux être remplacer par un D-pad&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
du au nombre croissant d'étudiant dans la filière SC une matinée a était consacrée a l'installation d'ordinateur pour la réalisation du tp ASR&lt;br /&gt;
&lt;br /&gt;
Etude WebUSB DFU&lt;br /&gt;
&lt;br /&gt;
Numwork se sert de se petit addon disponible sur les navigateur web (seulement google chrome pour le moment ) &lt;br /&gt;
&lt;br /&gt;
La prise en main du petit script de base et simple et fonctionnel j'ai pu lancer la page d'un autre ordinateur &lt;br /&gt;
&lt;br /&gt;
la réalisation d'un page comme https://zardam.github.io/webnofrendo/ pourrai être envisager pour héberger différente version modifier pour qu'un élève puisse changer de version au besoin du prof facilement sans devoir utiliser tout les fonction de compile etc &lt;br /&gt;
&lt;br /&gt;
Sur le script de base on peux aussi récupéré les version firmware des calculatrice &lt;br /&gt;
&lt;br /&gt;
Mais vu certain des version crée a se jour par m'as part la diffusion a grande échelle (un site web visible depuis n'importe quel pc ) poserai quel que problème (évitons de simplifier la tache des tricheur )&lt;br /&gt;
&lt;br /&gt;
Création d'un boitier et impression du modèle l'original &lt;br /&gt;
&lt;br /&gt;
Numwork propose un modèle pour réaliser leurs calculatrice en moulage plastique mais le modèle et le même pour réaliser une impression 3D &lt;br /&gt;
Dans une optic de democratiser le project au plus grand nombre et baisser les coûts de fabrication j'ai réaliser un modèle réalisable a la découpeuse laser&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=60591</id>
		<title>IMA5 2018/2019 P28</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=60591"/>
				<updated>2018-10-08T13:29:10Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Semaine 5 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Construire un clone de la calculatrice open-source NumWorks. Effectuer quelques modifications sur le code source et sur le hardware.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
Il y a plusieur Axes sur le projet&lt;br /&gt;
en premier temps sur une calculatrice officiel&lt;br /&gt;
Logiciel : &lt;br /&gt;
&lt;br /&gt;
Préambule&lt;br /&gt;
- compilation du firmware sur linux / windows &lt;br /&gt;
- mettre a jour un calculatrice&lt;br /&gt;
- compréhension du code dans sa généraliter &lt;br /&gt;
&lt;br /&gt;
Réquis&lt;br /&gt;
- Modification du mode examen pour garder les programme &lt;br /&gt;
- Modification du calculateur pour rajouter des fonction&lt;br /&gt;
- Ajout de memoire a python ( 13 ko disponnible)&lt;br /&gt;
&lt;br /&gt;
Hardware &lt;br /&gt;
&lt;br /&gt;
- Rajout de memoire vive (seulement 256kb) &lt;br /&gt;
- Recherche ecran compatible &lt;br /&gt;
&lt;br /&gt;
en un second temps modifier la calculatrice en rajoutant des fonction non utiliser &lt;br /&gt;
comme lecture de carte sd et utilisation des entrée sortie&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
Pour éviter de me retrouver avec une seul version qui a tout les modification je travail par petit segment qui seront appeler buildx (x étant un chiffre croissant)&lt;br /&gt;
les petit modification pourront comme sa ajouter dans une version futur et des modification juger non pertinent n'impacterons pas sur le peux de place qui a en mémoire flash&lt;br /&gt;
&lt;br /&gt;
Installation : &lt;br /&gt;
&lt;br /&gt;
[https://www.numworks.com/resources/engineering/software/sdk/ source]&lt;br /&gt;
&lt;br /&gt;
Linux &lt;br /&gt;
&lt;br /&gt;
Partant d'un linux vierge pourvoir installer l'environnent sdk pour qu'on puisse mettre a jour et modifier la numwork il faut quel que ressource&lt;br /&gt;
seront nécessaire pour compiler&lt;br /&gt;
 make gcc g++ &lt;br /&gt;
utiliser par &amp;quot;os&amp;quot; de numwork&lt;br /&gt;
 bison build-essential dfu-util flex gcc-arm-none-eabi libfltk1.3-dev libfreetype6-dev libpng12-dev&lt;br /&gt;
une fois tout sa installer linux et enfin prés a compiler et envoyer le code sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Windows&lt;br /&gt;
&lt;br /&gt;
Cette fois n'ayant pas de console il faut l'installer Numwork nous propose Msys2 une fois installer comme sur linux il faut installer pas mal de ressource &lt;br /&gt;
 pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-freetype mingw-w64-x86_64-pkg-config mingw-w64-x86_64-fltk git make bison python&lt;br /&gt;
&lt;br /&gt;
Mac&lt;br /&gt;
aucun mac pour les tests mais sa doit fonctionner correctement &lt;br /&gt;
&lt;br /&gt;
Mise a jour : &lt;br /&gt;
une fois l'ordinateur configurer on compiler et essayer soit le simulateur soit envoyer le code sur la calculatrice (sachant que le simulateur ne simule pas la led et d'autre fonction de la calculatrice)&lt;br /&gt;
Pour compiler le code vers la calculatrice&lt;br /&gt;
 make clean&lt;br /&gt;
 make&lt;br /&gt;
 make epsilon_flash&lt;br /&gt;
Pour compiler le code pour le simulateur&lt;br /&gt;
 make PLATFORM=simulator clean&lt;br /&gt;
 make PLATFORM=simulator&lt;br /&gt;
sachant que le clean et très important on ne peux pas exporter un code qui a était a but du simulateur &lt;br /&gt;
&lt;br /&gt;
Pour exécuter le simulateur &lt;br /&gt;
 ./epsilon.elf&lt;br /&gt;
&lt;br /&gt;
'''Build 1''' désactivation du mode examen &lt;br /&gt;
&lt;br /&gt;
Le mode examen et obligatoire pour tout les calculatrice programmable a partir de la rentrée 2018  le but de se mode et de bloquer l'accès au programme qui on était dejai enregistré dans la calculatrice et de l'indiquer pour aider les surveillant a verifier que le mode et bien actif.&lt;br /&gt;
&lt;br /&gt;
Pour se faire Numwork a choisir d'appliquer 3 action en activant le mode examen &lt;br /&gt;
&lt;br /&gt;
- ajout d'une icone examen dans le menu &lt;br /&gt;
&lt;br /&gt;
- clignotement d'une led en rouge &lt;br /&gt;
&lt;br /&gt;
- effacement des programme python (et non dés-affichage des programme comme le font certain concurrent)&lt;br /&gt;
&lt;br /&gt;
Pour sortir du mode d'examen il suffit soit de reset sa calculatrice ou d'alimenter la calculatrice &lt;br /&gt;
&lt;br /&gt;
Cette dernier fonction et vraiment contraignante même pour une utilisation normal, une mauvaise manipulation et les programmes réaliser s'envole &lt;br /&gt;
&lt;br /&gt;
Pour que la supercherie que le mode examen aie était truquer les indicateur visuel doivent rester il faut juste modifier la dernier fonction&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
Ayant avancée sur la partie software et compris un partie du code je me lance sur la liste des materiel requis pour réaliser un clone.&lt;br /&gt;
tout les composant sont disponible dans le commerce sauf l'ecran qui a réaliser sur mesure pour numwork &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Connecteur_ecran.png]]&lt;br /&gt;
&lt;br /&gt;
On peux voire que la schème donnée par numwork qu'il utiliser des fonction particulier du controleur qui sont: &lt;br /&gt;
&lt;br /&gt;
-un bus de donnée de 16 bits &lt;br /&gt;
&lt;br /&gt;
-4 led de retroéclairage&lt;br /&gt;
&lt;br /&gt;
-Te : Tearing Effect  &lt;br /&gt;
&lt;br /&gt;
-EXTC : extended comande &lt;br /&gt;
&lt;br /&gt;
connaisant les port qui sont requis je peux commencer a chercher un ecran compatible sachant qu'aprés une demande a numwork le ports EXTC n'ai pas encore utiliser et le ports TE peux être desactiver sans vraiment poser de problème&lt;br /&gt;
&lt;br /&gt;
Il et dur de trouver d'un concepteur d'ecran utilisant le controleur ST7789V pour leurs ecran il faut donc se tourner vers la chine &lt;br /&gt;
sur 8 fabricant seulment 4 réponse et sur les 4 réponse seulment 2 avec des produit correspondant a la demande &lt;br /&gt;
l'un viens de [http://www.szelida.cn szelida] et l'autre de [http://www.youritech.com Youri Technology]&lt;br /&gt;
je choisi donc le ET024QV01 [[https://projets-ima.plil.fr/mediawiki/index.php/Fichier:ET024QV01.pdf]]&lt;br /&gt;
&lt;br /&gt;
on peux voire a sa liste de PIN qui a certain PIN qui deveront être fixer a vcc ou gnd pour bloquer le mode d'affichage de la calculatrice mais il posséde les pin requis pour fonctionner avec la calculatice il et juste plus petit&lt;br /&gt;
&lt;br /&gt;
[[Fichier:RAM_numwork.png]]&lt;br /&gt;
&lt;br /&gt;
En paralléle une recherche sur le hardware montre que la place pour la RAM et dejai prévu sur le PCB il faudrait juste modifier une partie software pour qu'il soit pris en compte l'ajout de la RAM boostera fortement les capacité de cette calculatrice et pourra permet normalment de faire des petit calcul formel &lt;br /&gt;
'''&lt;br /&gt;
Partie Software :'''&lt;br /&gt;
&lt;br /&gt;
Vu que le recherche sur la ram a était effectuer je me concentre se coup si sur l'augmentation de la taille alouer a python en prévision de l'augmentation qui serra fait dans le futur !&lt;br /&gt;
&lt;br /&gt;
De base python dispose de 16Kb de mémoire alouer pour fonctionner en peux le pousser a aller jusqu'a 128Kb sans augmentation matériel mais du a l'achirecture de la mémoire du procésseur une fois qu'on dépace les 64 Kb le temps de traitement deviens long tellement que les premier fois j'ai penser la calculatrice totalment planter !&lt;br /&gt;
&lt;br /&gt;
Si on essaye d'alouer plus que 128Kb de mémoire a python la calculatrice bloque l'action et empêche d'ouvrire la console , il existe une petit sécuriter pour éviter de vraiment planter la calculatrice &lt;br /&gt;
&lt;br /&gt;
cette modification permet d'avancer l'hypothése que le système epilson prend 128kb dans la mémoire vive actuel&lt;br /&gt;
&lt;br /&gt;
Une autre modification mineur a était réaliser pour modifier la version de la numwork il n'ai possible que de rentrée un numéro de version ayant 7 char chose intéressant le site de numwork affiche bien notre version modifier &lt;br /&gt;
[[Fichier:Version.png]]&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
Je commence cette semaine par étudier l'utiliter du port TearingEffect et ExtendedCommand on debute par tout commenter pour voir l'effet sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:TE exc.png]]&lt;br /&gt;
(d'autre ligne on était commenter)&lt;br /&gt;
&lt;br /&gt;
je charge donc cette modification dans la calculatrice pour voire le résultat grace a la fonction graphique je charge des fonction assez lourde graphiquement pour voire les changement ( un fonction de base comme f(x)=x n'ai aucun bug graphique)&lt;br /&gt;
&lt;br /&gt;
je test donc tan(x²⁴) et sin(x⁴)&lt;br /&gt;
&lt;br /&gt;
(pour les images de cette partie il n'aie pas possible d'utiliser le simulateur)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Original.png]]&lt;br /&gt;
&lt;br /&gt;
en effectuant quel que déplacement sur la courbe on obtiens des léger bug graphique comme celui la ,ou seulment un petit portion disparaît par a coup&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit bug.png]]&lt;br /&gt;
&lt;br /&gt;
en changent de fenêtre l'as on obtient des bug graphique plus important &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Gros bug.png]]&lt;br /&gt;
&lt;br /&gt;
même si les bug graphique sont présent il ne sont pas gênant car :&lt;br /&gt;
&lt;br /&gt;
- sur des fonctions de base il ne sont pas présent donc pas contraignant pour un étudiant au collège/lycéen &lt;br /&gt;
&lt;br /&gt;
- sur des fonction avancer les bug ne dure quel que seconde et ne sont donc pas gênant &lt;br /&gt;
&lt;br /&gt;
il pourrai donc poser problème sur des fonction plus graphique et dynamique&lt;br /&gt;
&lt;br /&gt;
En cherchant sur internet on peux découvrire un mode de test on y accédes viens le menus paramètres -&amp;gt; A propos on se place sur FCC ID puis on appuis sur la touche 6 on valide et nous voila dans le mode de test &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test usine.png]] [[Fichier:Test bouton.png]]&lt;br /&gt;
&lt;br /&gt;
sur simulateur on ne peux pas dépasser le test bouton car le bouton home n'est pas accessible via le clavier sinon il comporte en plus d'un test ecran pours les couleur primaire , test de led et de l'affichage d'un code (serie) de la calculatrice&lt;br /&gt;
&lt;br /&gt;
Pour rajouter du calcul formel 2 option s'offre a moi crée un application dédier a sa ou l'ajouter a la fonction de math dejai existant la 2 éme option et étudier en se moment &lt;br /&gt;
&lt;br /&gt;
en lisant le code on comprent certain chose : il font des arrondis pour éviter les erreur de la librairie qui peux renvoyer 4^-17&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
Cette semaine je réalise le nouveaux schéma électronique &lt;br /&gt;
&lt;br /&gt;
tout les fonction de base se répéter sans modification (pour le moment) je capable le nouveaux comme afficher sur la datasheet de l’écran (en laissant le TE et EXTC déconnecter) &lt;br /&gt;
&lt;br /&gt;
[[Fichier:NEW ECRAN.png]]&lt;br /&gt;
&lt;br /&gt;
fessant un version beta test je laisse quand même un emplacement pour que la calculatrice soit compatible avec les ancien ecran qui permettrais de valider le fonctionnement de correct de l'ecran et de la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Ancien ecran.png]]&lt;br /&gt;
&lt;br /&gt;
en réalisant le pcd de la &amp;quot;nouvelle&amp;quot; calculatrice je remarque que faire un adaptateur pour que les nouveaux ecran puisse être tester sur les calculatrice de base (qui validerai leurs fonctionnement )&lt;br /&gt;
&lt;br /&gt;
Etude du clavier Numwork&lt;br /&gt;
&lt;br /&gt;
Refaire le clavier de la numwork comprend refaire aussi sont clavier qui actuellement composer comme se si &lt;br /&gt;
&lt;br /&gt;
Une premier partie électrique&lt;br /&gt;
 &lt;br /&gt;
[[Fichier:C elec.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une Seconde partie de silicone et de carbone  qui assure le contact &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C sili.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une dernier partie de touche en plastique &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C plastique.jpg]]&lt;br /&gt;
&lt;br /&gt;
en regardant la doc technique de numwork on remarque que le clavier et un clavier matrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Num matrice.png]]&lt;br /&gt;
&lt;br /&gt;
en fessant quel que recherche sur la création de clavier matrice on remarque une fonction que numwork n'ai pas pris en compte la fonction antighosting (anti touche fantôme )&lt;br /&gt;
(source [https://bepo.fr/wiki/Atelier_referencestechniques])&lt;br /&gt;
&lt;br /&gt;
la conception de la croix directionnel fait qu'on ne peux pas appuyer sur 2 touche en même temps ,en démontant la calculatrice et en appuyant sur 2 des touche cela n'as aucun influence donc la croix peux être remplacer par un D-pad&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
du au nombre croissant d'étudiant dans la filière SC une matinée a était consacrée a l'installation d'ordinateur pour la réalisation du tp ASR&lt;br /&gt;
&lt;br /&gt;
Etude WebUSB DFU&lt;br /&gt;
&lt;br /&gt;
Numwork se sert de se petit addon disponible sur les navigateur web (seulement google chrome pour le moment ) &lt;br /&gt;
&lt;br /&gt;
La prise en main du petit script de base et simple et fonctionnel j'ai pu lancer la page d'un autre ordinateur &lt;br /&gt;
&lt;br /&gt;
la réalisation d'un page comme https://zardam.github.io/webnofrendo/ pourrai être envisager pour héberger différente version modifier pour qu'un élève puisse changer de version au besoin du prof facilement sans devoir utiliser tout les fonction de compile etc &lt;br /&gt;
&lt;br /&gt;
Sur le script de base on peux aussi récupéré les version firmware des calculatrice &lt;br /&gt;
&lt;br /&gt;
Mais vu certain des version crée a se jour par m'as part la diffusion a grande échelle (un site web visible depuis n'importe quel pc ) poserai quel que problème (évitons de simplifier la tache des tricheur )&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=60590</id>
		<title>IMA5 2018/2019 P28</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=60590"/>
				<updated>2018-10-08T12:42:24Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Semaine 5 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Construire un clone de la calculatrice open-source NumWorks. Effectuer quelques modifications sur le code source et sur le hardware.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
Il y a plusieur Axes sur le projet&lt;br /&gt;
en premier temps sur une calculatrice officiel&lt;br /&gt;
Logiciel : &lt;br /&gt;
&lt;br /&gt;
Préambule&lt;br /&gt;
- compilation du firmware sur linux / windows &lt;br /&gt;
- mettre a jour un calculatrice&lt;br /&gt;
- compréhension du code dans sa généraliter &lt;br /&gt;
&lt;br /&gt;
Réquis&lt;br /&gt;
- Modification du mode examen pour garder les programme &lt;br /&gt;
- Modification du calculateur pour rajouter des fonction&lt;br /&gt;
- Ajout de memoire a python ( 13 ko disponnible)&lt;br /&gt;
&lt;br /&gt;
Hardware &lt;br /&gt;
&lt;br /&gt;
- Rajout de memoire vive (seulement 256kb) &lt;br /&gt;
- Recherche ecran compatible &lt;br /&gt;
&lt;br /&gt;
en un second temps modifier la calculatrice en rajoutant des fonction non utiliser &lt;br /&gt;
comme lecture de carte sd et utilisation des entrée sortie&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
Pour éviter de me retrouver avec une seul version qui a tout les modification je travail par petit segment qui seront appeler buildx (x étant un chiffre croissant)&lt;br /&gt;
les petit modification pourront comme sa ajouter dans une version futur et des modification juger non pertinent n'impacterons pas sur le peux de place qui a en mémoire flash&lt;br /&gt;
&lt;br /&gt;
Installation : &lt;br /&gt;
&lt;br /&gt;
[https://www.numworks.com/resources/engineering/software/sdk/ source]&lt;br /&gt;
&lt;br /&gt;
Linux &lt;br /&gt;
&lt;br /&gt;
Partant d'un linux vierge pourvoir installer l'environnent sdk pour qu'on puisse mettre a jour et modifier la numwork il faut quel que ressource&lt;br /&gt;
seront nécessaire pour compiler&lt;br /&gt;
 make gcc g++ &lt;br /&gt;
utiliser par &amp;quot;os&amp;quot; de numwork&lt;br /&gt;
 bison build-essential dfu-util flex gcc-arm-none-eabi libfltk1.3-dev libfreetype6-dev libpng12-dev&lt;br /&gt;
une fois tout sa installer linux et enfin prés a compiler et envoyer le code sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Windows&lt;br /&gt;
&lt;br /&gt;
Cette fois n'ayant pas de console il faut l'installer Numwork nous propose Msys2 une fois installer comme sur linux il faut installer pas mal de ressource &lt;br /&gt;
 pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-freetype mingw-w64-x86_64-pkg-config mingw-w64-x86_64-fltk git make bison python&lt;br /&gt;
&lt;br /&gt;
Mac&lt;br /&gt;
aucun mac pour les tests mais sa doit fonctionner correctement &lt;br /&gt;
&lt;br /&gt;
Mise a jour : &lt;br /&gt;
une fois l'ordinateur configurer on compiler et essayer soit le simulateur soit envoyer le code sur la calculatrice (sachant que le simulateur ne simule pas la led et d'autre fonction de la calculatrice)&lt;br /&gt;
Pour compiler le code vers la calculatrice&lt;br /&gt;
 make clean&lt;br /&gt;
 make&lt;br /&gt;
 make epsilon_flash&lt;br /&gt;
Pour compiler le code pour le simulateur&lt;br /&gt;
 make PLATFORM=simulator clean&lt;br /&gt;
 make PLATFORM=simulator&lt;br /&gt;
sachant que le clean et très important on ne peux pas exporter un code qui a était a but du simulateur &lt;br /&gt;
&lt;br /&gt;
Pour exécuter le simulateur &lt;br /&gt;
 ./epsilon.elf&lt;br /&gt;
&lt;br /&gt;
'''Build 1''' désactivation du mode examen &lt;br /&gt;
&lt;br /&gt;
Le mode examen et obligatoire pour tout les calculatrice programmable a partir de la rentrée 2018  le but de se mode et de bloquer l'accès au programme qui on était dejai enregistré dans la calculatrice et de l'indiquer pour aider les surveillant a verifier que le mode et bien actif.&lt;br /&gt;
&lt;br /&gt;
Pour se faire Numwork a choisir d'appliquer 3 action en activant le mode examen &lt;br /&gt;
&lt;br /&gt;
- ajout d'une icone examen dans le menu &lt;br /&gt;
&lt;br /&gt;
- clignotement d'une led en rouge &lt;br /&gt;
&lt;br /&gt;
- effacement des programme python (et non dés-affichage des programme comme le font certain concurrent)&lt;br /&gt;
&lt;br /&gt;
Pour sortir du mode d'examen il suffit soit de reset sa calculatrice ou d'alimenter la calculatrice &lt;br /&gt;
&lt;br /&gt;
Cette dernier fonction et vraiment contraignante même pour une utilisation normal, une mauvaise manipulation et les programmes réaliser s'envole &lt;br /&gt;
&lt;br /&gt;
Pour que la supercherie que le mode examen aie était truquer les indicateur visuel doivent rester il faut juste modifier la dernier fonction&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
Ayant avancée sur la partie software et compris un partie du code je me lance sur la liste des materiel requis pour réaliser un clone.&lt;br /&gt;
tout les composant sont disponible dans le commerce sauf l'ecran qui a réaliser sur mesure pour numwork &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Connecteur_ecran.png]]&lt;br /&gt;
&lt;br /&gt;
On peux voire que la schème donnée par numwork qu'il utiliser des fonction particulier du controleur qui sont: &lt;br /&gt;
&lt;br /&gt;
-un bus de donnée de 16 bits &lt;br /&gt;
&lt;br /&gt;
-4 led de retroéclairage&lt;br /&gt;
&lt;br /&gt;
-Te : Tearing Effect  &lt;br /&gt;
&lt;br /&gt;
-EXTC : extended comande &lt;br /&gt;
&lt;br /&gt;
connaisant les port qui sont requis je peux commencer a chercher un ecran compatible sachant qu'aprés une demande a numwork le ports EXTC n'ai pas encore utiliser et le ports TE peux être desactiver sans vraiment poser de problème&lt;br /&gt;
&lt;br /&gt;
Il et dur de trouver d'un concepteur d'ecran utilisant le controleur ST7789V pour leurs ecran il faut donc se tourner vers la chine &lt;br /&gt;
sur 8 fabricant seulment 4 réponse et sur les 4 réponse seulment 2 avec des produit correspondant a la demande &lt;br /&gt;
l'un viens de [http://www.szelida.cn szelida] et l'autre de [http://www.youritech.com Youri Technology]&lt;br /&gt;
je choisi donc le ET024QV01 [[https://projets-ima.plil.fr/mediawiki/index.php/Fichier:ET024QV01.pdf]]&lt;br /&gt;
&lt;br /&gt;
on peux voire a sa liste de PIN qui a certain PIN qui deveront être fixer a vcc ou gnd pour bloquer le mode d'affichage de la calculatrice mais il posséde les pin requis pour fonctionner avec la calculatice il et juste plus petit&lt;br /&gt;
&lt;br /&gt;
[[Fichier:RAM_numwork.png]]&lt;br /&gt;
&lt;br /&gt;
En paralléle une recherche sur le hardware montre que la place pour la RAM et dejai prévu sur le PCB il faudrait juste modifier une partie software pour qu'il soit pris en compte l'ajout de la RAM boostera fortement les capacité de cette calculatrice et pourra permet normalment de faire des petit calcul formel &lt;br /&gt;
'''&lt;br /&gt;
Partie Software :'''&lt;br /&gt;
&lt;br /&gt;
Vu que le recherche sur la ram a était effectuer je me concentre se coup si sur l'augmentation de la taille alouer a python en prévision de l'augmentation qui serra fait dans le futur !&lt;br /&gt;
&lt;br /&gt;
De base python dispose de 16Kb de mémoire alouer pour fonctionner en peux le pousser a aller jusqu'a 128Kb sans augmentation matériel mais du a l'achirecture de la mémoire du procésseur une fois qu'on dépace les 64 Kb le temps de traitement deviens long tellement que les premier fois j'ai penser la calculatrice totalment planter !&lt;br /&gt;
&lt;br /&gt;
Si on essaye d'alouer plus que 128Kb de mémoire a python la calculatrice bloque l'action et empêche d'ouvrire la console , il existe une petit sécuriter pour éviter de vraiment planter la calculatrice &lt;br /&gt;
&lt;br /&gt;
cette modification permet d'avancer l'hypothése que le système epilson prend 128kb dans la mémoire vive actuel&lt;br /&gt;
&lt;br /&gt;
Une autre modification mineur a était réaliser pour modifier la version de la numwork il n'ai possible que de rentrée un numéro de version ayant 7 char chose intéressant le site de numwork affiche bien notre version modifier &lt;br /&gt;
[[Fichier:Version.png]]&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
Je commence cette semaine par étudier l'utiliter du port TearingEffect et ExtendedCommand on debute par tout commenter pour voir l'effet sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:TE exc.png]]&lt;br /&gt;
(d'autre ligne on était commenter)&lt;br /&gt;
&lt;br /&gt;
je charge donc cette modification dans la calculatrice pour voire le résultat grace a la fonction graphique je charge des fonction assez lourde graphiquement pour voire les changement ( un fonction de base comme f(x)=x n'ai aucun bug graphique)&lt;br /&gt;
&lt;br /&gt;
je test donc tan(x²⁴) et sin(x⁴)&lt;br /&gt;
&lt;br /&gt;
(pour les images de cette partie il n'aie pas possible d'utiliser le simulateur)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Original.png]]&lt;br /&gt;
&lt;br /&gt;
en effectuant quel que déplacement sur la courbe on obtiens des léger bug graphique comme celui la ,ou seulment un petit portion disparaît par a coup&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit bug.png]]&lt;br /&gt;
&lt;br /&gt;
en changent de fenêtre l'as on obtient des bug graphique plus important &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Gros bug.png]]&lt;br /&gt;
&lt;br /&gt;
même si les bug graphique sont présent il ne sont pas gênant car :&lt;br /&gt;
&lt;br /&gt;
- sur des fonctions de base il ne sont pas présent donc pas contraignant pour un étudiant au collège/lycéen &lt;br /&gt;
&lt;br /&gt;
- sur des fonction avancer les bug ne dure quel que seconde et ne sont donc pas gênant &lt;br /&gt;
&lt;br /&gt;
il pourrai donc poser problème sur des fonction plus graphique et dynamique&lt;br /&gt;
&lt;br /&gt;
En cherchant sur internet on peux découvrire un mode de test on y accédes viens le menus paramètres -&amp;gt; A propos on se place sur FCC ID puis on appuis sur la touche 6 on valide et nous voila dans le mode de test &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test usine.png]] [[Fichier:Test bouton.png]]&lt;br /&gt;
&lt;br /&gt;
sur simulateur on ne peux pas dépasser le test bouton car le bouton home n'est pas accessible via le clavier sinon il comporte en plus d'un test ecran pours les couleur primaire , test de led et de l'affichage d'un code (serie) de la calculatrice&lt;br /&gt;
&lt;br /&gt;
Pour rajouter du calcul formel 2 option s'offre a moi crée un application dédier a sa ou l'ajouter a la fonction de math dejai existant la 2 éme option et étudier en se moment &lt;br /&gt;
&lt;br /&gt;
en lisant le code on comprent certain chose : il font des arrondis pour éviter les erreur de la librairie qui peux renvoyer 4^-17&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
Cette semaine je réalise le nouveaux schéma électronique &lt;br /&gt;
&lt;br /&gt;
tout les fonction de base se répéter sans modification (pour le moment) je capable le nouveaux comme afficher sur la datasheet de l’écran (en laissant le TE et EXTC déconnecter) &lt;br /&gt;
&lt;br /&gt;
[[Fichier:NEW ECRAN.png]]&lt;br /&gt;
&lt;br /&gt;
fessant un version beta test je laisse quand même un emplacement pour que la calculatrice soit compatible avec les ancien ecran qui permettrais de valider le fonctionnement de correct de l'ecran et de la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Ancien ecran.png]]&lt;br /&gt;
&lt;br /&gt;
en réalisant le pcd de la &amp;quot;nouvelle&amp;quot; calculatrice je remarque que faire un adaptateur pour que les nouveaux ecran puisse être tester sur les calculatrice de base (qui validerai leurs fonctionnement )&lt;br /&gt;
&lt;br /&gt;
Etude du clavier Numwork&lt;br /&gt;
&lt;br /&gt;
Refaire le clavier de la numwork comprend refaire aussi sont clavier qui actuellement composer comme se si &lt;br /&gt;
&lt;br /&gt;
Une premier partie électrique&lt;br /&gt;
 &lt;br /&gt;
[[Fichier:C elec.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une Seconde partie de silicone et de carbone  qui assure le contact &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C sili.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une dernier partie de touche en plastique &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C plastique.jpg]]&lt;br /&gt;
&lt;br /&gt;
en regardant la doc technique de numwork on remarque que le clavier et un clavier matrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Num matrice.png]]&lt;br /&gt;
&lt;br /&gt;
en fessant quel que recherche sur la création de clavier matrice on remarque une fonction que numwork n'ai pas pris en compte la fonction antighosting (anti touche fantôme )&lt;br /&gt;
(source [https://bepo.fr/wiki/Atelier_referencestechniques])&lt;br /&gt;
&lt;br /&gt;
la conception de la croix directionnel fait qu'on ne peux pas appuyer sur 2 touche en même temps ,en démontant la calculatrice et en appuyant sur 2 des touche cela n'as aucun influence donc la croix peux être remplacer par un D-pad&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
du au nombre croissant d'étudiant dans la filière SC une matinée a était consacrée a l'installation d'ordinateur pour la réalisation du tp ASR&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=60589</id>
		<title>IMA5 2018/2019 P28</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=60589"/>
				<updated>2018-10-08T12:39:23Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Réalisation du Projet */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Construire un clone de la calculatrice open-source NumWorks. Effectuer quelques modifications sur le code source et sur le hardware.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
Il y a plusieur Axes sur le projet&lt;br /&gt;
en premier temps sur une calculatrice officiel&lt;br /&gt;
Logiciel : &lt;br /&gt;
&lt;br /&gt;
Préambule&lt;br /&gt;
- compilation du firmware sur linux / windows &lt;br /&gt;
- mettre a jour un calculatrice&lt;br /&gt;
- compréhension du code dans sa généraliter &lt;br /&gt;
&lt;br /&gt;
Réquis&lt;br /&gt;
- Modification du mode examen pour garder les programme &lt;br /&gt;
- Modification du calculateur pour rajouter des fonction&lt;br /&gt;
- Ajout de memoire a python ( 13 ko disponnible)&lt;br /&gt;
&lt;br /&gt;
Hardware &lt;br /&gt;
&lt;br /&gt;
- Rajout de memoire vive (seulement 256kb) &lt;br /&gt;
- Recherche ecran compatible &lt;br /&gt;
&lt;br /&gt;
en un second temps modifier la calculatrice en rajoutant des fonction non utiliser &lt;br /&gt;
comme lecture de carte sd et utilisation des entrée sortie&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
Pour éviter de me retrouver avec une seul version qui a tout les modification je travail par petit segment qui seront appeler buildx (x étant un chiffre croissant)&lt;br /&gt;
les petit modification pourront comme sa ajouter dans une version futur et des modification juger non pertinent n'impacterons pas sur le peux de place qui a en mémoire flash&lt;br /&gt;
&lt;br /&gt;
Installation : &lt;br /&gt;
&lt;br /&gt;
[https://www.numworks.com/resources/engineering/software/sdk/ source]&lt;br /&gt;
&lt;br /&gt;
Linux &lt;br /&gt;
&lt;br /&gt;
Partant d'un linux vierge pourvoir installer l'environnent sdk pour qu'on puisse mettre a jour et modifier la numwork il faut quel que ressource&lt;br /&gt;
seront nécessaire pour compiler&lt;br /&gt;
 make gcc g++ &lt;br /&gt;
utiliser par &amp;quot;os&amp;quot; de numwork&lt;br /&gt;
 bison build-essential dfu-util flex gcc-arm-none-eabi libfltk1.3-dev libfreetype6-dev libpng12-dev&lt;br /&gt;
une fois tout sa installer linux et enfin prés a compiler et envoyer le code sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Windows&lt;br /&gt;
&lt;br /&gt;
Cette fois n'ayant pas de console il faut l'installer Numwork nous propose Msys2 une fois installer comme sur linux il faut installer pas mal de ressource &lt;br /&gt;
 pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-freetype mingw-w64-x86_64-pkg-config mingw-w64-x86_64-fltk git make bison python&lt;br /&gt;
&lt;br /&gt;
Mac&lt;br /&gt;
aucun mac pour les tests mais sa doit fonctionner correctement &lt;br /&gt;
&lt;br /&gt;
Mise a jour : &lt;br /&gt;
une fois l'ordinateur configurer on compiler et essayer soit le simulateur soit envoyer le code sur la calculatrice (sachant que le simulateur ne simule pas la led et d'autre fonction de la calculatrice)&lt;br /&gt;
Pour compiler le code vers la calculatrice&lt;br /&gt;
 make clean&lt;br /&gt;
 make&lt;br /&gt;
 make epsilon_flash&lt;br /&gt;
Pour compiler le code pour le simulateur&lt;br /&gt;
 make PLATFORM=simulator clean&lt;br /&gt;
 make PLATFORM=simulator&lt;br /&gt;
sachant que le clean et très important on ne peux pas exporter un code qui a était a but du simulateur &lt;br /&gt;
&lt;br /&gt;
Pour exécuter le simulateur &lt;br /&gt;
 ./epsilon.elf&lt;br /&gt;
&lt;br /&gt;
'''Build 1''' désactivation du mode examen &lt;br /&gt;
&lt;br /&gt;
Le mode examen et obligatoire pour tout les calculatrice programmable a partir de la rentrée 2018  le but de se mode et de bloquer l'accès au programme qui on était dejai enregistré dans la calculatrice et de l'indiquer pour aider les surveillant a verifier que le mode et bien actif.&lt;br /&gt;
&lt;br /&gt;
Pour se faire Numwork a choisir d'appliquer 3 action en activant le mode examen &lt;br /&gt;
&lt;br /&gt;
- ajout d'une icone examen dans le menu &lt;br /&gt;
&lt;br /&gt;
- clignotement d'une led en rouge &lt;br /&gt;
&lt;br /&gt;
- effacement des programme python (et non dés-affichage des programme comme le font certain concurrent)&lt;br /&gt;
&lt;br /&gt;
Pour sortir du mode d'examen il suffit soit de reset sa calculatrice ou d'alimenter la calculatrice &lt;br /&gt;
&lt;br /&gt;
Cette dernier fonction et vraiment contraignante même pour une utilisation normal, une mauvaise manipulation et les programmes réaliser s'envole &lt;br /&gt;
&lt;br /&gt;
Pour que la supercherie que le mode examen aie était truquer les indicateur visuel doivent rester il faut juste modifier la dernier fonction&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
Ayant avancée sur la partie software et compris un partie du code je me lance sur la liste des materiel requis pour réaliser un clone.&lt;br /&gt;
tout les composant sont disponible dans le commerce sauf l'ecran qui a réaliser sur mesure pour numwork &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Connecteur_ecran.png]]&lt;br /&gt;
&lt;br /&gt;
On peux voire que la schème donnée par numwork qu'il utiliser des fonction particulier du controleur qui sont: &lt;br /&gt;
&lt;br /&gt;
-un bus de donnée de 16 bits &lt;br /&gt;
&lt;br /&gt;
-4 led de retroéclairage&lt;br /&gt;
&lt;br /&gt;
-Te : Tearing Effect  &lt;br /&gt;
&lt;br /&gt;
-EXTC : extended comande &lt;br /&gt;
&lt;br /&gt;
connaisant les port qui sont requis je peux commencer a chercher un ecran compatible sachant qu'aprés une demande a numwork le ports EXTC n'ai pas encore utiliser et le ports TE peux être desactiver sans vraiment poser de problème&lt;br /&gt;
&lt;br /&gt;
Il et dur de trouver d'un concepteur d'ecran utilisant le controleur ST7789V pour leurs ecran il faut donc se tourner vers la chine &lt;br /&gt;
sur 8 fabricant seulment 4 réponse et sur les 4 réponse seulment 2 avec des produit correspondant a la demande &lt;br /&gt;
l'un viens de [http://www.szelida.cn szelida] et l'autre de [http://www.youritech.com Youri Technology]&lt;br /&gt;
je choisi donc le ET024QV01 [[https://projets-ima.plil.fr/mediawiki/index.php/Fichier:ET024QV01.pdf]]&lt;br /&gt;
&lt;br /&gt;
on peux voire a sa liste de PIN qui a certain PIN qui deveront être fixer a vcc ou gnd pour bloquer le mode d'affichage de la calculatrice mais il posséde les pin requis pour fonctionner avec la calculatice il et juste plus petit&lt;br /&gt;
&lt;br /&gt;
[[Fichier:RAM_numwork.png]]&lt;br /&gt;
&lt;br /&gt;
En paralléle une recherche sur le hardware montre que la place pour la RAM et dejai prévu sur le PCB il faudrait juste modifier une partie software pour qu'il soit pris en compte l'ajout de la RAM boostera fortement les capacité de cette calculatrice et pourra permet normalment de faire des petit calcul formel &lt;br /&gt;
'''&lt;br /&gt;
Partie Software :'''&lt;br /&gt;
&lt;br /&gt;
Vu que le recherche sur la ram a était effectuer je me concentre se coup si sur l'augmentation de la taille alouer a python en prévision de l'augmentation qui serra fait dans le futur !&lt;br /&gt;
&lt;br /&gt;
De base python dispose de 16Kb de mémoire alouer pour fonctionner en peux le pousser a aller jusqu'a 128Kb sans augmentation matériel mais du a l'achirecture de la mémoire du procésseur une fois qu'on dépace les 64 Kb le temps de traitement deviens long tellement que les premier fois j'ai penser la calculatrice totalment planter !&lt;br /&gt;
&lt;br /&gt;
Si on essaye d'alouer plus que 128Kb de mémoire a python la calculatrice bloque l'action et empêche d'ouvrire la console , il existe une petit sécuriter pour éviter de vraiment planter la calculatrice &lt;br /&gt;
&lt;br /&gt;
cette modification permet d'avancer l'hypothése que le système epilson prend 128kb dans la mémoire vive actuel&lt;br /&gt;
&lt;br /&gt;
Une autre modification mineur a était réaliser pour modifier la version de la numwork il n'ai possible que de rentrée un numéro de version ayant 7 char chose intéressant le site de numwork affiche bien notre version modifier &lt;br /&gt;
[[Fichier:Version.png]]&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
Je commence cette semaine par étudier l'utiliter du port TearingEffect et ExtendedCommand on debute par tout commenter pour voir l'effet sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:TE exc.png]]&lt;br /&gt;
(d'autre ligne on était commenter)&lt;br /&gt;
&lt;br /&gt;
je charge donc cette modification dans la calculatrice pour voire le résultat grace a la fonction graphique je charge des fonction assez lourde graphiquement pour voire les changement ( un fonction de base comme f(x)=x n'ai aucun bug graphique)&lt;br /&gt;
&lt;br /&gt;
je test donc tan(x²⁴) et sin(x⁴)&lt;br /&gt;
&lt;br /&gt;
(pour les images de cette partie il n'aie pas possible d'utiliser le simulateur)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Original.png]]&lt;br /&gt;
&lt;br /&gt;
en effectuant quel que déplacement sur la courbe on obtiens des léger bug graphique comme celui la ,ou seulment un petit portion disparaît par a coup&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit bug.png]]&lt;br /&gt;
&lt;br /&gt;
en changent de fenêtre l'as on obtient des bug graphique plus important &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Gros bug.png]]&lt;br /&gt;
&lt;br /&gt;
même si les bug graphique sont présent il ne sont pas gênant car :&lt;br /&gt;
&lt;br /&gt;
- sur des fonctions de base il ne sont pas présent donc pas contraignant pour un étudiant au collège/lycéen &lt;br /&gt;
&lt;br /&gt;
- sur des fonction avancer les bug ne dure quel que seconde et ne sont donc pas gênant &lt;br /&gt;
&lt;br /&gt;
il pourrai donc poser problème sur des fonction plus graphique et dynamique&lt;br /&gt;
&lt;br /&gt;
En cherchant sur internet on peux découvrire un mode de test on y accédes viens le menus paramètres -&amp;gt; A propos on se place sur FCC ID puis on appuis sur la touche 6 on valide et nous voila dans le mode de test &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test usine.png]] [[Fichier:Test bouton.png]]&lt;br /&gt;
&lt;br /&gt;
sur simulateur on ne peux pas dépasser le test bouton car le bouton home n'est pas accessible via le clavier sinon il comporte en plus d'un test ecran pours les couleur primaire , test de led et de l'affichage d'un code (serie) de la calculatrice&lt;br /&gt;
&lt;br /&gt;
Pour rajouter du calcul formel 2 option s'offre a moi crée un application dédier a sa ou l'ajouter a la fonction de math dejai existant la 2 éme option et étudier en se moment &lt;br /&gt;
&lt;br /&gt;
en lisant le code on comprent certain chose : il font des arrondis pour éviter les erreur de la librairie qui peux renvoyer 4^-17&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
Cette semaine je réalise le nouveaux schéma électronique &lt;br /&gt;
&lt;br /&gt;
tout les fonction de base se répéter sans modification (pour le moment) je capable le nouveaux comme afficher sur la datasheet de l’écran (en laissant le TE et EXTC déconnecter) &lt;br /&gt;
&lt;br /&gt;
[[Fichier:NEW ECRAN.png]]&lt;br /&gt;
&lt;br /&gt;
fessant un version beta test je laisse quand même un emplacement pour que la calculatrice soit compatible avec les ancien ecran qui permettrais de valider le fonctionnement de correct de l'ecran et de la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Ancien ecran.png]]&lt;br /&gt;
&lt;br /&gt;
en réalisant le pcd de la &amp;quot;nouvelle&amp;quot; calculatrice je remarque que faire un adaptateur pour que les nouveaux ecran puisse être tester sur les calculatrice de base (qui validerai leurs fonctionnement )&lt;br /&gt;
&lt;br /&gt;
Etude du clavier Numwork&lt;br /&gt;
&lt;br /&gt;
Refaire le clavier de la numwork comprend refaire aussi sont clavier qui actuellement composer comme se si &lt;br /&gt;
&lt;br /&gt;
Une premier partie électrique&lt;br /&gt;
 &lt;br /&gt;
[[Fichier:C elec.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une Seconde partie de silicone et de carbone  qui assure le contact &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C sili.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une dernier partie de touche en plastique &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C plastique.jpg]]&lt;br /&gt;
&lt;br /&gt;
en regardant la doc technique de numwork on remarque que le clavier et un clavier matrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Num matrice.png]]&lt;br /&gt;
&lt;br /&gt;
en fessant quel que recherche sur la création de clavier matrice on remarque une fonction que numwork n'ai pas pris en compte la fonction antighosting (anti touche fantôme )&lt;br /&gt;
(source [https://bepo.fr/wiki/Atelier_referencestechniques])&lt;br /&gt;
&lt;br /&gt;
la conception de la croix directionnel fait qu'on ne peux pas appuyer sur 2 touche en même temps ,en démontant la calculatrice et en appuyant sur 2 des touche cela n'as aucun influence donc la croix peux être remplacer par un D-pad&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=60422</id>
		<title>IMA5 2018/2019 P28</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=60422"/>
				<updated>2018-10-03T15:47:00Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Semaine 4 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Construire un clone de la calculatrice open-source NumWorks. Effectuer quelques modifications sur le code source et sur le hardware.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
Il y a plusieur Axes sur le projet&lt;br /&gt;
en premier temps sur une calculatrice officiel&lt;br /&gt;
Logiciel : &lt;br /&gt;
&lt;br /&gt;
Préambule&lt;br /&gt;
- compilation du firmware sur linux / windows &lt;br /&gt;
- mettre a jour un calculatrice&lt;br /&gt;
- compréhension du code dans sa généraliter &lt;br /&gt;
&lt;br /&gt;
Réquis&lt;br /&gt;
- Modification du mode examen pour garder les programme &lt;br /&gt;
- Modification du calculateur pour rajouter des fonction&lt;br /&gt;
- Ajout de memoire a python ( 13 ko disponnible)&lt;br /&gt;
&lt;br /&gt;
Hardware &lt;br /&gt;
&lt;br /&gt;
- Rajout de memoire vive (seulement 256kb) &lt;br /&gt;
- Recherche ecran compatible &lt;br /&gt;
&lt;br /&gt;
en un second temps modifier la calculatrice en rajoutant des fonction non utiliser &lt;br /&gt;
comme lecture de carte sd et utilisation des entrée sortie&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
Pour éviter de me retrouver avec une seul version qui a tout les modification je travail par petit segment qui seront appeler buildx (x étant un chiffre croissant)&lt;br /&gt;
les petit modification pourront comme sa ajouter dans une version futur et des modification juger non pertinent n'impacterons pas sur le peux de place qui a en mémoire flash&lt;br /&gt;
&lt;br /&gt;
Installation : &lt;br /&gt;
&lt;br /&gt;
[https://www.numworks.com/resources/engineering/software/sdk/ source]&lt;br /&gt;
&lt;br /&gt;
Linux &lt;br /&gt;
&lt;br /&gt;
Partant d'un linux vierge pourvoir installer l'environnent sdk pour qu'on puisse mettre a jour et modifier la numwork il faut quel que ressource&lt;br /&gt;
seront nécessaire pour compiler&lt;br /&gt;
 make gcc g++ &lt;br /&gt;
utiliser par &amp;quot;os&amp;quot; de numwork&lt;br /&gt;
 bison build-essential dfu-util flex gcc-arm-none-eabi libfltk1.3-dev libfreetype6-dev libpng12-dev&lt;br /&gt;
une fois tout sa installer linux et enfin prés a compiler et envoyer le code sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Windows&lt;br /&gt;
&lt;br /&gt;
Cette fois n'ayant pas de console il faut l'installer Numwork nous propose Msys2 une fois installer comme sur linux il faut installer pas mal de ressource &lt;br /&gt;
 pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-freetype mingw-w64-x86_64-pkg-config mingw-w64-x86_64-fltk git make bison python&lt;br /&gt;
&lt;br /&gt;
Mac&lt;br /&gt;
aucun mac pour les tests mais sa doit fonctionner correctement &lt;br /&gt;
&lt;br /&gt;
Mise a jour : &lt;br /&gt;
une fois l'ordinateur configurer on compiler et essayer soit le simulateur soit envoyer le code sur la calculatrice (sachant que le simulateur ne simule pas la led et d'autre fonction de la calculatrice)&lt;br /&gt;
Pour compiler le code vers la calculatrice&lt;br /&gt;
 make clean&lt;br /&gt;
 make&lt;br /&gt;
 make epsilon_flash&lt;br /&gt;
Pour compiler le code pour le simulateur&lt;br /&gt;
 make PLATFORM=simulator clean&lt;br /&gt;
 make PLATFORM=simulator&lt;br /&gt;
sachant que le clean et très important on ne peux pas exporter un code qui a était a but du simulateur &lt;br /&gt;
&lt;br /&gt;
Pour exécuter le simulateur &lt;br /&gt;
 ./epsilon.elf&lt;br /&gt;
&lt;br /&gt;
'''Build 1''' désactivation du mode examen &lt;br /&gt;
&lt;br /&gt;
Le mode examen et obligatoire pour tout les calculatrice programmable a partir de la rentrée 2018  le but de se mode et de bloquer l'accès au programme qui on était dejai enregistré dans la calculatrice et de l'indiquer pour aider les surveillant a verifier que le mode et bien actif.&lt;br /&gt;
&lt;br /&gt;
Pour se faire Numwork a choisir d'appliquer 3 action en activant le mode examen &lt;br /&gt;
&lt;br /&gt;
- ajout d'une icone examen dans le menu &lt;br /&gt;
&lt;br /&gt;
- clignotement d'une led en rouge &lt;br /&gt;
&lt;br /&gt;
- effacement des programme python (et non dés-affichage des programme comme le font certain concurrent)&lt;br /&gt;
&lt;br /&gt;
Pour sortir du mode d'examen il suffit soit de reset sa calculatrice ou d'alimenter la calculatrice &lt;br /&gt;
&lt;br /&gt;
Cette dernier fonction et vraiment contraignante même pour une utilisation normal, une mauvaise manipulation et les programmes réaliser s'envole &lt;br /&gt;
&lt;br /&gt;
Pour que la supercherie que le mode examen aie était truquer les indicateur visuel doivent rester il faut juste modifier la dernier fonction&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
Ayant avancée sur la partie software et compris un partie du code je me lance sur la liste des materiel requis pour réaliser un clone.&lt;br /&gt;
tout les composant sont disponible dans le commerce sauf l'ecran qui a réaliser sur mesure pour numwork &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Connecteur_ecran.png]]&lt;br /&gt;
&lt;br /&gt;
On peux voire que la schème donnée par numwork qu'il utiliser des fonction particulier du controleur qui sont: &lt;br /&gt;
&lt;br /&gt;
-un bus de donnée de 16 bits &lt;br /&gt;
&lt;br /&gt;
-4 led de retroéclairage&lt;br /&gt;
&lt;br /&gt;
-Te : Tearing Effect  &lt;br /&gt;
&lt;br /&gt;
-EXTC : extended comande &lt;br /&gt;
&lt;br /&gt;
connaisant les port qui sont requis je peux commencer a chercher un ecran compatible sachant qu'aprés une demande a numwork le ports EXTC n'ai pas encore utiliser et le ports TE peux être desactiver sans vraiment poser de problème&lt;br /&gt;
&lt;br /&gt;
Il et dur de trouver d'un concepteur d'ecran utilisant le controleur ST7789V pour leurs ecran il faut donc se tourner vers la chine &lt;br /&gt;
sur 8 fabricant seulment 4 réponse et sur les 4 réponse seulment 2 avec des produit correspondant a la demande &lt;br /&gt;
l'un viens de [http://www.szelida.cn szelida] et l'autre de [http://www.youritech.com Youri Technology]&lt;br /&gt;
je choisi donc le ET024QV01 [[https://projets-ima.plil.fr/mediawiki/index.php/Fichier:ET024QV01.pdf]]&lt;br /&gt;
&lt;br /&gt;
on peux voire a sa liste de PIN qui a certain PIN qui deveront être fixer a vcc ou gnd pour bloquer le mode d'affichage de la calculatrice mais il posséde les pin requis pour fonctionner avec la calculatice il et juste plus petit&lt;br /&gt;
&lt;br /&gt;
[[Fichier:RAM_numwork.png]]&lt;br /&gt;
&lt;br /&gt;
En paralléle une recherche sur le hardware montre que la place pour la RAM et dejai prévu sur le PCB il faudrait juste modifier une partie software pour qu'il soit pris en compte l'ajout de la RAM boostera fortement les capacité de cette calculatrice et pourra permet normalment de faire des petit calcul formel &lt;br /&gt;
'''&lt;br /&gt;
Partie Software :'''&lt;br /&gt;
&lt;br /&gt;
Vu que le recherche sur la ram a était effectuer je me concentre se coup si sur l'augmentation de la taille alouer a python en prévision de l'augmentation qui serra fait dans le futur !&lt;br /&gt;
&lt;br /&gt;
De base python dispose de 16Kb de mémoire alouer pour fonctionner en peux le pousser a aller jusqu'a 128Kb sans augmentation matériel mais du a l'achirecture de la mémoire du procésseur une fois qu'on dépace les 64 Kb le temps de traitement deviens long tellement que les premier fois j'ai penser la calculatrice totalment planter !&lt;br /&gt;
&lt;br /&gt;
Si on essaye d'alouer plus que 128Kb de mémoire a python la calculatrice bloque l'action et empêche d'ouvrire la console , il existe une petit sécuriter pour éviter de vraiment planter la calculatrice &lt;br /&gt;
&lt;br /&gt;
cette modification permet d'avancer l'hypothése que le système epilson prend 128kb dans la mémoire vive actuel&lt;br /&gt;
&lt;br /&gt;
Une autre modification mineur a était réaliser pour modifier la version de la numwork il n'ai possible que de rentrée un numéro de version ayant 7 char chose intéressant le site de numwork affiche bien notre version modifier &lt;br /&gt;
[[Fichier:Version.png]]&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
Je commence cette semaine par étudier l'utiliter du port TearingEffect et ExtendedCommand on debute par tout commenter pour voir l'effet sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:TE exc.png]]&lt;br /&gt;
(d'autre ligne on était commenter)&lt;br /&gt;
&lt;br /&gt;
je charge donc cette modification dans la calculatrice pour voire le résultat grace a la fonction graphique je charge des fonction assez lourde graphiquement pour voire les changement ( un fonction de base comme f(x)=x n'ai aucun bug graphique)&lt;br /&gt;
&lt;br /&gt;
je test donc tan(x²⁴) et sin(x⁴)&lt;br /&gt;
&lt;br /&gt;
(pour les images de cette partie il n'aie pas possible d'utiliser le simulateur)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Original.png]]&lt;br /&gt;
&lt;br /&gt;
en effectuant quel que déplacement sur la courbe on obtiens des léger bug graphique comme celui la ,ou seulment un petit portion disparaît par a coup&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit bug.png]]&lt;br /&gt;
&lt;br /&gt;
en changent de fenêtre l'as on obtient des bug graphique plus important &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Gros bug.png]]&lt;br /&gt;
&lt;br /&gt;
même si les bug graphique sont présent il ne sont pas gênant car :&lt;br /&gt;
&lt;br /&gt;
- sur des fonctions de base il ne sont pas présent donc pas contraignant pour un étudiant au collège/lycéen &lt;br /&gt;
&lt;br /&gt;
- sur des fonction avancer les bug ne dure quel que seconde et ne sont donc pas gênant &lt;br /&gt;
&lt;br /&gt;
il pourrai donc poser problème sur des fonction plus graphique et dynamique&lt;br /&gt;
&lt;br /&gt;
En cherchant sur internet on peux découvrire un mode de test on y accédes viens le menus paramètres -&amp;gt; A propos on se place sur FCC ID puis on appuis sur la touche 6 on valide et nous voila dans le mode de test &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test usine.png]] [[Fichier:Test bouton.png]]&lt;br /&gt;
&lt;br /&gt;
sur simulateur on ne peux pas dépasser le test bouton car le bouton home n'est pas accessible via le clavier sinon il comporte en plus d'un test ecran pours les couleur primaire , test de led et de l'affichage d'un code (serie) de la calculatrice&lt;br /&gt;
&lt;br /&gt;
Pour rajouter du calcul formel 2 option s'offre a moi crée un application dédier a sa ou l'ajouter a la fonction de math dejai existant la 2 éme option et étudier en se moment &lt;br /&gt;
&lt;br /&gt;
en lisant le code on comprent certain chose : il font des arrondis pour éviter les erreur de la librairie qui peux renvoyer 4^-17&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
Cette semaine je réalise le nouveaux schéma électronique &lt;br /&gt;
&lt;br /&gt;
tout les fonction de base se répéter sans modification (pour le moment) je capable le nouveaux comme afficher sur la datasheet de l’écran (en laissant le TE et EXTC déconnecter) &lt;br /&gt;
&lt;br /&gt;
[[Fichier:NEW ECRAN.png]]&lt;br /&gt;
&lt;br /&gt;
fessant un version beta test je laisse quand même un emplacement pour que la calculatrice soit compatible avec les ancien ecran qui permettrais de valider le fonctionnement de correct de l'ecran et de la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Ancien ecran.png]]&lt;br /&gt;
&lt;br /&gt;
en réalisant le pcd de la &amp;quot;nouvelle&amp;quot; calculatrice je remarque que faire un adaptateur pour que les nouveaux ecran puisse être tester sur les calculatrice de base (qui validerai leurs fonctionnement )&lt;br /&gt;
&lt;br /&gt;
Etude du clavier Numwork&lt;br /&gt;
&lt;br /&gt;
Refaire le clavier de la numwork comprend refaire aussi sont clavier qui actuellement composer comme se si &lt;br /&gt;
&lt;br /&gt;
Une premier partie électrique&lt;br /&gt;
 &lt;br /&gt;
[[Fichier:C elec.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une Seconde partie de silicone et de carbone  qui assure le contact &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C sili.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une dernier partie de touche en plastique &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C plastique.jpg]]&lt;br /&gt;
&lt;br /&gt;
en regardant la doc technique de numwork on remarque que le clavier et un clavier matrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Num matrice.png]]&lt;br /&gt;
&lt;br /&gt;
en fessant quel que recherche sur la création de clavier matrice on remarque une fonction que numwork n'ai pas pris en compte la fonction antighosting (anti touche fantôme )&lt;br /&gt;
(source [https://bepo.fr/wiki/Atelier_referencestechniques])&lt;br /&gt;
&lt;br /&gt;
la conception de la croix directionnel fait qu'on ne peux pas appuyer sur 2 touche en même temps ,en démontant la calculatrice et en appuyant sur 2 des touche cela n'as aucun influence donc la croix peux être remplacer par un D-pad&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=60391</id>
		<title>IMA5 2018/2019 P28</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=60391"/>
				<updated>2018-10-03T13:40:28Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Semaine 4 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Construire un clone de la calculatrice open-source NumWorks. Effectuer quelques modifications sur le code source et sur le hardware.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
Il y a plusieur Axes sur le projet&lt;br /&gt;
en premier temps sur une calculatrice officiel&lt;br /&gt;
Logiciel : &lt;br /&gt;
&lt;br /&gt;
Préambule&lt;br /&gt;
- compilation du firmware sur linux / windows &lt;br /&gt;
- mettre a jour un calculatrice&lt;br /&gt;
- compréhension du code dans sa généraliter &lt;br /&gt;
&lt;br /&gt;
Réquis&lt;br /&gt;
- Modification du mode examen pour garder les programme &lt;br /&gt;
- Modification du calculateur pour rajouter des fonction&lt;br /&gt;
- Ajout de memoire a python ( 13 ko disponnible)&lt;br /&gt;
&lt;br /&gt;
Hardware &lt;br /&gt;
&lt;br /&gt;
- Rajout de memoire vive (seulement 256kb) &lt;br /&gt;
- Recherche ecran compatible &lt;br /&gt;
&lt;br /&gt;
en un second temps modifier la calculatrice en rajoutant des fonction non utiliser &lt;br /&gt;
comme lecture de carte sd et utilisation des entrée sortie&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
Pour éviter de me retrouver avec une seul version qui a tout les modification je travail par petit segment qui seront appeler buildx (x étant un chiffre croissant)&lt;br /&gt;
les petit modification pourront comme sa ajouter dans une version futur et des modification juger non pertinent n'impacterons pas sur le peux de place qui a en mémoire flash&lt;br /&gt;
&lt;br /&gt;
Installation : &lt;br /&gt;
&lt;br /&gt;
[https://www.numworks.com/resources/engineering/software/sdk/ source]&lt;br /&gt;
&lt;br /&gt;
Linux &lt;br /&gt;
&lt;br /&gt;
Partant d'un linux vierge pourvoir installer l'environnent sdk pour qu'on puisse mettre a jour et modifier la numwork il faut quel que ressource&lt;br /&gt;
seront nécessaire pour compiler&lt;br /&gt;
 make gcc g++ &lt;br /&gt;
utiliser par &amp;quot;os&amp;quot; de numwork&lt;br /&gt;
 bison build-essential dfu-util flex gcc-arm-none-eabi libfltk1.3-dev libfreetype6-dev libpng12-dev&lt;br /&gt;
une fois tout sa installer linux et enfin prés a compiler et envoyer le code sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Windows&lt;br /&gt;
&lt;br /&gt;
Cette fois n'ayant pas de console il faut l'installer Numwork nous propose Msys2 une fois installer comme sur linux il faut installer pas mal de ressource &lt;br /&gt;
 pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-freetype mingw-w64-x86_64-pkg-config mingw-w64-x86_64-fltk git make bison python&lt;br /&gt;
&lt;br /&gt;
Mac&lt;br /&gt;
aucun mac pour les tests mais sa doit fonctionner correctement &lt;br /&gt;
&lt;br /&gt;
Mise a jour : &lt;br /&gt;
une fois l'ordinateur configurer on compiler et essayer soit le simulateur soit envoyer le code sur la calculatrice (sachant que le simulateur ne simule pas la led et d'autre fonction de la calculatrice)&lt;br /&gt;
Pour compiler le code vers la calculatrice&lt;br /&gt;
 make clean&lt;br /&gt;
 make&lt;br /&gt;
 make epsilon_flash&lt;br /&gt;
Pour compiler le code pour le simulateur&lt;br /&gt;
 make PLATFORM=simulator clean&lt;br /&gt;
 make PLATFORM=simulator&lt;br /&gt;
sachant que le clean et très important on ne peux pas exporter un code qui a était a but du simulateur &lt;br /&gt;
&lt;br /&gt;
Pour exécuter le simulateur &lt;br /&gt;
 ./epsilon.elf&lt;br /&gt;
&lt;br /&gt;
'''Build 1''' désactivation du mode examen &lt;br /&gt;
&lt;br /&gt;
Le mode examen et obligatoire pour tout les calculatrice programmable a partir de la rentrée 2018  le but de se mode et de bloquer l'accès au programme qui on était dejai enregistré dans la calculatrice et de l'indiquer pour aider les surveillant a verifier que le mode et bien actif.&lt;br /&gt;
&lt;br /&gt;
Pour se faire Numwork a choisir d'appliquer 3 action en activant le mode examen &lt;br /&gt;
&lt;br /&gt;
- ajout d'une icone examen dans le menu &lt;br /&gt;
&lt;br /&gt;
- clignotement d'une led en rouge &lt;br /&gt;
&lt;br /&gt;
- effacement des programme python (et non dés-affichage des programme comme le font certain concurrent)&lt;br /&gt;
&lt;br /&gt;
Pour sortir du mode d'examen il suffit soit de reset sa calculatrice ou d'alimenter la calculatrice &lt;br /&gt;
&lt;br /&gt;
Cette dernier fonction et vraiment contraignante même pour une utilisation normal, une mauvaise manipulation et les programmes réaliser s'envole &lt;br /&gt;
&lt;br /&gt;
Pour que la supercherie que le mode examen aie était truquer les indicateur visuel doivent rester il faut juste modifier la dernier fonction&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
Ayant avancée sur la partie software et compris un partie du code je me lance sur la liste des materiel requis pour réaliser un clone.&lt;br /&gt;
tout les composant sont disponible dans le commerce sauf l'ecran qui a réaliser sur mesure pour numwork &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Connecteur_ecran.png]]&lt;br /&gt;
&lt;br /&gt;
On peux voire que la schème donnée par numwork qu'il utiliser des fonction particulier du controleur qui sont: &lt;br /&gt;
&lt;br /&gt;
-un bus de donnée de 16 bits &lt;br /&gt;
&lt;br /&gt;
-4 led de retroéclairage&lt;br /&gt;
&lt;br /&gt;
-Te : Tearing Effect  &lt;br /&gt;
&lt;br /&gt;
-EXTC : extended comande &lt;br /&gt;
&lt;br /&gt;
connaisant les port qui sont requis je peux commencer a chercher un ecran compatible sachant qu'aprés une demande a numwork le ports EXTC n'ai pas encore utiliser et le ports TE peux être desactiver sans vraiment poser de problème&lt;br /&gt;
&lt;br /&gt;
Il et dur de trouver d'un concepteur d'ecran utilisant le controleur ST7789V pour leurs ecran il faut donc se tourner vers la chine &lt;br /&gt;
sur 8 fabricant seulment 4 réponse et sur les 4 réponse seulment 2 avec des produit correspondant a la demande &lt;br /&gt;
l'un viens de [http://www.szelida.cn szelida] et l'autre de [http://www.youritech.com Youri Technology]&lt;br /&gt;
je choisi donc le ET024QV01 [[https://projets-ima.plil.fr/mediawiki/index.php/Fichier:ET024QV01.pdf]]&lt;br /&gt;
&lt;br /&gt;
on peux voire a sa liste de PIN qui a certain PIN qui deveront être fixer a vcc ou gnd pour bloquer le mode d'affichage de la calculatrice mais il posséde les pin requis pour fonctionner avec la calculatice il et juste plus petit&lt;br /&gt;
&lt;br /&gt;
[[Fichier:RAM_numwork.png]]&lt;br /&gt;
&lt;br /&gt;
En paralléle une recherche sur le hardware montre que la place pour la RAM et dejai prévu sur le PCB il faudrait juste modifier une partie software pour qu'il soit pris en compte l'ajout de la RAM boostera fortement les capacité de cette calculatrice et pourra permet normalment de faire des petit calcul formel &lt;br /&gt;
'''&lt;br /&gt;
Partie Software :'''&lt;br /&gt;
&lt;br /&gt;
Vu que le recherche sur la ram a était effectuer je me concentre se coup si sur l'augmentation de la taille alouer a python en prévision de l'augmentation qui serra fait dans le futur !&lt;br /&gt;
&lt;br /&gt;
De base python dispose de 16Kb de mémoire alouer pour fonctionner en peux le pousser a aller jusqu'a 128Kb sans augmentation matériel mais du a l'achirecture de la mémoire du procésseur une fois qu'on dépace les 64 Kb le temps de traitement deviens long tellement que les premier fois j'ai penser la calculatrice totalment planter !&lt;br /&gt;
&lt;br /&gt;
Si on essaye d'alouer plus que 128Kb de mémoire a python la calculatrice bloque l'action et empêche d'ouvrire la console , il existe une petit sécuriter pour éviter de vraiment planter la calculatrice &lt;br /&gt;
&lt;br /&gt;
cette modification permet d'avancer l'hypothése que le système epilson prend 128kb dans la mémoire vive actuel&lt;br /&gt;
&lt;br /&gt;
Une autre modification mineur a était réaliser pour modifier la version de la numwork il n'ai possible que de rentrée un numéro de version ayant 7 char chose intéressant le site de numwork affiche bien notre version modifier &lt;br /&gt;
[[Fichier:Version.png]]&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
Je commence cette semaine par étudier l'utiliter du port TearingEffect et ExtendedCommand on debute par tout commenter pour voir l'effet sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:TE exc.png]]&lt;br /&gt;
(d'autre ligne on était commenter)&lt;br /&gt;
&lt;br /&gt;
je charge donc cette modification dans la calculatrice pour voire le résultat grace a la fonction graphique je charge des fonction assez lourde graphiquement pour voire les changement ( un fonction de base comme f(x)=x n'ai aucun bug graphique)&lt;br /&gt;
&lt;br /&gt;
je test donc tan(x²⁴) et sin(x⁴)&lt;br /&gt;
&lt;br /&gt;
(pour les images de cette partie il n'aie pas possible d'utiliser le simulateur)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Original.png]]&lt;br /&gt;
&lt;br /&gt;
en effectuant quel que déplacement sur la courbe on obtiens des léger bug graphique comme celui la ,ou seulment un petit portion disparaît par a coup&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit bug.png]]&lt;br /&gt;
&lt;br /&gt;
en changent de fenêtre l'as on obtient des bug graphique plus important &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Gros bug.png]]&lt;br /&gt;
&lt;br /&gt;
même si les bug graphique sont présent il ne sont pas gênant car :&lt;br /&gt;
&lt;br /&gt;
- sur des fonctions de base il ne sont pas présent donc pas contraignant pour un étudiant au collège/lycéen &lt;br /&gt;
&lt;br /&gt;
- sur des fonction avancer les bug ne dure quel que seconde et ne sont donc pas gênant &lt;br /&gt;
&lt;br /&gt;
il pourrai donc poser problème sur des fonction plus graphique et dynamique&lt;br /&gt;
&lt;br /&gt;
En cherchant sur internet on peux découvrire un mode de test on y accédes viens le menus paramètres -&amp;gt; A propos on se place sur FCC ID puis on appuis sur la touche 6 on valide et nous voila dans le mode de test &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test usine.png]] [[Fichier:Test bouton.png]]&lt;br /&gt;
&lt;br /&gt;
sur simulateur on ne peux pas dépasser le test bouton car le bouton home n'est pas accessible via le clavier sinon il comporte en plus d'un test ecran pours les couleur primaire , test de led et de l'affichage d'un code (serie) de la calculatrice&lt;br /&gt;
&lt;br /&gt;
Pour rajouter du calcul formel 2 option s'offre a moi crée un application dédier a sa ou l'ajouter a la fonction de math dejai existant la 2 éme option et étudier en se moment &lt;br /&gt;
&lt;br /&gt;
en lisant le code on comprent certain chose : il font des arrondis pour éviter les erreur de la librairie qui peux renvoyer 4^-17&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
Cette semaine je réalise le nouveaux schéma électronique &lt;br /&gt;
&lt;br /&gt;
tout les fonction de base se répéter sans modification (pour le moment) je capable le nouveaux comme afficher sur la datasheet de l’écran (en laissant le TE et EXTC déconnecter) &lt;br /&gt;
&lt;br /&gt;
[[Fichier:NEW ECRAN.png]]&lt;br /&gt;
&lt;br /&gt;
fessant un version beta test je laisse quand même un emplacement pour que la calculatrice soit compatible avec les ancien ecran qui permettrais de valider le fonctionnement de correct de l'ecran et de la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Ancien ecran.png]]&lt;br /&gt;
&lt;br /&gt;
en réalisant le pcd de la &amp;quot;nouvelle&amp;quot; calculatrice je remarque que faire un adaptateur pour que les nouveaux ecran puisse être tester sur les calculatrice de base (qui validerai leurs fonctionnement )&lt;br /&gt;
&lt;br /&gt;
Etude du clavier Numwork&lt;br /&gt;
&lt;br /&gt;
Refaire le clavier de la numwork comprend refaire aussi sont clavier qui actuellement composer comme se si &lt;br /&gt;
&lt;br /&gt;
Une premier partie électrique&lt;br /&gt;
 &lt;br /&gt;
[[Fichier:C elec.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une Seconde partie de silicone et de carbone  qui assure le contact &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C sili.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une dernier partie de touche en plastique &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C plastique.jpg]]&lt;br /&gt;
&lt;br /&gt;
en regardant la doc technique de numwork on remarque que le clavier et un clavier matrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Num matrice.png]]&lt;br /&gt;
&lt;br /&gt;
en fessant quel que recherche sur la création de clavier matrice on remarque une fonction que numwork n'ai pas pris en compte la fonction antighosting (anti touche fantôme )&lt;br /&gt;
(source [https://bepo.fr/wiki/Atelier_referencestechniques])&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Num_matrice.png&amp;diff=60389</id>
		<title>Fichier:Num matrice.png</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Num_matrice.png&amp;diff=60389"/>
				<updated>2018-10-03T13:37:03Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:C_plastique.jpg&amp;diff=60388</id>
		<title>Fichier:C plastique.jpg</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:C_plastique.jpg&amp;diff=60388"/>
				<updated>2018-10-03T13:33:09Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : Adorian a téléversé une nouvelle version de Fichier:C plastique.jpg&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;couche plastique du clavier&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=60387</id>
		<title>IMA5 2018/2019 P28</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=60387"/>
				<updated>2018-10-03T13:32:58Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Semaine 4 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Construire un clone de la calculatrice open-source NumWorks. Effectuer quelques modifications sur le code source et sur le hardware.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
Il y a plusieur Axes sur le projet&lt;br /&gt;
en premier temps sur une calculatrice officiel&lt;br /&gt;
Logiciel : &lt;br /&gt;
&lt;br /&gt;
Préambule&lt;br /&gt;
- compilation du firmware sur linux / windows &lt;br /&gt;
- mettre a jour un calculatrice&lt;br /&gt;
- compréhension du code dans sa généraliter &lt;br /&gt;
&lt;br /&gt;
Réquis&lt;br /&gt;
- Modification du mode examen pour garder les programme &lt;br /&gt;
- Modification du calculateur pour rajouter des fonction&lt;br /&gt;
- Ajout de memoire a python ( 13 ko disponnible)&lt;br /&gt;
&lt;br /&gt;
Hardware &lt;br /&gt;
&lt;br /&gt;
- Rajout de memoire vive (seulement 256kb) &lt;br /&gt;
- Recherche ecran compatible &lt;br /&gt;
&lt;br /&gt;
en un second temps modifier la calculatrice en rajoutant des fonction non utiliser &lt;br /&gt;
comme lecture de carte sd et utilisation des entrée sortie&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
Pour éviter de me retrouver avec une seul version qui a tout les modification je travail par petit segment qui seront appeler buildx (x étant un chiffre croissant)&lt;br /&gt;
les petit modification pourront comme sa ajouter dans une version futur et des modification juger non pertinent n'impacterons pas sur le peux de place qui a en mémoire flash&lt;br /&gt;
&lt;br /&gt;
Installation : &lt;br /&gt;
&lt;br /&gt;
[https://www.numworks.com/resources/engineering/software/sdk/ source]&lt;br /&gt;
&lt;br /&gt;
Linux &lt;br /&gt;
&lt;br /&gt;
Partant d'un linux vierge pourvoir installer l'environnent sdk pour qu'on puisse mettre a jour et modifier la numwork il faut quel que ressource&lt;br /&gt;
seront nécessaire pour compiler&lt;br /&gt;
 make gcc g++ &lt;br /&gt;
utiliser par &amp;quot;os&amp;quot; de numwork&lt;br /&gt;
 bison build-essential dfu-util flex gcc-arm-none-eabi libfltk1.3-dev libfreetype6-dev libpng12-dev&lt;br /&gt;
une fois tout sa installer linux et enfin prés a compiler et envoyer le code sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Windows&lt;br /&gt;
&lt;br /&gt;
Cette fois n'ayant pas de console il faut l'installer Numwork nous propose Msys2 une fois installer comme sur linux il faut installer pas mal de ressource &lt;br /&gt;
 pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-freetype mingw-w64-x86_64-pkg-config mingw-w64-x86_64-fltk git make bison python&lt;br /&gt;
&lt;br /&gt;
Mac&lt;br /&gt;
aucun mac pour les tests mais sa doit fonctionner correctement &lt;br /&gt;
&lt;br /&gt;
Mise a jour : &lt;br /&gt;
une fois l'ordinateur configurer on compiler et essayer soit le simulateur soit envoyer le code sur la calculatrice (sachant que le simulateur ne simule pas la led et d'autre fonction de la calculatrice)&lt;br /&gt;
Pour compiler le code vers la calculatrice&lt;br /&gt;
 make clean&lt;br /&gt;
 make&lt;br /&gt;
 make epsilon_flash&lt;br /&gt;
Pour compiler le code pour le simulateur&lt;br /&gt;
 make PLATFORM=simulator clean&lt;br /&gt;
 make PLATFORM=simulator&lt;br /&gt;
sachant que le clean et très important on ne peux pas exporter un code qui a était a but du simulateur &lt;br /&gt;
&lt;br /&gt;
Pour exécuter le simulateur &lt;br /&gt;
 ./epsilon.elf&lt;br /&gt;
&lt;br /&gt;
'''Build 1''' désactivation du mode examen &lt;br /&gt;
&lt;br /&gt;
Le mode examen et obligatoire pour tout les calculatrice programmable a partir de la rentrée 2018  le but de se mode et de bloquer l'accès au programme qui on était dejai enregistré dans la calculatrice et de l'indiquer pour aider les surveillant a verifier que le mode et bien actif.&lt;br /&gt;
&lt;br /&gt;
Pour se faire Numwork a choisir d'appliquer 3 action en activant le mode examen &lt;br /&gt;
&lt;br /&gt;
- ajout d'une icone examen dans le menu &lt;br /&gt;
&lt;br /&gt;
- clignotement d'une led en rouge &lt;br /&gt;
&lt;br /&gt;
- effacement des programme python (et non dés-affichage des programme comme le font certain concurrent)&lt;br /&gt;
&lt;br /&gt;
Pour sortir du mode d'examen il suffit soit de reset sa calculatrice ou d'alimenter la calculatrice &lt;br /&gt;
&lt;br /&gt;
Cette dernier fonction et vraiment contraignante même pour une utilisation normal, une mauvaise manipulation et les programmes réaliser s'envole &lt;br /&gt;
&lt;br /&gt;
Pour que la supercherie que le mode examen aie était truquer les indicateur visuel doivent rester il faut juste modifier la dernier fonction&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
Ayant avancée sur la partie software et compris un partie du code je me lance sur la liste des materiel requis pour réaliser un clone.&lt;br /&gt;
tout les composant sont disponible dans le commerce sauf l'ecran qui a réaliser sur mesure pour numwork &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Connecteur_ecran.png]]&lt;br /&gt;
&lt;br /&gt;
On peux voire que la schème donnée par numwork qu'il utiliser des fonction particulier du controleur qui sont: &lt;br /&gt;
&lt;br /&gt;
-un bus de donnée de 16 bits &lt;br /&gt;
&lt;br /&gt;
-4 led de retroéclairage&lt;br /&gt;
&lt;br /&gt;
-Te : Tearing Effect  &lt;br /&gt;
&lt;br /&gt;
-EXTC : extended comande &lt;br /&gt;
&lt;br /&gt;
connaisant les port qui sont requis je peux commencer a chercher un ecran compatible sachant qu'aprés une demande a numwork le ports EXTC n'ai pas encore utiliser et le ports TE peux être desactiver sans vraiment poser de problème&lt;br /&gt;
&lt;br /&gt;
Il et dur de trouver d'un concepteur d'ecran utilisant le controleur ST7789V pour leurs ecran il faut donc se tourner vers la chine &lt;br /&gt;
sur 8 fabricant seulment 4 réponse et sur les 4 réponse seulment 2 avec des produit correspondant a la demande &lt;br /&gt;
l'un viens de [http://www.szelida.cn szelida] et l'autre de [http://www.youritech.com Youri Technology]&lt;br /&gt;
je choisi donc le ET024QV01 [[https://projets-ima.plil.fr/mediawiki/index.php/Fichier:ET024QV01.pdf]]&lt;br /&gt;
&lt;br /&gt;
on peux voire a sa liste de PIN qui a certain PIN qui deveront être fixer a vcc ou gnd pour bloquer le mode d'affichage de la calculatrice mais il posséde les pin requis pour fonctionner avec la calculatice il et juste plus petit&lt;br /&gt;
&lt;br /&gt;
[[Fichier:RAM_numwork.png]]&lt;br /&gt;
&lt;br /&gt;
En paralléle une recherche sur le hardware montre que la place pour la RAM et dejai prévu sur le PCB il faudrait juste modifier une partie software pour qu'il soit pris en compte l'ajout de la RAM boostera fortement les capacité de cette calculatrice et pourra permet normalment de faire des petit calcul formel &lt;br /&gt;
'''&lt;br /&gt;
Partie Software :'''&lt;br /&gt;
&lt;br /&gt;
Vu que le recherche sur la ram a était effectuer je me concentre se coup si sur l'augmentation de la taille alouer a python en prévision de l'augmentation qui serra fait dans le futur !&lt;br /&gt;
&lt;br /&gt;
De base python dispose de 16Kb de mémoire alouer pour fonctionner en peux le pousser a aller jusqu'a 128Kb sans augmentation matériel mais du a l'achirecture de la mémoire du procésseur une fois qu'on dépace les 64 Kb le temps de traitement deviens long tellement que les premier fois j'ai penser la calculatrice totalment planter !&lt;br /&gt;
&lt;br /&gt;
Si on essaye d'alouer plus que 128Kb de mémoire a python la calculatrice bloque l'action et empêche d'ouvrire la console , il existe une petit sécuriter pour éviter de vraiment planter la calculatrice &lt;br /&gt;
&lt;br /&gt;
cette modification permet d'avancer l'hypothése que le système epilson prend 128kb dans la mémoire vive actuel&lt;br /&gt;
&lt;br /&gt;
Une autre modification mineur a était réaliser pour modifier la version de la numwork il n'ai possible que de rentrée un numéro de version ayant 7 char chose intéressant le site de numwork affiche bien notre version modifier &lt;br /&gt;
[[Fichier:Version.png]]&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
Je commence cette semaine par étudier l'utiliter du port TearingEffect et ExtendedCommand on debute par tout commenter pour voir l'effet sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:TE exc.png]]&lt;br /&gt;
(d'autre ligne on était commenter)&lt;br /&gt;
&lt;br /&gt;
je charge donc cette modification dans la calculatrice pour voire le résultat grace a la fonction graphique je charge des fonction assez lourde graphiquement pour voire les changement ( un fonction de base comme f(x)=x n'ai aucun bug graphique)&lt;br /&gt;
&lt;br /&gt;
je test donc tan(x²⁴) et sin(x⁴)&lt;br /&gt;
&lt;br /&gt;
(pour les images de cette partie il n'aie pas possible d'utiliser le simulateur)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Original.png]]&lt;br /&gt;
&lt;br /&gt;
en effectuant quel que déplacement sur la courbe on obtiens des léger bug graphique comme celui la ,ou seulment un petit portion disparaît par a coup&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit bug.png]]&lt;br /&gt;
&lt;br /&gt;
en changent de fenêtre l'as on obtient des bug graphique plus important &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Gros bug.png]]&lt;br /&gt;
&lt;br /&gt;
même si les bug graphique sont présent il ne sont pas gênant car :&lt;br /&gt;
&lt;br /&gt;
- sur des fonctions de base il ne sont pas présent donc pas contraignant pour un étudiant au collège/lycéen &lt;br /&gt;
&lt;br /&gt;
- sur des fonction avancer les bug ne dure quel que seconde et ne sont donc pas gênant &lt;br /&gt;
&lt;br /&gt;
il pourrai donc poser problème sur des fonction plus graphique et dynamique&lt;br /&gt;
&lt;br /&gt;
En cherchant sur internet on peux découvrire un mode de test on y accédes viens le menus paramètres -&amp;gt; A propos on se place sur FCC ID puis on appuis sur la touche 6 on valide et nous voila dans le mode de test &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test usine.png]] [[Fichier:Test bouton.png]]&lt;br /&gt;
&lt;br /&gt;
sur simulateur on ne peux pas dépasser le test bouton car le bouton home n'est pas accessible via le clavier sinon il comporte en plus d'un test ecran pours les couleur primaire , test de led et de l'affichage d'un code (serie) de la calculatrice&lt;br /&gt;
&lt;br /&gt;
Pour rajouter du calcul formel 2 option s'offre a moi crée un application dédier a sa ou l'ajouter a la fonction de math dejai existant la 2 éme option et étudier en se moment &lt;br /&gt;
&lt;br /&gt;
en lisant le code on comprent certain chose : il font des arrondis pour éviter les erreur de la librairie qui peux renvoyer 4^-17&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
Cette semaine je réalise le nouveaux schéma électronique &lt;br /&gt;
&lt;br /&gt;
tout les fonction de base se répéter sans modification (pour le moment) je capable le nouveaux comme afficher sur la datasheet de l’écran (en laissant le TE et EXTC déconnecter) &lt;br /&gt;
&lt;br /&gt;
[[Fichier:NEW ECRAN.png]]&lt;br /&gt;
&lt;br /&gt;
fessant un version beta test je laisse quand même un emplacement pour que la calculatrice soit compatible avec les ancien ecran qui permettrais de valider le fonctionnement de correct de l'ecran et de la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Ancien ecran.png]]&lt;br /&gt;
&lt;br /&gt;
en réalisant le pcd de la &amp;quot;nouvelle&amp;quot; calculatrice je remarque que faire un adaptateur pour que les nouveaux ecran puisse être tester sur les calculatrice de base (qui validerai leurs fonctionnement )&lt;br /&gt;
&lt;br /&gt;
Etude du clavier Numwork&lt;br /&gt;
&lt;br /&gt;
Refaire le clavier de la numwork comprend refaire aussi sont clavier qui actuellement composer comme se si &lt;br /&gt;
&lt;br /&gt;
Une premier partie électrique&lt;br /&gt;
 &lt;br /&gt;
[[Fichier:C elec.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une Seconde partie de silicone et de carbone  qui assure le contact &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C sili.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une dernier partie de touche en plastique &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C plastique.jpg]]&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:C_sili.jpg&amp;diff=60386</id>
		<title>Fichier:C sili.jpg</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:C_sili.jpg&amp;diff=60386"/>
				<updated>2018-10-03T13:32:32Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : Adorian a téléversé une nouvelle version de Fichier:C sili.jpg&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;couche silicone du clavier&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:C_elec.jpg&amp;diff=60385</id>
		<title>Fichier:C elec.jpg</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:C_elec.jpg&amp;diff=60385"/>
				<updated>2018-10-03T13:32:09Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : Adorian a téléversé une nouvelle version de Fichier:C elec.jpg&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;couche électronique du clavier&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=60384</id>
		<title>IMA5 2018/2019 P28</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=60384"/>
				<updated>2018-10-03T13:30:26Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Semaine 4 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Construire un clone de la calculatrice open-source NumWorks. Effectuer quelques modifications sur le code source et sur le hardware.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
Il y a plusieur Axes sur le projet&lt;br /&gt;
en premier temps sur une calculatrice officiel&lt;br /&gt;
Logiciel : &lt;br /&gt;
&lt;br /&gt;
Préambule&lt;br /&gt;
- compilation du firmware sur linux / windows &lt;br /&gt;
- mettre a jour un calculatrice&lt;br /&gt;
- compréhension du code dans sa généraliter &lt;br /&gt;
&lt;br /&gt;
Réquis&lt;br /&gt;
- Modification du mode examen pour garder les programme &lt;br /&gt;
- Modification du calculateur pour rajouter des fonction&lt;br /&gt;
- Ajout de memoire a python ( 13 ko disponnible)&lt;br /&gt;
&lt;br /&gt;
Hardware &lt;br /&gt;
&lt;br /&gt;
- Rajout de memoire vive (seulement 256kb) &lt;br /&gt;
- Recherche ecran compatible &lt;br /&gt;
&lt;br /&gt;
en un second temps modifier la calculatrice en rajoutant des fonction non utiliser &lt;br /&gt;
comme lecture de carte sd et utilisation des entrée sortie&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
Pour éviter de me retrouver avec une seul version qui a tout les modification je travail par petit segment qui seront appeler buildx (x étant un chiffre croissant)&lt;br /&gt;
les petit modification pourront comme sa ajouter dans une version futur et des modification juger non pertinent n'impacterons pas sur le peux de place qui a en mémoire flash&lt;br /&gt;
&lt;br /&gt;
Installation : &lt;br /&gt;
&lt;br /&gt;
[https://www.numworks.com/resources/engineering/software/sdk/ source]&lt;br /&gt;
&lt;br /&gt;
Linux &lt;br /&gt;
&lt;br /&gt;
Partant d'un linux vierge pourvoir installer l'environnent sdk pour qu'on puisse mettre a jour et modifier la numwork il faut quel que ressource&lt;br /&gt;
seront nécessaire pour compiler&lt;br /&gt;
 make gcc g++ &lt;br /&gt;
utiliser par &amp;quot;os&amp;quot; de numwork&lt;br /&gt;
 bison build-essential dfu-util flex gcc-arm-none-eabi libfltk1.3-dev libfreetype6-dev libpng12-dev&lt;br /&gt;
une fois tout sa installer linux et enfin prés a compiler et envoyer le code sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Windows&lt;br /&gt;
&lt;br /&gt;
Cette fois n'ayant pas de console il faut l'installer Numwork nous propose Msys2 une fois installer comme sur linux il faut installer pas mal de ressource &lt;br /&gt;
 pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-freetype mingw-w64-x86_64-pkg-config mingw-w64-x86_64-fltk git make bison python&lt;br /&gt;
&lt;br /&gt;
Mac&lt;br /&gt;
aucun mac pour les tests mais sa doit fonctionner correctement &lt;br /&gt;
&lt;br /&gt;
Mise a jour : &lt;br /&gt;
une fois l'ordinateur configurer on compiler et essayer soit le simulateur soit envoyer le code sur la calculatrice (sachant que le simulateur ne simule pas la led et d'autre fonction de la calculatrice)&lt;br /&gt;
Pour compiler le code vers la calculatrice&lt;br /&gt;
 make clean&lt;br /&gt;
 make&lt;br /&gt;
 make epsilon_flash&lt;br /&gt;
Pour compiler le code pour le simulateur&lt;br /&gt;
 make PLATFORM=simulator clean&lt;br /&gt;
 make PLATFORM=simulator&lt;br /&gt;
sachant que le clean et très important on ne peux pas exporter un code qui a était a but du simulateur &lt;br /&gt;
&lt;br /&gt;
Pour exécuter le simulateur &lt;br /&gt;
 ./epsilon.elf&lt;br /&gt;
&lt;br /&gt;
'''Build 1''' désactivation du mode examen &lt;br /&gt;
&lt;br /&gt;
Le mode examen et obligatoire pour tout les calculatrice programmable a partir de la rentrée 2018  le but de se mode et de bloquer l'accès au programme qui on était dejai enregistré dans la calculatrice et de l'indiquer pour aider les surveillant a verifier que le mode et bien actif.&lt;br /&gt;
&lt;br /&gt;
Pour se faire Numwork a choisir d'appliquer 3 action en activant le mode examen &lt;br /&gt;
&lt;br /&gt;
- ajout d'une icone examen dans le menu &lt;br /&gt;
&lt;br /&gt;
- clignotement d'une led en rouge &lt;br /&gt;
&lt;br /&gt;
- effacement des programme python (et non dés-affichage des programme comme le font certain concurrent)&lt;br /&gt;
&lt;br /&gt;
Pour sortir du mode d'examen il suffit soit de reset sa calculatrice ou d'alimenter la calculatrice &lt;br /&gt;
&lt;br /&gt;
Cette dernier fonction et vraiment contraignante même pour une utilisation normal, une mauvaise manipulation et les programmes réaliser s'envole &lt;br /&gt;
&lt;br /&gt;
Pour que la supercherie que le mode examen aie était truquer les indicateur visuel doivent rester il faut juste modifier la dernier fonction&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
Ayant avancée sur la partie software et compris un partie du code je me lance sur la liste des materiel requis pour réaliser un clone.&lt;br /&gt;
tout les composant sont disponible dans le commerce sauf l'ecran qui a réaliser sur mesure pour numwork &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Connecteur_ecran.png]]&lt;br /&gt;
&lt;br /&gt;
On peux voire que la schème donnée par numwork qu'il utiliser des fonction particulier du controleur qui sont: &lt;br /&gt;
&lt;br /&gt;
-un bus de donnée de 16 bits &lt;br /&gt;
&lt;br /&gt;
-4 led de retroéclairage&lt;br /&gt;
&lt;br /&gt;
-Te : Tearing Effect  &lt;br /&gt;
&lt;br /&gt;
-EXTC : extended comande &lt;br /&gt;
&lt;br /&gt;
connaisant les port qui sont requis je peux commencer a chercher un ecran compatible sachant qu'aprés une demande a numwork le ports EXTC n'ai pas encore utiliser et le ports TE peux être desactiver sans vraiment poser de problème&lt;br /&gt;
&lt;br /&gt;
Il et dur de trouver d'un concepteur d'ecran utilisant le controleur ST7789V pour leurs ecran il faut donc se tourner vers la chine &lt;br /&gt;
sur 8 fabricant seulment 4 réponse et sur les 4 réponse seulment 2 avec des produit correspondant a la demande &lt;br /&gt;
l'un viens de [http://www.szelida.cn szelida] et l'autre de [http://www.youritech.com Youri Technology]&lt;br /&gt;
je choisi donc le ET024QV01 [[https://projets-ima.plil.fr/mediawiki/index.php/Fichier:ET024QV01.pdf]]&lt;br /&gt;
&lt;br /&gt;
on peux voire a sa liste de PIN qui a certain PIN qui deveront être fixer a vcc ou gnd pour bloquer le mode d'affichage de la calculatrice mais il posséde les pin requis pour fonctionner avec la calculatice il et juste plus petit&lt;br /&gt;
&lt;br /&gt;
[[Fichier:RAM_numwork.png]]&lt;br /&gt;
&lt;br /&gt;
En paralléle une recherche sur le hardware montre que la place pour la RAM et dejai prévu sur le PCB il faudrait juste modifier une partie software pour qu'il soit pris en compte l'ajout de la RAM boostera fortement les capacité de cette calculatrice et pourra permet normalment de faire des petit calcul formel &lt;br /&gt;
'''&lt;br /&gt;
Partie Software :'''&lt;br /&gt;
&lt;br /&gt;
Vu que le recherche sur la ram a était effectuer je me concentre se coup si sur l'augmentation de la taille alouer a python en prévision de l'augmentation qui serra fait dans le futur !&lt;br /&gt;
&lt;br /&gt;
De base python dispose de 16Kb de mémoire alouer pour fonctionner en peux le pousser a aller jusqu'a 128Kb sans augmentation matériel mais du a l'achirecture de la mémoire du procésseur une fois qu'on dépace les 64 Kb le temps de traitement deviens long tellement que les premier fois j'ai penser la calculatrice totalment planter !&lt;br /&gt;
&lt;br /&gt;
Si on essaye d'alouer plus que 128Kb de mémoire a python la calculatrice bloque l'action et empêche d'ouvrire la console , il existe une petit sécuriter pour éviter de vraiment planter la calculatrice &lt;br /&gt;
&lt;br /&gt;
cette modification permet d'avancer l'hypothése que le système epilson prend 128kb dans la mémoire vive actuel&lt;br /&gt;
&lt;br /&gt;
Une autre modification mineur a était réaliser pour modifier la version de la numwork il n'ai possible que de rentrée un numéro de version ayant 7 char chose intéressant le site de numwork affiche bien notre version modifier &lt;br /&gt;
[[Fichier:Version.png]]&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
Je commence cette semaine par étudier l'utiliter du port TearingEffect et ExtendedCommand on debute par tout commenter pour voir l'effet sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:TE exc.png]]&lt;br /&gt;
(d'autre ligne on était commenter)&lt;br /&gt;
&lt;br /&gt;
je charge donc cette modification dans la calculatrice pour voire le résultat grace a la fonction graphique je charge des fonction assez lourde graphiquement pour voire les changement ( un fonction de base comme f(x)=x n'ai aucun bug graphique)&lt;br /&gt;
&lt;br /&gt;
je test donc tan(x²⁴) et sin(x⁴)&lt;br /&gt;
&lt;br /&gt;
(pour les images de cette partie il n'aie pas possible d'utiliser le simulateur)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Original.png]]&lt;br /&gt;
&lt;br /&gt;
en effectuant quel que déplacement sur la courbe on obtiens des léger bug graphique comme celui la ,ou seulment un petit portion disparaît par a coup&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit bug.png]]&lt;br /&gt;
&lt;br /&gt;
en changent de fenêtre l'as on obtient des bug graphique plus important &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Gros bug.png]]&lt;br /&gt;
&lt;br /&gt;
même si les bug graphique sont présent il ne sont pas gênant car :&lt;br /&gt;
&lt;br /&gt;
- sur des fonctions de base il ne sont pas présent donc pas contraignant pour un étudiant au collège/lycéen &lt;br /&gt;
&lt;br /&gt;
- sur des fonction avancer les bug ne dure quel que seconde et ne sont donc pas gênant &lt;br /&gt;
&lt;br /&gt;
il pourrai donc poser problème sur des fonction plus graphique et dynamique&lt;br /&gt;
&lt;br /&gt;
En cherchant sur internet on peux découvrire un mode de test on y accédes viens le menus paramètres -&amp;gt; A propos on se place sur FCC ID puis on appuis sur la touche 6 on valide et nous voila dans le mode de test &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test usine.png]] [[Fichier:Test bouton.png]]&lt;br /&gt;
&lt;br /&gt;
sur simulateur on ne peux pas dépasser le test bouton car le bouton home n'est pas accessible via le clavier sinon il comporte en plus d'un test ecran pours les couleur primaire , test de led et de l'affichage d'un code (serie) de la calculatrice&lt;br /&gt;
&lt;br /&gt;
Pour rajouter du calcul formel 2 option s'offre a moi crée un application dédier a sa ou l'ajouter a la fonction de math dejai existant la 2 éme option et étudier en se moment &lt;br /&gt;
&lt;br /&gt;
en lisant le code on comprent certain chose : il font des arrondis pour éviter les erreur de la librairie qui peux renvoyer 4^-17&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
Cette semaine je réalise le nouveaux schéma électronique &lt;br /&gt;
&lt;br /&gt;
tout les fonction de base se répéter sans modification (pour le moment) je capable le nouveaux comme afficher sur la datasheet de l’écran (en laissant le TE et EXTC déconnecter) &lt;br /&gt;
&lt;br /&gt;
[[Fichier:NEW ECRAN.png]]&lt;br /&gt;
&lt;br /&gt;
fessant un version beta test je laisse quand même un emplacement pour que la calculatrice soit compatible avec les ancien ecran qui permettrais de valider le fonctionnement de correct de l'ecran et de la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Ancien ecran.png]]&lt;br /&gt;
&lt;br /&gt;
en réalisant le pcd de la &amp;quot;nouvelle&amp;quot; calculatrice je remarque que faire un adaptateur pour que les nouveaux ecran puisse être tester sur les calculatrice de base (qui validerai leurs fonctionnement )&lt;br /&gt;
&lt;br /&gt;
Etude du clavier Numwork&lt;br /&gt;
&lt;br /&gt;
Refaire le clavier de la numwork comprend refaire aussi sont clavier qui actuellement composer comme se si &lt;br /&gt;
&lt;br /&gt;
Une premier partie électrique&lt;br /&gt;
 &lt;br /&gt;
[[Fichier:C elec.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une Seconde partie de silicone et de carbone  qui assure le contact &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C sili.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une dernier partie de touche en plastique &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C plastique.jpg&amp;amp;width=180]]&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=60382</id>
		<title>IMA5 2018/2019 P28</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=60382"/>
				<updated>2018-10-03T13:28:37Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Semaine 4 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Construire un clone de la calculatrice open-source NumWorks. Effectuer quelques modifications sur le code source et sur le hardware.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
Il y a plusieur Axes sur le projet&lt;br /&gt;
en premier temps sur une calculatrice officiel&lt;br /&gt;
Logiciel : &lt;br /&gt;
&lt;br /&gt;
Préambule&lt;br /&gt;
- compilation du firmware sur linux / windows &lt;br /&gt;
- mettre a jour un calculatrice&lt;br /&gt;
- compréhension du code dans sa généraliter &lt;br /&gt;
&lt;br /&gt;
Réquis&lt;br /&gt;
- Modification du mode examen pour garder les programme &lt;br /&gt;
- Modification du calculateur pour rajouter des fonction&lt;br /&gt;
- Ajout de memoire a python ( 13 ko disponnible)&lt;br /&gt;
&lt;br /&gt;
Hardware &lt;br /&gt;
&lt;br /&gt;
- Rajout de memoire vive (seulement 256kb) &lt;br /&gt;
- Recherche ecran compatible &lt;br /&gt;
&lt;br /&gt;
en un second temps modifier la calculatrice en rajoutant des fonction non utiliser &lt;br /&gt;
comme lecture de carte sd et utilisation des entrée sortie&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
Pour éviter de me retrouver avec une seul version qui a tout les modification je travail par petit segment qui seront appeler buildx (x étant un chiffre croissant)&lt;br /&gt;
les petit modification pourront comme sa ajouter dans une version futur et des modification juger non pertinent n'impacterons pas sur le peux de place qui a en mémoire flash&lt;br /&gt;
&lt;br /&gt;
Installation : &lt;br /&gt;
&lt;br /&gt;
[https://www.numworks.com/resources/engineering/software/sdk/ source]&lt;br /&gt;
&lt;br /&gt;
Linux &lt;br /&gt;
&lt;br /&gt;
Partant d'un linux vierge pourvoir installer l'environnent sdk pour qu'on puisse mettre a jour et modifier la numwork il faut quel que ressource&lt;br /&gt;
seront nécessaire pour compiler&lt;br /&gt;
 make gcc g++ &lt;br /&gt;
utiliser par &amp;quot;os&amp;quot; de numwork&lt;br /&gt;
 bison build-essential dfu-util flex gcc-arm-none-eabi libfltk1.3-dev libfreetype6-dev libpng12-dev&lt;br /&gt;
une fois tout sa installer linux et enfin prés a compiler et envoyer le code sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Windows&lt;br /&gt;
&lt;br /&gt;
Cette fois n'ayant pas de console il faut l'installer Numwork nous propose Msys2 une fois installer comme sur linux il faut installer pas mal de ressource &lt;br /&gt;
 pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-freetype mingw-w64-x86_64-pkg-config mingw-w64-x86_64-fltk git make bison python&lt;br /&gt;
&lt;br /&gt;
Mac&lt;br /&gt;
aucun mac pour les tests mais sa doit fonctionner correctement &lt;br /&gt;
&lt;br /&gt;
Mise a jour : &lt;br /&gt;
une fois l'ordinateur configurer on compiler et essayer soit le simulateur soit envoyer le code sur la calculatrice (sachant que le simulateur ne simule pas la led et d'autre fonction de la calculatrice)&lt;br /&gt;
Pour compiler le code vers la calculatrice&lt;br /&gt;
 make clean&lt;br /&gt;
 make&lt;br /&gt;
 make epsilon_flash&lt;br /&gt;
Pour compiler le code pour le simulateur&lt;br /&gt;
 make PLATFORM=simulator clean&lt;br /&gt;
 make PLATFORM=simulator&lt;br /&gt;
sachant que le clean et très important on ne peux pas exporter un code qui a était a but du simulateur &lt;br /&gt;
&lt;br /&gt;
Pour exécuter le simulateur &lt;br /&gt;
 ./epsilon.elf&lt;br /&gt;
&lt;br /&gt;
'''Build 1''' désactivation du mode examen &lt;br /&gt;
&lt;br /&gt;
Le mode examen et obligatoire pour tout les calculatrice programmable a partir de la rentrée 2018  le but de se mode et de bloquer l'accès au programme qui on était dejai enregistré dans la calculatrice et de l'indiquer pour aider les surveillant a verifier que le mode et bien actif.&lt;br /&gt;
&lt;br /&gt;
Pour se faire Numwork a choisir d'appliquer 3 action en activant le mode examen &lt;br /&gt;
&lt;br /&gt;
- ajout d'une icone examen dans le menu &lt;br /&gt;
&lt;br /&gt;
- clignotement d'une led en rouge &lt;br /&gt;
&lt;br /&gt;
- effacement des programme python (et non dés-affichage des programme comme le font certain concurrent)&lt;br /&gt;
&lt;br /&gt;
Pour sortir du mode d'examen il suffit soit de reset sa calculatrice ou d'alimenter la calculatrice &lt;br /&gt;
&lt;br /&gt;
Cette dernier fonction et vraiment contraignante même pour une utilisation normal, une mauvaise manipulation et les programmes réaliser s'envole &lt;br /&gt;
&lt;br /&gt;
Pour que la supercherie que le mode examen aie était truquer les indicateur visuel doivent rester il faut juste modifier la dernier fonction&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
Ayant avancée sur la partie software et compris un partie du code je me lance sur la liste des materiel requis pour réaliser un clone.&lt;br /&gt;
tout les composant sont disponible dans le commerce sauf l'ecran qui a réaliser sur mesure pour numwork &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Connecteur_ecran.png]]&lt;br /&gt;
&lt;br /&gt;
On peux voire que la schème donnée par numwork qu'il utiliser des fonction particulier du controleur qui sont: &lt;br /&gt;
&lt;br /&gt;
-un bus de donnée de 16 bits &lt;br /&gt;
&lt;br /&gt;
-4 led de retroéclairage&lt;br /&gt;
&lt;br /&gt;
-Te : Tearing Effect  &lt;br /&gt;
&lt;br /&gt;
-EXTC : extended comande &lt;br /&gt;
&lt;br /&gt;
connaisant les port qui sont requis je peux commencer a chercher un ecran compatible sachant qu'aprés une demande a numwork le ports EXTC n'ai pas encore utiliser et le ports TE peux être desactiver sans vraiment poser de problème&lt;br /&gt;
&lt;br /&gt;
Il et dur de trouver d'un concepteur d'ecran utilisant le controleur ST7789V pour leurs ecran il faut donc se tourner vers la chine &lt;br /&gt;
sur 8 fabricant seulment 4 réponse et sur les 4 réponse seulment 2 avec des produit correspondant a la demande &lt;br /&gt;
l'un viens de [http://www.szelida.cn szelida] et l'autre de [http://www.youritech.com Youri Technology]&lt;br /&gt;
je choisi donc le ET024QV01 [[https://projets-ima.plil.fr/mediawiki/index.php/Fichier:ET024QV01.pdf]]&lt;br /&gt;
&lt;br /&gt;
on peux voire a sa liste de PIN qui a certain PIN qui deveront être fixer a vcc ou gnd pour bloquer le mode d'affichage de la calculatrice mais il posséde les pin requis pour fonctionner avec la calculatice il et juste plus petit&lt;br /&gt;
&lt;br /&gt;
[[Fichier:RAM_numwork.png]]&lt;br /&gt;
&lt;br /&gt;
En paralléle une recherche sur le hardware montre que la place pour la RAM et dejai prévu sur le PCB il faudrait juste modifier une partie software pour qu'il soit pris en compte l'ajout de la RAM boostera fortement les capacité de cette calculatrice et pourra permet normalment de faire des petit calcul formel &lt;br /&gt;
'''&lt;br /&gt;
Partie Software :'''&lt;br /&gt;
&lt;br /&gt;
Vu que le recherche sur la ram a était effectuer je me concentre se coup si sur l'augmentation de la taille alouer a python en prévision de l'augmentation qui serra fait dans le futur !&lt;br /&gt;
&lt;br /&gt;
De base python dispose de 16Kb de mémoire alouer pour fonctionner en peux le pousser a aller jusqu'a 128Kb sans augmentation matériel mais du a l'achirecture de la mémoire du procésseur une fois qu'on dépace les 64 Kb le temps de traitement deviens long tellement que les premier fois j'ai penser la calculatrice totalment planter !&lt;br /&gt;
&lt;br /&gt;
Si on essaye d'alouer plus que 128Kb de mémoire a python la calculatrice bloque l'action et empêche d'ouvrire la console , il existe une petit sécuriter pour éviter de vraiment planter la calculatrice &lt;br /&gt;
&lt;br /&gt;
cette modification permet d'avancer l'hypothése que le système epilson prend 128kb dans la mémoire vive actuel&lt;br /&gt;
&lt;br /&gt;
Une autre modification mineur a était réaliser pour modifier la version de la numwork il n'ai possible que de rentrée un numéro de version ayant 7 char chose intéressant le site de numwork affiche bien notre version modifier &lt;br /&gt;
[[Fichier:Version.png]]&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
Je commence cette semaine par étudier l'utiliter du port TearingEffect et ExtendedCommand on debute par tout commenter pour voir l'effet sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:TE exc.png]]&lt;br /&gt;
(d'autre ligne on était commenter)&lt;br /&gt;
&lt;br /&gt;
je charge donc cette modification dans la calculatrice pour voire le résultat grace a la fonction graphique je charge des fonction assez lourde graphiquement pour voire les changement ( un fonction de base comme f(x)=x n'ai aucun bug graphique)&lt;br /&gt;
&lt;br /&gt;
je test donc tan(x²⁴) et sin(x⁴)&lt;br /&gt;
&lt;br /&gt;
(pour les images de cette partie il n'aie pas possible d'utiliser le simulateur)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Original.png]]&lt;br /&gt;
&lt;br /&gt;
en effectuant quel que déplacement sur la courbe on obtiens des léger bug graphique comme celui la ,ou seulment un petit portion disparaît par a coup&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit bug.png]]&lt;br /&gt;
&lt;br /&gt;
en changent de fenêtre l'as on obtient des bug graphique plus important &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Gros bug.png]]&lt;br /&gt;
&lt;br /&gt;
même si les bug graphique sont présent il ne sont pas gênant car :&lt;br /&gt;
&lt;br /&gt;
- sur des fonctions de base il ne sont pas présent donc pas contraignant pour un étudiant au collège/lycéen &lt;br /&gt;
&lt;br /&gt;
- sur des fonction avancer les bug ne dure quel que seconde et ne sont donc pas gênant &lt;br /&gt;
&lt;br /&gt;
il pourrai donc poser problème sur des fonction plus graphique et dynamique&lt;br /&gt;
&lt;br /&gt;
En cherchant sur internet on peux découvrire un mode de test on y accédes viens le menus paramètres -&amp;gt; A propos on se place sur FCC ID puis on appuis sur la touche 6 on valide et nous voila dans le mode de test &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test usine.png]] [[Fichier:Test bouton.png]]&lt;br /&gt;
&lt;br /&gt;
sur simulateur on ne peux pas dépasser le test bouton car le bouton home n'est pas accessible via le clavier sinon il comporte en plus d'un test ecran pours les couleur primaire , test de led et de l'affichage d'un code (serie) de la calculatrice&lt;br /&gt;
&lt;br /&gt;
Pour rajouter du calcul formel 2 option s'offre a moi crée un application dédier a sa ou l'ajouter a la fonction de math dejai existant la 2 éme option et étudier en se moment &lt;br /&gt;
&lt;br /&gt;
en lisant le code on comprent certain chose : il font des arrondis pour éviter les erreur de la librairie qui peux renvoyer 4^-17&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
Cette semaine je réalise le nouveaux schéma électronique &lt;br /&gt;
&lt;br /&gt;
tout les fonction de base se répéter sans modification (pour le moment) je capable le nouveaux comme afficher sur la datasheet de l’écran (en laissant le TE et EXTC déconnecter) &lt;br /&gt;
&lt;br /&gt;
[[Fichier:NEW ECRAN.png]]&lt;br /&gt;
&lt;br /&gt;
fessant un version beta test je laisse quand même un emplacement pour que la calculatrice soit compatible avec les ancien ecran qui permettrais de valider le fonctionnement de correct de l'ecran et de la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Ancien ecran.png]]&lt;br /&gt;
&lt;br /&gt;
en réalisant le pcd de la &amp;quot;nouvelle&amp;quot; calculatrice je remarque que faire un adaptateur pour que les nouveaux ecran puisse être tester sur les calculatrice de base (qui validerai leurs fonctionnement )&lt;br /&gt;
&lt;br /&gt;
Etude du clavier Numwork&lt;br /&gt;
&lt;br /&gt;
Refaire le clavier de la numwork comprend refaire aussi sont clavier qui actuellement composer comme se si &lt;br /&gt;
&lt;br /&gt;
Une premier partie électrique&lt;br /&gt;
 &lt;br /&gt;
[[Fichier:C elec.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une Seconde partie de silicone et de carbone  qui assure le contact &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C sili.jpg]]&lt;br /&gt;
&lt;br /&gt;
Une dernier partie de touche en plastique &lt;br /&gt;
&lt;br /&gt;
[[Fichier:C plastique.jpg]]&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:C_plastique.jpg&amp;diff=60381</id>
		<title>Fichier:C plastique.jpg</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:C_plastique.jpg&amp;diff=60381"/>
				<updated>2018-10-03T13:27:44Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : couche plastique du clavier&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;couche plastique du clavier&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:C_sili.jpg&amp;diff=60380</id>
		<title>Fichier:C sili.jpg</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:C_sili.jpg&amp;diff=60380"/>
				<updated>2018-10-03T13:26:53Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : couche silicone du clavier&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;couche silicone du clavier&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:C_elec.jpg&amp;diff=60379</id>
		<title>Fichier:C elec.jpg</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:C_elec.jpg&amp;diff=60379"/>
				<updated>2018-10-03T13:24:23Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : couche électronique du clavier&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;couche électronique du clavier&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=60378</id>
		<title>IMA5 2018/2019 P28</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=60378"/>
				<updated>2018-10-03T13:00:16Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Semaine 4 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Construire un clone de la calculatrice open-source NumWorks. Effectuer quelques modifications sur le code source et sur le hardware.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
Il y a plusieur Axes sur le projet&lt;br /&gt;
en premier temps sur une calculatrice officiel&lt;br /&gt;
Logiciel : &lt;br /&gt;
&lt;br /&gt;
Préambule&lt;br /&gt;
- compilation du firmware sur linux / windows &lt;br /&gt;
- mettre a jour un calculatrice&lt;br /&gt;
- compréhension du code dans sa généraliter &lt;br /&gt;
&lt;br /&gt;
Réquis&lt;br /&gt;
- Modification du mode examen pour garder les programme &lt;br /&gt;
- Modification du calculateur pour rajouter des fonction&lt;br /&gt;
- Ajout de memoire a python ( 13 ko disponnible)&lt;br /&gt;
&lt;br /&gt;
Hardware &lt;br /&gt;
&lt;br /&gt;
- Rajout de memoire vive (seulement 256kb) &lt;br /&gt;
- Recherche ecran compatible &lt;br /&gt;
&lt;br /&gt;
en un second temps modifier la calculatrice en rajoutant des fonction non utiliser &lt;br /&gt;
comme lecture de carte sd et utilisation des entrée sortie&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
Pour éviter de me retrouver avec une seul version qui a tout les modification je travail par petit segment qui seront appeler buildx (x étant un chiffre croissant)&lt;br /&gt;
les petit modification pourront comme sa ajouter dans une version futur et des modification juger non pertinent n'impacterons pas sur le peux de place qui a en mémoire flash&lt;br /&gt;
&lt;br /&gt;
Installation : &lt;br /&gt;
&lt;br /&gt;
[https://www.numworks.com/resources/engineering/software/sdk/ source]&lt;br /&gt;
&lt;br /&gt;
Linux &lt;br /&gt;
&lt;br /&gt;
Partant d'un linux vierge pourvoir installer l'environnent sdk pour qu'on puisse mettre a jour et modifier la numwork il faut quel que ressource&lt;br /&gt;
seront nécessaire pour compiler&lt;br /&gt;
 make gcc g++ &lt;br /&gt;
utiliser par &amp;quot;os&amp;quot; de numwork&lt;br /&gt;
 bison build-essential dfu-util flex gcc-arm-none-eabi libfltk1.3-dev libfreetype6-dev libpng12-dev&lt;br /&gt;
une fois tout sa installer linux et enfin prés a compiler et envoyer le code sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Windows&lt;br /&gt;
&lt;br /&gt;
Cette fois n'ayant pas de console il faut l'installer Numwork nous propose Msys2 une fois installer comme sur linux il faut installer pas mal de ressource &lt;br /&gt;
 pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-freetype mingw-w64-x86_64-pkg-config mingw-w64-x86_64-fltk git make bison python&lt;br /&gt;
&lt;br /&gt;
Mac&lt;br /&gt;
aucun mac pour les tests mais sa doit fonctionner correctement &lt;br /&gt;
&lt;br /&gt;
Mise a jour : &lt;br /&gt;
une fois l'ordinateur configurer on compiler et essayer soit le simulateur soit envoyer le code sur la calculatrice (sachant que le simulateur ne simule pas la led et d'autre fonction de la calculatrice)&lt;br /&gt;
Pour compiler le code vers la calculatrice&lt;br /&gt;
 make clean&lt;br /&gt;
 make&lt;br /&gt;
 make epsilon_flash&lt;br /&gt;
Pour compiler le code pour le simulateur&lt;br /&gt;
 make PLATFORM=simulator clean&lt;br /&gt;
 make PLATFORM=simulator&lt;br /&gt;
sachant que le clean et très important on ne peux pas exporter un code qui a était a but du simulateur &lt;br /&gt;
&lt;br /&gt;
Pour exécuter le simulateur &lt;br /&gt;
 ./epsilon.elf&lt;br /&gt;
&lt;br /&gt;
'''Build 1''' désactivation du mode examen &lt;br /&gt;
&lt;br /&gt;
Le mode examen et obligatoire pour tout les calculatrice programmable a partir de la rentrée 2018  le but de se mode et de bloquer l'accès au programme qui on était dejai enregistré dans la calculatrice et de l'indiquer pour aider les surveillant a verifier que le mode et bien actif.&lt;br /&gt;
&lt;br /&gt;
Pour se faire Numwork a choisir d'appliquer 3 action en activant le mode examen &lt;br /&gt;
&lt;br /&gt;
- ajout d'une icone examen dans le menu &lt;br /&gt;
&lt;br /&gt;
- clignotement d'une led en rouge &lt;br /&gt;
&lt;br /&gt;
- effacement des programme python (et non dés-affichage des programme comme le font certain concurrent)&lt;br /&gt;
&lt;br /&gt;
Pour sortir du mode d'examen il suffit soit de reset sa calculatrice ou d'alimenter la calculatrice &lt;br /&gt;
&lt;br /&gt;
Cette dernier fonction et vraiment contraignante même pour une utilisation normal, une mauvaise manipulation et les programmes réaliser s'envole &lt;br /&gt;
&lt;br /&gt;
Pour que la supercherie que le mode examen aie était truquer les indicateur visuel doivent rester il faut juste modifier la dernier fonction&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
Ayant avancée sur la partie software et compris un partie du code je me lance sur la liste des materiel requis pour réaliser un clone.&lt;br /&gt;
tout les composant sont disponible dans le commerce sauf l'ecran qui a réaliser sur mesure pour numwork &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Connecteur_ecran.png]]&lt;br /&gt;
&lt;br /&gt;
On peux voire que la schème donnée par numwork qu'il utiliser des fonction particulier du controleur qui sont: &lt;br /&gt;
&lt;br /&gt;
-un bus de donnée de 16 bits &lt;br /&gt;
&lt;br /&gt;
-4 led de retroéclairage&lt;br /&gt;
&lt;br /&gt;
-Te : Tearing Effect  &lt;br /&gt;
&lt;br /&gt;
-EXTC : extended comande &lt;br /&gt;
&lt;br /&gt;
connaisant les port qui sont requis je peux commencer a chercher un ecran compatible sachant qu'aprés une demande a numwork le ports EXTC n'ai pas encore utiliser et le ports TE peux être desactiver sans vraiment poser de problème&lt;br /&gt;
&lt;br /&gt;
Il et dur de trouver d'un concepteur d'ecran utilisant le controleur ST7789V pour leurs ecran il faut donc se tourner vers la chine &lt;br /&gt;
sur 8 fabricant seulment 4 réponse et sur les 4 réponse seulment 2 avec des produit correspondant a la demande &lt;br /&gt;
l'un viens de [http://www.szelida.cn szelida] et l'autre de [http://www.youritech.com Youri Technology]&lt;br /&gt;
je choisi donc le ET024QV01 [[https://projets-ima.plil.fr/mediawiki/index.php/Fichier:ET024QV01.pdf]]&lt;br /&gt;
&lt;br /&gt;
on peux voire a sa liste de PIN qui a certain PIN qui deveront être fixer a vcc ou gnd pour bloquer le mode d'affichage de la calculatrice mais il posséde les pin requis pour fonctionner avec la calculatice il et juste plus petit&lt;br /&gt;
&lt;br /&gt;
[[Fichier:RAM_numwork.png]]&lt;br /&gt;
&lt;br /&gt;
En paralléle une recherche sur le hardware montre que la place pour la RAM et dejai prévu sur le PCB il faudrait juste modifier une partie software pour qu'il soit pris en compte l'ajout de la RAM boostera fortement les capacité de cette calculatrice et pourra permet normalment de faire des petit calcul formel &lt;br /&gt;
'''&lt;br /&gt;
Partie Software :'''&lt;br /&gt;
&lt;br /&gt;
Vu que le recherche sur la ram a était effectuer je me concentre se coup si sur l'augmentation de la taille alouer a python en prévision de l'augmentation qui serra fait dans le futur !&lt;br /&gt;
&lt;br /&gt;
De base python dispose de 16Kb de mémoire alouer pour fonctionner en peux le pousser a aller jusqu'a 128Kb sans augmentation matériel mais du a l'achirecture de la mémoire du procésseur une fois qu'on dépace les 64 Kb le temps de traitement deviens long tellement que les premier fois j'ai penser la calculatrice totalment planter !&lt;br /&gt;
&lt;br /&gt;
Si on essaye d'alouer plus que 128Kb de mémoire a python la calculatrice bloque l'action et empêche d'ouvrire la console , il existe une petit sécuriter pour éviter de vraiment planter la calculatrice &lt;br /&gt;
&lt;br /&gt;
cette modification permet d'avancer l'hypothése que le système epilson prend 128kb dans la mémoire vive actuel&lt;br /&gt;
&lt;br /&gt;
Une autre modification mineur a était réaliser pour modifier la version de la numwork il n'ai possible que de rentrée un numéro de version ayant 7 char chose intéressant le site de numwork affiche bien notre version modifier &lt;br /&gt;
[[Fichier:Version.png]]&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
Je commence cette semaine par étudier l'utiliter du port TearingEffect et ExtendedCommand on debute par tout commenter pour voir l'effet sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:TE exc.png]]&lt;br /&gt;
(d'autre ligne on était commenter)&lt;br /&gt;
&lt;br /&gt;
je charge donc cette modification dans la calculatrice pour voire le résultat grace a la fonction graphique je charge des fonction assez lourde graphiquement pour voire les changement ( un fonction de base comme f(x)=x n'ai aucun bug graphique)&lt;br /&gt;
&lt;br /&gt;
je test donc tan(x²⁴) et sin(x⁴)&lt;br /&gt;
&lt;br /&gt;
(pour les images de cette partie il n'aie pas possible d'utiliser le simulateur)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Original.png]]&lt;br /&gt;
&lt;br /&gt;
en effectuant quel que déplacement sur la courbe on obtiens des léger bug graphique comme celui la ,ou seulment un petit portion disparaît par a coup&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit bug.png]]&lt;br /&gt;
&lt;br /&gt;
en changent de fenêtre l'as on obtient des bug graphique plus important &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Gros bug.png]]&lt;br /&gt;
&lt;br /&gt;
même si les bug graphique sont présent il ne sont pas gênant car :&lt;br /&gt;
&lt;br /&gt;
- sur des fonctions de base il ne sont pas présent donc pas contraignant pour un étudiant au collège/lycéen &lt;br /&gt;
&lt;br /&gt;
- sur des fonction avancer les bug ne dure quel que seconde et ne sont donc pas gênant &lt;br /&gt;
&lt;br /&gt;
il pourrai donc poser problème sur des fonction plus graphique et dynamique&lt;br /&gt;
&lt;br /&gt;
En cherchant sur internet on peux découvrire un mode de test on y accédes viens le menus paramètres -&amp;gt; A propos on se place sur FCC ID puis on appuis sur la touche 6 on valide et nous voila dans le mode de test &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test usine.png]] [[Fichier:Test bouton.png]]&lt;br /&gt;
&lt;br /&gt;
sur simulateur on ne peux pas dépasser le test bouton car le bouton home n'est pas accessible via le clavier sinon il comporte en plus d'un test ecran pours les couleur primaire , test de led et de l'affichage d'un code (serie) de la calculatrice&lt;br /&gt;
&lt;br /&gt;
Pour rajouter du calcul formel 2 option s'offre a moi crée un application dédier a sa ou l'ajouter a la fonction de math dejai existant la 2 éme option et étudier en se moment &lt;br /&gt;
&lt;br /&gt;
en lisant le code on comprent certain chose : il font des arrondis pour éviter les erreur de la librairie qui peux renvoyer 4^-17&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
Cette semaine je réalise le nouveaux schéma électronique &lt;br /&gt;
&lt;br /&gt;
tout les fonction de base se répéter sans modification (pour le moment) je capable le nouveaux comme afficher sur la datasheet de l’écran (en laissant le TE et EXTC déconnecter) &lt;br /&gt;
&lt;br /&gt;
[[Fichier:NEW ECRAN.png]]&lt;br /&gt;
&lt;br /&gt;
fessant un version beta test je laisse quand même un emplacement pour que la calculatrice soit compatible avec les ancien ecran qui permettrais de valider le fonctionnement de correct de l'ecran et de la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Ancien ecran.png]]&lt;br /&gt;
&lt;br /&gt;
en réalisant le pcd de la &amp;quot;nouvelle&amp;quot; calculatrice je remarque que faire un adaptateur pour que les nouveaux ecran puisse être tester sur les calculatrice de base (qui validerai leurs fonctionnement )&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=60377</id>
		<title>IMA5 2018/2019 P28</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=60377"/>
				<updated>2018-10-03T12:59:36Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Semaine 4 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Construire un clone de la calculatrice open-source NumWorks. Effectuer quelques modifications sur le code source et sur le hardware.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
Il y a plusieur Axes sur le projet&lt;br /&gt;
en premier temps sur une calculatrice officiel&lt;br /&gt;
Logiciel : &lt;br /&gt;
&lt;br /&gt;
Préambule&lt;br /&gt;
- compilation du firmware sur linux / windows &lt;br /&gt;
- mettre a jour un calculatrice&lt;br /&gt;
- compréhension du code dans sa généraliter &lt;br /&gt;
&lt;br /&gt;
Réquis&lt;br /&gt;
- Modification du mode examen pour garder les programme &lt;br /&gt;
- Modification du calculateur pour rajouter des fonction&lt;br /&gt;
- Ajout de memoire a python ( 13 ko disponnible)&lt;br /&gt;
&lt;br /&gt;
Hardware &lt;br /&gt;
&lt;br /&gt;
- Rajout de memoire vive (seulement 256kb) &lt;br /&gt;
- Recherche ecran compatible &lt;br /&gt;
&lt;br /&gt;
en un second temps modifier la calculatrice en rajoutant des fonction non utiliser &lt;br /&gt;
comme lecture de carte sd et utilisation des entrée sortie&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
Pour éviter de me retrouver avec une seul version qui a tout les modification je travail par petit segment qui seront appeler buildx (x étant un chiffre croissant)&lt;br /&gt;
les petit modification pourront comme sa ajouter dans une version futur et des modification juger non pertinent n'impacterons pas sur le peux de place qui a en mémoire flash&lt;br /&gt;
&lt;br /&gt;
Installation : &lt;br /&gt;
&lt;br /&gt;
[https://www.numworks.com/resources/engineering/software/sdk/ source]&lt;br /&gt;
&lt;br /&gt;
Linux &lt;br /&gt;
&lt;br /&gt;
Partant d'un linux vierge pourvoir installer l'environnent sdk pour qu'on puisse mettre a jour et modifier la numwork il faut quel que ressource&lt;br /&gt;
seront nécessaire pour compiler&lt;br /&gt;
 make gcc g++ &lt;br /&gt;
utiliser par &amp;quot;os&amp;quot; de numwork&lt;br /&gt;
 bison build-essential dfu-util flex gcc-arm-none-eabi libfltk1.3-dev libfreetype6-dev libpng12-dev&lt;br /&gt;
une fois tout sa installer linux et enfin prés a compiler et envoyer le code sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Windows&lt;br /&gt;
&lt;br /&gt;
Cette fois n'ayant pas de console il faut l'installer Numwork nous propose Msys2 une fois installer comme sur linux il faut installer pas mal de ressource &lt;br /&gt;
 pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-freetype mingw-w64-x86_64-pkg-config mingw-w64-x86_64-fltk git make bison python&lt;br /&gt;
&lt;br /&gt;
Mac&lt;br /&gt;
aucun mac pour les tests mais sa doit fonctionner correctement &lt;br /&gt;
&lt;br /&gt;
Mise a jour : &lt;br /&gt;
une fois l'ordinateur configurer on compiler et essayer soit le simulateur soit envoyer le code sur la calculatrice (sachant que le simulateur ne simule pas la led et d'autre fonction de la calculatrice)&lt;br /&gt;
Pour compiler le code vers la calculatrice&lt;br /&gt;
 make clean&lt;br /&gt;
 make&lt;br /&gt;
 make epsilon_flash&lt;br /&gt;
Pour compiler le code pour le simulateur&lt;br /&gt;
 make PLATFORM=simulator clean&lt;br /&gt;
 make PLATFORM=simulator&lt;br /&gt;
sachant que le clean et très important on ne peux pas exporter un code qui a était a but du simulateur &lt;br /&gt;
&lt;br /&gt;
Pour exécuter le simulateur &lt;br /&gt;
 ./epsilon.elf&lt;br /&gt;
&lt;br /&gt;
'''Build 1''' désactivation du mode examen &lt;br /&gt;
&lt;br /&gt;
Le mode examen et obligatoire pour tout les calculatrice programmable a partir de la rentrée 2018  le but de se mode et de bloquer l'accès au programme qui on était dejai enregistré dans la calculatrice et de l'indiquer pour aider les surveillant a verifier que le mode et bien actif.&lt;br /&gt;
&lt;br /&gt;
Pour se faire Numwork a choisir d'appliquer 3 action en activant le mode examen &lt;br /&gt;
&lt;br /&gt;
- ajout d'une icone examen dans le menu &lt;br /&gt;
&lt;br /&gt;
- clignotement d'une led en rouge &lt;br /&gt;
&lt;br /&gt;
- effacement des programme python (et non dés-affichage des programme comme le font certain concurrent)&lt;br /&gt;
&lt;br /&gt;
Pour sortir du mode d'examen il suffit soit de reset sa calculatrice ou d'alimenter la calculatrice &lt;br /&gt;
&lt;br /&gt;
Cette dernier fonction et vraiment contraignante même pour une utilisation normal, une mauvaise manipulation et les programmes réaliser s'envole &lt;br /&gt;
&lt;br /&gt;
Pour que la supercherie que le mode examen aie était truquer les indicateur visuel doivent rester il faut juste modifier la dernier fonction&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
Ayant avancée sur la partie software et compris un partie du code je me lance sur la liste des materiel requis pour réaliser un clone.&lt;br /&gt;
tout les composant sont disponible dans le commerce sauf l'ecran qui a réaliser sur mesure pour numwork &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Connecteur_ecran.png]]&lt;br /&gt;
&lt;br /&gt;
On peux voire que la schème donnée par numwork qu'il utiliser des fonction particulier du controleur qui sont: &lt;br /&gt;
&lt;br /&gt;
-un bus de donnée de 16 bits &lt;br /&gt;
&lt;br /&gt;
-4 led de retroéclairage&lt;br /&gt;
&lt;br /&gt;
-Te : Tearing Effect  &lt;br /&gt;
&lt;br /&gt;
-EXTC : extended comande &lt;br /&gt;
&lt;br /&gt;
connaisant les port qui sont requis je peux commencer a chercher un ecran compatible sachant qu'aprés une demande a numwork le ports EXTC n'ai pas encore utiliser et le ports TE peux être desactiver sans vraiment poser de problème&lt;br /&gt;
&lt;br /&gt;
Il et dur de trouver d'un concepteur d'ecran utilisant le controleur ST7789V pour leurs ecran il faut donc se tourner vers la chine &lt;br /&gt;
sur 8 fabricant seulment 4 réponse et sur les 4 réponse seulment 2 avec des produit correspondant a la demande &lt;br /&gt;
l'un viens de [http://www.szelida.cn szelida] et l'autre de [http://www.youritech.com Youri Technology]&lt;br /&gt;
je choisi donc le ET024QV01 [[https://projets-ima.plil.fr/mediawiki/index.php/Fichier:ET024QV01.pdf]]&lt;br /&gt;
&lt;br /&gt;
on peux voire a sa liste de PIN qui a certain PIN qui deveront être fixer a vcc ou gnd pour bloquer le mode d'affichage de la calculatrice mais il posséde les pin requis pour fonctionner avec la calculatice il et juste plus petit&lt;br /&gt;
&lt;br /&gt;
[[Fichier:RAM_numwork.png]]&lt;br /&gt;
&lt;br /&gt;
En paralléle une recherche sur le hardware montre que la place pour la RAM et dejai prévu sur le PCB il faudrait juste modifier une partie software pour qu'il soit pris en compte l'ajout de la RAM boostera fortement les capacité de cette calculatrice et pourra permet normalment de faire des petit calcul formel &lt;br /&gt;
'''&lt;br /&gt;
Partie Software :'''&lt;br /&gt;
&lt;br /&gt;
Vu que le recherche sur la ram a était effectuer je me concentre se coup si sur l'augmentation de la taille alouer a python en prévision de l'augmentation qui serra fait dans le futur !&lt;br /&gt;
&lt;br /&gt;
De base python dispose de 16Kb de mémoire alouer pour fonctionner en peux le pousser a aller jusqu'a 128Kb sans augmentation matériel mais du a l'achirecture de la mémoire du procésseur une fois qu'on dépace les 64 Kb le temps de traitement deviens long tellement que les premier fois j'ai penser la calculatrice totalment planter !&lt;br /&gt;
&lt;br /&gt;
Si on essaye d'alouer plus que 128Kb de mémoire a python la calculatrice bloque l'action et empêche d'ouvrire la console , il existe une petit sécuriter pour éviter de vraiment planter la calculatrice &lt;br /&gt;
&lt;br /&gt;
cette modification permet d'avancer l'hypothése que le système epilson prend 128kb dans la mémoire vive actuel&lt;br /&gt;
&lt;br /&gt;
Une autre modification mineur a était réaliser pour modifier la version de la numwork il n'ai possible que de rentrée un numéro de version ayant 7 char chose intéressant le site de numwork affiche bien notre version modifier &lt;br /&gt;
[[Fichier:Version.png]]&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
Je commence cette semaine par étudier l'utiliter du port TearingEffect et ExtendedCommand on debute par tout commenter pour voir l'effet sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:TE exc.png]]&lt;br /&gt;
(d'autre ligne on était commenter)&lt;br /&gt;
&lt;br /&gt;
je charge donc cette modification dans la calculatrice pour voire le résultat grace a la fonction graphique je charge des fonction assez lourde graphiquement pour voire les changement ( un fonction de base comme f(x)=x n'ai aucun bug graphique)&lt;br /&gt;
&lt;br /&gt;
je test donc tan(x²⁴) et sin(x⁴)&lt;br /&gt;
&lt;br /&gt;
(pour les images de cette partie il n'aie pas possible d'utiliser le simulateur)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Original.png]]&lt;br /&gt;
&lt;br /&gt;
en effectuant quel que déplacement sur la courbe on obtiens des léger bug graphique comme celui la ,ou seulment un petit portion disparaît par a coup&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit bug.png]]&lt;br /&gt;
&lt;br /&gt;
en changent de fenêtre l'as on obtient des bug graphique plus important &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Gros bug.png]]&lt;br /&gt;
&lt;br /&gt;
même si les bug graphique sont présent il ne sont pas gênant car :&lt;br /&gt;
&lt;br /&gt;
- sur des fonctions de base il ne sont pas présent donc pas contraignant pour un étudiant au collège/lycéen &lt;br /&gt;
&lt;br /&gt;
- sur des fonction avancer les bug ne dure quel que seconde et ne sont donc pas gênant &lt;br /&gt;
&lt;br /&gt;
il pourrai donc poser problème sur des fonction plus graphique et dynamique&lt;br /&gt;
&lt;br /&gt;
En cherchant sur internet on peux découvrire un mode de test on y accédes viens le menus paramètres -&amp;gt; A propos on se place sur FCC ID puis on appuis sur la touche 6 on valide et nous voila dans le mode de test &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test usine.png]] [[Fichier:Test bouton.png]]&lt;br /&gt;
&lt;br /&gt;
sur simulateur on ne peux pas dépasser le test bouton car le bouton home n'est pas accessible via le clavier sinon il comporte en plus d'un test ecran pours les couleur primaire , test de led et de l'affichage d'un code (serie) de la calculatrice&lt;br /&gt;
&lt;br /&gt;
Pour rajouter du calcul formel 2 option s'offre a moi crée un application dédier a sa ou l'ajouter a la fonction de math dejai existant la 2 éme option et étudier en se moment &lt;br /&gt;
&lt;br /&gt;
en lisant le code on comprent certain chose : il font des arrondis pour éviter les erreur de la librairie qui peux renvoyer 4^-17&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
cette semaine je réalise le nouveaux schéma électronique &lt;br /&gt;
&lt;br /&gt;
tout les fonction de base se répéter sans modification (pour le moment) je capable le nouveaux comme afficher sur la datasheet de l’écran (en laissant le TE et EXTC déconnecter) &lt;br /&gt;
&lt;br /&gt;
[[Fichier:NEW ECRAN.png]]&lt;br /&gt;
&lt;br /&gt;
fessant un version beta test je laisse quand même un emplacement pour que la calculatrice soit compatible avec les ancien ecran qui permettrais de valider le fonctionnement de correct de l'ecran et de la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Ancien ecran.png]]&lt;br /&gt;
&lt;br /&gt;
en réalisant le pcd de la &amp;quot;nouvelle&amp;quot; calculatrice je remarque que faire un adaptateur pour que les nouveaux ecran puisse être tester sur les calculatrice de base (qui validerai leurs fonctionnement )&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Ancien_ecran.png&amp;diff=60376</id>
		<title>Fichier:Ancien ecran.png</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Ancien_ecran.png&amp;diff=60376"/>
				<updated>2018-10-03T12:55:01Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : ancien branchement&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;ancien branchement&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:NEW_ECRAN.png&amp;diff=60375</id>
		<title>Fichier:NEW ECRAN.png</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:NEW_ECRAN.png&amp;diff=60375"/>
				<updated>2018-10-03T12:49:50Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : Nouveaux câblage&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Nouveaux câblage&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Projets_IMA5_2018/2019&amp;diff=60209</id>
		<title>Projets IMA5 2018/2019</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Projets_IMA5_2018/2019&amp;diff=60209"/>
				<updated>2018-09-28T10:01:49Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Matériel à acquérir */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Merci de référencer vos pages de projets ici. Merci aussi d'uniformiser vos formats que ce soit en regardant la présentation des projets déjà créés ou en demandant une modification du format des précédents si votre façon de faire vous semble la meilleure. Dans tous les cas un minimum de communication entre les binômes est conseillée.&lt;br /&gt;
&lt;br /&gt;
Toutes les sources doivent être déposées sur notre archive GIT. Le service est disponible à l'URL [https://archives.plil.fr archives.plil.fr]. Connectez-vous avec vos identifiants Polytech'Lille. Sauf indication contraire de vos encadrants, rendez le projet public et mettez le lien sur votre Wiki. Vous pouvez trouver de la documentation sur ce système d'archives sur ce [https://git-scm.com/book/fr/v1 site].&lt;br /&gt;
&lt;br /&gt;
== Répartition des binômes ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Projet !! Elèves !! Encadrants école !! Rapport intermédiaire !! Rapport final !! Vidéo&lt;br /&gt;
|-&lt;br /&gt;
| P0 [[IMA5 2018/2019 P0|Modèle]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P04 [[IMA5 2018/2019 P04|Conception mécatronique d'un gant haptique pour la réalité virtuelle]]&lt;br /&gt;
| Thomas Hubert&lt;br /&gt;
| Frédéric Giraud / Betty Semail&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P06 [[IMA5 2018/2019 P06|Développement d'un système de gestion d'un réseau de capteurs]]&lt;br /&gt;
| Simon Feutrier / Antoine Duquenoy&lt;br /&gt;
| Thomas Vantroys / Alexandre Boé&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P10 [[ IMA5 2018/2019 P10|Traces d’exécution de système temps réel]]&lt;br /&gt;
| Amine El Messaoudi&lt;br /&gt;
| Julien Forget&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P13 [[ IMA5 2018/2019 P13|Réseau de capteurs pour parking intelligent]]&lt;br /&gt;
| Baptiste Cartier&lt;br /&gt;
| Alexandre Boé / Xavier Redon / Thomas Vantroys&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P16 [[IMA5 2018/2019 P16|Le Sportif Augmenté]]&lt;br /&gt;
| Matthieu Delobelle&lt;br /&gt;
| Alexandre Boé / Xavier Redon / Thomas Vantroys &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P21 [[IMA5 2018/2019 P21|Pilotage automatique d'un drone]]&lt;br /&gt;
| Claire Vandamme / Justine Senellart&lt;br /&gt;
| Aziz Nakrachi / Claudine Lecocq&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P22 [[IMA5 2018/2019 P22|Commande en position d'un drone]]&lt;br /&gt;
| Lijie YAO / Lirui ZHANG&lt;br /&gt;
| Komi Midzodzi PEKPE&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P28 [[IMA5 2018/2019 P28|Clonage d'une calculatrice open-source NumWorks]]&lt;br /&gt;
| Alexis Dorian&lt;br /&gt;
| Xavier Redon / Alexandre Boé / Thomas Vantroys&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P31 [[IMA5 2018/2019 P31|Supervision des serveurs de la plateforme informatique]]&lt;br /&gt;
| Taky Djeraba&lt;br /&gt;
| Xavier Redon / Thomas Vantroys&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P36 [[IMA5 2018/2019 P36|Pilotage automatique d'un drone]]&lt;br /&gt;
| Abass Ayoub / Alexis Viscogliosi&lt;br /&gt;
| Aziz Nakrachi / Claudine Lecocq&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P42 [[IMA5 2018/2019 P42 |Traçage d'empreintes de navigateur en utilisant des techniques avancées d'apprentissage automatique]]&lt;br /&gt;
| Mehanna Naif&lt;br /&gt;
| Walter Rudametkin / Romain Rouvoy&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Matériel à acquérir ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Projet !! Matériel&lt;br /&gt;
|-&lt;br /&gt;
| P28 [[IMA5 2018/2019 P28|Clonage d'une calculatrice open-source NumWorks]]&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/Adesto-Technologies/AT25SF641-SUB-T?qs=H7WEQPD31y1rOaelqGYUaQ== AT25SF641  ](Ram)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/STMicroelectronics/STM32F412VGT6?qs=qzCNEk%252bRr%252baGf9Ry5zWpvw%3D%3D&amp;amp;gclid=EAIaIQobChMI8OWLjsq63QIVxIjVCh0HCADGEAAYASAAEgKz5_D_BwE STM32F412VGT6  ] (microcontroleur)&lt;br /&gt;
&lt;br /&gt;
[https://www.alibaba.com/product-detail/2-4-portait-LCD-module-ET024QV01_60727925701.html?spm=a2700.details.pronpeci14.2.5d9f12f4aeUQCE ET024QV01-K] (ecran)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/Newhaven-Display/NHD-24-240320CF-CTXI-F?qs=sGAEpiMZZMu%2fRY1bNe3bOwi7Ku0KTtuWVqK2peAZKeQH3KKyXLxcNw== NHD-2.4-240320CF] (autre ecran)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/hirose-hrs/fh12s-40s-0-5sh-55/fiche-femelle-ffc-fpc-0-5mm-zif/dp/1324588?MER=sy-me-pd-mi-alte connecteur nappe]&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/richtek/rt9365gqw/driver-de-led-boost-250khz-wqfn/dp/2729821 RT9365GQW ](control retro éclairage)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/richtek/rt9078-28gj5/regul-ldo-fixe-2-8v-0-3a-tsot/dp/2729807?krypto=MSyMhsZJSwpJzbmMaWZGoRn20imQ%2Bn8JeH7D4MHTZf%2B2dB6VsTHGLrm%2FOLrSWQ7xeojNK5JXTGImaV58n0tJ9A%3D%3D&amp;amp;ddkey=https%3Afr-FR%2FElement14_France%2Fsearch RT9078-28GJ5 ](régulateur de tension)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/richtek/rt9526age/chargeur-bat-li-ion-0-5a-wdfn/dp/2433119?krypto=HIqdjNHqabMYeF39WOpX9xKeZ2JYmYKNIiZzSQh83hC6pdrzMzXqu1zU68gCpKyvU1HQLlLe%2FHV60YNgVaXvsg%3D%3D&amp;amp;ddkey=https%3Afr-FR%2FElement14_France%2Fsearch RT9526AGE ](chargeur lipo)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/stmicroelectronics/usblc6-2sc6/esd-protection-smd-sot-23-6/dp/1269406?st=USBLC6-2SC6 USBLC6-2SC6 ] (protection USB)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/Lite-On/LTST-S310F2KT?qs=xb8aMrBSZRKYryAdlDhh3g== TST-S310F2KT] (led multi couleur)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/ECS/ECS-2520MV-250-BN-TR?qs=sGAEpiMZZMtldj7qu1ydrQG1afnrXLdGjWqvhZ7yquORJy%252b1U87asg%3d%3d Oscillateurs]&lt;br /&gt;
&lt;br /&gt;
|-}&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Projets_IMA5_2018/2019&amp;diff=60188</id>
		<title>Projets IMA5 2018/2019</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Projets_IMA5_2018/2019&amp;diff=60188"/>
				<updated>2018-09-27T16:01:43Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Matériel à acquérir */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Merci de référencer vos pages de projets ici. Merci aussi d'uniformiser vos formats que ce soit en regardant la présentation des projets déjà créés ou en demandant une modification du format des précédents si votre façon de faire vous semble la meilleure. Dans tous les cas un minimum de communication entre les binômes est conseillée.&lt;br /&gt;
&lt;br /&gt;
Toutes les sources doivent être déposées sur notre archive GIT. Le service est disponible à l'URL [https://archives.plil.fr archives.plil.fr]. Connectez-vous avec vos identifiants Polytech'Lille. Sauf indication contraire de vos encadrants, rendez le projet public et mettez le lien sur votre Wiki. Vous pouvez trouver de la documentation sur ce système d'archives sur ce [https://git-scm.com/book/fr/v1 site].&lt;br /&gt;
&lt;br /&gt;
== Répartition des binômes ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Projet !! Elèves !! Encadrants école !! Rapport intermédiaire !! Rapport final !! Vidéo&lt;br /&gt;
|-&lt;br /&gt;
| P0 [[IMA5 2018/2019 P0|Modèle]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P04 [[IMA5 2018/2019 P04|Conception mécatronique d'un gant haptique pour la réalité virtuelle]]&lt;br /&gt;
| Thomas Hubert&lt;br /&gt;
| Frédéric Giraud / Betty Semail&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P06 [[IMA5 2018/2019 P06|Développement d'un système de gestion d'un réseau de capteurs]]&lt;br /&gt;
| Simon Feutrier / Antoine Duquenoy&lt;br /&gt;
| Thomas Vantroys / Alexandre Boé&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P10 [[ IMA5 2018/2019 P10|Traces d’exécution de système temps réel]]&lt;br /&gt;
| Amine El Messaoudi&lt;br /&gt;
| Julien Forget&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P13 [[ IMA5 2018/2019 P13|Réseau de capteurs pour parking intelligent]]&lt;br /&gt;
| Baptiste Cartier&lt;br /&gt;
| Alexandre Boé / Xavier Redon / Thomas Vantroys&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P16 [[IMA5 2018/2019 P16|Le Sportif Augmenté]]&lt;br /&gt;
| Matthieu Delobelle&lt;br /&gt;
| Alexandre Boé / Xavier Redon / Thomas Vantroys &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P21 [[IMA5 2018/2019 P21|Pilotage automatique d'un drone]]&lt;br /&gt;
| Claire Vandamme / Justine Senellart&lt;br /&gt;
| Aziz Nakrachi / Claudine Lecocq&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P22 [[IMA5 2018/2019 P22|Commande en position d'un drone]]&lt;br /&gt;
| Lijie YAO / Lirui ZHANG&lt;br /&gt;
| Komi Midzodzi PEKPE&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P28 [[IMA5 2018/2019 P28|Clonage d'une calculatrice open-source NumWorks]]&lt;br /&gt;
| Alexis Dorian&lt;br /&gt;
| Xavier Redon / Alexandre Boé / Thomas Vantroys&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P31 [[IMA5 2018/2019 P31|Supervision des serveurs de la plateforme informatique]]&lt;br /&gt;
| Taky Djeraba&lt;br /&gt;
| Xavier Redon / Thomas Vantroys&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P36 [[IMA5 2018/2019 P36|Pilotage automatique d'un drone]]&lt;br /&gt;
| Abass Ayoub / Alexis Viscogliosi&lt;br /&gt;
| Aziz Nakrachi / Claudine Lecocq&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P42 [[IMA5 2018/2019 P42 |Traçage d'empreintes de navigateur en utilisant des techniques avancées d'apprentissage automatique]]&lt;br /&gt;
| Mehanna Naif&lt;br /&gt;
| Walter Rudametkin / Romain Rouvoy&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Matériel à acquérir ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Projet !! Matériel&lt;br /&gt;
|-&lt;br /&gt;
| P28 [[IMA5 2018/2019 P28|Clonage d'une calculatrice open-source NumWorks]]&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/Adesto-Technologies/AT25SF641-SUB-T?qs=H7WEQPD31y1rOaelqGYUaQ== AT25SF641  ](Ram)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/STMicroelectronics/STM32F412VGT6?qs=qzCNEk%252bRr%252baGf9Ry5zWpvw%3D%3D&amp;amp;gclid=EAIaIQobChMI8OWLjsq63QIVxIjVCh0HCADGEAAYASAAEgKz5_D_BwE STM32F412VGT6  ] (microcontroleur)&lt;br /&gt;
&lt;br /&gt;
[https://www.alibaba.com/product-detail/2-4-portait-LCD-module-ET024QV01_60727925701.html?spm=a2700.details.pronpeci14.2.5d9f12f4aeUQCE ET024QV01-K] (ecran)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/Newhaven-Display/NHD-24-240320CF-CTXI-F?qs=sGAEpiMZZMu%2fRY1bNe3bOwi7Ku0KTtuWVqK2peAZKeQH3KKyXLxcNw== NHD-2.4-240320CF] (autre ecran)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/hirose-hrs/fh12s-40s-0-5sh-55/fiche-femelle-ffc-fpc-0-5mm-zif/dp/1324588?MER=sy-me-pd-mi-alte connecteur nappe]&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/richtek/rt9365gqw/driver-de-led-boost-250khz-wqfn/dp/2729821 RT9365GQW ](control retro éclairage)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/richtek/rt9078-28gj5/regul-ldo-fixe-2-8v-0-3a-tsot/dp/2729807?krypto=MSyMhsZJSwpJzbmMaWZGoRn20imQ%2Bn8JeH7D4MHTZf%2B2dB6VsTHGLrm%2FOLrSWQ7xeojNK5JXTGImaV58n0tJ9A%3D%3D&amp;amp;ddkey=https%3Afr-FR%2FElement14_France%2Fsearch RT9078-28GJ5 ](régulateur de tension)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/richtek/rt9526age/chargeur-bat-li-ion-0-5a-wdfn/dp/2433119?krypto=HIqdjNHqabMYeF39WOpX9xKeZ2JYmYKNIiZzSQh83hC6pdrzMzXqu1zU68gCpKyvU1HQLlLe%2FHV60YNgVaXvsg%3D%3D&amp;amp;ddkey=https%3Afr-FR%2FElement14_France%2Fsearch RT9526AGE ](chargeur lipo)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/stmicroelectronics/usblc6-2sc6/esd-protection-smd-sot-23-6/dp/1269406?st=USBLC6-2SC6 USBLC6-2SC6 ] (protection USB)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/Lite-On/LTST-S310F2KT?qs=xb8aMrBSZRKYryAdlDhh3g== TST-S310F2KT] (led multi couleur)&lt;br /&gt;
&lt;br /&gt;
|-}&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=59999</id>
		<title>IMA5 2018/2019 P28</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=59999"/>
				<updated>2018-09-26T16:09:11Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Semaine 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Construire un clone de la calculatrice open-source NumWorks. Effectuer quelques modifications sur le code source et sur le hardware.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
Il y a plusieur Axes sur le projet&lt;br /&gt;
en premier temps sur une calculatrice officiel&lt;br /&gt;
Logiciel : &lt;br /&gt;
&lt;br /&gt;
Préambule&lt;br /&gt;
- compilation du firmware sur linux / windows &lt;br /&gt;
- mettre a jour un calculatrice&lt;br /&gt;
- compréhension du code dans sa généraliter &lt;br /&gt;
&lt;br /&gt;
Réquis&lt;br /&gt;
- Modification du mode examen pour garder les programme &lt;br /&gt;
- Modification du calculateur pour rajouter des fonction&lt;br /&gt;
- Ajout de memoire a python ( 13 ko disponnible)&lt;br /&gt;
&lt;br /&gt;
Hardware &lt;br /&gt;
&lt;br /&gt;
- Rajout de memoire vive (seulement 256kb) &lt;br /&gt;
- Recherche ecran compatible &lt;br /&gt;
&lt;br /&gt;
en un second temps modifier la calculatrice en rajoutant des fonction non utiliser &lt;br /&gt;
comme lecture de carte sd et utilisation des entrée sortie&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
Pour éviter de me retrouver avec une seul version qui a tout les modification je travail par petit segment qui seront appeler buildx (x étant un chiffre croissant)&lt;br /&gt;
les petit modification pourront comme sa ajouter dans une version futur et des modification juger non pertinent n'impacterons pas sur le peux de place qui a en mémoire flash&lt;br /&gt;
&lt;br /&gt;
Installation : &lt;br /&gt;
&lt;br /&gt;
[https://www.numworks.com/resources/engineering/software/sdk/ source]&lt;br /&gt;
&lt;br /&gt;
Linux &lt;br /&gt;
&lt;br /&gt;
Partant d'un linux vierge pourvoir installer l'environnent sdk pour qu'on puisse mettre a jour et modifier la numwork il faut quel que ressource&lt;br /&gt;
seront nécessaire pour compiler&lt;br /&gt;
 make gcc g++ &lt;br /&gt;
utiliser par &amp;quot;os&amp;quot; de numwork&lt;br /&gt;
 bison build-essential dfu-util flex gcc-arm-none-eabi libfltk1.3-dev libfreetype6-dev libpng12-dev&lt;br /&gt;
une fois tout sa installer linux et enfin prés a compiler et envoyer le code sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Windows&lt;br /&gt;
&lt;br /&gt;
Cette fois n'ayant pas de console il faut l'installer Numwork nous propose Msys2 une fois installer comme sur linux il faut installer pas mal de ressource &lt;br /&gt;
 pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-freetype mingw-w64-x86_64-pkg-config mingw-w64-x86_64-fltk git make bison python&lt;br /&gt;
&lt;br /&gt;
Mac&lt;br /&gt;
aucun mac pour les tests mais sa doit fonctionner correctement &lt;br /&gt;
&lt;br /&gt;
Mise a jour : &lt;br /&gt;
une fois l'ordinateur configurer on compiler et essayer soit le simulateur soit envoyer le code sur la calculatrice (sachant que le simulateur ne simule pas la led et d'autre fonction de la calculatrice)&lt;br /&gt;
Pour compiler le code vers la calculatrice&lt;br /&gt;
 make clean&lt;br /&gt;
 make&lt;br /&gt;
 make epsilon_flash&lt;br /&gt;
Pour compiler le code pour le simulateur&lt;br /&gt;
 make PLATFORM=simulator clean&lt;br /&gt;
 make PLATFORM=simulator&lt;br /&gt;
sachant que le clean et très important on ne peux pas exporter un code qui a était a but du simulateur &lt;br /&gt;
&lt;br /&gt;
Pour exécuter le simulateur &lt;br /&gt;
 ./epsilon.elf&lt;br /&gt;
&lt;br /&gt;
'''Build 1''' désactivation du mode examen &lt;br /&gt;
&lt;br /&gt;
Le mode examen et obligatoire pour tout les calculatrice programmable a partir de la rentrée 2018  le but de se mode et de bloquer l'accès au programme qui on était dejai enregistré dans la calculatrice et de l'indiquer pour aider les surveillant a verifier que le mode et bien actif.&lt;br /&gt;
&lt;br /&gt;
Pour se faire Numwork a choisir d'appliquer 3 action en activant le mode examen &lt;br /&gt;
&lt;br /&gt;
- ajout d'une icone examen dans le menu &lt;br /&gt;
&lt;br /&gt;
- clignotement d'une led en rouge &lt;br /&gt;
&lt;br /&gt;
- effacement des programme python (et non dés-affichage des programme comme le font certain concurrent)&lt;br /&gt;
&lt;br /&gt;
Pour sortir du mode d'examen il suffit soit de reset sa calculatrice ou d'alimenter la calculatrice &lt;br /&gt;
&lt;br /&gt;
Cette dernier fonction et vraiment contraignante même pour une utilisation normal, une mauvaise manipulation et les programmes réaliser s'envole &lt;br /&gt;
&lt;br /&gt;
Pour que la supercherie que le mode examen aie était truquer les indicateur visuel doivent rester il faut juste modifier la dernier fonction&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
Ayant avancée sur la partie software et compris un partie du code je me lance sur la liste des materiel requis pour réaliser un clone.&lt;br /&gt;
tout les composant sont disponible dans le commerce sauf l'ecran qui a réaliser sur mesure pour numwork &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Connecteur_ecran.png]]&lt;br /&gt;
&lt;br /&gt;
On peux voire que la schème donnée par numwork qu'il utiliser des fonction particulier du controleur qui sont: &lt;br /&gt;
&lt;br /&gt;
-un bus de donnée de 16 bits &lt;br /&gt;
&lt;br /&gt;
-4 led de retroéclairage&lt;br /&gt;
&lt;br /&gt;
-Te : Tearing Effect  &lt;br /&gt;
&lt;br /&gt;
-EXTC : extended comande &lt;br /&gt;
&lt;br /&gt;
connaisant les port qui sont requis je peux commencer a chercher un ecran compatible sachant qu'aprés une demande a numwork le ports EXTC n'ai pas encore utiliser et le ports TE peux être desactiver sans vraiment poser de problème&lt;br /&gt;
&lt;br /&gt;
Il et dur de trouver d'un concepteur d'ecran utilisant le controleur ST7789V pour leurs ecran il faut donc se tourner vers la chine &lt;br /&gt;
sur 8 fabricant seulment 4 réponse et sur les 4 réponse seulment 2 avec des produit correspondant a la demande &lt;br /&gt;
l'un viens de [http://www.szelida.cn szelida] et l'autre de [http://www.youritech.com Youri Technology]&lt;br /&gt;
je choisi donc le ET024QV01 [[https://projets-ima.plil.fr/mediawiki/index.php/Fichier:ET024QV01.pdf]]&lt;br /&gt;
&lt;br /&gt;
on peux voire a sa liste de PIN qui a certain PIN qui deveront être fixer a vcc ou gnd pour bloquer le mode d'affichage de la calculatrice mais il posséde les pin requis pour fonctionner avec la calculatice il et juste plus petit&lt;br /&gt;
&lt;br /&gt;
[[Fichier:RAM_numwork.png]]&lt;br /&gt;
&lt;br /&gt;
En paralléle une recherche sur le hardware montre que la place pour la RAM et dejai prévu sur le PCB il faudrait juste modifier une partie software pour qu'il soit pris en compte l'ajout de la RAM boostera fortement les capacité de cette calculatrice et pourra permet normalment de faire des petit calcul formel &lt;br /&gt;
'''&lt;br /&gt;
Partie Software :'''&lt;br /&gt;
&lt;br /&gt;
Vu que le recherche sur la ram a était effectuer je me concentre se coup si sur l'augmentation de la taille alouer a python en prévision de l'augmentation qui serra fait dans le futur !&lt;br /&gt;
&lt;br /&gt;
De base python dispose de 16Kb de mémoire alouer pour fonctionner en peux le pousser a aller jusqu'a 128Kb sans augmentation matériel mais du a l'achirecture de la mémoire du procésseur une fois qu'on dépace les 64 Kb le temps de traitement deviens long tellement que les premier fois j'ai penser la calculatrice totalment planter !&lt;br /&gt;
&lt;br /&gt;
Si on essaye d'alouer plus que 128Kb de mémoire a python la calculatrice bloque l'action et empêche d'ouvrire la console , il existe une petit sécuriter pour éviter de vraiment planter la calculatrice &lt;br /&gt;
&lt;br /&gt;
cette modification permet d'avancer l'hypothése que le système epilson prend 128kb dans la mémoire vive actuel&lt;br /&gt;
&lt;br /&gt;
Une autre modification mineur a était réaliser pour modifier la version de la numwork il n'ai possible que de rentrée un numéro de version ayant 7 char chose intéressant le site de numwork affiche bien notre version modifier &lt;br /&gt;
[[Fichier:Version.png]]&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
Je commence cette semaine par étudier l'utiliter du port TearingEffect et ExtendedCommand on debute par tout commenter pour voir l'effet sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:TE exc.png]]&lt;br /&gt;
(d'autre ligne on était commenter)&lt;br /&gt;
&lt;br /&gt;
je charge donc cette modification dans la calculatrice pour voire le résultat grace a la fonction graphique je charge des fonction assez lourde graphiquement pour voire les changement ( un fonction de base comme f(x)=x n'ai aucun bug graphique)&lt;br /&gt;
&lt;br /&gt;
je test donc tan(x²⁴) et sin(x⁴)&lt;br /&gt;
&lt;br /&gt;
(pour les images de cette partie il n'aie pas possible d'utiliser le simulateur)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Original.png]]&lt;br /&gt;
&lt;br /&gt;
en effectuant quel que déplacement sur la courbe on obtiens des léger bug graphique comme celui la ,ou seulment un petit portion disparaît par a coup&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit bug.png]]&lt;br /&gt;
&lt;br /&gt;
en changent de fenêtre l'as on obtient des bug graphique plus important &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Gros bug.png]]&lt;br /&gt;
&lt;br /&gt;
même si les bug graphique sont présent il ne sont pas gênant car :&lt;br /&gt;
&lt;br /&gt;
- sur des fonctions de base il ne sont pas présent donc pas contraignant pour un étudiant au collège/lycéen &lt;br /&gt;
&lt;br /&gt;
- sur des fonction avancer les bug ne dure quel que seconde et ne sont donc pas gênant &lt;br /&gt;
&lt;br /&gt;
il pourrai donc poser problème sur des fonction plus graphique et dynamique&lt;br /&gt;
&lt;br /&gt;
En cherchant sur internet on peux découvrire un mode de test on y accédes viens le menus paramètres -&amp;gt; A propos on se place sur FCC ID puis on appuis sur la touche 6 on valide et nous voila dans le mode de test &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test usine.png]] [[Fichier:Test bouton.png]]&lt;br /&gt;
&lt;br /&gt;
sur simulateur on ne peux pas dépasser le test bouton car le bouton home n'est pas accessible via le clavier sinon il comporte en plus d'un test ecran pours les couleur primaire , test de led et de l'affichage d'un code (serie) de la calculatrice&lt;br /&gt;
&lt;br /&gt;
Pour rajouter du calcul formel 2 option s'offre a moi crée un application dédier a sa ou l'ajouter a la fonction de math dejai existant la 2 éme option et étudier en se moment &lt;br /&gt;
&lt;br /&gt;
en lisant le code on comprent certain chose : il font des arrondis pour éviter les erreur de la librairie qui peux renvoyer 4^-17&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Projets_IMA5_2018/2019&amp;diff=59954</id>
		<title>Projets IMA5 2018/2019</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Projets_IMA5_2018/2019&amp;diff=59954"/>
				<updated>2018-09-26T13:16:39Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Matériel à acquérir */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Merci de référencer vos pages de projets ici. Merci aussi d'uniformiser vos formats que ce soit en regardant la présentation des projets déjà créés ou en demandant une modification du format des précédents si votre façon de faire vous semble la meilleure. Dans tous les cas un minimum de communication entre les binômes est conseillée.&lt;br /&gt;
&lt;br /&gt;
Toutes les sources doivent être déposées sur notre archive GIT. Le service est disponible à l'URL [https://archives.plil.fr archives.plil.fr]. Connectez-vous avec vos identifiants Polytech'Lille. Sauf indication contraire de vos encadrants, rendez le projet public et mettez le lien sur votre Wiki. Vous pouvez trouver de la documentation sur ce système d'archives sur ce [https://git-scm.com/book/fr/v1 site].&lt;br /&gt;
&lt;br /&gt;
== Répartition des binômes ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Projet !! Elèves !! Encadrants école !! Rapport intermédiaire !! Rapport final !! Vidéo&lt;br /&gt;
|-&lt;br /&gt;
| P0 [[IMA5 2018/2019 P0|Modèle]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P04 [[IMA5 2018/2019 P04|Conception mécatronique d'un gant haptique pour la réalité virtuelle]]&lt;br /&gt;
| Thomas Hubert&lt;br /&gt;
| Frédéric Giraud / Betty Semail&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P06 [[IMA5 2018/2019 P06|Développement d'un système de gestion d'un réseau de capteurs]]&lt;br /&gt;
| Simon Feutrier / Antoine Duquenoy&lt;br /&gt;
| Thomas Vantroys / Alexandre Boé&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P10 [[ IMA5 2018/2019 P10|Traces d’exécution de système temps réel]]&lt;br /&gt;
| Amine El Messaoudi&lt;br /&gt;
| Julien Forget&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P16 [[IMA5 2018/2019 P16|Le Sportif Augmenté]]&lt;br /&gt;
| Matthieu Delobelle&lt;br /&gt;
| Alexandre Boé / Xavier Redon / Thomas Vantroys &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P21 [[IMA5 2018/2019 P21|Pilotage automatique d'un drone]]&lt;br /&gt;
| Claire Vandamme / Justine Senellart&lt;br /&gt;
| Aziz Nakrachi / Claudine Lecocq&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P22 [[IMA5 2018/2019 P22|Commande en position d'un drone]]&lt;br /&gt;
| Lijie YAO / Lirui ZHANG&lt;br /&gt;
| Komi Midzodzi PEKPE&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P28 [[IMA5 2018/2019 P28|Clonage d'une calculatrice open-source NumWorks]]&lt;br /&gt;
| Alexis Dorian&lt;br /&gt;
| Xavier Redon / Alexandre Boé / Thomas Vantroys&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P31 [[IMA5 2018/2019 P31|Supervision des serveurs de la plateforme informatique]]&lt;br /&gt;
| Taky Djeraba&lt;br /&gt;
| Xavier Redon / Thomas Vantroys&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P36 [[IMA5 2018/2019 P36|Pilotage automatique d'un drone]]&lt;br /&gt;
| Abass Ayoub / Alexis Viscogliosi&lt;br /&gt;
| Aziz Nakrachi / Claudine Lecocq&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P42 [[IMA5 2018/2019 P42 |Traçage d'empreintes de navigateur en utilisant des techniques avancées d'apprentissage automatique]]&lt;br /&gt;
| Mehanna Naif&lt;br /&gt;
| Walter Rudametkin / Romain Rouvoy&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Matériel à acquérir ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Projet !! Matériel&lt;br /&gt;
|-&lt;br /&gt;
| P28 [[IMA5 2018/2019 P28|Clonage d'une calculatrice open-source NumWorks]]&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/Adesto-Technologies/AT25SF641-SUB-T?qs=H7WEQPD31y1rOaelqGYUaQ== AT25SF641  ](Ram)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/STMicroelectronics/STM32F412VGT6?qs=qzCNEk%252bRr%252baGf9Ry5zWpvw%3D%3D&amp;amp;gclid=EAIaIQobChMI8OWLjsq63QIVxIjVCh0HCADGEAAYASAAEgKz5_D_BwE STM32F412VGT6  ] (microcontroleur)&lt;br /&gt;
&lt;br /&gt;
[https://www.alibaba.com/product-detail/2-4-portait-LCD-module-ET024QV01_60727925701.html?spm=a2700.details.pronpeci14.2.5d9f12f4aeUQCE ET024QV01-K] (ecran)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/Newhaven-Display/NHD-24-240320CF-CTXI-F?qs=sGAEpiMZZMu%2fRY1bNe3bOwi7Ku0KTtuWVqK2peAZKeQH3KKyXLxcNw== NHD-2.4-240320CF] (autre ecran)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/hirose-hrs/fh12s-40s-0-5sh-55/fiche-femelle-ffc-fpc-0-5mm-zif/dp/1324588?MER=sy-me-pd-mi-alte connecteur nappe]&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/richtek/rt9365gqw/driver-de-led-boost-250khz-wqfn/dp/2729821 RT9365GQW ](control retro eclairage)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/richtek/rt9078-28gj5/regul-ldo-fixe-2-8v-0-3a-tsot/dp/2729807?krypto=MSyMhsZJSwpJzbmMaWZGoRn20imQ%2Bn8JeH7D4MHTZf%2B2dB6VsTHGLrm%2FOLrSWQ7xeojNK5JXTGImaV58n0tJ9A%3D%3D&amp;amp;ddkey=https%3Afr-FR%2FElement14_France%2Fsearch RT9078-28GJ5 ](régulateur de tension)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/richtek/rt9526age/chargeur-bat-li-ion-0-5a-wdfn/dp/2433119?krypto=HIqdjNHqabMYeF39WOpX9xKeZ2JYmYKNIiZzSQh83hC6pdrzMzXqu1zU68gCpKyvU1HQLlLe%2FHV60YNgVaXvsg%3D%3D&amp;amp;ddkey=https%3Afr-FR%2FElement14_France%2Fsearch RT9526AGE ](chargeur lipo)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/stmicroelectronics/usblc6-2sc6/esd-protection-smd-sot-23-6/dp/1269406?st=USBLC6-2SC6 USBLC6-2SC6 ] (protection USB)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/Lite-On/LTST-S310F2KT?qs=xb8aMrBSZRKYryAdlDhh3g== TST-S310F2KT] (led multi couleur)&lt;br /&gt;
&lt;br /&gt;
Résitance&lt;br /&gt;
&lt;br /&gt;
Condensateur&lt;br /&gt;
&lt;br /&gt;
Transitor mosfet&lt;br /&gt;
|-}&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Projets_IMA5_2018/2019&amp;diff=59937</id>
		<title>Projets IMA5 2018/2019</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Projets_IMA5_2018/2019&amp;diff=59937"/>
				<updated>2018-09-24T14:47:40Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Matériel à acquérir */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Merci de référencer vos pages de projets ici. Merci aussi d'uniformiser vos formats que ce soit en regardant la présentation des projets déjà créés ou en demandant une modification du format des précédents si votre façon de faire vous semble la meilleure. Dans tous les cas un minimum de communication entre les binômes est conseillée.&lt;br /&gt;
&lt;br /&gt;
Toutes les sources doivent être déposées sur notre archive GIT. Le service est disponible à l'URL [https://archives.plil.fr archives.plil.fr]. Connectez-vous avec vos identifiants Polytech'Lille. Sauf indication contraire de vos encadrants, rendez le projet public et mettez le lien sur votre Wiki. Vous pouvez trouver de la documentation sur ce système d'archives sur ce [https://git-scm.com/book/fr/v1 site].&lt;br /&gt;
&lt;br /&gt;
== Répartition des binômes ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Projet !! Elèves !! Encadrants école !! Rapport intermédiaire !! Rapport final !! Vidéo&lt;br /&gt;
|-&lt;br /&gt;
| P0 [[IMA5 2018/2019 P0|Modèle]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P04 [[IMA5 2018/2019 P04|Conception mécatronique d'un gant haptique pour la réalité virtuelle]]&lt;br /&gt;
| Thomas Hubert&lt;br /&gt;
| Frédéric Giraud / Betty Semail&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P06 [[IMA5 2018/2019 P06|Développement d'un système de gestion d'un réseau de capteurs]]&lt;br /&gt;
| Simon Feutrier / Antoine Duquenoy&lt;br /&gt;
| Thomas Vantroys / Alexandre Boé&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P10 [[ IMA5 2018/2019 P10|Traces d’exécution de système temps réel]]&lt;br /&gt;
| Amine El Messaoudi&lt;br /&gt;
| Julien Forget&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P16 [[IMA5 2018/2019 P16|Le Sportif Augmenté]]&lt;br /&gt;
| Matthieu Delobelle&lt;br /&gt;
| Alexandre Boé / Xavier Redon / Thomas Vantroys &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P21 [[IMA5 2018/2019 P21|Pilotage automatique d'un drone]]&lt;br /&gt;
| Claire Vandamme / Justine Senellart&lt;br /&gt;
| Aziz Nakrachi / Claudine Lecocq&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P22 [[IMA5 2018/2019 P22|Commande en position d'un drone]]&lt;br /&gt;
| Lijie YAO / Lirui ZHANG&lt;br /&gt;
| Komi Midzodzi PEKPE&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P28 [[IMA5 2018/2019 P28|Clonage d'une calculatrice open-source NumWorks]]&lt;br /&gt;
| Alexis Dorian&lt;br /&gt;
| Xavier Redon / Alexandre Boé / Thomas Vantroys&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P31 [[IMA5 2018/2019 P31|Supervision des serveurs de la plateforme informatique]]&lt;br /&gt;
| Taky Djeraba&lt;br /&gt;
| Xavier Redon / Thomas Vantroys&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P36 [[IMA5 2018/2019 P36|Pilotage automatique d'un drone]]&lt;br /&gt;
| Abass Ayoub / Alexis Viscogliosi&lt;br /&gt;
| Aziz Nakrachi / Claudine Lecocq&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P42 [[IMA5 2018/2019 P42 |Traçage d'empreintes de navigateur en utilisant des techniques avancées d'apprentissage automatique]]&lt;br /&gt;
| Mehanna Naif&lt;br /&gt;
| Walter Rudametkin / Romain Rouvoy&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Matériel à acquérir ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Projet !! Matériel&lt;br /&gt;
|-&lt;br /&gt;
| P28 [[IMA5 2018/2019 P28|Clonage d'une calculatrice open-source NumWorks]]&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/Adesto-Technologies/AT25SF641-SUB-T?qs=H7WEQPD31y1rOaelqGYUaQ== AT25SF641  ](Ram)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/STMicroelectronics/STM32F412VGT6?qs=qzCNEk%252bRr%252baGf9Ry5zWpvw%3D%3D&amp;amp;gclid=EAIaIQobChMI8OWLjsq63QIVxIjVCh0HCADGEAAYASAAEgKz5_D_BwE STM32F412VGT6  ] (microcontroleur)&lt;br /&gt;
&lt;br /&gt;
[https://www.alibaba.com/product-detail/2-4-portait-LCD-module-ET024QV01_60727925701.html?spm=a2700.details.pronpeci14.2.5d9f12f4aeUQCE ET024QV01-K] (ecran)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/Newhaven-Display/NHD-24-240320CF-CTXI-F?qs=sGAEpiMZZMu%2fRY1bNe3bOwi7Ku0KTtuWVqK2peAZKeQH3KKyXLxcNw== NHD-2.4-240320CF] (autre ecran)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/richtek/rt9365gqw/driver-de-led-boost-250khz-wqfn/dp/2729821 RT9365GQW ](control retro eclairage)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/richtek/rt9078-28gj5/regul-ldo-fixe-2-8v-0-3a-tsot/dp/2729807?krypto=MSyMhsZJSwpJzbmMaWZGoRn20imQ%2Bn8JeH7D4MHTZf%2B2dB6VsTHGLrm%2FOLrSWQ7xeojNK5JXTGImaV58n0tJ9A%3D%3D&amp;amp;ddkey=https%3Afr-FR%2FElement14_France%2Fsearch RT9078-28GJ5 ](régulateur de tension)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/richtek/rt9526age/chargeur-bat-li-ion-0-5a-wdfn/dp/2433119?krypto=HIqdjNHqabMYeF39WOpX9xKeZ2JYmYKNIiZzSQh83hC6pdrzMzXqu1zU68gCpKyvU1HQLlLe%2FHV60YNgVaXvsg%3D%3D&amp;amp;ddkey=https%3Afr-FR%2FElement14_France%2Fsearch RT9526AGE ](chargeur lipo)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/stmicroelectronics/usblc6-2sc6/esd-protection-smd-sot-23-6/dp/1269406?st=USBLC6-2SC6 USBLC6-2SC6 ] (protection USB)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/Lite-On/LTST-S310F2KT?qs=xb8aMrBSZRKYryAdlDhh3g== TST-S310F2KT] (led multi couleur)&lt;br /&gt;
&lt;br /&gt;
Résitance&lt;br /&gt;
&lt;br /&gt;
Condensateur&lt;br /&gt;
&lt;br /&gt;
Transitor mosfet&lt;br /&gt;
|-}&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=59936</id>
		<title>IMA5 2018/2019 P28</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=59936"/>
				<updated>2018-09-24T13:43:54Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Semaine 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Construire un clone de la calculatrice open-source NumWorks. Effectuer quelques modifications sur le code source et sur le hardware.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
Il y a plusieur Axes sur le projet&lt;br /&gt;
en premier temps sur une calculatrice officiel&lt;br /&gt;
Logiciel : &lt;br /&gt;
&lt;br /&gt;
Préambule&lt;br /&gt;
- compilation du firmware sur linux / windows &lt;br /&gt;
- mettre a jour un calculatrice&lt;br /&gt;
- compréhension du code dans sa généraliter &lt;br /&gt;
&lt;br /&gt;
Réquis&lt;br /&gt;
- Modification du mode examen pour garder les programme &lt;br /&gt;
- Modification du calculateur pour rajouter des fonction&lt;br /&gt;
- Ajout de memoire a python ( 13 ko disponnible)&lt;br /&gt;
&lt;br /&gt;
Hardware &lt;br /&gt;
&lt;br /&gt;
- Rajout de memoire vive (seulement 256kb) &lt;br /&gt;
- Recherche ecran compatible &lt;br /&gt;
&lt;br /&gt;
en un second temps modifier la calculatrice en rajoutant des fonction non utiliser &lt;br /&gt;
comme lecture de carte sd et utilisation des entrée sortie&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
Pour éviter de me retrouver avec une seul version qui a tout les modification je travail par petit segment qui seront appeler buildx (x étant un chiffre croissant)&lt;br /&gt;
les petit modification pourront comme sa ajouter dans une version futur et des modification juger non pertinent n'impacterons pas sur le peux de place qui a en mémoire flash&lt;br /&gt;
&lt;br /&gt;
Installation : &lt;br /&gt;
&lt;br /&gt;
[https://www.numworks.com/resources/engineering/software/sdk/ source]&lt;br /&gt;
&lt;br /&gt;
Linux &lt;br /&gt;
&lt;br /&gt;
Partant d'un linux vierge pourvoir installer l'environnent sdk pour qu'on puisse mettre a jour et modifier la numwork il faut quel que ressource&lt;br /&gt;
seront nécessaire pour compiler&lt;br /&gt;
 make gcc g++ &lt;br /&gt;
utiliser par &amp;quot;os&amp;quot; de numwork&lt;br /&gt;
 bison build-essential dfu-util flex gcc-arm-none-eabi libfltk1.3-dev libfreetype6-dev libpng12-dev&lt;br /&gt;
une fois tout sa installer linux et enfin prés a compiler et envoyer le code sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Windows&lt;br /&gt;
&lt;br /&gt;
Cette fois n'ayant pas de console il faut l'installer Numwork nous propose Msys2 une fois installer comme sur linux il faut installer pas mal de ressource &lt;br /&gt;
 pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-freetype mingw-w64-x86_64-pkg-config mingw-w64-x86_64-fltk git make bison python&lt;br /&gt;
&lt;br /&gt;
Mac&lt;br /&gt;
aucun mac pour les tests mais sa doit fonctionner correctement &lt;br /&gt;
&lt;br /&gt;
Mise a jour : &lt;br /&gt;
une fois l'ordinateur configurer on compiler et essayer soit le simulateur soit envoyer le code sur la calculatrice (sachant que le simulateur ne simule pas la led et d'autre fonction de la calculatrice)&lt;br /&gt;
Pour compiler le code vers la calculatrice&lt;br /&gt;
 make clean&lt;br /&gt;
 make&lt;br /&gt;
 make epsilon_flash&lt;br /&gt;
Pour compiler le code pour le simulateur&lt;br /&gt;
 make PLATFORM=simulator clean&lt;br /&gt;
 make PLATFORM=simulator&lt;br /&gt;
sachant que le clean et très important on ne peux pas exporter un code qui a était a but du simulateur &lt;br /&gt;
&lt;br /&gt;
Pour exécuter le simulateur &lt;br /&gt;
 ./epsilon.elf&lt;br /&gt;
&lt;br /&gt;
'''Build 1''' désactivation du mode examen &lt;br /&gt;
&lt;br /&gt;
Le mode examen et obligatoire pour tout les calculatrice programmable a partir de la rentrée 2018  le but de se mode et de bloquer l'accès au programme qui on était dejai enregistré dans la calculatrice et de l'indiquer pour aider les surveillant a verifier que le mode et bien actif.&lt;br /&gt;
&lt;br /&gt;
Pour se faire Numwork a choisir d'appliquer 3 action en activant le mode examen &lt;br /&gt;
&lt;br /&gt;
- ajout d'une icone examen dans le menu &lt;br /&gt;
&lt;br /&gt;
- clignotement d'une led en rouge &lt;br /&gt;
&lt;br /&gt;
- effacement des programme python (et non dés-affichage des programme comme le font certain concurrent)&lt;br /&gt;
&lt;br /&gt;
Pour sortir du mode d'examen il suffit soit de reset sa calculatrice ou d'alimenter la calculatrice &lt;br /&gt;
&lt;br /&gt;
Cette dernier fonction et vraiment contraignante même pour une utilisation normal, une mauvaise manipulation et les programmes réaliser s'envole &lt;br /&gt;
&lt;br /&gt;
Pour que la supercherie que le mode examen aie était truquer les indicateur visuel doivent rester il faut juste modifier la dernier fonction&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
Ayant avancée sur la partie software et compris un partie du code je me lance sur la liste des materiel requis pour réaliser un clone.&lt;br /&gt;
tout les composant sont disponible dans le commerce sauf l'ecran qui a réaliser sur mesure pour numwork &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Connecteur_ecran.png]]&lt;br /&gt;
&lt;br /&gt;
On peux voire que la schème donnée par numwork qu'il utiliser des fonction particulier du controleur qui sont: &lt;br /&gt;
&lt;br /&gt;
-un bus de donnée de 16 bits &lt;br /&gt;
&lt;br /&gt;
-4 led de retroéclairage&lt;br /&gt;
&lt;br /&gt;
-Te : Tearing Effect  &lt;br /&gt;
&lt;br /&gt;
-EXTC : extended comande &lt;br /&gt;
&lt;br /&gt;
connaisant les port qui sont requis je peux commencer a chercher un ecran compatible sachant qu'aprés une demande a numwork le ports EXTC n'ai pas encore utiliser et le ports TE peux être desactiver sans vraiment poser de problème&lt;br /&gt;
&lt;br /&gt;
Il et dur de trouver d'un concepteur d'ecran utilisant le controleur ST7789V pour leurs ecran il faut donc se tourner vers la chine &lt;br /&gt;
sur 8 fabricant seulment 4 réponse et sur les 4 réponse seulment 2 avec des produit correspondant a la demande &lt;br /&gt;
l'un viens de [http://www.szelida.cn szelida] et l'autre de [http://www.youritech.com Youri Technology]&lt;br /&gt;
je choisi donc le ET024QV01 [[https://projets-ima.plil.fr/mediawiki/index.php/Fichier:ET024QV01.pdf]]&lt;br /&gt;
&lt;br /&gt;
on peux voire a sa liste de PIN qui a certain PIN qui deveront être fixer a vcc ou gnd pour bloquer le mode d'affichage de la calculatrice mais il posséde les pin requis pour fonctionner avec la calculatice il et juste plus petit&lt;br /&gt;
&lt;br /&gt;
[[Fichier:RAM_numwork.png]]&lt;br /&gt;
&lt;br /&gt;
En paralléle une recherche sur le hardware montre que la place pour la RAM et dejai prévu sur le PCB il faudrait juste modifier une partie software pour qu'il soit pris en compte l'ajout de la RAM boostera fortement les capacité de cette calculatrice et pourra permet normalment de faire des petit calcul formel &lt;br /&gt;
'''&lt;br /&gt;
Partie Software :'''&lt;br /&gt;
&lt;br /&gt;
Vu que le recherche sur la ram a était effectuer je me concentre se coup si sur l'augmentation de la taille alouer a python en prévision de l'augmentation qui serra fait dans le futur !&lt;br /&gt;
&lt;br /&gt;
De base python dispose de 16Kb de mémoire alouer pour fonctionner en peux le pousser a aller jusqu'a 128Kb sans augmentation matériel mais du a l'achirecture de la mémoire du procésseur une fois qu'on dépace les 64 Kb le temps de traitement deviens long tellement que les premier fois j'ai penser la calculatrice totalment planter !&lt;br /&gt;
&lt;br /&gt;
Si on essaye d'alouer plus que 128Kb de mémoire a python la calculatrice bloque l'action et empêche d'ouvrire la console , il existe une petit sécuriter pour éviter de vraiment planter la calculatrice &lt;br /&gt;
&lt;br /&gt;
cette modification permet d'avancer l'hypothése que le système epilson prend 128kb dans la mémoire vive actuel&lt;br /&gt;
&lt;br /&gt;
Une autre modification mineur a était réaliser pour modifier la version de la numwork il n'ai possible que de rentrée un numéro de version ayant 7 char chose intéressant le site de numwork affiche bien notre version modifier &lt;br /&gt;
[[Fichier:Version.png]]&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
Je commence cette semaine par étudier l'utiliter du port TearingEffect et ExtendedCommand on debute par tout commenter pour voir l'effet sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:TE exc.png]]&lt;br /&gt;
(d'autre ligne on était commenter)&lt;br /&gt;
&lt;br /&gt;
je charge donc cette modification dans la calculatrice pour voire le résultat grace a la fonction graphique je charge des fonction assez lourde graphiquement pour voire les changement ( un fonction de base comme f(x)=x n'ai aucun bug graphique)&lt;br /&gt;
&lt;br /&gt;
je test donc tan(x²⁴) et sin(x⁴)&lt;br /&gt;
&lt;br /&gt;
(pour les images de cette partie il n'aie pas possible d'utiliser le simulateur)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Original.png]]&lt;br /&gt;
&lt;br /&gt;
en effectuant quel que déplacement sur la courbe on obtiens des léger bug graphique comme celui la ,ou seulment un petit portion disparaît par a coup&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit bug.png]]&lt;br /&gt;
&lt;br /&gt;
en changent de fenêtre l'as on obtient des bug graphique plus important &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Gros bug.png]]&lt;br /&gt;
&lt;br /&gt;
même si les bug graphique sont présent il ne sont pas gênant car :&lt;br /&gt;
&lt;br /&gt;
- sur des fonctions de base il ne sont pas présent donc pas contraignant pour un étudiant au collège/lycéen &lt;br /&gt;
&lt;br /&gt;
- sur des fonction avancer les bug ne dure quel que seconde et ne sont donc pas gênant &lt;br /&gt;
&lt;br /&gt;
il pourrai donc poser problème sur des fonction plus graphique et dynamique&lt;br /&gt;
&lt;br /&gt;
En cherchant sur internet on peux découvrire un mode de test on y accédes viens le menus paramètres -&amp;gt; A propos on se place sur FCC ID puis on appuis sur la touche 6 on valide et nous voila dans le mode de test &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test usine.png]] [[Fichier:Test bouton.png]]&lt;br /&gt;
&lt;br /&gt;
sur simulateur on ne peux pas dépasser le test bouton car le bouton home n'est pas accessible via le clavier sinon il comporte en plus d'un test ecran pours les couleur primaire , test de led et de l'affichage d'un code (serie) de la calculatrice&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=59935</id>
		<title>IMA5 2018/2019 P28</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=59935"/>
				<updated>2018-09-24T13:43:41Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Semaine 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Construire un clone de la calculatrice open-source NumWorks. Effectuer quelques modifications sur le code source et sur le hardware.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
Il y a plusieur Axes sur le projet&lt;br /&gt;
en premier temps sur une calculatrice officiel&lt;br /&gt;
Logiciel : &lt;br /&gt;
&lt;br /&gt;
Préambule&lt;br /&gt;
- compilation du firmware sur linux / windows &lt;br /&gt;
- mettre a jour un calculatrice&lt;br /&gt;
- compréhension du code dans sa généraliter &lt;br /&gt;
&lt;br /&gt;
Réquis&lt;br /&gt;
- Modification du mode examen pour garder les programme &lt;br /&gt;
- Modification du calculateur pour rajouter des fonction&lt;br /&gt;
- Ajout de memoire a python ( 13 ko disponnible)&lt;br /&gt;
&lt;br /&gt;
Hardware &lt;br /&gt;
&lt;br /&gt;
- Rajout de memoire vive (seulement 256kb) &lt;br /&gt;
- Recherche ecran compatible &lt;br /&gt;
&lt;br /&gt;
en un second temps modifier la calculatrice en rajoutant des fonction non utiliser &lt;br /&gt;
comme lecture de carte sd et utilisation des entrée sortie&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
Pour éviter de me retrouver avec une seul version qui a tout les modification je travail par petit segment qui seront appeler buildx (x étant un chiffre croissant)&lt;br /&gt;
les petit modification pourront comme sa ajouter dans une version futur et des modification juger non pertinent n'impacterons pas sur le peux de place qui a en mémoire flash&lt;br /&gt;
&lt;br /&gt;
Installation : &lt;br /&gt;
&lt;br /&gt;
[https://www.numworks.com/resources/engineering/software/sdk/ source]&lt;br /&gt;
&lt;br /&gt;
Linux &lt;br /&gt;
&lt;br /&gt;
Partant d'un linux vierge pourvoir installer l'environnent sdk pour qu'on puisse mettre a jour et modifier la numwork il faut quel que ressource&lt;br /&gt;
seront nécessaire pour compiler&lt;br /&gt;
 make gcc g++ &lt;br /&gt;
utiliser par &amp;quot;os&amp;quot; de numwork&lt;br /&gt;
 bison build-essential dfu-util flex gcc-arm-none-eabi libfltk1.3-dev libfreetype6-dev libpng12-dev&lt;br /&gt;
une fois tout sa installer linux et enfin prés a compiler et envoyer le code sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Windows&lt;br /&gt;
&lt;br /&gt;
Cette fois n'ayant pas de console il faut l'installer Numwork nous propose Msys2 une fois installer comme sur linux il faut installer pas mal de ressource &lt;br /&gt;
 pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-freetype mingw-w64-x86_64-pkg-config mingw-w64-x86_64-fltk git make bison python&lt;br /&gt;
&lt;br /&gt;
Mac&lt;br /&gt;
aucun mac pour les tests mais sa doit fonctionner correctement &lt;br /&gt;
&lt;br /&gt;
Mise a jour : &lt;br /&gt;
une fois l'ordinateur configurer on compiler et essayer soit le simulateur soit envoyer le code sur la calculatrice (sachant que le simulateur ne simule pas la led et d'autre fonction de la calculatrice)&lt;br /&gt;
Pour compiler le code vers la calculatrice&lt;br /&gt;
 make clean&lt;br /&gt;
 make&lt;br /&gt;
 make epsilon_flash&lt;br /&gt;
Pour compiler le code pour le simulateur&lt;br /&gt;
 make PLATFORM=simulator clean&lt;br /&gt;
 make PLATFORM=simulator&lt;br /&gt;
sachant que le clean et très important on ne peux pas exporter un code qui a était a but du simulateur &lt;br /&gt;
&lt;br /&gt;
Pour exécuter le simulateur &lt;br /&gt;
 ./epsilon.elf&lt;br /&gt;
&lt;br /&gt;
'''Build 1''' désactivation du mode examen &lt;br /&gt;
&lt;br /&gt;
Le mode examen et obligatoire pour tout les calculatrice programmable a partir de la rentrée 2018  le but de se mode et de bloquer l'accès au programme qui on était dejai enregistré dans la calculatrice et de l'indiquer pour aider les surveillant a verifier que le mode et bien actif.&lt;br /&gt;
&lt;br /&gt;
Pour se faire Numwork a choisir d'appliquer 3 action en activant le mode examen &lt;br /&gt;
&lt;br /&gt;
- ajout d'une icone examen dans le menu &lt;br /&gt;
&lt;br /&gt;
- clignotement d'une led en rouge &lt;br /&gt;
&lt;br /&gt;
- effacement des programme python (et non dés-affichage des programme comme le font certain concurrent)&lt;br /&gt;
&lt;br /&gt;
Pour sortir du mode d'examen il suffit soit de reset sa calculatrice ou d'alimenter la calculatrice &lt;br /&gt;
&lt;br /&gt;
Cette dernier fonction et vraiment contraignante même pour une utilisation normal, une mauvaise manipulation et les programmes réaliser s'envole &lt;br /&gt;
&lt;br /&gt;
Pour que la supercherie que le mode examen aie était truquer les indicateur visuel doivent rester il faut juste modifier la dernier fonction&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
Ayant avancée sur la partie software et compris un partie du code je me lance sur la liste des materiel requis pour réaliser un clone.&lt;br /&gt;
tout les composant sont disponible dans le commerce sauf l'ecran qui a réaliser sur mesure pour numwork &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Connecteur_ecran.png]]&lt;br /&gt;
&lt;br /&gt;
On peux voire que la schème donnée par numwork qu'il utiliser des fonction particulier du controleur qui sont: &lt;br /&gt;
&lt;br /&gt;
-un bus de donnée de 16 bits &lt;br /&gt;
&lt;br /&gt;
-4 led de retroéclairage&lt;br /&gt;
&lt;br /&gt;
-Te : Tearing Effect  &lt;br /&gt;
&lt;br /&gt;
-EXTC : extended comande &lt;br /&gt;
&lt;br /&gt;
connaisant les port qui sont requis je peux commencer a chercher un ecran compatible sachant qu'aprés une demande a numwork le ports EXTC n'ai pas encore utiliser et le ports TE peux être desactiver sans vraiment poser de problème&lt;br /&gt;
&lt;br /&gt;
Il et dur de trouver d'un concepteur d'ecran utilisant le controleur ST7789V pour leurs ecran il faut donc se tourner vers la chine &lt;br /&gt;
sur 8 fabricant seulment 4 réponse et sur les 4 réponse seulment 2 avec des produit correspondant a la demande &lt;br /&gt;
l'un viens de [http://www.szelida.cn szelida] et l'autre de [http://www.youritech.com Youri Technology]&lt;br /&gt;
je choisi donc le ET024QV01 [[https://projets-ima.plil.fr/mediawiki/index.php/Fichier:ET024QV01.pdf]]&lt;br /&gt;
&lt;br /&gt;
on peux voire a sa liste de PIN qui a certain PIN qui deveront être fixer a vcc ou gnd pour bloquer le mode d'affichage de la calculatrice mais il posséde les pin requis pour fonctionner avec la calculatice il et juste plus petit&lt;br /&gt;
&lt;br /&gt;
[[Fichier:RAM_numwork.png]]&lt;br /&gt;
&lt;br /&gt;
En paralléle une recherche sur le hardware montre que la place pour la RAM et dejai prévu sur le PCB il faudrait juste modifier une partie software pour qu'il soit pris en compte l'ajout de la RAM boostera fortement les capacité de cette calculatrice et pourra permet normalment de faire des petit calcul formel &lt;br /&gt;
'''&lt;br /&gt;
Partie Software :'''&lt;br /&gt;
&lt;br /&gt;
Vu que le recherche sur la ram a était effectuer je me concentre se coup si sur l'augmentation de la taille alouer a python en prévision de l'augmentation qui serra fait dans le futur !&lt;br /&gt;
&lt;br /&gt;
De base python dispose de 16Kb de mémoire alouer pour fonctionner en peux le pousser a aller jusqu'a 128Kb sans augmentation matériel mais du a l'achirecture de la mémoire du procésseur une fois qu'on dépace les 64 Kb le temps de traitement deviens long tellement que les premier fois j'ai penser la calculatrice totalment planter !&lt;br /&gt;
&lt;br /&gt;
Si on essaye d'alouer plus que 128Kb de mémoire a python la calculatrice bloque l'action et empêche d'ouvrire la console , il existe une petit sécuriter pour éviter de vraiment planter la calculatrice &lt;br /&gt;
&lt;br /&gt;
cette modification permet d'avancer l'hypothése que le système epilson prend 128kb dans la mémoire vive actuel&lt;br /&gt;
&lt;br /&gt;
Une autre modification mineur a était réaliser pour modifier la version de la numwork il n'ai possible que de rentrée un numéro de version ayant 7 char chose intéressant le site de numwork affiche bien notre version modifier &lt;br /&gt;
[[Fichier:Version.png]]&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
Je commence cette semaine par étudier l'utiliter du port TearingEffect et ExtendedCommand on debute par tout commenter pour voir l'effet sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:TE exc.png]]&lt;br /&gt;
(d'autre ligne on était commenter)&lt;br /&gt;
&lt;br /&gt;
je charge donc cette modification dans la calculatrice pour voire le résultat grace a la fonction graphique je charge des fonction assez lourde graphiquement pour voire les changement ( un fonction de base comme f(x)=x n'ai aucun bug graphique)&lt;br /&gt;
&lt;br /&gt;
je test donc tan(x²⁴) et sin(x⁴)&lt;br /&gt;
&lt;br /&gt;
(pour les images de cette partie il n'aie pas possible d'utiliser le simulateur)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Original.png]]&lt;br /&gt;
&lt;br /&gt;
en effectuant quel que déplacement sur la courbe on obtiens des léger bug graphique comme celui la ,ou seulment un petit portion disparaît par a coup&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit bug.png]]&lt;br /&gt;
&lt;br /&gt;
en changent de fenêtre l'as on obtient des bug graphique plus important &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Gros bug.png]]&lt;br /&gt;
&lt;br /&gt;
même si les bug graphique sont présent il ne sont pas gênant car :&lt;br /&gt;
&lt;br /&gt;
- sur des fonctions de base il ne sont pas présent donc pas contraignant pour un étudiant au collège/lycéen &lt;br /&gt;
&lt;br /&gt;
- sur des fonction avancer les bug ne dure quel que seconde et ne sont donc pas gênant &lt;br /&gt;
&lt;br /&gt;
il pourrai donc poser problème sur des fonction plus graphique et dynamique&lt;br /&gt;
&lt;br /&gt;
En cherchant sur internet on peux découvrire un mode de test on y accédes viens le menus paramètres -&amp;gt; A propos on se place sur FCC ID puis on appuis sur la touche 6 on valide et nous voila dans le mode de test &lt;br /&gt;
[[Fichier:Test usine.png]] [[Fichier:Test bouton.png]]&lt;br /&gt;
&lt;br /&gt;
sur simulateur on ne peux pas dépasser le test bouton car le bouton home n'est pas accessible via le clavier sinon il comporte en plus d'un test ecran pours les couleur primaire , test de led et de l'affichage d'un code (serie) de la calculatrice&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Test_bouton.png&amp;diff=59934</id>
		<title>Fichier:Test bouton.png</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Test_bouton.png&amp;diff=59934"/>
				<updated>2018-09-24T13:42:08Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : le test bouton&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;le test bouton&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Test_usine.png&amp;diff=59933</id>
		<title>Fichier:Test usine.png</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Test_usine.png&amp;diff=59933"/>
				<updated>2018-09-24T13:41:30Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : lancement un menus de test&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;lancement un menus de test&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=59919</id>
		<title>IMA5 2018/2019 P28</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=59919"/>
				<updated>2018-09-24T09:56:47Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Semaine 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Construire un clone de la calculatrice open-source NumWorks. Effectuer quelques modifications sur le code source et sur le hardware.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
Il y a plusieur Axes sur le projet&lt;br /&gt;
en premier temps sur une calculatrice officiel&lt;br /&gt;
Logiciel : &lt;br /&gt;
&lt;br /&gt;
Préambule&lt;br /&gt;
- compilation du firmware sur linux / windows &lt;br /&gt;
- mettre a jour un calculatrice&lt;br /&gt;
- compréhension du code dans sa généraliter &lt;br /&gt;
&lt;br /&gt;
Réquis&lt;br /&gt;
- Modification du mode examen pour garder les programme &lt;br /&gt;
- Modification du calculateur pour rajouter des fonction&lt;br /&gt;
- Ajout de memoire a python ( 13 ko disponnible)&lt;br /&gt;
&lt;br /&gt;
Hardware &lt;br /&gt;
&lt;br /&gt;
- Rajout de memoire vive (seulement 256kb) &lt;br /&gt;
- Recherche ecran compatible &lt;br /&gt;
&lt;br /&gt;
en un second temps modifier la calculatrice en rajoutant des fonction non utiliser &lt;br /&gt;
comme lecture de carte sd et utilisation des entrée sortie&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
Pour éviter de me retrouver avec une seul version qui a tout les modification je travail par petit segment qui seront appeler buildx (x étant un chiffre croissant)&lt;br /&gt;
les petit modification pourront comme sa ajouter dans une version futur et des modification juger non pertinent n'impacterons pas sur le peux de place qui a en mémoire flash&lt;br /&gt;
&lt;br /&gt;
Installation : &lt;br /&gt;
&lt;br /&gt;
[https://www.numworks.com/resources/engineering/software/sdk/ source]&lt;br /&gt;
&lt;br /&gt;
Linux &lt;br /&gt;
&lt;br /&gt;
Partant d'un linux vierge pourvoir installer l'environnent sdk pour qu'on puisse mettre a jour et modifier la numwork il faut quel que ressource&lt;br /&gt;
seront nécessaire pour compiler&lt;br /&gt;
 make gcc g++ &lt;br /&gt;
utiliser par &amp;quot;os&amp;quot; de numwork&lt;br /&gt;
 bison build-essential dfu-util flex gcc-arm-none-eabi libfltk1.3-dev libfreetype6-dev libpng12-dev&lt;br /&gt;
une fois tout sa installer linux et enfin prés a compiler et envoyer le code sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Windows&lt;br /&gt;
&lt;br /&gt;
Cette fois n'ayant pas de console il faut l'installer Numwork nous propose Msys2 une fois installer comme sur linux il faut installer pas mal de ressource &lt;br /&gt;
 pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-freetype mingw-w64-x86_64-pkg-config mingw-w64-x86_64-fltk git make bison python&lt;br /&gt;
&lt;br /&gt;
Mac&lt;br /&gt;
aucun mac pour les tests mais sa doit fonctionner correctement &lt;br /&gt;
&lt;br /&gt;
Mise a jour : &lt;br /&gt;
une fois l'ordinateur configurer on compiler et essayer soit le simulateur soit envoyer le code sur la calculatrice (sachant que le simulateur ne simule pas la led et d'autre fonction de la calculatrice)&lt;br /&gt;
Pour compiler le code vers la calculatrice&lt;br /&gt;
 make clean&lt;br /&gt;
 make&lt;br /&gt;
 make epsilon_flash&lt;br /&gt;
Pour compiler le code pour le simulateur&lt;br /&gt;
 make PLATFORM=simulator clean&lt;br /&gt;
 make PLATFORM=simulator&lt;br /&gt;
sachant que le clean et très important on ne peux pas exporter un code qui a était a but du simulateur &lt;br /&gt;
&lt;br /&gt;
Pour exécuter le simulateur &lt;br /&gt;
 ./epsilon.elf&lt;br /&gt;
&lt;br /&gt;
'''Build 1''' désactivation du mode examen &lt;br /&gt;
&lt;br /&gt;
Le mode examen et obligatoire pour tout les calculatrice programmable a partir de la rentrée 2018  le but de se mode et de bloquer l'accès au programme qui on était dejai enregistré dans la calculatrice et de l'indiquer pour aider les surveillant a verifier que le mode et bien actif.&lt;br /&gt;
&lt;br /&gt;
Pour se faire Numwork a choisir d'appliquer 3 action en activant le mode examen &lt;br /&gt;
&lt;br /&gt;
- ajout d'une icone examen dans le menu &lt;br /&gt;
&lt;br /&gt;
- clignotement d'une led en rouge &lt;br /&gt;
&lt;br /&gt;
- effacement des programme python (et non dés-affichage des programme comme le font certain concurrent)&lt;br /&gt;
&lt;br /&gt;
Pour sortir du mode d'examen il suffit soit de reset sa calculatrice ou d'alimenter la calculatrice &lt;br /&gt;
&lt;br /&gt;
Cette dernier fonction et vraiment contraignante même pour une utilisation normal, une mauvaise manipulation et les programmes réaliser s'envole &lt;br /&gt;
&lt;br /&gt;
Pour que la supercherie que le mode examen aie était truquer les indicateur visuel doivent rester il faut juste modifier la dernier fonction&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
Ayant avancée sur la partie software et compris un partie du code je me lance sur la liste des materiel requis pour réaliser un clone.&lt;br /&gt;
tout les composant sont disponible dans le commerce sauf l'ecran qui a réaliser sur mesure pour numwork &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Connecteur_ecran.png]]&lt;br /&gt;
&lt;br /&gt;
On peux voire que la schème donnée par numwork qu'il utiliser des fonction particulier du controleur qui sont: &lt;br /&gt;
&lt;br /&gt;
-un bus de donnée de 16 bits &lt;br /&gt;
&lt;br /&gt;
-4 led de retroéclairage&lt;br /&gt;
&lt;br /&gt;
-Te : Tearing Effect  &lt;br /&gt;
&lt;br /&gt;
-EXTC : extended comande &lt;br /&gt;
&lt;br /&gt;
connaisant les port qui sont requis je peux commencer a chercher un ecran compatible sachant qu'aprés une demande a numwork le ports EXTC n'ai pas encore utiliser et le ports TE peux être desactiver sans vraiment poser de problème&lt;br /&gt;
&lt;br /&gt;
Il et dur de trouver d'un concepteur d'ecran utilisant le controleur ST7789V pour leurs ecran il faut donc se tourner vers la chine &lt;br /&gt;
sur 8 fabricant seulment 4 réponse et sur les 4 réponse seulment 2 avec des produit correspondant a la demande &lt;br /&gt;
l'un viens de [http://www.szelida.cn szelida] et l'autre de [http://www.youritech.com Youri Technology]&lt;br /&gt;
je choisi donc le ET024QV01 [[https://projets-ima.plil.fr/mediawiki/index.php/Fichier:ET024QV01.pdf]]&lt;br /&gt;
&lt;br /&gt;
on peux voire a sa liste de PIN qui a certain PIN qui deveront être fixer a vcc ou gnd pour bloquer le mode d'affichage de la calculatrice mais il posséde les pin requis pour fonctionner avec la calculatice il et juste plus petit&lt;br /&gt;
&lt;br /&gt;
[[Fichier:RAM_numwork.png]]&lt;br /&gt;
&lt;br /&gt;
En paralléle une recherche sur le hardware montre que la place pour la RAM et dejai prévu sur le PCB il faudrait juste modifier une partie software pour qu'il soit pris en compte l'ajout de la RAM boostera fortement les capacité de cette calculatrice et pourra permet normalment de faire des petit calcul formel &lt;br /&gt;
'''&lt;br /&gt;
Partie Software :'''&lt;br /&gt;
&lt;br /&gt;
Vu que le recherche sur la ram a était effectuer je me concentre se coup si sur l'augmentation de la taille alouer a python en prévision de l'augmentation qui serra fait dans le futur !&lt;br /&gt;
&lt;br /&gt;
De base python dispose de 16Kb de mémoire alouer pour fonctionner en peux le pousser a aller jusqu'a 128Kb sans augmentation matériel mais du a l'achirecture de la mémoire du procésseur une fois qu'on dépace les 64 Kb le temps de traitement deviens long tellement que les premier fois j'ai penser la calculatrice totalment planter !&lt;br /&gt;
&lt;br /&gt;
Si on essaye d'alouer plus que 128Kb de mémoire a python la calculatrice bloque l'action et empêche d'ouvrire la console , il existe une petit sécuriter pour éviter de vraiment planter la calculatrice &lt;br /&gt;
&lt;br /&gt;
cette modification permet d'avancer l'hypothése que le système epilson prend 128kb dans la mémoire vive actuel&lt;br /&gt;
&lt;br /&gt;
Une autre modification mineur a était réaliser pour modifier la version de la numwork il n'ai possible que de rentrée un numéro de version ayant 7 char chose intéressant le site de numwork affiche bien notre version modifier &lt;br /&gt;
[[Fichier:Version.png]]&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
Je commence cette semaine par étudier l'utiliter du port TearingEffect et ExtendedCommand on debute par tout commenter pour voir l'effet sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:TE exc.png]]&lt;br /&gt;
(d'autre ligne on était commenter)&lt;br /&gt;
&lt;br /&gt;
je charge donc cette modification dans la calculatrice pour voire le résultat grace a la fonction graphique je charge des fonction assez lourde graphiquement pour voire les changement ( un fonction de base comme f(x)=x n'ai aucun bug graphique)&lt;br /&gt;
&lt;br /&gt;
je test donc tan(x²⁴) et sin(x⁴)&lt;br /&gt;
&lt;br /&gt;
(pour les images de cette partie il n'aie pas possible d'utiliser le simulateur)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Original.png]]&lt;br /&gt;
&lt;br /&gt;
en effectuant quel que déplacement sur la courbe on obtiens des léger bug graphique comme celui la ,ou seulment un petit portion disparaît par a coup&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit bug.png]]&lt;br /&gt;
&lt;br /&gt;
en changent de fenêtre l'as on obtient des bug graphique plus important &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Gros bug.png]]&lt;br /&gt;
&lt;br /&gt;
même si les bug graphique sont présent il ne sont pas gênant car :&lt;br /&gt;
&lt;br /&gt;
- sur des fonctions de base il ne sont pas présent donc pas contraignant pour un étudiant au collège/lycéen &lt;br /&gt;
&lt;br /&gt;
- sur des fonction avancer les bug ne dure quel que seconde et ne sont donc pas gênant &lt;br /&gt;
&lt;br /&gt;
il pourrai donc poser problème sur des fonction plus graphique et dynamique&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=59918</id>
		<title>IMA5 2018/2019 P28</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P28&amp;diff=59918"/>
				<updated>2018-09-24T09:56:30Z</updated>
		
		<summary type="html">&lt;p&gt;Adorian : /* Semaine 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
Construire un clone de la calculatrice open-source NumWorks. Effectuer quelques modifications sur le code source et sur le hardware.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
Il y a plusieur Axes sur le projet&lt;br /&gt;
en premier temps sur une calculatrice officiel&lt;br /&gt;
Logiciel : &lt;br /&gt;
&lt;br /&gt;
Préambule&lt;br /&gt;
- compilation du firmware sur linux / windows &lt;br /&gt;
- mettre a jour un calculatrice&lt;br /&gt;
- compréhension du code dans sa généraliter &lt;br /&gt;
&lt;br /&gt;
Réquis&lt;br /&gt;
- Modification du mode examen pour garder les programme &lt;br /&gt;
- Modification du calculateur pour rajouter des fonction&lt;br /&gt;
- Ajout de memoire a python ( 13 ko disponnible)&lt;br /&gt;
&lt;br /&gt;
Hardware &lt;br /&gt;
&lt;br /&gt;
- Rajout de memoire vive (seulement 256kb) &lt;br /&gt;
- Recherche ecran compatible &lt;br /&gt;
&lt;br /&gt;
en un second temps modifier la calculatrice en rajoutant des fonction non utiliser &lt;br /&gt;
comme lecture de carte sd et utilisation des entrée sortie&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
Pour éviter de me retrouver avec une seul version qui a tout les modification je travail par petit segment qui seront appeler buildx (x étant un chiffre croissant)&lt;br /&gt;
les petit modification pourront comme sa ajouter dans une version futur et des modification juger non pertinent n'impacterons pas sur le peux de place qui a en mémoire flash&lt;br /&gt;
&lt;br /&gt;
Installation : &lt;br /&gt;
&lt;br /&gt;
[https://www.numworks.com/resources/engineering/software/sdk/ source]&lt;br /&gt;
&lt;br /&gt;
Linux &lt;br /&gt;
&lt;br /&gt;
Partant d'un linux vierge pourvoir installer l'environnent sdk pour qu'on puisse mettre a jour et modifier la numwork il faut quel que ressource&lt;br /&gt;
seront nécessaire pour compiler&lt;br /&gt;
 make gcc g++ &lt;br /&gt;
utiliser par &amp;quot;os&amp;quot; de numwork&lt;br /&gt;
 bison build-essential dfu-util flex gcc-arm-none-eabi libfltk1.3-dev libfreetype6-dev libpng12-dev&lt;br /&gt;
une fois tout sa installer linux et enfin prés a compiler et envoyer le code sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
Windows&lt;br /&gt;
&lt;br /&gt;
Cette fois n'ayant pas de console il faut l'installer Numwork nous propose Msys2 une fois installer comme sur linux il faut installer pas mal de ressource &lt;br /&gt;
 pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-freetype mingw-w64-x86_64-pkg-config mingw-w64-x86_64-fltk git make bison python&lt;br /&gt;
&lt;br /&gt;
Mac&lt;br /&gt;
aucun mac pour les tests mais sa doit fonctionner correctement &lt;br /&gt;
&lt;br /&gt;
Mise a jour : &lt;br /&gt;
une fois l'ordinateur configurer on compiler et essayer soit le simulateur soit envoyer le code sur la calculatrice (sachant que le simulateur ne simule pas la led et d'autre fonction de la calculatrice)&lt;br /&gt;
Pour compiler le code vers la calculatrice&lt;br /&gt;
 make clean&lt;br /&gt;
 make&lt;br /&gt;
 make epsilon_flash&lt;br /&gt;
Pour compiler le code pour le simulateur&lt;br /&gt;
 make PLATFORM=simulator clean&lt;br /&gt;
 make PLATFORM=simulator&lt;br /&gt;
sachant que le clean et très important on ne peux pas exporter un code qui a était a but du simulateur &lt;br /&gt;
&lt;br /&gt;
Pour exécuter le simulateur &lt;br /&gt;
 ./epsilon.elf&lt;br /&gt;
&lt;br /&gt;
'''Build 1''' désactivation du mode examen &lt;br /&gt;
&lt;br /&gt;
Le mode examen et obligatoire pour tout les calculatrice programmable a partir de la rentrée 2018  le but de se mode et de bloquer l'accès au programme qui on était dejai enregistré dans la calculatrice et de l'indiquer pour aider les surveillant a verifier que le mode et bien actif.&lt;br /&gt;
&lt;br /&gt;
Pour se faire Numwork a choisir d'appliquer 3 action en activant le mode examen &lt;br /&gt;
&lt;br /&gt;
- ajout d'une icone examen dans le menu &lt;br /&gt;
&lt;br /&gt;
- clignotement d'une led en rouge &lt;br /&gt;
&lt;br /&gt;
- effacement des programme python (et non dés-affichage des programme comme le font certain concurrent)&lt;br /&gt;
&lt;br /&gt;
Pour sortir du mode d'examen il suffit soit de reset sa calculatrice ou d'alimenter la calculatrice &lt;br /&gt;
&lt;br /&gt;
Cette dernier fonction et vraiment contraignante même pour une utilisation normal, une mauvaise manipulation et les programmes réaliser s'envole &lt;br /&gt;
&lt;br /&gt;
Pour que la supercherie que le mode examen aie était truquer les indicateur visuel doivent rester il faut juste modifier la dernier fonction&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
Ayant avancée sur la partie software et compris un partie du code je me lance sur la liste des materiel requis pour réaliser un clone.&lt;br /&gt;
tout les composant sont disponible dans le commerce sauf l'ecran qui a réaliser sur mesure pour numwork &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Connecteur_ecran.png]]&lt;br /&gt;
&lt;br /&gt;
On peux voire que la schème donnée par numwork qu'il utiliser des fonction particulier du controleur qui sont: &lt;br /&gt;
&lt;br /&gt;
-un bus de donnée de 16 bits &lt;br /&gt;
&lt;br /&gt;
-4 led de retroéclairage&lt;br /&gt;
&lt;br /&gt;
-Te : Tearing Effect  &lt;br /&gt;
&lt;br /&gt;
-EXTC : extended comande &lt;br /&gt;
&lt;br /&gt;
connaisant les port qui sont requis je peux commencer a chercher un ecran compatible sachant qu'aprés une demande a numwork le ports EXTC n'ai pas encore utiliser et le ports TE peux être desactiver sans vraiment poser de problème&lt;br /&gt;
&lt;br /&gt;
Il et dur de trouver d'un concepteur d'ecran utilisant le controleur ST7789V pour leurs ecran il faut donc se tourner vers la chine &lt;br /&gt;
sur 8 fabricant seulment 4 réponse et sur les 4 réponse seulment 2 avec des produit correspondant a la demande &lt;br /&gt;
l'un viens de [http://www.szelida.cn szelida] et l'autre de [http://www.youritech.com Youri Technology]&lt;br /&gt;
je choisi donc le ET024QV01 [[https://projets-ima.plil.fr/mediawiki/index.php/Fichier:ET024QV01.pdf]]&lt;br /&gt;
&lt;br /&gt;
on peux voire a sa liste de PIN qui a certain PIN qui deveront être fixer a vcc ou gnd pour bloquer le mode d'affichage de la calculatrice mais il posséde les pin requis pour fonctionner avec la calculatice il et juste plus petit&lt;br /&gt;
&lt;br /&gt;
[[Fichier:RAM_numwork.png]]&lt;br /&gt;
&lt;br /&gt;
En paralléle une recherche sur le hardware montre que la place pour la RAM et dejai prévu sur le PCB il faudrait juste modifier une partie software pour qu'il soit pris en compte l'ajout de la RAM boostera fortement les capacité de cette calculatrice et pourra permet normalment de faire des petit calcul formel &lt;br /&gt;
'''&lt;br /&gt;
Partie Software :'''&lt;br /&gt;
&lt;br /&gt;
Vu que le recherche sur la ram a était effectuer je me concentre se coup si sur l'augmentation de la taille alouer a python en prévision de l'augmentation qui serra fait dans le futur !&lt;br /&gt;
&lt;br /&gt;
De base python dispose de 16Kb de mémoire alouer pour fonctionner en peux le pousser a aller jusqu'a 128Kb sans augmentation matériel mais du a l'achirecture de la mémoire du procésseur une fois qu'on dépace les 64 Kb le temps de traitement deviens long tellement que les premier fois j'ai penser la calculatrice totalment planter !&lt;br /&gt;
&lt;br /&gt;
Si on essaye d'alouer plus que 128Kb de mémoire a python la calculatrice bloque l'action et empêche d'ouvrire la console , il existe une petit sécuriter pour éviter de vraiment planter la calculatrice &lt;br /&gt;
&lt;br /&gt;
cette modification permet d'avancer l'hypothése que le système epilson prend 128kb dans la mémoire vive actuel&lt;br /&gt;
&lt;br /&gt;
Une autre modification mineur a était réaliser pour modifier la version de la numwork il n'ai possible que de rentrée un numéro de version ayant 7 char chose intéressant le site de numwork affiche bien notre version modifier &lt;br /&gt;
[[Fichier:Version.png]]&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
Je commence cette semaine par étudier l'utiliter du port TearingEffect et ExtendedCommand on debute par tout commenter pour voir l'effet sur la calculatrice &lt;br /&gt;
&lt;br /&gt;
[[Fichier:TE exc.png]]&lt;br /&gt;
(d'autre ligne on était commenter)&lt;br /&gt;
&lt;br /&gt;
je charge donc cette modification dans la calculatrice pour voire le résultat grace a la fonction graphique je charge des fonction assez lourde graphiquement pour voire les changement ( un fonction de base comme f(x)=x n'ai aucun bug graphique)&lt;br /&gt;
&lt;br /&gt;
je test donc tan(x²⁴) et sin(x⁴)&lt;br /&gt;
&lt;br /&gt;
(pour les images de cette partie il n'aie pas possible d'utiliser le simulateur)&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Original.png]]&lt;br /&gt;
&lt;br /&gt;
en effectuant quel que déplacement sur la courbe on obtiens des léger bug graphique comme celui la ,ou seulment un petit portion disparaît par a coup&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Petit bug.png]]&lt;br /&gt;
&lt;br /&gt;
en changent de fenêtre l'as on obtient des bug graphique plus important &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Gros bug.png]]&lt;br /&gt;
&lt;br /&gt;
même si les bug graphique sont présent il ne sont pas gênant car :&lt;br /&gt;
- sur des fonctions de base il ne sont pas présent donc pas contraignant pour un étudiant au collège/lycéen &lt;br /&gt;
- sur des fonction avancer les bug ne dure quel que seconde et ne sont donc pas gênant &lt;br /&gt;
&lt;br /&gt;
il pourrai donc poser problème sur des fonction plus graphique et dynamique&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;/div&gt;</summary>
		<author><name>Adorian</name></author>	</entry>

	</feed>