Eeschema for Dummies? :)

Not too much pain hopefully if you have a look at http://ngspice.sourceforge.net/ngspice-eeschema.html

When interested in Spice,
I recently started a thread recently, with partially the intention to gather hints and tips for using ngSpice in KiCad.
https://forum.kicad.info/t/current-state-of-spice-in-kicad/16460

Should have added “for Dummies

1 Like

Hi @Russ, @Paulvdh, @venkatas and @holger :
Thanks so much for your feedback, the info and the links and my apologies for not replying sooner.

The video is certainly helpful as well as the 2 links you’ve suggested. Right now I’m collecting the info that seems particularly relevant for my purpose from 2 sources I found in KiCad: “Getting Started in KiCad” (4.1. Using Eeschema) and “Introduction to Eeschema”. I’ll be sure, though, to check out the links you suggested.

Actually, I have an electric scooter, an e-max 110S (which I named Maxine :slight_smile:) whose controller needs replacement. And for the electric scooter forum to help me figure out the wiring they obviously need wiring diagrams. For a while I drew them by hand (which took me forever). Eeschema, though, seems to be a much more efficient solution :smiley:. I just need to get the hang of it :).

Btw, is it possible to create a wiring diagram (schematics) on several A4 sheets (roughly the size of a US Legal paper), which can later get combined into one, e.g. after being printed out?

Many thanks again. I’ll keep you guys posted and I’m pretty sure am going to ‘bug’ you with more questions :).

John aka MaXinist1

Something that has worked well for me (on Winblows) is to design the schematic at full size (either C for US paper sizes or A2 for euro sizes). Print to PDF at 1:1 scale. Then in my PDF reader (Adobe’s Acrobat reader has this, hopefully others do as well) print in “Poster” mode. Acrobat reader’s print dialog even can add cut lines to help line up the smaller bits, and labels to help reassemble the puzzle of smaller sheets into the large compound sheet.

Or, you can keep your schematic pages down to A4 or US Letter and do a multi-page schematic using Hierarchical sheets.

Regarding multi sheet design: in your case I would go with the flat option as described in Hierarchical or flat schematic design, what is best for me? (How to deal with multi page schematics?)

Hi @paulvdh, @Russ, @venkatas and @holger:

Over the past couple of days I started creating a schematic with some of the components that are actually built into the Maxine, my scooter.

While doing so, a couple of questions came up I hope you won’t mind answering :smile:.

  1. The scooter motor (48V, 4kW): my scooter motor has 3 thick wires and 5 thin sensor wires that connect with the controller: therefore I’d need a motor symbol with these 8 wires. Does Eeschema allow me to create that kind of symbol?
  2. The controller has 5 contacts for thick wires, 2 are plus and minus and go to the batteries, 3 go the motor and 14 thin wires to various … would need a controller symbol with those wires
  3. How can I create red (for plus) and black (for minus) wires?
  4. How can I make wires that carry high amps thicker (in the schematic) than those with a lower load?
  5. What’s the best way to upload a schematic (to a forum, for example)?
  6. Last but not least, what would be the advantage of setting up ‘ngspice’ together with Eeschema?

Thanks so much!

John aka MaXinist1

P.S. @paulvdh, if it’s OK to ask, does vdh possibly stand for ‘von der Heide’?


I believe the MOTOR is the 3 big wires. The lighter weight wires, while physically part of the motor assembly, are really tachometer or current sensors. Not being a motor expert, I can’t tell from the original schematic, but given there are 3 wires (ABC) those provide feedback to the controller by motor phase.

Therefore, you don’t need a motor symbol with all those wires. Draw the 3 phase motor windings as shown and draw the feedback sensor separately, but nearby. You’ll want to have a note that says the module is part of the motor assembly.

A couple points that I think you are confused about. No biggie, that’s why we ask questions.

In KiCad schematics all the wires look the same. I don’t remember if colored wires in EESchema is on the roadmap for v6 or not. Thicker “wires” are actually busses (think of them as the schematic equivalent of a multi-conductor cable). The busses are handled differently than wires. Choice of trace thickness is done at the PCB level, but you can help yourself by making notes in the schematic of the current loads to expect.

1 Like

I had a similar task. I researched a bit and found that a few connectors made by Hirose fit my need. These connectors also have a footprint library associated. So I just took the footprints and the symbols, associated them with the pin names I needed to assign and created a new symbol for my own libraries. Look here for the Hirose footprints.

Disclaimer: I am not advocating for or against any specific connector company. Molex, TE or others may have similar or better connectors. but you need to search for the specific connectors to suit your purpose. Cited Hirose only because it suited my current need.

In the symbol you made above, the pin properties can be changed. Not sure about the colors though.

Usually, you have all pins in a connectors carrying the same capabilities (documented in their datasheets) because they need to be associated with the crimps and the contact receptacles. That means that you can choose to split your connections into two or three different connectors and enumerate them appropriately. About the wire thickness. You can set track specific thickness by net when you are doing layout. So defer that question to your layout making stage.

I am sure you are aware but still, let me specify why simulation is critical in my view. Without first understanding how my circuit behaves and with the specific components I choose (and their electronic behavior described by the parametrics and the SPICE model), going ahead with a BOM and to a manufacturer is jumping the gun and making costly (literally) mistakes. For example, you may need to choose diodes with a proper knee voltage. At the end of the day, getting the PCB into your hands is a lot of compromises that you would come to know and document, but the electronic compromises the most crucial among them, are only exposed by your pre-simulation-design and simulation.

To set up a ngspice model, you will need
a model for the BLDC motor. You might ask the motor manufacturer and have a look at https://www.pspice.com/sites/default/files/PSpice%20App%20Note_Brushless%20DC%20Motor%20Model%20.pdf.
You will also need a model for the Kelly motor controller (probably not available, so you have to ask them) or a circuit diagram of the alternative motor controller.

Most manufactures (at least Ti, ST) which have uC’s for motor control have development boards and software to measure real time motor parameters and draw graphs on screen with real time data.

There are also open source variants.
LinuxCNC has a module for graphically visualising motor parameters.
ODrive also has a utility to plot real measured parameters:
https://docs.odriverobotics.com/odrivetool

Completely designing a motor drive from scratch is a quite involved project, and has been done over and over for many times. Have you thougt about gleaning over the shoulders of the giants before you?
https://duckduckgo.com/html?q=open+source+motor+controller

Hi guys, aka @paulvdh, @Russ, @venkatas and @holger :grin::

Thanks again for all your feedback and suggestions. And my apologies for ignoring for the moment several salient points you made in your posts. I’ll get back to them in a later mail.

Now, I hope I’m not being rude with this question, but do you know of an alternative to KiCad (either online or to be installed on a HD)?

KiCad seems a little overkill for my purposes. For things like the controller, the MSU, etc. being able to draw a rectangle which gets connected to other components by lines marked + or - (i.e. wires, cables) is easier for me than dealing with e.g. a controller-icon/symbol that has one contact too many.

Many thanks.

John

There is more software in this world, but your choice will probably between software that can do more then you strictly need, or less than you need.

It will be impossible to find a piece of software that has the exact same feature set as your wishes, unless you write it yourself.

I’ve been toying with PCB design evey now and then (Started about 30 years ago), with gaps of multiple years in a row of not touching a PCB program myself.

5 or 6 years a go I decided to invest some time into finding a new PCB program, as my previous program only worked under Windoze and I had abandoned that platform. (And it was to buggy to try to cling on to it anyway, old version, not maintainded for 10 years or so).

I tried at least 5 or 6 different programs and did not like any of them very much, and I settled on KiCad for a bunch of reasons. I like Open Source projects a lot, and KiCad had a bunch of interesting features such as putting crosses on unconnected pins, which makes you think about each and every pin without forgetting any.

Another important reason for me is that KiCad does not have andy omissions / blatant errors that make it unusable. In the past I have discarded programs I paid for because they made such big errors that PCB’s made with them were unreliable. For example, when I discovered that if you delete a wire in the schematic, only the visible wire dissapears, but the netlist connection stays. That was EUR125 down the drain.

Library management was really bad back then in KiCad. And with each update old quircks get smoothed over and new usefull features get added. KiCad is getting noticably better each year. I’ve heared of other peoply why tried it a few years ago, did not like it and now come back.

KiCad is a pretty big program with lots of functionality devided over sub programs, and that takes some time and effort to get used to. Other PCB programs will also have such a learning curve. (Except maybe programs that are so limited the’yre hardly usefull, and then you have to fight to get to a result you want and that is not really implemented…).

It would also be impossible to recommend an alternative to KiCad without being familiar with your wishes and way of thinking.
If you want to try another program, then the overview at Wikipedia might be a good start:
https://en.wikipedia.org/wiki/Comparison_of_EDA_software

You need to ask the question “What is my intended use?” .Judging from the title I get the impression that you just wish to document the circuit but will not actually be making a pcb? You linked a circuit diagram and asked about thicker lines and colours - is this what you need (i.e. Is the circuit diagram the final output?) or just how you hoped you could represent the circuit so you could understand it better? Does it need to be FOSS? Understanding your expectations would make it easier to offer guidance.

1 Like

Hi Paul and John:

Again many thanks for your patient and thoughtful feedback!

Well, the end product I need is a wiring diagram I can a) print out and consult while I’m working on the scooter, that is correctly connecting all the wires and cables and b) to upload it to the electric scooter forum for feedback and help.

When I started tinkering with electric scooters like 10 years ago I didn’t yet know that they’re more like toys than useful means of transportation. Therefore, if that’s the goal they need improvements in several areas such as range, instrumentation, equipment, etc.

Last fall the old controller went kaput and for a variety of reasons I am only now able to continue integrating the new controller. ‘Maxine’, my e-scooter, has one 48V circuit and two 12V circuits parts of which need to be rewired, which is where the electric scooter forum comes in). Unfortunately, Vmoto, the e-max manufacturer, doesn’t provide it’s customers with a complete wiring diagram :astonished:.

Anyways, the Li-ion batteries have been sitting around doing nothing for about 8 months, which doesn’t exactly help their capacity and therefore range. Last year I had a range of about 125 mi. (200km), which is pretty good for a ‘normal’ e-scooter.

So, I’m eager to get ‘Maxine’ fixed and up and running again and so don’t really want to spent weeks on learning the ins and out of KiCad. It’s not just wiring the new controller, which wiring is in part very different from that of the old one but also several other things that need fixing or improving. That alone will probably take me at least 2 months.

Long story short, I’ll give KiCad another try and maybe somewhere hidden in the repositories are even a few squares and rectangles I can adapt for my purposes :smile:.

Perhaps as an example what I mean by ‘adapting squares and rectangles for my purposes’ I’m attaching a hand drawn wiring diagram still with the old controller.

Sorry about a rather lengthy and more personal mail but hopefully it makes it a bit more clear what I hope to get out of KiCad.

John aka MaXinist1

Ok, so instead of creating a printed circuit board, you are more interested in creating a system wiring chart?

It is unlikely that any schematic program will have all the symbols (your so-called squares and rectangles) you want to use. Creating new symbols in KiCad is fairly easy. Check out this FAQ entry on creating symbols from scratch:

Unfortunately, currently KiCad doesn’t support color coding the wires in schematics like you have drawn here. Fritzing might, but if what I remember from the last time I used it, generating new symbols can’t be done in the tool. (I think it needs to be done in Inkscape or similar programs to create SVG files.) Though that may have changed…

1 Like

Hi, MaXinist1

One software package to look at is ExpressPCB Classic. It is a very basic free schematic capture and PCB layout software package. I have been using it for years and I think that its standout characteristics are simplicity and relative freedom from bugs. The issue with it is that the software is captive; a new board design can only be purchased from ExpressPCB. Once you do that I think that they now provide gerber files for free. But if you change your board design then you need to order it from them again. In both KiCad and ExpressPCB I mostly edit my own footprints and schematic symbols; often starting with the standard ones provided. It is pretty easy to do with either software package.

Yes although I have never worked on an electric scooter: The motor power would most likely be applied through 3 wires. it is reasonable that these 3 wires would be heavy because 4000W/48V = 83 Amps from the battery. (Given the 3 wires this is only a very rough figure.) For that much current I would expect the wire diameter to be at least a few mm. One thing which I have been doing in Eeschema (although I am pretty green with KiCad) is to attach global labels to many of my schematic wires because I generally find the Eeschema default netnames to be uninformative. So you could have a global label called “FAT_RED” for one heavy wire for example unless you do not have a red one.

Paulvdh I sort of agree with you about “dummies”. But sometimes one can get into some sort of “help” material where one then finds it necessary to get help to read the help book. So I think the idea is that the books are targeted at beginners.