Hi, basically you need to cascade them. Output from 1st part will be routed
to input of 2nd part. Like at old-school analog amplifiers.
Sorry, too tired today. Tomorrow I can send better schematic and
description.
Regards
 Martin

On Tue, Jun 1, 2021, 22:01 John Klimek <[email protected]> wrote:

> Interesting ideas, thanks!
>
> How would I connect a second transistor to re-invert the signal?
> Also, could I use a PNP transistor instead?
>
> I'll have to think a bit more about the second idea and see if I can
> understand what you're saying.
>
> On Tue, Jun 1, 2021 at 3:56 PM Martin Stejskal <[email protected]>
> wrote:
> >
> > Hi, instead of hacking SW, why not hack HW? Add one more extra NPN, so
> it will invert signal again?
> >
> > Depends how brave you are, but there is also another (bit more
> dangerous) way - add serial resistance. Thing is that every GPIO suppose to
> have some protection diode (in generic - "every" IC - there are exceptions
> of course). They typically stand like ~1 mA without problems. I assume that
> your reset pin on Arduino have 22k pull-up -> use serial resistance ~1/10
> of that -> 2k2 -> ~70uA leakage when GPIO on Rpi will be 3.3V. That should
> not burn Rpi's GPIO. When GPIO on Rpi will be in low, current will be
> ~200uA, but it will be leaking through switch transistor, which actually
> can deal with much higher currents.
> >
> > But before you do any HW changes, make sure you made calculations (worst
> case) and all necessary measurements before trying on real HW. You have
> been warned.
> >
> > When you think about attached schematic, it is just 2 resistors with 2
> different power supplies -> quite easy math. If you're not sure, any free
> simulator can help you out.
> >
> > Best regards
> >   Martin S.
> >
> > On Tue, 1 Jun 2021 at 19:59, John Klimek <[email protected]> wrote:
> >>
> >> I'm using avrdude (v6.3-20171130) on my Raspberry Pi, but I need the
> >> RST pin to be inverted because I'm using an NPN transistor to protect
> >> the RPi from my Arduino's 5V power.
> >>
> >> Here is the command line I'm using for testing:
> >>
> >> avrdude -C /root/hid/.platformio/packages/tool-avrdude/avrdude.conf -C
> >> +avrdude-rpi.conf -P /dev/spidev0.0:/dev/gpiochip0 -c rpi -p m32u4 -v
> >> -v -v -v
> >>
> >> Here is avrdude-rpi.conf:
> >>
> >> programmer
> >>         id = "rpi";
> >>         desc = "RPi SPI programmer";
> >>         type = "linuxspi";
> >>         reset = ~25;
> >>         baudrate = 400000;
> >> ;
> >>
> >> Here is the avrdude output:
> >>
> >> avrdude: Version 6.3-20171130
> >>          Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
> >>          Copyright (c) 2007-2014 Joerg Wunsch
> >>
> >>          System wide configuration file is
> >> "/root/hid/.platformio/packages/tool-avrdude/avrdude.conf"
> >>          User configuration file is "/root/.avrduderc"
> >>          User configuration file does not exist or is not a regular
> >> file, skipping
> >>          Additional configuration file is "avrdude-rpi.conf"
> >>
> >>          Using Port                    : /dev/spidev0.0:/dev/gpiochip0
> >>          Using Programmer              : rpi
> >>
> >> avrdude done.  Thank you.
> >>
> >> I've checked the RST pin (25) on my oscilloscope and it's not
> >> triggering at all when I use the inverted (~) syntax.  If I remove the
> >> (~) then it does trigger the RST pin but not inverted as I need.
> >>
>

Reply via email to