texts: Extremely low power sensors powered from mains (110/220)

texts:
I hope to find some help here with powering of sensor module. I have sensor, that was designed primary for battery usage, so it is extremelly low power, now I was aked to try this sensor also indoor with power from mains (110/220V), and here I have already spend hours on internet without any progress. I need power module that will provide the sensor with 5V, but as there will be many of them (start with 1, 2, 10, up to 1000) running 24x7 it is expected that one of biggest advantages (low power) will remain.

The Sensor:
Input voltage: 5 V (+30% -5%)
Input current: 0.005 mA (typical)
Input current on action: 5mA (typical) 10mA (max)
Sensor run time: 24x7
Sensor action: 16 minutes/day (typical) 60 minutes/day (max)

What I have found are PCB (not necessary needed) power modules that have reasonable self power consumption <50mW however they are at least 1W and require minimal load of 5 to 10% (10 to 20 mA) which is still significantly more than sensor consumption.
Then there are power source modules that have no minimal load limit, however thay have internal power consumption cca 1W which means (calculated to 1000 sensors) that power supplies will consume 24 000 W/24h and sensors will consume 0.6 W/24h which I consider as unfair :-(

Looking forward to any help.


texts: Purpose of 2 resistors in high pass filter?

texts:
In the picture below, what is the purpose of R1? Compared to a high pass filter with 1 resistor, how does this affect Fc?

Thank you.


texts: Hi Drive MOSFET waveform for charge controller

texts:
I have designed a charge controller using the BQ24650 IC from Texas Instruments. Although I am outputting the correct voltage, the hi drive waveform is not the square-shaped waveform I was expecting.

Could this cause a problem in my circuit and any suggestions to correct this?


texts: How can I convert the number of DSP48/BRAM to the number of LUTs and FFs in FGPA

texts:
I have a trouble with estimation of logic utilization.

I am Ph.D student who research the efficient implementation of signal processing algorithms. So, I have to compare the logic utilization of proposed method with conventional method.

Therefore, the comparison of gate counts for each methods is the best way to evaluate efficiency of logic utilization.
Unfortunately, as you know, the Xilinx simulator does not provide the gate counts anymore.

Instead of gate count, we can estimate the logic utilization with the number of LUTs and FFs.
So, I did not use the DSP48 and Block memory by using synthesis settings so that every logic can be implemented by LUTs and FFs.

However, although I had configured –max_dsp = 0,
the decimation filter/FFT generated by IPs,FIR compiler/FFT, still used DSP48 and BRAM.

Here are the questions.

1.How can I generate decimation filter without DSP48 using FIR Compiler.
I would like to generate decimation filter only with CLBs using FIR compiler.

2.Is there any criteria convert the number of DSP48 to the number of LUTs and FFs?

3.In addition, is there any criteria convert the number of block memory to the number of LUTs or Memory LUTs?


texts: Unexpected behavior when dividing clock multiple times in VHDL

texts:
I am playing around with some example code for a clock divider. When I try to chain multiple dividers together to further divide the frequency, I get unexpected and unpredictable behavior. Depending on the rest of the code, sometimes the second signal flashes for a short amount of time and sometimes it ticks, but at a different rate. There seems to be something fundamentlly wrong with my design.

I tried to run the design in a simulation and there it works as expected. Only running on hardware produces the unexpected results.

If I do not connect the second clock directly to the first one, but instead to an external input and connect the signals externally, the design also works. What is going on here?

library ieee;
use ieee.std_logic_1164.all;

entity clock_div is
generic(
    count_max   : integer := 1_000_000
);
port(
    clock_in    : in std_logic;
    clock_out   : out std_logic
);
end entity;

architecture behavior of clock_div  is
    signal cnt : integer range 0 to count_max;
begin
    process(clock_in)
    begin
        if rising_edge(clock_in) then
            if cnt = (count_max-1) then
                cnt <= 0;
            else
                cnt <= cnt + 1;
            end if;
        end if;
    end process;
    clock_out <= '0' when cnt < (count_max/2) else '1';
end architecture;

library ieee;
use ieee.std_logic_1164.all;

entity top is
port(
    CLK12M      : in std_logic; -- 12MHz input clock
    o1, o2      : out std_logic
);
end entity;

architecture top of top is
    component clock_div
    generic(
        count_max   : integer := 1_000_000
    );
    port(
        clock_in    : in std_logic;
        clock_out   : out std_logic
    );
    end component;

    signal clk1: std_logic := '0';
    signal clk2: std_logic := '0';
begin
    CLOCK1: clock_div generic map(count_max => 12_000_000) port map(CLK12M, clk1);
    CLOCK2: clock_div generic map(count_max => 2) port map(clk1, clk2);
    o1 <= clk1;     -- 12MHz / 12e6     -> 1Hz   (works)
    o2 <= clk2;     -- 12MHz / 12e6 / 2 -> 0.5Hz (does not work)
end architecture;
```


texts: Storing values in the internal flash memory

texts:
I want to reserve a space in the internal flash memory of my microcontroller (STM32L4) to store the latest 100 measured values by a sensor (in a circular FIFO Fashion) and be able to load them again when I restart the device.

My logic looks like this:

typedef struct
{
   uint16_t   measuredValue;
   DateTime_t timestamp;
}MeasuredValue_t;
// ..
// ..
MeasuredValue_t measuredValue;
// ..
// ..
while(1)
{
   GetValue(&measuredValue); // Read values (Sensor value + timestamp from the RTC)
   Flash_Fifo_Push(measuredValue);         // Push to buffer
   Sleep();                               // Sleep until the next cycle
}

My questions are:

How to reserve this space in the linker file of my microcontroller
(ARM Cortex-M4 2MB flash)?
How to implement the circular FIFO fashion?


texts:
I have a 680uF electrolytic capacitor rated for 25 volts. Yesterday night I was curious as to how much current leaked out of it over time, so I charged it with a generic DC power supply, and measured the voltage across the two terminals. The voltage peaked at around 18.6V, and once the voltage began dropping slowly I quickly disconnected it. I then left it on my nightstand and went to bed.

9 hours later, I measured the new voltage - I got 16.8 volts. Curious as to how the capacitor behaved, I searched Wikipedia for modelling capacitors; I observed ESR and equivalent parallel resistance as basic approximations of capacitor behavior.

I chose to model the capacitor with ESR, using the series RC circuit differential equation solution \$V_t=V_0e^{\frac{-t}{RC}}\$

Substituting values, I got \$\large 16.8=18.6e^{\frac{-(3600*9)}{R(10^{-6}*680)}}\$.
This equation yielded the solution R=49,097,000 ohms.

Is the following solution an accurate estimate of the internal resistance of the capacitor?

More importantly, is this a good model of a capacitor? (Would I be able to accurately estimate leakage for longer or shorter periods of time, such as 4.5 hours, or 18 hours?)

Thanks.

EDIT: If it would be helpful for me to mention the capacitor brand, it is a brown capacitor with a white rectangle logo and the letters "KZH" by this logo. I salvaged the capacitor out of a broken Dell AC/DC power adapter. I have found the capacitor's datasheet here.

UPDATE: As suggested, I have charged the capacitors and put them in a heated area to detect voltage drop. The capacitor I originally observed (which I had previously accidentally applied 6 volts in the wrong direction before both observations) dropped from 18.9V charged to 15.85V. The good capacitor I had went from 18.08V charged to 15.07. The temperature that these capacitors were at started at around room temperature but steadily rose to 57.5 degrees Celsius for most of the time. The significant rise in leakage is quite interesting. With the same parallel resistor model, I have calculated the leakage resistance of the original (supposedly damaged) capacitor to be around 931k ohms, and the leakage resistance of the other capacitor to be around 964k ohms.


texts: What is the direction of negative reactive power

texts: In a R+1/(jwC) load (AC)voltage lags current with θ degrees. Reactive power Q is negative because sin(θ) is negative. My question is how can a capacitive load deliver power to the source wich is supposed to supply the power? Im sure I do not completely understand the subject, can someone explain my faults? Thank you for your help, Nick.


texts: Footprint to accomodate chips with different pin count

texts:
I am working on a PCB that (among other things) accomodates an MCU which is available either in a SOIC-14 or SOIC-16 package. Both packages are pin-compatible, the SOIC-14 is simply shorter to one side. This allows me to use the same PCB with a SOIC-16 footprint on it but populate it with either chip, depending on which one is available.
So far so good. Problem: the coordinates in the pick-and-place file always refer to the middle of the chip. That means I cannot use the same pick-and-place file - instead I have to offset the coordinates by half a pin.
I wonder if there is any best-practice to handle such a situation. Of course I can manually edit the pick-and-place file easily, but it would be quite nice to somehow handle it within the CAD tool and generate the correct file automatically. I cannot think of a smart way to achieve that... I guess the right way would be to have both chips in the BOM but assign a part only to one of them. But if I were to put two overlaying footprints on the PCB, I'd get errors because the courtyards overlap (although the pads are connected to the same nets).
(my CAD tool is Altium CircuitStudio)
How can I accommodate chips with a different pin count?


texts: Cycle-by-cycle current limiting with latching comparator

texts:
I am attempting to design a cycle-by-cycle current limiting circuit for a motor driver.
Here is my circuit along with some notes to explain its intended operation:

The latching comparator I plan on using is the MAX9141.
I am trying to ensure I'm not violating the setup and hold constraints of the latch, but the datasheet is a little vague about the exact implementation of the latch and provides this diagram:

From the above diagram, it appears the latch setup/hold constraints are dependent on the input signal into the comparator, not the output of the comparator.
In my circuit, since the latch is only being enabled once the signal has propagated to the output, I'm not sure how to bound the setup/hold conditions.


texts: A mechanical switch current/voltage rating

texts:
I have a mechanical switch, and it has been rated 5A at 125V, and 3A at 230V.
I think it is not because of power, because 5*125 is not equals 3*230. Why does the current rating change depending on voltage?

Both ratings are for AC


texts:
Could someone please explain why there is a capacitor (C3 10nF 400V) parallel with main terminal pins of the triac (VS2 BT136)? Please see the schematic photo.
This is a soft start circuit for AC incandescent lamp. This circuit works without the capacitor (C3). By the way I could not manage 10nF 400V capacitor. But I tried twice with 33nF 400v capacitor and the triac instantly died. My question is did the triac die because of wrong capacitor? Why do I need the capacitor?


texts: what is the base temperature when using ppm/c

texts:
I am not sure If I have phrased the question right but if not please correct me

I want to know when Accuracy Parts per Million mentioned in the datasheet of voltage reference they say for example 5 ppm/c, which from my understanding, for every degree increased a 5 parts per million of the output voltage will increase

OK, but what is the base temperature that I should consider to calculate the drift ? is it the initial temp. when the Vref began its work, or the ambient temp which would be 25 degrees or the temp. which the manufacturer toke his original measurement in his laboratories ??

I want to calculate the voltage ref. drift that happens because of the temp. changes and after that try to make compensation in the software, it is still an idea I don't know if it is good or not but it worth trying it


texts: .step function LTSPICE in multiple panes

texts:
I am trying to simulate multiple different frequencies of a buck converter. I know how to step the parameters, but I would like the graphs in separate plot panes. Any clue on how to do that?

Two panes, but there is one signal so how do I separate the steps?


texts:
I've put together a ESP8266 based board which I want to deep sleep until a PIR sensor senses someone nearby. I put together some logic gates which should allow me to control whether or not the PIR sensor is enabled or not. PIR sensor is a SR602 which goes HIGH for 2.5 seconds once it senses someone.

The idea is the ESP pin should stay high while the ESP8266 isn't in sleep which should mean that the output to RST is always HIGH, then I turn the ESP pin to LOW in sleep so the PIR sensor can start-up the ESP again when it goes HIGH.
I did a simulation and it worked as I expected but on the board it seems that the inverter isn't inverting (tested with a multi-meter 3.3v in comes out as 3.3v, GND in GND out). No matter what I do with the ESP pin the PIR constantly triggers a reset.
Can anyone see where I went wrong here?
Edit: close up of the inverter


texts:
I have to compute the current in the resistor R1 and the current through the capacitor C1 at the circuit in the picture.

I thought to solve it like this:

1.Current in the resistor

I1=Vs/R= 3Vrms/ 100k ohm= 0.03 mA

2.Current through the capacitor:

I2=2*pifC*Vs=2*pi*5.0kHz*1000pF*3 Vrms= 0.0942 mA

I am not sure if this is the right way to solve this problem, since I didn’t use the frequency when I calculated the current at the resistor.


texts: Using Low votage audio amplifier with a load cell

texts:
I am trying to hack a scale so that I can read the data onto my Arduino. There are four piezo sensors, one at each foot, in the scale. Obviously I can't just read straight off of the sensors, so I bought some LM386N 400mW low Audio Voltage Amplifiers.

I spent some time online looking for simple instructions on using, alas I could not find any. Here is a picture of the simple setup:

EDIT:
I just recently read that load cells at NOT piezo electric sensors (I was mistaken that they are). And in this case most home scales use load cells.
So. Are the IC components I have correct? or do I need another part?


texts: How to build an opto-isolated analog input without an input-side supply?

texts:
I know the normal way of optically isolating an analog signal is to use an analog optocoupler with two detectors, and using an op-amp to servo the emitter voltage until the detector output matches the input, like this:

simulate this circuit – Schematic created using CircuitLab

However, there are some issues with this, particularly the need to have some kind of supply voltage on the input side to power the op-amp and provide a voltage reference for the detector to use.

Would it be possible to build a circuit that didn't need an input-side supply voltage?

One idea I had is to use two separate optocouplers, driving one directly from the input and driving the second from the output of an op-amp, servoing until the second optocoupler is driven identically to the first, like this:

simulate this circuit

But I haven't ever seen a schematic like this in any appnotes or documentation. Would this actually work?

Also, how would I find such a "matched" pair of optocouplers that could be used in this way? Potentially, the two couplers in a single-package dual channel optocoupler would be reasonably similar to each other, but I've yet to see a datasheet that actually gives any kind of specification for that beyond the general tolerances for the individual elements.


texts: Raspberry pi super capacitor power supply

texts:
I'm trying to make a simple ups for a raspberry pi dash cam.  The goal is to provide power to the pi for about 10 seconds after the car has stopped running. When the power supply turns off, the gpio pin will read low and the pi will begin to shutdown, using the capacitor for power. I haven't decided on R3 or D1 yet, they will be determined by what the 5v supply can output.

Will the circuit below work for this purpose?


texts: Poor eye diagram, where to start looking?

texts:
I'm trying to debug a 100Mbit ethernet board and I'm running up against a problem I'm having trouble trying to resolve.

This is the eye diagram for the transmit pair. The receive pair is very similar. It's a LAN8700 PHY, and I've got the MII interface effectively disabled, so the PHY is transmitting IDLE code sequences.  It's forced into 100Mbit/FDX as per the datasheet.  100Mbit/HDX is identical.

Correction: The design is using the LAN8700's internal 1.8V supply to power its VDD_CORE net; I must have been confusing the 1.8V logic supply with the VDD_CORE supply in my earlier description. It seems to me that power supply noise is not such a high likelihood, since the high, zero and low levels are actually pretty decent. That is, the eye isn't "squished." The fact that the violations all look like very good transitions, just "skewed" in time makes me think the problem lies in the crystal or supply for the crystal driver/PLL in the PHY.

If I let the eye diagram run (about 15min) the violations in the mask "fill in" such that the white violations you see in the picture become white chevron (>) shapes in the right-hand sides of the blue masks. This would tell me that the timing errors are more or less randomly distributed rather than some kind of discrete noise yanking the timing off an exact amount.

The crystal that the PHY is using has a 30ppm spec which is well within the 100ppm 802.3 spec, and even within the 50ppm recommended spec that the PHY specifies. I'm using loading capacitors which match what the crystal is looking for, and is pretty close to what the LAN8700 specifies as its nominal capacitance.

Before I disabled the MII interface I would see framing errors (as reported my Linux's ifconfig program). There are no errors if I force the link to 10Mbit.

One of the very odd things I have noticed is that if I set the scope up to trigger on the RX_ER (receive error) signal from the PHY to the MAC, it never signals an error even though the frame errors accumulate in the MAC reports. Now from reading the datasheet for the PHY, it is clear that there are actually very few situations where RX_ER would assert, but I find it very difficult to believe that with an eye diagram like what I am seeing the errors are actually between the PHY and the MAC.

I do understand the basics of eye diagrams, but I'm looking to some of the more experienced posters, hoping that they would be able to share some of their experiences in translating specific eye pattern mask violations to likely sources.

(edit: added schematic, corrected VDD_CORE supply source)


texts: Negative voltage from positive output DC/DC

texts:
my DC/DC ( http://www.ti.com/tool/PMP10077 ) has 200 V output on pins +HV and GND. Can I get negative output by simply swithcing the meaning of output pins -> I will use +HV as GND, and GND as +HV. I want to use it only as negative source, so the positive output is unwanted.

I used this idea with full wave rectifier -> when you switch the meaning of ouput pins you can get + or - waves, but only one of the option at once.

Is this possible with DC/DC?

If not, do you know about any DC/DC with negative output around -200 V/10 mA? Ideally ready to use system design. Input voltage around 19 V - 30 V.

//edit

-> input votlage info

-> added info about used DC/DC


texts: Switching power supply: Understanding the EMI filter

texts:
(From www.ecnmag.com)

The link post above shows the schematic diagram of iWatt 1810 power supply. I want to know that why did they use the combination of L1 & FB1 after the bridge rectifier.What is the purpose of connecting such a components with the C5 & C2? Does they form some sort of filters?

I guess maybe the designer has put these resistors (R2 & R5) as a damper for possible resonant oscillations in the rectifier output pi filter that C5, L1 and C2 form. Is it true or somthing I missing?


texts: Trying to order quality PCB with edge connector / gold fingers

texts:
I am not an expert, and maybe even specialist, in PCBs and the ways they are made. Was ordering PCBs for 5 years from single supplier in China, was relatively happy about pricing and quality. However had problems with foreign objects in FR4 material, some shortages, and bad silkscreen, but in overall all the assembled boards work properly (I assemble manually).
My previous designs are FR4, 1.6 mm thickness, green mask, white silkscreen, 0.4 mm drills, and ENIG finishing of the board and edge connector - must be nothing very special.
I've learnt, empirically, that ENIG for edge connector is a bad idea as the gold is easily being scraped away leaving copper (or nickel) stripped.
I recently made a new design, and, to my surprise, my usual contact refused to make them saying "not this time" and "go to another manufacturer" - without any further details what is wrong.
I selected surface finish ENIG of 2u" and gold fingers (total area of 66x7.6 mm) of au:10u"/ni:120u".
Having contacted several well known PCB producers I see they go wild - quoting up to $41 per board (for 150x60 mm design and gold fingers of 66x7.6 mm), literally putting 30 grams of the pure gold onto the set of 50 boards. Sounds like I am going to buy jewelry, not a PCBs.
I have read that it is recommended to have 25u" of plated gold, and guess it will be abnormal price.
I am stuck and do not know what to do and what is going on. Must be something between "hobbyist" and "professional" PCB fab markets, with ENIG being for hobby, and when it comes to properly gold-plated edge connector is becomes professional, with totally different pricing level.
If you have been making your designs with edge connectors, how did you manufacture them, and what is your opinion the best way for their finishing for durability (e.g. 500 insertions)?


texts: Why would you want to write to a file when writing VHDL?

texts:
I have never so far been in the need to write to a file when making a testbench in vhdl. Seeing the signals being plotted has always been enough so far.

Could someone please give me a case or the reason why you would write to a file?


texts: Having trouble in understanding voltage doubler

texts:
I can get final output voltage \$V_{\text{on}} = 2V_p\$ when this circuit is assumed initial voltages of \$C_1\$ and \$C_2\$ is zero. and \$C_1 = C_2\$, and using the ideal diode model.

But when I change initial value into \$C_1 = 2C_2\$, I also get \$V_{\text{on}} = 2V_p\$ by following equations:

$$V_{\text{on}} = (V_{\text{on}}-1) + (2V_p - V_{\text{on}}-1) \times (1/3)$$

$$V_{\text{on}} = (V_{\text{on}}-1) \times 2/3 + V_p \times 2/3$$

$$V_{\text{on}}-V_p \times 2 = ((V_{\text{on}}-1) - V_p \times 2) \times 2/3$$

$$V_{\text{on}}-V_p \times 2 =(2/3)^{n-1}(V_{o1}-V_p \times 2)$$

when \$n\$ goes infinite

$$V_{\text{ofinal}} = 2V_p$$

Is this right approaching for this problem? I can't understand why capacitor values are changed but output voltage is same.


texts: How to connect a rectifier circuit (mains driven) with switching regulator MC34063?

texts:
I am  designing a switch mode power supply (44 VDC, 0.56 A, 24.5 W) for my passive PoE. I am using 220/24 VAC transformer + Schottky bridge rectifier (MBRS360) +Pi filter producing 32 V (30-33 V, 0.5 A), which works fine.

Here is simulation result using LTspice:-

Now the second circuit is based on MC34063 switching regulator which has to get power from  circuit 1 (previous circuit/Mains driven). It will get 30 Vmin then has to step-up it up to 44 V, 0.56 A. This circuit is also fine when using independent DC source (30VDC). Here is circuit and simulation:-

Both circuits results fine individually. But when I connect both circuits, I am expecting Vout=44 VDC but I get unexpected wrong results (getting some negative mV). Here is final circuit and simulation.

Kindly suggest an effective solution.


texts: How to detect the location of an object placed on a display

texts:
First of all, I'm primarily a software guy, so excuse my ignorance in this area.

What I am trying to do is detect the position and uniqueness of an object (say a small wooden cube) that is placed on a display.

I have looked into different touch screen technologies, and I'm not having any luck so far.

The only thing I can come up with so far is putting an NFC or RFID tag in the cube, and have several NFC readers under an eink display to triangulate the position of the tag. The problem is I need the system to be able to detect multiple objects locations at once, and determine their uniqueness. It also needs to be fairly accurate, so I'm assuming I would need quite a few NFC readers for this to have anywhere near a decent resolution.

I was thinking NFC because I can determine uniqueness, and eink because it is cheap, but I'm open to any new ideas.

Any help would be appreciated.


texts:
We have been begun studying diodes in electronics 1 and I have really basic question that may be really dumb but I cannot find an answer online.

If a diode is in series with a resistor and a voltage source that is set at the exact forward voltage drop value of the diode, what will be the voltage drop across the resistor? It can’t be zero but I’m guessing it must be close.

We have learned that normally you would subtract the forward voltage (0.7 V) from the loop but this circumstance doesn’t make sense to me.


texts: Powering multiple white LEDs in parallel

texts:
Recently the idea struck my mind, that I wanted to build a simple but useful emergency light which can run off of any USB port (the specific use case would be to power it from an USB power bank). For that I wanted to design a simple circuit that drives 25 white LEDs (3.2 V, typ.) in parallel.

The question I am facing now is how to achieve a simple design while not using 25 series resistors, as this is just wasteful and not space efficient, for me anyway, I just want to make it more clever somehow.

Is it enough to just step the 5 volts (from the USB) down to 3.2 volts using an off-the-shelf linear regulator like the LM317 and then connect all the LEDs to it in parallel or will the non-ideal characteristics of aforementioned spoil my plan?

I might be overthinking this, which is why I am asking if there might be a better, simpler or more efficient possibility to achieve what I want? :)


texts: How many ohms do you need before you need a resistor?

texts:
Okay, I'm rather a bit confused here now. I am trying my first real circuits, for some LED lighting. I tried making a little circuit last night, matching two LEDs in parallel on 4.5v of battery. However I didn't make any accounting of the amperage. I had no resistors in the circuit and the LEDs quite literally exploded, plastic shrapnel flying around the room!

So today, I looked up the formula to figure out how many ohms of resistance you need, picked up some new LEDs and a couple of resistors to try again. Here is what I figured based on my limited knowledge so far...

My new circuit consists of:

3V, 2xAAA batteries
2xLEDs, red, in parallel; 1.8V, 20mA

I plugged into the formula

R = (Vsource - Vdraw)/A
R = (3 - 1.8)/0.040  ==>  R = 30

Vdraw = 1.8 because the LEDs are in parallel, so V stays the same
Amps = 0.040 because the LEDs are in parallel, so A sums up.

This led me to a result of needing 30Ω . So I bought a pack of 15Ω resistor, planning to put them in series in the circuit. Here is the circuit I planned:

simulate this circuit – Schematic created using CircuitLab

I felt pretty confident in my calculations. When I put it all on the breadboard, I forgot to put the resistors in though before connecting the power source. As I connected the power source, I saw the LEDs light up, and realized I'd forgotten the resistors. I expected another spray of plastic shrapnel. HOWEVER - the LEDs just lit as expected, and there was no explosion. I then put in the resistors, and it did not change the output of the circuit at all. The LEDs still lit, and did not seem any dimmer for the resistors being there.

So apparently, 30Ω is not enough to worry about blowing an LED.
So my question is, how many ohms DO I need to worry about before adding resistors?


texts:
In my application I want to give power to an ATmega328p and an MMA8451 accelerometer. When active, these devices require 5.2mA and 24uA respectively, and when in power saving mode, they require 4.20uA and 1.8uA respectively.

I only need to be taking a measurement once every 100ms, so as a result, both components will be in power saving mode most of the time. Also, my main requirement is to make the system as energy efficient as possible. My question is, how can I provide power to these components efficiently? What kind of power supply should I use?

From what I have seen, dc/dc converters' efficiency, even the ultra-low power ones, give an efficiency of 20-40% at 100uA, and give no info about my system's sleeping current level (around 10uA).

Due to application specific reasons, powering the devices directly from a battery is not an option.

EDIT: The project will be powered by a LiPo (3V-4.2V). As a result the accelerometer, which takes voltages up to 3.6V, cannot be connected directly to the battery. Furthermore, the reason behind my idea of using the LiPo and not another kind of battery, is because the application also has an SD card. I will be required to write to the SD card once every few minutes, requiring bursts of 100mA or so, at 3.3V. The reason I did not mention it initially was that I planned to use a different DC converter just for the SD card, because its current requirements are well above the rest of the circuit, and because obviously there is no converter which is efficient from 10uA until 200mA.


texts:
I am trying to calculate max current draw for SMD 5050 LED strip.
Datasheet says that 1 channel draws 20mA.
So I do the calculations: 20mA * 300leds * 3channels = 18A

I already have the same strip with power supply (12V 5A) and it is working fine when all channels are high (white).
If it would be 18A, wouldn't it burn? I don't understand what am I doing wrong in the calculations. :(
Could anyone help please?

LED Datasheet: https://www.google.com/url?sa=t&source=web&rct=j&url=https://e-radionica.com/productdata/RGB5050LED.pdf&ved=2ahUKEwj8yvCTr87oAhXhoosKHRDqCvAQFjALegQIAxAB&usg=AOvVaw3B5Ja9lwTl9we5GdXwR4Gp

Strip Datasheet: https://www.google.com/url?sa=t&source=web&rct=j&url=https://www.iled.com/class/INNOVAEditor/assets/gallery2/5100-5105.pdf&ved=2ahUKEwjC163XwM7oAhWys4sKHS7FDw8QFjALegQIBBAC&usg=AOvVaw3dRnzlhi1q8HrHmk2auw3g


texts: Why are fast blow fuses more tolerant to small over currents than slow blow fuses?

texts:
I am looking at fuses from a cable protection standpoint. According to this doc the IEC standards for typical miniature fuses (IEC127-2) can be summarised as:

Why can fast acting fuses tolerate a 210% over-current for 15x longer than slow acting fuses, when in all other cases they are more responsive?

Is this deliberate, or just a consequence of how the fuse operates?

I suppose there is something special about that particular over-current figure, but I'm drawing a complete blank on what it may be....

(And no its not a mistake in the table, I've checked!)

  Related:
  Should I use slow fuse or fast fuse?


texts: Altium: Duplicate NET in hierarchical design

texts:
I have a Design with two subsheets both containing a microcontroller with a CAN Transceiver. In both of these subsheets there are the two NETs "CANRX" and "CANTX" (from MCU to transceiver). When both of these sheets are placed inside the top sheet, altium complains about duplicate NET-names when compiling.
The Net Identifier Scope is explicitly set to "Hierarchical", so I'd expect the Net-Labels to stay local in one sheet and the Ports to only connect to their corresponding sheet-symbol (Those are two CAN-buses, so the CANRX/CANTX in those two sheets need to stay seperate).

Images:


texts:
I am trying to solve this problem, the answer should be 15/20 = 75%.

However, I am not sure how this was calculated and want to understand the underlying concept.

A program core consists of five conditional branches. The program core will be executed thousands of times. Below are the outcomes of each branch for one execution of the program core (T = taken, N = Not taken).

 Branch 1: T-T
 Branch 2: N-N-N
 Branch 3: T-N-T-N-T
 Branch 4: T-T-T-N
 Branch 5: T-T-N-T-T-T

This behavior remains the same. For dynamic schemes, assume each branch has its own prediction buffer and each buffer initialized to the same state before execution.

What is the prediction accuracy for the 2-bit predictor, initialized to weakly predict taken? (Answer is at the beginning but I'd like to understand the concept of the calculation.)


texts: What does the moving iron voltmeter measure in a circuit, average voltage or RMS voltage?

texts:
What does the moving iron voltmeter measure in a circuit,
average voltage, \$V_{average}\$, or RMS voltage, \$V_{rms} \$?

\$V_{average}=\frac{1}{T}{\int_{0}^{T}vdt} \$

\$V_{rms}=\sqrt{\frac{1}{T}\int_{0}^{T}v^2dt} \$


texts: Problems snubbing HF noise on flyback converter transistor

texts:
I am working on the design of a flyback converter based on the LT3751 capacitor charging circuit. My design is similar to the 42 A cap charger example on pg. 25 of the LT3751 datasheet. In my case, the circuit runs on 12V and steps up the output to 430 V, but I am having some major noise issues with the MOSFET driving the primary of the transformer. The flyback powers some other high voltage circuitry and the noise from the FET during turn-off is radiating into the other parts of the design, both through the power and ground lines and through the air.

My first attack plan was to add an RC/RCD snubber across the primary of the transformer to snub the high frequency oscillations on the switch. But for some reason, none of the values I calculated for it, (or just plan experimented with) had any real impact on the waveform -- in particular, the first high voltage spike, which is rising to as high as 200V. I have attached scope shots of the turn-off waveform, including a closeup of the first spike, which is around 12 ns wide. One challenge is that this waveform's spike is so narrow, and also the waveform seems to be rich in harmonics.

Has anyone run into problems like this before or seen a waveform such as this which seems to defy normal RC/RCD snubbers? I'm not sure what to try next to remove this noise.

Edit:

Here's some additional information about the circuit, along with a schematic of the power stage showing the control input and component values. The transformer was an off-the-shelf design so I did not wind it myself.

Edit 2

Here's a copy of the datasheet with information on the specific transformer I'm using:


texts: Differentiator Op-Amp Circuit not giving correct output using single power rail

texts:
Im trying to simulate an differentiator Op-Amp using a single supply and the LM324 opamp. I built the differentiator circuit using a voltage divider and the LM3234 opamp.
The input wave is a Sinusodial wave, but the output wave is a square wave, but its suppose to be a phas shifted amplified sinusodial wave. I can get the amplification, but my output wave is not a sin wave.
What am I doing wrong, and how can i fix this?
Here is the Schematic of the circuit:

Here is a screenshot of the output:

Heres an example of what the output should be:
(the sin wave is the input, while the square wave is the output wave, but the output should be an out of phase amplified sin wave))


texts: 3-to-2 line encoder (or generally 2^(n-1)-to-n) -- not priority, but telling how many inputs are on?

texts:
This is not homework (not taking any classes) although it could be homework. I am wondering what is the easiest implementation using a single TTL chip or gates (fewest chip count) to encode the number of input lines that are high. So, not a priority encoder that says which line is on, but how many of them. Truth table:
+-----++---+
|INPUT||OUT|
|3|2|0||1|0|
+-+-+-++-+-+
|L|L|L||L|L|
+-+-+-++-+-+
|L|L|H||L|H|
|L|H|L||L|H|
|H|L|L||L|H|
+-+-+-++-+-+
|L|H|H||H|L|
|H|H|L||H|L|
|H|L|H||H|L|
+-+-+-++-+-+
|H|H|H||H|H|
+-+-+-++-+-+

Sometimes I feel like really solving this myself, as I did in the most intelligent design of an encoder that determines the maximum number of consecutive lines but sometimes I have higher goals and don't want to waste the time. Especially nice if there was one single chip that can do that.
The final purpose is to add this number of the 3 inputs on or off to an existing 3-bit number without overflow, but rather a bounded sum, i.e., ..., 3+3=6, 4+3=7, 5+3=7, 6+3=7, 7+3=7. So, if there was one or two chips that can do that that would be cool. I'm designing Conway's Game of Life in hardware that can produce a new field in a single iteration at the speed of the display frame-rate, computed at the same time that the display scans the memory, and this particular bounded sum of up to 3 lines with an existing 3-bit value, is what my neighbor-count algorithm needs.
UPDATE: actually, this "bounded sum" adder is even more restricted, it is bounded at 4, i.e., no addition needs to produce a value higher than 4. Only 0, 1, 2, 3, and 4 are needed. Anything greater than 4 just yields 4. This definitely will make a difference in how many gates are needed. I feel it.


texts: When I have an electric arc, and put an AM radio nearby, I hear a crackle and the station that I previously heard goes away. I am wondering what is going on with the electricity through the air to generate the noise that I heard through the radio.


texts:
I can simplify this using Kmaps, but can't figure out how to using boolean algebra. If anyone could show me the steps I'd really appreciate it.

\$F = \bar{x}\bar{y}\bar{z} + xy + x\bar{z}\$

should simplify to:

\$F= xy + y\bar{z}\$


texts: IC identification- Analog Devices IC with top marking "P 2A"

texts:
Please help me to identify this IC. It is an Analog Devices chip in MSOP-8 package.
The top marking says "P 2A". It's used in a 8-inch LCD monitor and controls the brightness of the screen. It is quite difficult to identify that component, as AD uses different marking code for their devices.


texts: How do I use/set up this LED light strip?

texts:
I stumbled upon this long strip of LED lights in my house and was hoping to set them up but have no idea how to. I am pretty sure they are made by Adafruit but not entirely sure. They look pretty similar to these:

https://www.adafruit.com/product/1138?length=2 and
https://www.adafruit.com/product/2842?length=1

If someone could point me in the direction of how to set these up that would be great. Ideally, I could just buy something to plug these into that came with a remote to control the color but understand that it might require some parts. I've attached photos of the attachments at each end of the strip and of the lights themselves. Please help if you can, I have no idea what I am doing!

Photos:


texts: My question simply is why ICs are made using layers? Why they have used this method specifically ?


texts:
I was trying to implement a USB keyboard on LPC1343 using the ROM based HID driver when I came across some information on the internet which stated that the ROM based HID driver is very limited in terms of flexibility and using it for a keyboard project is not feasible. I took a look at the open source LPCUSBlib but it seems that it does not support LPC1343 (although it works on LPC1347).

I wanted to know if there are any other open source / free USB stacks for the LPC1343 which I can use for my HID keyboard project? I could have spent some time to look into the possibility of porting the LPCUSBlib to the LPC1343 but I do not have much time.

P.S.: I am using a custom LPC1343 based hardware and LPCXpresso IDE for my development


texts: DALI : How commissioning process takes place in DALI system?

texts:
I am new to DALI protocol. The setup has a master and one slave. I am using Mean Well Dali Driver.

Broadcast control commands are working properly. But, I am not able to get the response from Dali Driver, for broadcast query or special commands.

And also I am not able to set short address for the driver.
Steps followed by me to set the short address:
1. Initialize Command
2. Randomize Command
3. Program Short Address
4. Query Short Address(Not getting any response)

Thanks.


texts: How to create Simple Web Server with Mbed and W5100 Ethernet Shield

texts:
I'm trying to develop a simple web server application with Nucleo f411re and w5100 Ethernet shield. My question is why the client.is_fin_received() function always returns 0. Why doesn't my web page complete?

PS : I have no idea about http protocol and html. I think the CR and LF ( '\n' '\r') characters are wrong.

Here is my main.cpp file

#include "mbed.h"
#include "WIZnetInterface.h"

#define USE_W5100
#define ST_NUCLEO
#define MYPORT    80

const char * IP_Addr    = "192.168.2.141";
const char * IP_Subnet  = "255.255.255.0";
const char * IP_Gateway = "192.168.1.1";
unsigned char MAC_Addr[6] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED};

Serial pc(USBTX, USBRX);

SPI spi(PA_7,PA_6,PA_5);
WIZnetInterface ethernet(&spi,PB_6,PA_10);

char page[]={"\r\nHTTP/1.0 200 OK\r\nContent-Type: text/html\r\n\r\n
PAGE
\r\n\r\n"};

int i=0;

int main() {

pc.baud(9600);
pc.printf("Start\r\n");
char buffer[300];

while(1)
{
int ret = ethernet.init(MAC_Addr,IP_Addr,IP_Subnet,IP_Gateway);

if (!ret) {
    pc.printf("Initialized, MAC: %s\r\n", ethernet.getMACAddress());
    ret = ethernet.connect();
    if (!ret) {
        pc.printf("IP: %s, MASK: %s, GW: %s\r\n",
                  ethernet.getIPAddress(), ethernet.getNetworkMask(), ethernet.getGateway());
    } else {
        pc.printf("Error ethernet.connect() - ret = %d\r\n", ret);
        exit(0);
    }
} else {
    pc.printf("Error ethernet.init() - ret = %d\r\n", ret);
    exit(0);
}

TCPSocketServer server;
server.bind(MYPORT);
server.listen();

while (1) {
    pc.printf("\nWait for new connection...\r\n");
    TCPSocketConnection client;
    server.accept(client);
    client.set_blocking(false, 0); // Timeout=0.
    pc.printf("Connection from: %s\r\n", client.get_address());
    while (client.is_connected() == true) {
        int n = client.receive(buffer, sizeof(buffer));

        client.send(page,sizeof(page));

        wait(1);

        n = client.receive(buffer, sizeof(buffer));
        for(i=0; i<sizeof(buffer); i++)
        {
            pc.printf("%c",buffer[i]);
            if(buffer[i]==' ')
                pc.printf("\r\n");
        }

        pc.printf("\nclient is fin received : %d\r\n",client.is_fin_received());
        if(client.is_fin_received())
            client.close();
    }
    pc.printf("Disconnected.\r\n");
    }
}
}

Result:


texts:
I have two magnets A and B:

Magnet A is movable, Magnet B is fixed.
Magnet A is smaller and weaker (surface area of 1 Square cm) , where
as magnet B is stronger and bigger (surface area of 4 Square cm).

If I have a magnet (A) moving at a high velocity perpendicular to the magnetic field of the other magnet (B):

Would the Magnet A be attracted to Magnet B (both magnets have opposite poles facing each other - Magnet A has its south facing Magnet B north) ?
OR
Would the Magnet A just move over the fixed Magnet B without being attracted because of its high velocity ?

Assuming the distance between the two magnets is small (example 5 mm).
The velocity of the movable Magnet A is 60 m/s.


texts: voltage behavior during change in load while the capacitor disharge

texts:
I am simulating a discharging capacitor across a changing load. Initially the capacitor is fully charged using a voltage source then it gets disconnected. Next steps
1) A high impedance load is connected to the discharging capacitor say for 50 ms and I can see the voltage decreases slowly
2)After 50ms I  connected a lower impedance load parallel to the high impedance load for 1 ms and then I can see a sudden voltage dip (voltage decreases faster)
3)After 51ms I removed the lower impedance load(back to step 1.

After step 3, I should see the voltage should continue decreasing slowly from the point it got decreased(after 51ms) but contradictory to that I see a rise in voltage once I moved to step 3 and then the voltage start decreasing slowly. What is the reason for the rise in the voltage when I changed from lower impedance load to higher impedance load in my simulation.


texts: Codec in 'master mode' require more than one external clock? (MCLK?) to drive I2S system timing to/from MCU slave?

texts:
Does an audio codec in 'master mode' require more than the one clock line (MCLK?) to drive and time I2S data sync to MCU or FPGA slave?

I understand that the I2S proper consists of three lines - 'bit CLK', 'word CLK', and 'serial data'.  Additionally, a 'MCLK' is used for delta-sigmoid and filtering.  I understand that these signals should all have the same clock 'domain', as in clcok timing derived by division of the MCLK as required, based on bit depth (data length) and if 1 or two channels.

Does a suitable codec in master mode take care of all of these clocks?
(Or do we need to generate two or all three I2S clocks?)

There are also the I2C control lines to read and write codec registers.
Do these I2C lines need to be part of the same clocking domain as the I2S system is in?  Thanks.

Oh, and finally, i understand that I2C register read/writes called from MCU/FPGA do not need to be in the same clocking domain (or same frequency) as the I2S signals - Is this understanding correct?
(This application will wait for data available at port, then read/write audio to codec, then process the new data point, then wait for next word to be ready at codec to repeat the process.)


texts: How do I create a 24 hour timer circuit capable of turning a servo on and off

texts: I need to design a timer circuit based on a 24 hour cycle that will trigger a 3V servo in one direction for a given duration then in the other direction once x amount of time has passed ( 5, 10, 15 min ). I would like to create the circuit simply and cheaply as possible. I aware the question id probably vague, but I'm really looking for a starting point.


texts: Why is AC earth connected to DC ground in laptop adapters?

texts:
If I were to plug this type of adapter into an ungrounded socket then voltage will leak to the DC ground through the AC filter capacitors.

So why is the DC side not left floating? What are the benefits?


texts:
Is it possible to indicate countersunk holes in the gerber files?

Currently if a board has countersunk holes, I need to indicate this in a separate drawing and send it along to the manufacturer with the gerbers.

I'm trying to figure out if a countersunk hole can be indicated through the layout software (Mentor PADS in my case) when I produce the files, or if it is even possible with the gerber format.


texts: How many pins does a PCI x4 connection needs in a FPGA?

texts:
I am new to the FPGA world.
Reading the specs for variuos FPGAs I see there are lots of transceivers.
I have a number of PCIe x.4 devices.
How many pins and/or transceivers do I need to connect to one PCIe x4 device?


texts: I'm not an expert in the electromagnetic field and need to design a solenoid actuator with 1 kg force approx. I am wondering if I change the wire diameter of the coil, what happens in solenoid's parameters? for example, the current passing the wire, voltage or force of the solenoid would be changed if the wire diameter goes up or down?


texts: Does Q-Factor matter for low pass and high pass filters?

texts:
For band pass and band stop filters, Q tells how sharp the curve is at the centre frequency. I guess in this way it is required to roll-off.

However, low pass and high pass filters do not have centre frequency. So, what meaning does Q factor have for them? Does it matter of it is less than 0.5 or more?

Looking at picture of frequency response, it seems that the high Q filter has a type of hump as it approaches the cut off frequency. Isn't this a bad thing since ripple in pass band is not desired.


texts:
I attached the link for the project I am trying to implement. Instead of using an Arduino, I will use either an ESP32 or an STM34.
What is the purpose of the MAX232? Is there something else I can use instead of this? Also, I need to run a simulation on LTspice and am not sure how to represent the LM324 or the MAX232. I do not understand much of this because I am still a student with limited experience. I would appreciate any help.
Here is the link to the project:
http://electronoobs.com/eng_arduino_tut36.php


texts:
Can someone please explain me this code (it is from wait loop calculator), I cannot clearly understand calculation.

; Delay 1 600 000 cycles
; 100ms at 16 MHz

ldi  r18, 9       ;1 clock cycle
ldi  r19, 30      ;1 clock cycle
ldi  r20, 229     ;1 clock cycle
L1: dec  r20      ;1 clock cycle
brne L1           ;2 clock cycle
dec  r19          ;1 clock cycle
brne L1           ;2 clock cycle
dec  r18          ;1 clock cycle
brne L1           ;2 clock cycle
nop               ;1 clock cycle


texts: Can a bootloader modify the configure word when programming the user code into the MCU?

texts:
These days I was testing a bootloader (AN1157.PDF) on a pic24fj256gb110
The bootloader can download the user app code through the uart and it is running well!

But there is a question: the bootloader configure word must be the same than the user app code configure word. When I change the app code configure word and download it through the bootloader, the configure word cannot be written into the mcu.
Can configure word be changed when the MCU is running?
(I didn't protect any code)


texts: Superimpose a data transmission on a custom AC voltage line

texts:
I hope this question is valid for this forum. I’m not looking for you to give me a working solution, my question is of the nature where I can find literature, other learning resources, which search terms I should use and/or circuits for being able to do what I describe below.

I’m designing a system where I have a host unit and more than one receiver unit. The receiver units will be powered by an AC voltage from the host. The AC voltage specifications are somewhere around:

Vp-p = 24 VAC
Frequency of the AC power is between 100 kHz and 200 kHz

What I would like to do is to be able add data transmission to the AC power line. It is a requirement that I won’t be able to add individual data lines. Here is a figure describing the system:

Edit
I will have full control of the AC power source. It is not a requirement that the system runs at a fixed frequency or amplitude meaning that both frequency modulation and amplitude modulation could be used for transferring data.

The data that is going to be transferred through the system does not require high speed communication. If it is possible to transmit data at UART speeds, 9600, 19200, 38400, 57600 or 115200 baud or at I2C speeds somewhere around the same transfer rate as the UART it is enough.

I have not been able to find any other sites or resources using these specific frequencies and I realise and don't expect that I will get a solution served to me. I'm grateful if I could get recommendations on literature or webpages that covers these areas.

My question:
I’m looking for resources on how to implement data transmission on a power line, in this case a custom AC power line. Books, webpages, application notes... any resource helping me with this would be helpful.

Thank you.


texts: How much resistance should a pull resistor include?

texts:
How much pull to ground resistance do I need?
Is the amount you need variable?
How did you figure this out? (Where can I learn too)
Any references I should look to?

So sorry for my large host of questions

How much resistance should a pull down resistor have? Is it one size fits all or do I need larger pull downs for different things.

Cheers!


texts: LED circuit with epoxy and (broken?) transistor

texts:
I'm trying to repair this battery-powered LED bike light but do not really understand the circuit.

Positive terminal middle left, negative bottom left. Momentary push switch at the top, transistor on the right, capacitor in the middle, 5 LED array at the bottom. The lights are not supposed to blink: just on/off. The switch works, as do the lights (when transistor is shorted). Capacitor seems to work.

What is likely under the epoxy? Just water resistance for resistors or is it actually a chip? How does this design work? Is there a need for a capacitor in a battery-powered LED circuit?
I believe the transistor is broken. My diode tester measures 800 ohms from both positive top to middle and positive bottom to middle but also 680 ohms negative top to middle and 1260 ohms negative top to bottom (others are infinite). From this I guess that it is PNP with middle being base. Does this sound correct?
The part number is S8550 D 331. Only results are Alibaba without data sheets. Close match by name is SS8550 from Fairchild (https://www.fairchildsemi.com/products/discretes/bipolar-transistors/small-signal-bjts/SS8550.html). Dimensions are slightly off. Does this seem a reasonable replacement? Any clue on the differences between models, other than leg spread and ammo vs bulk packaging?


texts: Why using short traces with the MCP73831 LiPo charger?

texts:
I'd like to use an MCP73831 to charge my lipoly battery. In section 6.2 I see they recommend short wires to the battery.

I bought my battery with wires, 20 gauge and approximately 30cm long. The maximum charge current will be 500mA. I know that there will be a voltage drop over the wire and I therefore will lose power. This power loss will be very small: \$0.60\cdot0.03331\cdot0.5^2=0.0049965 W\$ (length, resistance / meter, current). So I don't see how this is a good reason to keep the traces as short as possible.

So besides reducing power loss, is there any reason to keep the traces as short as possible?


texts: How to connect 230V 50Hz to arduino analog input

texts:
I want to use my arduino to make a simple mains power line voltage wave oscilloscope.
questions:
1. how to connect the mains power line (230V, 50Hz) to the arduino safely and efficient (I think a simple resistor voltage divider wouldn't cut it here)?
2. can i use serial communication to get this data in real time to the PC and then do some analysis in processing or some other software (maybe a simple labview analyzing the serial data because I'm familiar with this)?
any links for documentation would be highly appreciated, 10x guys ;)


texts: Shared support chips and tooling between 16 and 32-bit computers

texts:
Can a production line for a 16-bit computer save significantly on unit cost by sharing support chips and tooling with another 16-bit computer, to a greater extent than if it went 32-bit?

To be concrete: around the time of Windows 3, some of the most popular CPUs were the 286 (16 bit), 386 (32 bit) and 386SX (like the 386 but with a 16-bit data bus). Suppose a company is manufacturing 286 computers, and is looking at introducing a 386 model, but considering going with the 386SX to save money. Clearly the CPU itself will be cheaper, as will having 16 instead of 32 data bus traces on the motherboard.

But will a 386SX computer be able to share support chips, tooling or suchlike with the 286 production line, that the full 386 machine would not have?


texts: Current that flows through a 400 watts flat iron connected to a 220 volt power line

texts:
Problem: Find the current that flows through the filament of a 400 Watts flat iron connected to a 220 volt power line.

Attempt: The only formula I could think of that will connect voltage and current is P = I*V, which results to I = (400) / (220) = 1.82 A.

Sadly, the answer is 500 mA. The question is how? Any help would be appreciated.


texts: Filter-Amplifier circuit for Low Voltage I/P circuitry

texts:
I'm designing my first ever circuit for a hobby project. I've a sensor that outputs in mV (1 to 2) and a controller with ADC. The ADC is 16 bits, VDDA = 3.0 V, Temp = 25 °C, fADCK = 1.0 MHz. Since the sensor voltage that is fed is to the controller is low I'm in a predicament! Should I use a low pass filter or a band pass filter in this application? Do you have a circuit that I can relate to? I've attached an example plot.
Any advice is appreciated. Thanks :)


texts: How to Solder TQFN packages that are on both sides of the PCB

texts:
Due to a careless selection of components (and you could say also bad layout) I ended up having a PCB with surface mount pads on both sides and on the same x,y coordinates.

I have already used my airgun for the TQFNs on one side but I have to solder some more on the other side and I am worried that by applying heat with the airgun, the already soldered chips will drop off from the bottom as I am heating up the top side.

Has anybody dealt with this issue before and if so, how do I ensure that what is already soldered will stay there despite the extra heat.

I've thought about putting Kapton tape or simple tape to hold the bottom components in place while I heat up the top side but then this could trap the heat around the components and make them desolder easier.

What I am planning on doing is simply place the PCB on a table so that the bottom components are sandwiched between the PCB and the table and they will hopefully not move out of place even if the solder melts while the top side is being heated up.


texts: Flyback Converter Switching MOSFET Breakdown

texts:
I am using a UC1845A to control the switching element MOSFET (FCB20N60F) which is used for a typical Flyback Converter circuit. MOSFET's drain is connected to transformer. Rarely MOSFET is not working stable and broke down. It is usually works fine. Do you have a suggestion to overcome this FET problem? Can changing the MOSFET to TI csd19502q5b solve the problem (This FET has lower Vds voltage as 80 V although the one used on circuit has 600 V Vds voltage. Can you suggest a better FET instead of FCB20N60F)?

Thank you.


texts: Arduino PIR relay with manual override switch

texts:
I'm setting up a PIR activated relay (connected to some lights) using an Arduino Nano.

I have the PIR code working (obtained from a 3rd party site) but I'd like the option to override the PIR input based on an input from a push button switch.  To add even more complexity, I'd like to have an LED lit up to let me know when the PIR is being manually overridden (relay always on).

The button is a simple push button.

By default, I want the unit to be in PIR mode.  The relay is activated  if motion is detected, and then after X seconds it switches off.  If I press the button once, it's manually overridden and the relay is switched on (constantly) and the blue LED is activated to inform me that the unit is on constantly.  If the button is pressed again, the unit switches back to PIR mode.

Here's the code I've got so far - but the LED and relay seem to be constantly active. The PIR is still reading (according to the serial monitor).

/*
 * PIR sensor tester
 */

int PIR_override = 3;         // the number of the switch pin
int overridestatus = 12;       // the number of the led pin

int relaypin = 13;                // choose the pin for the LED
int inputPin = 2;               // choose the input pin (for PIR sensor)
int pirState = LOW;             // we start, assuming no motion detected
int val = 0;                    // variable for reading the pin status
int DELVAR = 3000;             // Delay in milliseconds
int override_state = LOW;      // the current state of the output pin

// set states for PIR override switch
int state = LOW;      // the current state of the output pin
int reading;           // the current reading from the input pin
int previous = HIGH;    // the previous reading from the input pin

///////////////////////////////////////////////////////
void setup() {
  pinMode(relaypin, OUTPUT);      // declare LED as output
  pinMode(inputPin, INPUT);     // declare sensor as input

  Serial.begin(9600);
}

void loop()
{
    digitalRead(PIR_override);  // read input value of PIR override switch
    if (val == LOW)
    {            // check if the input is LOW
        val = digitalRead(inputPin);  // read input value
        if (val == HIGH)
        {            // check if the input is HIGH
            digitalWrite(relaypin, HIGH);  // turn LED ON
            if (pirState == LOW)
            {
                // we have just turned on
                Serial.println("Motion detected!");
                // We only want to print on the output change, not state
                pirState = HIGH;
                delay(DELVAR);    // maximum delay is 32776 millisecons,
                //  delay(DELVAR);    // so add multiple delays together to get
                // delay(DELVAR);    // so add multiple delays together to get
            }
        }
        else
        {
            digitalWrite(relaypin, LOW); // turn LED OFF
            if (pirState == HIGH)
            {
                // we have just turned of
                Serial.println("Motion ended!");
                // We only want to print on the output change, not state
                pirState = LOW;
            }
            else
            {
                digitalWrite(overridestatus, HIGH);  // turn override status LED ON
                digitalWrite(relaypin, HIGH);  // turn relay ON
            }
        }
    }
}

Here's the code I've got so far - but the LED and relay seem to be constantly active.  The PIR is still reading (according to the serial monitor).

There's clearly something wrong with my if-else loop but I'm not entirely sure where I need to start looking.

I'm also including a basic breadboard image of the circuit (it's my first Fritz so be gentle!)  Also, please ignore the pin in on the relay board.  I am using an SRD-05VDC-SL-C but it's on a slightly different board with only 3 pins (IN, VCC, GND).


texts: PCB etching not working: everything etched

texts:
I tried to etch a PCB with the photoresist method, using sodium hydroxid as developer and ferric chlorid as etcher. I think the problem is in the development phase. Although reading a lot about etching, I seem to make a big mistake.

Here is what I did:

I printed my circuit on a transparency twice, overlaid both
Turned the lights off, red light on
Put transparency on the photosensitive side of the PCB (Edit: I used a sheet of glass to keep transparency and PCB together)
Using a 500W halogen lamp, I exposed it for 2 minutes (note: the PCB vendor says

  1000-W halogen bulbs: 45 - 70 s

as I have a 500W lamp, I doubled the time to two minutes. I have no idea how to recognize when the exposure is finished, so I followed the instruction blindly.

Put the PCB in Sodium Hydroxid developer, turned ceiling light (not the halogen) again on.

On my first trial, after 10s, I could see the traced of my printed circuit. I read that the development takes about 60s, so waited the remaining 50s, but then, no traces were visible any more. I continued etching and as I expected, everything was etched, no copper remained anymore.

So, second try. My thoughts were: I had seen the traces after developing for 10s, so the concentration of developer may be to high, so I added more water. Also, everything was etched, maybe the exposure time was too long. My second try was exposure for only 80s, but I never saw any traced during the development of this PCB. Again, all copper gone after etching.

Again, as everything was gone I thought the exposure may be too long. Repeating with 10s, 40s, 60s all resulted in the same as 80s.

I have no idea what is wrong. I only found people having over exposed boards with blurry edges but never found anybody having this problem: all copper is etched.

Do you have any idea what I might do wrong?

Edit:
Is it important to keep the lights off during the whole development phase? The didn't do this here

The wired thing is: as everything is etched, it looks as if the exposure was too long. But when reducing the exposure time, I didn't see any traces even not in the beginning of the development phase, where I could see traces with 2 minutes exposure.

Edit2
Is it possible, that this black layer is the photo resist layer and should stay on the board when peeling the blue off? It is impossible to separate the blue and black layer, so this could be a fabrication mistake.

turn


texts:
I am trying to design an RPM limiter for my CDI operated 2 stroke engine (Tomos A35). Some people reported that just connecting a capacitor to the primary coil also limits the RPM, but will eventually break your ignition coil. That is why I came up with the following solution:

Here is the same circuit drawn in EAGLE:

The flywheel has magnets and rotates, thereby inducing a charge in the ignition coil. This creates periodic voltage spikes which are sent to the CDI (which has been drawn a bit simplified here). In the original situation, the points IN and OUT are one. In the new situation I want to use a thyristor to either block this voltage spike or pass it. To do so, I need to count the amount of voltage spikes per time unit.

On the bottom I use an opamp (that can take up to 32V on its inputs) as a comparator to protect the arduino. The range of IN at which the opamp triggers without blowing up is now 47 to 603 volts, which should be fine I think. With this circuit, I should be able to count the amount of voltage spikes per second.

The trigger voltage of the TIC126D is max 1.5V I read from the datasheet, so it can be operated from the arduino without further ado.

I am, however, a bit fuzzy on how to select all of these resistor values. So I am asking you for help on that. The values that are there now are based on examples I found on the internet. Also, general tips about the design are very welcome.

EDIT 11/02/2020, 13:45
As DKNguyen pointed out, I am indeed using the thyristor as if it were an NMOS transistor. I could use the thyristor to interrupt the ground wire coming out of the CDI, but this would turn the two coils in there into two inductors (the coils have a common ground that is inside the CDI, there's just nothing I can do about this). Also, I added a PNP transistor to protect the Arduino from drawing too much current.


texts: Can you split power between two voltage regulators?

texts:
In order to supply more power to a circuit. can you split the power between 2 voltage regulators, in parallel?

Can this overpower one of the Voltage Regulators?


texts:
I need to send some digital data and power for long distance (around 60 meters) using only 3 wires.

Data speed is low, something like 100bps is enough, 1000bps would be perfect (12.5Bps and 125Bps).

There is always one transmitter and multiple receivers (amount can change at any moment), so transmission is always in the same direction.

Transmitter and receivers are based on ATMega uC. My idea is to use current loop here, however I'm not able to use only one loop, because then I would have to use some termination in last receiver, which I can't. So I'm thinking about creating multiple current loops, so that each receiver would re-transmit data to next current loop.

What's the simplest way to create reliable digital current transmitters?

The current itself doesn't really matter, it can be classic 4-20mA, or something less then that, since it will transmit digital signals. What I got for now is LM317 as current source with switchable resistor (with MOSFET), so I'm getting 4 or 20mA output, but maybe there is some easier way.

As receiver I have optocouplers, which again, I'm not sure if it's best way to accomplish that. Here probably would be easier to just use resistor between data line and ground as receiver.

RS232 is not applicable here because of voltage drop that will occur between two power wires, so that in last receiver I'll get for example {+20V, -4V} instead of {+12V, -12V}


texts: Protect my circuit from overvoltage on AC line

texts:
I used this link to generate a 5VDC (1A) from the 220Vac power source, the circuit itself works perfectly fine but i want to make sure that the overvoltage on the AC line won't damage my board.

I searched the web and noticed that for protecting my board against the overvoltage on the AC line i should use the MOV device connected between the Line and Neutral.

In addition i noticed that there is a device called bi-directional TVS diode used to protect the device from the voltage spikes and it connects to the AC line in parallel just like the MOV.

The problem is that I'm not familiar with the TVS devices and i don't know which TVS diode is suitable for my application.

Please give me some suggestion for the suitable bi-directional TVS diode.
I also attached the transformer-less power supply design for reference.


texts: How do I control a two 12VDC 10A motors using an Arduino?

texts:
I am new to arduino and electronics in general but I need some help on a project I am working on. Essentially I want to be able to control the state (on/off) and direction of two linear actuators that are really just DC motors.

It seems easy but the problem is that the linear actuators are each 12VDC and consume 10 amps of current at full load. I bought a 25A external power supply because obviously the arduino microcontroller cannot not provide that much current.

I saw something about using an H bridge to control each motor's direction and then I read something about using a relay that acts as an electromechanical switch to draw current from the power supply. Can someone help me out or draw me a circuit diagram of what this looks like so I could be able to put it together? I would love to know how all of this works and I know it is probably challenging to beging electronics with but I am willing to learn as much as I can about this stuff.


texts: How to get the most significant bit being one in VHDL?

texts:
Say in VHDL I have an entity with as input a 8-bit vector:

libary ieee;
use ieee.std_logic_1164.all;

entity example is
port(
    clk : in std_logic;
    inputvector : in std_logic_vector(7 downto 0);
    outputvector : out std_logic_vector(2 downto 0)
);
end entity example;

I want to output the position of the most significant bit being one in the input vector (starting with counting from zero).

So for example if \$\text{inputvector} = [\underset{7}0,\underset{6}0,\underset{5}1,\underset{4}0,\underset{3}1,\underset{2}1,\underset{1}0,\underset{0}1]\$, the most significant bit being one is bit \$5\$. And since \$(5)_{\text{decimal}} = (101)_\text{binary}\$, the output must be \$\text{outputvector} = [1, 0,1]\$.

What do I need to write in the architecture of example to achieve this?

Thanks in advance.

Edit: How I would do this in Matlab or Python (with from numpy import ceil, log2):

ceil(log2(x)) - 1

with x the inputvalue. So \$x = (101101)_\text{binary} = (45)_\text{decimal}\$ would give

>> ceil(log2(45)) - 1

ans =

     5


texts: How can I increse 12V and 0.5A DC to 200V DC?

texts:
I am very new in electrical circuits and I need help to create a circuit which would create from 12V and max 0.5A input, output with 200V and some small current. Consequently, I need to regulate this voltage in scale 0-200V for supplying a piezoelectric load.

I would like to ask:

What should I use for this type of increasing voltage (if you made something similar what have you used)? I chacked step-up convertor and found this one: https://www.analog.com/en/products/lt8331.html#product-overview
In datasheet has this device maximal switching voltage 140V. But later in a datasheet is one schematics which shows how to get 240V and 15mA from input 10V to 48V. So the switching voltage makes some limitation for the output voltage from the step-up circuit? Actually, would it be the solution to my issue?

How can I regulate continuously this voltage in range 0-200V? I thought about using some MOSFET or JFET. But when the voltage is so high and current is so small (i am assuming that I would use the step-up above with output 15mA) is it possible to regulate the voltage continuously with some FET? If not how can I control the voltage, Should I use something else or should I increase the current?

Thank you!


texts: What is difference between register and distributed RAM

texts:
I'm trying to understand what is purpose of distributed RAM as a concept. As far as I understand it is implemented using LUTs just as registers are. However registers seems to be much more flexible:

input bit [4:0] addr1;
input bit [4:0] addr2;
input bit [4:0] addr3;
output int res;
int register[32];
always_ff @(posedge clk) begin
    for (int i = 0; i < 32; i++) begin
        if (i == addr1 || i == addr2 || i == addr3) begin
            register[i]++;
        end
    end
    res = register[addr1] + register[addr2] + register[addr3];
end

However distributed RAM allows only limited number of accesses per cycle. Is it compiled in more optimal way?


texts: What would happen to the wires if a lightning struck them?

texts:
I've got a link to this video of a lightning striking wiring between two houses in a city: http://www.youtube.com/watch?v=bLPFeW40Xrc

I wonder if the wires were melted by the current (as commenters on various websites claim) or if it was just some effect that caused glowing orange particles to appear around those wires.


texts: Is there a difference between 100% duty cycle PWM and continuous current?

texts:
I was thinking that 100% duty cycle PWM always keeps output HIGH ( just like a continuous current ) but according to Proteus simulation the output still falls and rises in a very little time

Is that normal ?


texts: Breadboard 7408 2 input AND gate always supplying current, regardless of input

texts:
I am currently trying to wire the logic for my dual 7-segment display.

I am stuck at my AND gate, and having tried an OR gate as well I have been unable to find why, regardless of input, the output of the gate is always supplying current.

Below the inputs are shown as leading to nothing, Va is set on my DC power supply as "5V FIXED 3A."

In accordance with the diagram, the 7408 chip is being supplied the 5V in the top right and grounded on the bottom left.

Could anyone point out what mistake I am making that is causing for this AND gate to supply current regardless of the input?

Thank You!


texts: USB data transfer with a separate power source

texts:
The car I recently bought has a built in USB but only provides 500mA.

I want to use a cable like the one below to connect my iPhone to the built-in USB to play music/satnav on the car stereo, but I want my iPhone to draw a power from my powerful car charger (4.2A).

I understand that connecting two power sources together with this kind of cable is not a great idea, I'd have to modify it but disconnecting power (+) wire from one cable. Related discussions (below) say that both 'host' devices have to have a common ground. The car's USB and the car charger ground are common so this should work.

Will it work and recognise my iPhone?

Update: Jailbroken iPhone will show you what the current is during charging. It'll show around 2000mA when the phone is off. With the screen and other things on it shows over 1700mA. Using iPad charger in the screenshot.

Related, but I thought my question could possible be more specific as it's to do with cars. By reading those I think the answer to my question is yes, however I'd like a confirmation from you guys.

USB data transfer without charge

Can the power source for a USB device be different from the data source?


texts:
I am using the LX9 Microboard from AVNET with the Spartan 6 PFPGA. I implement SPI to read from an ADC (ADS7822). I was getting wrong sampled values. When I ched the signals with an oscilloscope, it was not as I expected.

FPGA Clock (system): 100 MHz
Divider: 32
SPI Clock (output): 3.125 MHz

So I expect, a 320 ns cycle with 160 ns HIGH time and 160 ns LOW time. From the Simulation I get exactly what i expect. But using an oscilloscope at the PMOD output, I get a clock signal thats not too satisfactory. Also from the ADC datasheet (Pg. 10) the minimum high or low time should be 125 ns when working above 4.74 Vcc. Vcc in my case is 5V.

The high time is 132 ns at 3V level (HIGH) and and 144 ns at 0.8V level (LOW). The clock duration converges at 3.2V level. The expected time is 160 ns and I don't find any reason for the poor clock output.

Below diagram is a screen print of the oscilloscope.

Blue line: CLK
Redline: CS

The reason I mark the values at 3V and 0.8V is as per theADC datasheet (Pg. 4)
the Vih is from 3 to 5.5V and Vil is from -0.3 to 0.8V.

Please suggest a possible reason for the poor output from the FPGA and how do I improve the clock output?


texts: Interfacing signals between two parts at different voltage levels

texts:
I would like to connect four output pins of a certain IC to four input pins of an AVR microcontroller (Atmega328).

I'm running the IC at VCC that varies between 3.50V and 4.00V. It outputs signals (for status indication) with an Output High spec of V_HIGH = VCC - 0.30, per the datasheet. Thus, in my case, minimum V_HIGH for an output signal from this IC will vary between 3.20V and 3.70V.

But I'm running my microcontroller at VCC = 3.30V, and I want it to read the inputs from the IC above (and not damage the microcontroller obviously).

What is a robust, hopefully simple, way to address this problem?

I am thinking perhaps a diode, to create a voltage drop, in series with each of the signals.


texts: Just out of curiosity I am trying to find out. What type of component is the green flat one in the picture?


texts:
I have the above circuit on a breadboard, where my PWM is coming form a microcontroller with its own current limited power supply. the motor is being powered from another output of my power supply. So I have added this diode 15SQ045
which i sourced from here, despite the fact it said "for solar cells" I was satisfied with the "shottky" property.

Anyways the issue is that without the diode I get voltage spikes of about 128V and with the diode those come down to about 38V. My question is why are the spikes still so high? Can i improve it?

I have tried adding more diodes in parallel but that does nothing.


texts: LEDs are not glowing with same intensity in LED matrix

texts:
In my 16*8 LED matrix, I am switching the rows, so duty cycle is 100/8 = 12.5 %. Now, when the row contains fewer LEDs to be lit, they all glow brightly, but when more LEDs are turned on, they are all dimmer.

Like in this photo, where the fifth row is lighting up dimly.

I know that more LEDs means more current, so my current is not sufficient and I tried following:

Initially, I was using 3-off 74HC595 IC and power input from a 5 V Arduino output.

Then I tried to light each led independently. It solved the intensity problem but it reduced the duty cycle to 100/128 = 0.78 % and it gave a flickering effect.

Then I thought that the Arduino was not able to provide sufficient current to light the 16 LEDs in a whole row. So I changed the power source to 1 A output 5 V mobile charger but the problem still existed.

According to me, 74HC595 is not able to provide sufficient current at a time.

Please give me its remedy. Also, when I saw this project in a video, it did not have this problem. Some were using 74HC595 and other were using MAX7219.


texts: How to calculate value of R2 in this circuit?

texts: I'm reading a Floyd electronics book and working through some problems. This one has me stumped however. I already know the answer as it's given in the book (110k). However, I don't know how to actually solve the problem. I've tried approaching it from a few different angles, but none of them seem to work as I'm always short of a variable. Can anyone advise?


texts: What punch down tool should I use on this ethernet jack?

texts: As you can tell this does not have the vertical lines like a regular keystone jack. So i was wondering what punch down tool should i use? ...also what are these called?


texts:
In a positive clamping circuit in the first negative half cycle the capacitor charges then they say it functions as voltage source

I have a doubt the capacitor will discharge eventually then how can it function as a constant voltage supply


texts: How to use a double 7 segment with atmega32

texts:
I'm learning Embedded Systems and how to use ATMEGA32 MCU.
Now I'm trying to display a fractional number to the 7 segment but it just won't display!

But if I move the handle of the potentiometer -The voltage on its middle pin I'm trying to display - it displays a weird bar.

However if I forget about doing the decimal thing and just display the integer and replace the double 7SEG with an ordinary one, it works. Meaning that the MCU reads the value correctly.

If I add a delay in the code.

It displays the numbers momentarily before removing them.

So I guess for whatever reason it still alters the second 7SEG even if the code is commanding it to alter the first only and vice versa.

What am I missing here?

Edit: Here's the code:

    void SvnSEG_Disp(float num) {
        num_int = (uint8_t)num; // Will take values from Zero to 5
        after_point = (num - (uint8_t)num)*10; // Will take values from Zero to 9
        PORTD &= ~(1 << PD5); // Set PD5 to Zero. Use first 7SEG
        PORTD |= (1 << PD6);  // Set PD6 to One. Don't use second 7SEG
        PORTD |= (1 << PD4);  // Set PD4 turning on the Decimal point.
        PORTD &= ~(1 << PD0); // Set PD0 to 0
        PORTD &= ~(1 << PD1); // Set PD1 to 0
        PORTD &= ~(1 << PD2); // Set PD2 to 0
        PORTD &= ~(1 << PD3); // Set PD3 to 0

        PORTD |= num_int; // Set the lower 4 bits of Port D (PD0 - PD3) to the bits of the number.

        PORTD |= (1 << PD5); // Set PD5 to One. Don't use first 7SEG
        PORTD &= ~(1 << PD6); // Set PD6 to Zero. Use second 7SEG
        PORTD |= (1 << PD4); // Set PD4 turning on the Decimal point.
        PORTD &= ~(1 << PD0); // Set PD0 to 0
        PORTD &= ~(1 << PD1); // Set PD1 to 0
        PORTD &= ~(1 << PD2); // Set PD2 to 0
        PORTD &= ~(1 << PD3); // Set PD3 to 0

        PORTD |= after_point; // Set the lower 4 bits of Port D (PD0 - PD3) to the bits of the number.

   }


texts:
I have a working prototype project using a Raspberry Pi Zero, Pi Cobbler, and a breadboard that I would like to make a little bit more permanent by wiring and soldering a prototype (perfboard) board.

My plan was to solder male header pins to the Raspberry Pi and a female header onto the prototype board to connect the two. My project uses an MCP3008 IC and some audio jacks. What I am unsure of is how to wire and solder the components on the prototype board. I was thinking I needed to solder the wires running from the components to the female header pins. I assume I will need to solder the wires from the components to the female header pins protruding underneath the prototype board. Is this correct?

EDIT: I am completely new to soldering and wiring, so I apologize for my ignorance of the vocabulary. I assumed perfboard/prototype board meant I was using a board with plated holes on both sides, which I am using.

With the male and female headers, I am trying to stack the boards together to avoid having to solder anything directly (other than the male headers) to the Pi Zero. I want to do all of the wiring and soldering on the prototype board as I am sure I will 1) screw up and 2) I am sure I will go through several iterations as I learn new things or want to add additional components.

Thanks!


texts: How to fix my designed calculator circuit using Logisim

texts:
I am trying to design a calculator circuit that adds 2 four-bit 2's-complement binary numbers as its input and outputs an 8-bit 2's-complement number when the control bits equal 01.

Here's what I have done so far using a software called Logisim. I am really stuck when I found out that I cannot put the other 4 output buttons (colored in blue) in my full adder. I am stumped on how to approach this problem now.

I have tested a few 2's-complement numbers and got the output I wanted and some 2's-complement numbers that did not go so well like (having 0100 as the first input and 0110 as the second input did not give me 1010 but gave me 1011.

I just need help, suggestions and guidance on how to move forward.


texts: Wire type based on transmission voltage?

texts: I'm trying to calcalte the resistance per km of high voltage transmission lines based on data extracted from OpenStreetMap. I have the transmission voltage and also the length of the wires but I don't have any idea about the material being used (Copper or Aluminum) or the surface area of the wire. Is there any way to estimate the used material and surface based on voltage and length? Thanks


texts: What component is best for a voltage follower amp (specs given in question)?

texts:
I am wanting an op amp that can act as a voltage follower. Essentially the project is speed control of a motor and since PWM is being used, the following circuit was going to be implemented: Essentially just a RC filter to get the analogue signal, then a voltage follower so that the motor can draw the required current it needs since the arduino can only output say 20mA.

(Ignore the output 1k resistor)

As i do not know that much about opamps and what to look for for when choosing them, i was wondering if i could get some suggestions or even possibly a standard op amp that will work?

The supply to the op amp will be 5V, and preferably a component from Jaycar due to the time limit?

The input voltage to the opamp will be roughly always less then 4.5V
The motor roughly draws 0.2 - 0.3A
Motor:


texts: What's the 2N3904 / 2N3906 FET equivalent?

texts:
Is there a generic low-power switching FET that's multiply sourced, generally readily available, most simulators already have models for, etc.?

I'm not looking for FETs that have similar electrical characteristics to the 3904/3906; I'm looking for FETs that have similar ubiquity.


texts: Altium Designer: Copy room format does not modify polygon net name

texts:
I have a multichannel PCB with channels named U1, U2 and U3. I'm trying to copy the format of one channel to other two:

component placement,
routing,
polygons.

In the first place I was facing that polygons does not copied on their own. Finally I found out that I should check "Copy all objects touching the room":

However they still don't have propper net names:

As you can see the polygon have Lo_U1 net name (the same as the first source room) instead of Lo_U2 (as the current room is U2).

I can do it manually of course. But there should be a better solution.


texts: Analog circuit to maintain a minimum current?

texts:
I am looking to get a USB battery pack for use with both my phone and my bluetooth headset, but my bluetooth headset has a drain of only around 50mA when charging, and it seems that most battery packs have a minimum current draw of 50mA, below which they will shut off (presumably to prevent vampire currents from draining the battery pack). This is essentially the same problem posed in this question, but the answer there relies on the fact that the person asking the question is trying to power an Arduino (and can use the GPIO-boards to modify the current draw). Is there a more generic, preferably analog circuit that will provide a minimum current draw on a battery?

I have a preliminary design using one op-amp and sense resistor as a current sensor, then using the voltage difference between the current sensor and a fixed voltage to drive an NPN transistor, but I think I've messed up the feedback somewhere, because once the load current drops below the threshold, the fallback current goes to the rails. See the circuit diagram:

You can download the Qucs .sch file from this gist. My questions are: is there a better approach to an analog circuit that provides a minimum current? If so, what is it? If not, how do I fix the feedback on this so it provides exactly the desired current?

Note: For simplicity's sake I used traditional op-amps with negative and positive rails, but once I nail down the general approach, I'm going to need to adjust this so that it can be powered with the battery itself, so only 0V and 5V rails. I don't think it should make a big difference, but it's important to know I suppose.

Edit: For practical purposes, I think that this answer on a similar question (HT Ali Chen) actually makes a lot of sense - since the battery packs tend to stay on whenever the momentary current draw is above the specified value, it seems to me that some circuit with a low duty cycle would likely be the simplest and most power-efficient, but that can always be implemented in addition to the answers below, so that doesn't change this question.


texts: Top Ground Copper pour in PCB having three RF Sections

texts:
I am designing my second RF board (First one had BLE). This board has LoRa Components (SX1257 and SX1301), GPS (MAX-6) and 4G LTE Module (SIM7600). All the components are on top layer (red layer).

My STACKUP is:
Layer 1 (Red): Signal layer with Ground copper pour
Layer 2: Ground Layer
Layer 3: Power and Ground Layer (There are multiple sections for 3V3, 1V8, 4V and the section just below RF traces is Ground)
Layer 4 (Blue): Mostly Ground having few signals.

Below is the picture of Layout:

My question is I can pour ground copper on my first layer with via fencing and stitching at a distance of wavelength/20. Should I keep the ground pour separate for LoRa, GPS and LTE module? They will be connected to each other via layer 2. Or I can have a big copper pour covering the top layer as distance with three RF section is sufficient.


texts: How do I alter the resistance floor of a potentiometer without shifting the entire range?

texts:
Assume I have a linear potentiometer that, say, has a range of 0 to 10Kohm. Then assume that:

0deg = 0 ohms

10deg = 370 ohms

270deg = 10Kohm

My question is, how do I show 370 ohms while the potentiometer is ≤ 10 degrees, but as soon as it gets > 10 degrees, ONLY the potentiometer value is shown (e.g. 11deg would show about 407 ohms)? That is, IGNORE the potentiometer when it is ≤ 10 degrees, but then continue as normal past 10 degrees.

I could do it with an active design, but was wondering if there was a way to do it with just passive components that for some reason I'm not seeing..

Note that the reason this has to be done with external components (rather than just change the potentiometer range to be 370-10K) is that the additional floor needs to be switchable.


texts:
I have this sim800L module

It has a 3.7v - 4.2v voltage requirement. So I created a simple buck regulator using MIC4576 regulator according to it's schematics and adjusted it's output to 4.2 volts. It can provide 3A of current. And i powered it through my laptop charger, so there's no shortage of current in the circuit.

But the module(sim800l) resets as soon as it finds a network(it's my guess). If I run it without sim, it runs fine and doesn't reset.

I've also tried 2 18650s in parallel to be able to provide atleast 3A to the circuit. But it still resets after a few seconds.

Is there anything obvious I'm missing?


texts:
and I got a question about lasers. I am owning a LDS 40mw green 100mw red, and I wanted to replace the 40mw diode for a 100mw green diode. Does this requires any power supply increase? Basically a 40 to 100 mw upgrade.

Diod specification

Wavelength:532nm
Power output:100mW with 5% tolerance
Threshold current::260mA
Maximum current:360mA
Requirements Voltage:1.7~2.2V
Working Temperature:+10dgC-+40dgC
Storage Temperature:+10dgC-+50dgC
Lifepan (under normal operation)>7000hours
 Size:12mmx35mm


texts: LTC6946-1: using oscillators to generate reference frequency for local oscillator signal

texts:
I have to use the LTC6946-1 (frequency synthesizer with inbuilt PLL, phase detector and programmable VCO) to generate a local oscillator signal for a radio transceiver. The output signal has to be 433.92 MHz. The thing is, I've never used PLLs before. This chip requires a reference frequency that meets the following requirements:

frequency of 25 MHz
If a CW signal, input power must be at least 6 dBm into 50 ohms
If a square wave, then at least 0.5 Vp-p with a slew rate of at least 40V/microsecond.

The problem is, how do I chose an oscillator that provides these requirements? I prefer to use a square wave oscillator here. But I also haven't used oscillators before and when looking at their datasheets, I can't find any information that is helpful. For example, the datasheet here:
https://ecsxtal.com/store/pdf/ECS-TXO-3225.pdf
This is a component I would like to use, but how can I tell if this component needs external circuitry to drive it? How can I tell what circuitry is needed? And what the output levels are? None of that information is provided and the datasheets for other oscillators are the same.
Can't make heads or tails of this. Any help would be appreciated.


texts: What's the most effective way to save/restore a PIC status bit

texts:
I want to save/restore the PIC's carry bit. I'm using the 16F628A.

SAVE_CARRY
    btfss STATUS, 0
    goto CARRY_OFF

CARRY_ON
    bsf carry, 0
    return

CARRY_OFF
   bcf carry, 0
   return

RESTORE_CARRY
   btfss carry, 0
   goto RESTORE_CARRY_OFF

RESTORE_CARRY_ON
   bsf STATUS, 0
   return

RESTORE_CARRY_OFF
   bcf STATUS, 0
   return

There must be a better way. Is there?


texts:
I’d like to understand 1200Hz/2200Hz AFSK in commonly used APRS/Packet/AX.25 applications.

When I look at the datasheets for some of the chips existing projects use (e.g the Si446x transceiver-on-a-chip) I notice that these only support (G)FSK, (G)MSK and OOK, but not straight audio-fed FM. Is there a trick in making FSK behave like AFSK somehow?

Isn't frequency-shifting the FM carrier (FSK) something completely different than frequency-shifting the audio baseband signal (AFSK), or have I got my definitions entirely wrong here?


texts: How to calculate time constant for RC circuit with more than one resistor

texts:
The time constant in the solution is 0.5. (-2t implies tau = 0.5)
I am wondering how they got this.

tau = RC

So I am wondering how to calculate the Rth. The capacitor is inbetween the two resistors in series, so would the Rth be

Rth = 6/(6+2)

But then tau = (6/8)*(1/3) = 0.25

if Rth is not calculated like this and is just = (6+2)

tau = 8*(1/3) which is not equal to 0.5

if Rth is also not calculated like this and is 2/(6+2)

tau = (2/8)*(1/3) which is not equal to 0.5

I know that I can get the Rth from the solution
ie. since the solution says tau = 0.5, then the Rth must be 1.5ohms (since 1.5 * (1/3) = 0.5)

But I cannot see how the resistance at the terminals of the resistor is equivalent to 1.5ohms.

So my question is how to calculate Rth and how to calculate tau.


texts: How to solve a resistor nest efficiently

texts:
Of course, one way to do it is to split it into series and parallel circuits and apply Kirchhoff's law, but that seems inefficient. Is there a method by which a circuit nest can be solved (finding the voltage and current at each resistor) efficiently (suitable for a computer simulation, perhaps)? (Of course, any approach would be based on Kirchoff's laws, but they can be rearranged to be more efficient for this task.) I am thinking it would involve finding relative voltages at every node, instead of voltage differences at each resistor.

What should I do?


texts: At what point does crosstalk on I2C become a problem?

texts:
If I have a pair of I2C traces (SDA and SCL) on a 1 oz board, each being 8mil wide and separated by an 8mil gap, how long would the traces have to be before crosstalk would become an issue?

Edit:

Apologies for not making this clear before, but I was asking from a theoretical point of view, and with everything else considered equal.

I was checking the rise times on an I2C bus, and the crosstalk spikes were larger than I would have expected (300-400mV).
After reading some of the replies, I measured the fall time - it's about 15nS, and from my calculation I must have about 80pF of capacitance on the bus.


texts: Use an Arduino to control a 12v rgb strip

texts: I am wishing to use an Arduino UNO to control a 12v RGB LED strip. Can I use a transistor instead of a relay? The LED strip has 4 pins: + , R, G and B.


texts: (Backlight) LED Driver maximum number of LEDs

texts:
I've been tasked to find a suitable backlight led driver for a Mitsubishi LCD panel (AA104XF12-cf1) which is PWM dimmable, but in my search I've only found confusion.

In nearly all datasheets it specifies a certain amount of LEDs the driver is designed for. Isn't it irrelevant how many LEDs you connect as long as the voltage is correct and the driver can supply or sink enough current?

Bonus question: Why do some ICs have multiple sink channels for separate strings when you can connect them together to increase the total current? I have 2 backlight strings of 120mA each, which could be connected to 8 channels of 30mA as long as they're current sinks.

EDIT:

As per request here are some examples of datasheets which specify the number of LEDS.

LTM8042.
BD6142AMUV.


texts: Replace loop with timers in this ATtiny code

texts:
How can I rewrite the following to use timers? Note that this is an ATtiny which has just Timer0 and Timer1

Essentially I'm trying to software PWM on many output pins, more than the built-in PWM pins. The code below is slightly simplified but the real code uses direct port manipulation and does almost nothing else, so the result should be almost as good as built-in PWM.

The intended application is intended to run on a small battery, so power saving is a major design goal. Also given that this is ATtiny, every byte of program space matters.

Or, convince me that it's not worth trying to use timers in this case.

void loop() {
  static int8_t procession = 0;
  static uint32_t lastTime = millis();
  static int8_t pos = 0;

  if (lastTime > millis() + 200) {
    lastTime = millis();
    if (++procession == 9) {
      procession = 0;
    }
  }

  const uint32_t ON_CYCLE = 5;
  const uint32_t OFF_CYCLE = 5;

  digitalWrite(procession, HIGH);

  delayMicroseconds(ON_CYCLE);

  if (OFF_CYCLE > 0) {
    digitalWrite(procession, LOW);
    delayMicroseconds(OFF_CYCLE);
  }
}


texts: I have a picture here, sorry if it's ugly .. but let's think, they are my ESCs for my mini-quadcopter. My mini quadcopter is 3d printed, and as much as possible, I don't want to use bullet connectors because they will only add to the weight of my mini-quad. My question is, from the diagram below, will all the ESCs get the same voltage or not? Especially on the left diagran ... The right diagram was using a power distribution board from hobbyking