 Okay, welcome to lightning talks the next presentation will be by our restes is 15 minutes have fun Thank you very much. Good afternoon. I'm very happy today because it's my first time at Fosden So let me introduce myself myself a bit. My name is Orestes mass. I'm a professor at the University Pultenac University of Catalonia where I teach mainly circuits linear circuits and systems and I have a problem the problem is I need to draw circuits lots of them to be included in all sorts of documents Exams articles and so on or mixed it with other kind of graphics with function plots or also and with mathematical formulas and Symbols so you get the idea so but these circuits cannot be drawn in a in a in whatever way Instead have to fulfill certain restrictions Which are more or less? these ones first of all they have to be beautiful of publishing quality We need a large library of predefined symbols to avoid reinventing the wheel over and over and It's better to not mix libraries from different different authors because you will end up with a mess of styles We also it need to change the the appearance of symbols upon needs and I think I consider very important is a consistent typography between the text and the graphics No, for instance here you have a circuit Where you have some symbols over there or variables currents voltages and often your reference they makes reference of to these symbols in text and If you look at the symbols, they have font and If you later change your mind mind and want to change the font The the graphic has to change the font or to for instance here you have other kind of symbols and the graphic is updated accordingly And finally we want to create and edit these These graphics this circuits using free tools over on free systems and and Saving it in free formats. So obviously there are many software packages out there to Those circuits, but if you apply those restrictions the the list starts to shrink no so We ended By choosing first of all latex to To write a document in latex for the great quality it provides and second describe the diagrams Textually in in tick set which is a subset of an extension of the lathe language So which with this method we achieve perfect interaction with it within text and graphics We gain program probability and flexibility Maths are no problem because you have all the latex power to type set math Also, tick tick zeta have has a route the library to type set circuit elements which is called circuit tick zeta and We end up with vector graphics that you can Enlarge and shrink without loss of quality. No here you have an example In few lines you can describe as traffic, which is useless in this case. Obviously, but You more or less see the the power of the of the solution. Okay Well, this is that the end of the story not not at all because the circuit tick zeta Is a good choice, but for us have has some minor issues Aesthetical ones and Also practical one When you write a circuit in tick zeta you end up Specifying absolute coordinates all the time and this is not It's very not very good. Also if you if you look At the graphic of the on the on the right you see that this other graphic is more consistent with the line with is more consistent the the elements are better proportionate know and The syntax here you don't have the you don't have the syntax, but it's clear in some ways. No, so we decided use a thing called circuit macros Which I described a bit later. No, so what is what spy circuit by circuit? Obviously when you describe a circuit textually you need some some sort of visual feedback and The pie circuit is an application that Has in the dose in the in the background some compilation steps and presents the result to you In a visual form There is an application written in python python 3 and using pike qt 5 so it works in windows linux and mac It's multi-platform and has two modes of operation. Here is the Graphical user interface mode and also has a common line interface to process files in batch mode How it works first step is to describe your circuit diagram in a source file And in the source file you put the elements using a circuit Macros which are a set of macros written by dr. Apovich of the what's a law university in Canada And then you use the m4 utility the new m4 utility to process the source file and expand the macros into a pick language pick language and for unfortunately is is not Understand the directly by by latte. So you need another step which is Done by by the the peak utility That it's also written by dr. Apovich and the the peak utility converts the source in this case the peak source file into a Various languages which some of them are generic and some of them are latter specific Which is for our purposes the first one So here we have the two steps I mentioned it earlier are here depicted in Fosden violet color No, and you end up with tixata file Which you can embed this in in a mean a minimal lighted Document process it to obtain a PDF file and then this PDF file Process it again to obtain Raster file a P&J file in this case to visualize it so As a bonus at the user request we can also generate other formats like SVG JPG etc. No, so this is the whole picture essentially Now the PyCircuit is in deviant testing so the end users can Debian testing user can see install it straight pretty straightforward If you don't have deviant testing or you have other operating systems you can use Pi Pi or peep Install to to install it in your computer and the sources are on beat have If you install it by hand you have to install all the other dependencies you can see the read me file to To to see so let's do a little demonstration Here you have the graphical user interface and you can start to enter the code here. This is a minimal template that By circuit offers when you when it starts so we can we start with a source with a source in the upper direction You can parameterize it is it with the value symbols here you have for instance in the documentation you have All the possibilities for the source element. It's very well documented the circuit circuit Macros so you can change for instance in this case to a square wave We can apply a label in this case a label is a left label because going up the label Is in your left hand no and it except three parameters ABC that Goes in the into the bottom center and upper position So you can change that to the symbols to Specify the the voltage Now we are at the top of this source So we can add other elements Here are resistors in the right direction with length L And we call we can add the label to To the top This time we are at only one one symbol the other are blank the other two Now We are always at the relative position We are now at the at the right side of the resistance So you don't have to to push this button every time you can write some comments and See the results later for instance, here's capacitors in the down direction and We had for instance a line line is a Command in the peak language you can mix circuit macros and pick language here and Align those Is drawn from the bottom of the capacitor if you want to draw it from the top you can add a label and Then specified and this line has to be drawn from this label so Then you can complete the circuit close the circuit adding for instance a gap Which is drawn in the down direction from this last point C label is a label centred so We can add here the Output voltage and finally we want to close the circuit dialing a line to the to the start of the of the graph But well, we missed here the C the label from for the capacitor So if you want to specify a line to the start we have to define another label so we go here and We can declare label here is always the the actual position and then we Draw a line to start Okay, so the graphic is of great quality and you can save it and Export it with the other button to the so the format so you you you want And the format you want you choose in the settings in the settings menu, okay Also you have all the power of lot of latter to typeset formulas so here you have a more complicated expression for your series from for this label And you save and export it. Okay, this is the the the idea if you want to To see how the command line works So you have here some files and We can we can activate the this is a Thing That is necessary if you execute the pie circuit in a weird and in a python inside a python virtual environment So the the command line has all these options you can process files and write The resulting text that format PDF Png Jtp SVG You can you can specify the resolution of all put raster images the quality of Lossy formats Destination directory etc So for instance here we specify we call pie circuit and We ask for a PDF format a png format with a dot spanish resolution of 250 and all the circuits Ended in security if you if this process encounters an error You can choose to abort to skip this file to the board all the whole process to skip this file Or to open the the graphical user interface to see what's happening so in this case we choose the latter and Here's an unknown comment. I I put it On purpose you can correct the error save it pressing control s or something and The process follows okay, so it's that's in essential the The work the working of pie circuit the future work here you have I don't have much time to explain it, but it's a self-explained and Well, I would like to to finish it the talk by Showing you the relevance the reliance of the of the project and acknowledging the the work of the many people people sorry that has presented us to Well and and wrote the software upon pie circuit is based, okay Thank you very much