Input pin not driven by any output pins - KiCad 7

I’m new to Kicad and using any such software. I’m trying to follow a YouTube video titled “PART 1: Designing a New Retro Games Cartridge in 2022!” for a Commodore 64. In the video, he is using Kicad 6. In trying to do the project in Kicad 7, I learned to use the newer “unfold bus” feature to create and connect the two buses to the chips. That alone got rid of a ton of errors. I also used a PWR_FLAG to get rid of one more error. Now I’m down to 13 errors that are the same “Input pin not driven by any output pins” on only one side of one chip. All on the Address_Bus.

Here’s the schematic:

All of the pins on the custom created C64_Cart_Port are set to INPUT as directed in the video. But the pins in the EPROM use either INPUT, TRI-STATE, or POWER_INPUT.

The creator of the video stated that he redid his Kicad 6 design in Kicad 7 and got lots of errors. Then changed the buses to sue the “unfold” technique, and the errors went away. He even left the pin assignments for the C64_Cart_Port to INPUT.

I can change the C64_Cart_Port pin assignments to PASSIVE, and the errors go away. But I’d really like to know why I’m getting the errors in the first place.

Any help would be appreciated.

Thank you!

Joe

First of all the Input pin not driven by Output pin message has nothing to do with buses. The buses are just shorthand for a whole bunch of wires.

The address pins on the EPROM are of type Input. If this were a complete schematic, they would be connected to the address bus of a microprocessor. But as it’s on a cartridge, the microprocessor is outside the schematic. So KiCad doesn’t know that the address pins on the C64_Cart_Port can drive the EPROM address pins. If you set the type of pins K to Y to Output that will satisfy ERC.

I don’t have a 6502 in my library so I’ll take the 6800. From this screenshot of the symbol, you can see that the address pins are of type Output.

ERC is based on a set of simple rules derived from a (half?) matrix in: Schematic Editor / File / Schematic Setup / Electrical Rules / Pin Conflicts Map:

And when a net only has inputs, it can not work as a valid digital circuit, and KiCad throws this error, as retiredfeline already mentioned.

Also, do yourself a favour, and keep with the standard abbreviations of D for “DataBus” and A for “AddrBus”. These are very standard abbreviations and are in use at least from the '70-ies. I had a short peek at the video you mentioned ( https://www.youtube.com/watch?v=8ikvcYKftms ) and that video also uses these abbreviations.

Thank you both for the prompt and very helpful replies. I changed the pin assignments on A0 through A12 on the C64_Cart_Port to passive since it’s really no more that a pass through connection from the CPU to the EPROM. I also simplified the bus abbreviation’s as suggested. I re-ran the ERC and received no errors.

As an aside, the author of the YouTube video I referenced replied to my comment/question about the bus pin assignment errors by stating that he redid the buses in his design in Kicad 7 using the “unfold” feature, but left the pin assignments as INPUT and received no errors. How he did this is beyond me. I couldn’t get that to work.

Paulvdh, in the Pins Conflict Map you provided (thank you, it’s very helpful), one thing is unclear to me (remember, I’m a novice at the earliest stage - so please forgive my ignorance). The map shows INPUT on the left side as well as INPUT on the top, and the resulting box is green. Does this not imply that INPUT to INPUT is allowed without an error being thrown? It seems that it should be red. Or am I reading it incorrectly?

Thank again!

Joe

I don’t use ERC but I see nothing wrong with driving several inputs by one output. Such connection should not be reported as error or warning, just because inputs are connected together.

As Piotr also already answered, it is perfectly legal to tie multiple inputs together, and thus that box is green in the matrix.

But the matrix is not the full story of ERC. A bunch of inputs, but with nothing to drive them is also an error (but a different one).

Thank you. That makes sense.

Joe

Well you know, they often use stunt designs in videos so you can’t always believe your eyes. :crazy_face:

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.