texts: Deciding which assembly is more common positive edge detector

texts:
I know of two circuits which can act as edge detector:

A clock connected as a voltage source across a RC component where resistance is composed of a diode and a resistor and this in series with another

A clock and its inverted output connected to AND gate.

Respective images are pulses generated for a given square wave.

Which one of them is more prevalent and versatile in logic design ? because in books only 2nd is used for synchronising outputs.

I think RC circuit helps us to adjust duration of the pulse so it is better.


texts: Faulty RS-485 device has irregular effect on neighboring devices in bus setup

texts:
I am trying to understand the mystery of how one faulty RS-485 transceiver, in a network bus with several devices, seems to have very irregular influence on its own and its neighbors transmission success.

SETUP
The setup consists of a RS-485 bus network with about 20 devices on the line. Sparkfun's RS-485 Breakout boards (Sparkfun BOB-10124) are used as transceivers. The 220 ohm termination resistors have been removed from the boards to allow for the multi-device setup. The twisted-pair cables between the devices have lengths between 14 to 30 meters. For safety measures and noise cancellation RS-485 repeaters (RPT-485_422-2) have been installed between 6 devices each.

PROBLEM
Because of unknown problems (possibly: power spike or power short or other form of mishandling) now and then a transceiver gets damaged. The transmission analysis shows that a problem seems to exist with several devices on the network. It is not obvious which transceiver causes the problem. Once the faulty transceiver is found (mostly through trial+error testing) and replaced, the transmission rate of all other devices returns to normal.

When the faulty transceiver is tested on its own (one-to-one instead of in a bus), it appears to work. Simple resistance measurements between pins on the transceiver board don't show any difference to a fresh unused board. There is no sign of damage visible on the board.

The image below shows what the transmission success analysis of what happens when the same faulty transceiver is inserted at different positions in the network bus. Sometimes the transceivers own transmission success is at 0% (at position #11 or #12), sometimes it is at 100% (at #13 or #15). Sometimes its neighboring devices are at 0% or 100% or at values in between. Note that these results are constant, and not fluctuating.

I am hoping someone can see a pattern in these results, or has an idea of what part of the transceiver could have been damaged. Maybe someone has experienced similar problems with RS-485 networks and can point me in some directions. With this post here i am not trying to figure out what could have caused the damage to the transceiver, but trying to understand how that damage effects the whole network. With the aim of being able to diagnose it faster in the future.

Here is an image of the transceiver used in the setup: Sparkfun's RS-485 Breakout board (Sparkfun BOB-10124). Note that the 220 ohm termination resistor has been removed for the setup.


texts:
I am attempting to build a gel transilluminator using RGB LEDs instead of UV fluorescent bulbs. Blue/Green LEDs can excite many fluorescent dyes similarly to UV without the harmful effects of UV. I would also like to make white light an option so we can image non-fluorescent gels. While I'm at it, I can include a blue only option because blue light illumination is also common.
Anyway, I thought the simplest way to do that would be a large common anode RGB LED array. Rather than trying to control each LED separately, I will wire them all up in parallel, with three switches to turn on each color all at once, so I can choose blue/green, blue, or white by turning on different combinations of switches.
I have a 12 V 5 A DC power supply. I know I need a resistor on each color channel, but is one resistor on each channel enough for what I want to do? Or will I need 3 resistors per LED? I also need to run the LEDs at a high current so that they are very bright, so "recommended" resistance levels might be too high, I'm not sure yet. I am okay with reducing the lifetime of the LEDs a little because transilluminators are only turned on for a few seconds to minutes at a time. I am very new to circuit building so I'm sure there is something I'm missing.
I have an example circuit diagram. In reality, I will likely have closer to 100 LEDs instead of 16, but the overall idea should be the same.


texts:
I was designing a 2-Layer PCB and now I'm stuck. I have routed like 80% of all nets and now I'm no more sure if it makes sense to continue. It's getting pretty messed up with all the crossing routes that I handled by using the second layer.
I thought about switching to 4 layers and wanted to know if it's possible to do 3 Signal layers and one GND layer instead of GND and PWR. All I found online was recommendations on doing two Signal 1 GND and 1 PWR plane.
I could also finish the 2 Layer design but I would have to use a lot of vias and switching between the layers. Does someone have any tips on solving routing issues?
Thanks


texts: Data acquisition microcontroller approach

texts:
I'm prototyping a data acquisition device which interfaces with 64 discrete inputs; 32 analogue and 32 digital (user-configurable as either ON/OFF measurement or frequency/duty measurement). I'm targeting a maximum sample frequency of 1000Hz per channel, so 64,000 samples per second across the device.

I'm currently prototyping with a generic ARM-based embedded Linux device (Raspberry Pi, Beaglebone, etc.). Analogue inputs are read and serialised by SPI-based ADCs, with the digital inputs interfacing directly with the device's GPIOs and read via sysfs.

I'm finding that the time to measure all 64 channels within a GUI-based Linux OS is too long and presents enormous amounts of jitter (execution time of a single sample of all 64 channels can range from <1ms to ~10ms). I'm currently experimenting with different threading approaches, but I believe the core issue is trying to execute time-sensitive readings within a non-RTOS environment.

As such, I'm contemplating introducing a dedicated DAQ microcontroller into the design, which will interface with the 64 inputs, store intermediate readings in a buffer, then routinely pass the data to the OS (via one of the standard high speed interfaces).

My questions are as follows:

Is there any point continuing with the Linux-based acquisition approach for a 64ksps requirement? Even if I could manage the sampling rate, I believe the jitter would still make this option untenable.
If the microcontroller approach is sound, can you recommend a make/model?


texts: ensuring transducer (transmitter) and receiver polarity

texts:
I am trying to implement a simple phased array of 7 transmitters rated 40 kHz. I have a few receivers to measure the acoustic field generated to validate if it works. What is a simple way to measure the polarity as I am skeptical to just use the marked polarity.

Thanks!


texts:
Sorry for dumb question, I'm really newbie in electronic.

As I wrote in topic, What's the name of this circuit? Dose the circuit has any specific name at all ?


texts: review of ceramic resonator layout for atmega ciruit

texts:
I have a custom build of an arduino mega (i.e. I took the reference design, and modified it to fit my specific requirements). As a result, the layout is substantially different from the reference circuit.

Would appreciate thoughts on the ceramic resonator layout. From what I've read, the frequencies this thing runs at (8MHz) are such that it doesn't really matter, but I'd appreciate input nonetheless:

C16 is a bypass cap
R12 is the resistor required for the resonator (is its placement correct? Should it be behind the ceramic resonator, or where it is?)
RN1 is a 10K resistor network used for I2C, and the reset line.
D4 is part of the atmega reset circuit
There are no signal lines underneath the resonator, just the ground plane.
This is a 2 layer board, ground fill on both sides.
The resonator is http://www.digikey.com/product-detail/en/0/490-5994-1-ND


texts: Dumping values of multi-dimensional arrays into gtkwave for verilator

texts:
I am able to do a VCD dump of multidimensional arrays using $dumpfile(),$dumpvars() commands in iverilog simulator but the same commands is not working for verilator.
Kindly do let me know if there is any way to do the dump.

Thanks
Akash


texts: Trying to wire up a couple dozen LED-lit toggle switches to an Arduino Mega

texts:
Update: Worked out a rough (I'm sure) schematic of the current idea for a smaller version of the circuit. A bit of info before the question;

The Arduino has a current cap of 200ma across all I/O pins, with a single pin good for 20ma. This is described as "pull or sink", which I assume means current into, or out-of.

Will the parallel switches, in their high number, try to draw too much current through the arduino from its GND pin due to the LED's, or will it remain at a healthy level (thanks to the pulldown resistors, or some other sorcery I've missed)? Exact values haven't been figured yet, but I'm assuming roughly the full 15-20ma per-LED(They will almost certainly be burning at a lower current, but I'd like as much wiggle room as I can wrest).

simulate this circuit – Schematic created using CircuitLab

Edited for clarity.

I'm attempting to wire 34 LED-illuminated toggle switches to an Arduino Mega. I need the Mega to be able to read the state of these toggles while still being able to utilize the LED indicators. The indicator needs to be on while the switch is closed, and off while the switch is open.

These switches have a much lower forward voltage than the 12v supply that I am powering the project with, and so I need to find a way to step the voltage and current down to something the Arduino can digest. The questions, therefore, are as follows;

1: Since the 34 toggles need to be individually readable, I will need to (if I understand correctly) wire their ACC output to the Arduino's I/Os individually. This means I will need to create a rather large parallel circuit from the 12v supply, over through the switches, and down into the Mega. Is there a way that I can do this that won't cause an immense heating issue? Will the current from the large number of parallel branches build up and try to kill my Mega, or can I use resistors to limit the current without causing more issues? Will these create a heating problem?

2: The 12v stepped down to 5v would be ideal, as prefacing the Voltage Regulator I foresee using for said stepdown, there is a 12v LED strip that I need to drive to serve as a backlight. This will be kept separate from the Arduino, and is simply controlled by an on-off toggle switch. Will wiring this strip in parallel to the voltage regulator cause some unforeseen issues with the rest of the circuit?

https://www.adafruit.com/product/1476

https://www.adafruit.com/product/3218

https://www.adafruit.com/product/1439

LM2596 Stepdown regulator


texts:
I'm building an electronic DC dummy load and have a problem with stability/oscillations.

This is my circuit:

Vset - controls current, when set to 100mV it makes 500mA at the shunt
Vout1 - Vshunt multiplied by 40 by U1
Vout2 - output from U2, drives mosfet M1
power_in - it is 10V and I added some noise to it

Vout1 and Vout2 oscillate.

power_in:

Vout1:

I'm trying to do AC analysis, so I could make some tweaking.
I understand that loop is not stable if phase shift is 180° and gain higher than 0dB.
I read that I have to break feedback and insert small signal for AC analysis.
This is what I have done:

AC analysis is this:

Is this method correct? I googled for some examples, but I was able to find only simple examples that I was not able to apply to my circuit.
Problem is that result of AC analysis tells that gain is always less than 0dB and phase shift below 180° (well, maybe for higher frequency reaches 180°).

At this point I'm stuck, I appreciate any help or advice how to properly do AC analysis.

UPDATE:
I uploaded source file for LTspice:
https://www.dropbox.com/s/iol9l4zr8wo7j1a/dc_load_heat_test.asc?dl=0


texts: Why exactly 470 or 1k Ω? (to prevent damage of output pin)

texts:
Quote from the Arduino tutorial, section Digital Pins:

  Short circuits on Arduino pins, or attempting to run high current
  devices from them, can damage or destroy the output transistors in the
  pin, or damage the entire Atmega chip. Often this will result in a
  "dead" pin in the microcontroller but the remaining chip will still
  function adequately. For this reason it is a good idea to connect
  OUTPUT pins to other devices with 470Ω or 1k resistors, unless maximum
  current draw from the pins is required for a particular application.

These numbers are voodoo to me: Why "470" or "1k"? Why isn't there
exactly one number given, such as "at least 470Ω if there otherwise
would be a short circuit"?

I am interested because I consider using the Arduino as a keyboard
controller, and - in this use case - lines are basically short circuited if a
button is pressed. Of course, the lines do have some resistance, but I
didn't get the chance to measure it yet.


texts:
Below is the circuit for constant voltage. The Value of R1 is 330 ohm and when Vin = 3.6V , the Vka = 1.5V
And when Vin changes the value for Vka also changes. it should be stable

Why? The Vka should be equal to 2.5V


texts:
I wonder if it's usually practical to use an accelerometer to measure the height of a ball tossed in the air. That is, would it be accurate to integrate the acceleration measured over time twice? An accelerometer like the MPU6050 has DMP for calculating pitch, roll, and yaw but nothing for height. Would it be too slow to integrate ay twice on a low-end MCU like the MSP430?

Edit: The height of travel will be less than 10cm.


texts: Basic digital circuit questions about counters and shift registers

texts: Is there any way that we take a shift register and turn it into a counter? Or they are complete different things?


texts:
I wanted to control the LEDs on my model railroad with a microcontroller and (maybe Soft-)PWM, but just saw, that most of the LED stuff you can buy for model railroads runs at 12-16V and also the transformer supplies 14V.

Now I fear, that I can't do this with microcontrollers and PWM, because they provide just 5V.

So, is there a way to provide 16V with the microcontroller?


texts: Where to find winding diagram for a 56 pole 63 slot BLDC motor?

texts:
I'm working on an algorithm to control a BLDC motor with 56 poles and 63 slots. I'm using trapezoidal control. By employing usual switching sequence (CA - CB - AB - AC - BC BA) I'm missing one step in the six step commutation. Where am I going wrong?
I found above switching sequence is referenced to the standard winding sequence(ABCABC). There are winding sequence table available for upto 20 pole BLDC. If I get the correct winding sequence, I can edit my algorithm to make positive torque without missing any steps.

Can anyone provide the winding sequence information for 56 pole 63 slot bldc?
Is there any standard text books I can refer regarding the practical BLDC motor construction?


texts:
Making a power distribution board with a student project and currently looking at DC-DC converters. The DC-DC converters job is to convert the voltage down from the battery to several different modules, eksample step motors for driving or another set of step motors to turn the wheels.

We are also going to be using one DC-DC converter for each module.

My question is, is it wise to use DC-DC converters with enable pin to activate a spesific module when we need is powered on? initially like a switch.

PS: we are going to be activating the DC-DC converters with a microcontroller.


texts: Can I use two 7805 ICs in parallel to get double current capacity?

texts: I use a 7805 for a project where the circuit needs a higher current (~2.8 A) at 5 V. So I assume that if I use both ICs in parallel I can increase the maximum current capacity. Would it work?


texts:
I wrote up a function to connect via UART and print a string for debugging purposes. But my logic does not add up somehow... I see the line "Random Number" printed in the console but blazingly fast... no matter what I add for a _delay_ms value, it is not usable. Did I miss out on anything?

Why is my delay function not having any influence on the output on the serial terminal?

void initUSART(void) {

    #define BAUDRATE ((F_CPU) / (BAUD * 8UL)-1) // Set Baud Rate Value for UBRR

    // Set register
    UBRR0H = (BAUDRATE >> 8);
    UBRR0L = BAUDRATE;
    UCSR0A |= (1 << U2X0);
    // Enable USART transmitter and receiver
    UCSR0B = (1 << TXEN0) | (1 << RXEN0);
    // Set 8 data bits and 1 stop bit
    UCSR0C = (1 << UCSZ01) | (1 << UCSZ00);
}

void transmitByte(uint8_t data) {
    // Wait for empty transmit buffer
    loop_until_bit_is_set(UCSR0A, UDRE0);
    UDR0 = data;
}

void printString(const char myString[]) {
    uint8_t i = 0;
    while (myString[i]) {
        transmitByte(myString[i]);
        i++;
    }
}

int main(void)
{
    setup();
    randomSeed(adcRead(0));

    while (1)
    {
        printString("Random Number:\n");
        _delay_ms(100000);
    }

    return (0);
}

When I use \r\nat the end of the string, the output gets really strange:


texts: ATmega328P running on CR2032 has issues with timing/sleep code as voltage depreciates over time

texts:
I have an ATmega328P running at 16 Mhz on CR2032 with a few sensors and radio for about a week now. It started out at 3+ Volts and is currently measuring at 2.96 Volts. At present, I am not using boost regulators to regulate this. I use the low power sleep mode using the jee lib libraries, sleep for a few seconds then wake up for less than a second, take a few readings, transmit and go back to sleep again.

Of late, I noticed that the sleep duration had shrunk by a few orders of magnitude. It seems to sleep for ~50 or so milli-sec, instead of the 5 sec sleep that it used to work at. If I switch to the 2xAA (2.84 Volts), I still get the full 5 sec sleep cycle.

Is this behavior due to the ATmega328P switching back to use the internal 8 MHz instead of the external 16 MHz? Also not sure how the timing/sleep works fine with 2xAA at 2.84 Volts but not with CR2032 at 2.96 Volts?


texts: Does NI Multisim simulates op-amp input and output noise?

texts:
I just created a circuit with AD620 in-amp and I'm worried that there is not enough noise.

I wonder if Multisim simulates advanced op-amp/in-amp properties, like input noise and such?

I mean, if I pick medium noise op-amp with 10nV/rt(Hz) - does it produce noise like this?


texts: Are light based Time Of Flight and Phase distance measurement schemes different?

texts:
It is assumed the Time Of Flight (TOF) approach uses short pulses of light and short sampling windows.  While the Phase approach modulates the light such that the phase of the received light is compared to the transmitted light.  These approaches appear very different.  Yet the documentation of these light based distance measurement devices rarely, if at all, discriminate between the two.

So are there two widely used approaches?  Or is one rarely used such that everyone assumed all devices are of only one type.


texts: A question about loop gain, feedback and stability of an op amp circuit

texts:
I read this article on the feedback and stability concept of an op amp.

The article describes the relationship between open loop gain, closed loop gain, loop gain and some oscillation effects for the following non-inverting op amp:

Here is the bode plot I plot for the gains:

Here is the summary of what I understood so far:

Basically the gain of the circuit G = Vout/Vin is actually dependent on the open loop gain Ao. G is approximated to Vout/Vin = 1/β for low frequencies, however the general form from the feedback equation is Vout/Vin = Ao/(1+βAo). Ao shows single pole LPF behaviour and decreases in such fashion as in the plot. Since Ao decreases with frequency and since the circuit gain Vout/Vin is  directly related to Ao, one can obtain the blue plot in LTspice as Vout/Vin. And open loop gain Ao as in the green plot can be plotted by the ratio Ao = Vout/Vdiff. Another point the article mentions is that when the freq. increases Ao decreases and the circuit fights with this change and tries to keep the Vout same. Since Vout=Vdiff*Ao and when Ao decreases Vdiff increases by feedback.

My question is about interpreting the following plot and seeing the weirdness when the β*Ao=-1 in time domain. The article continues as:

Ao = Vout/Vdiff

β = Vn/Vout (Vn is the inverting input)

β*Ao = Vout/Vdiff * Vn/Vout = Vn/Vdiff

Since βAo = Vn/Vdiff, and I am looking for the frequency where βAo = -1; here is the bode plot for β*Ao = Vn/Vdiff. (I plot Vn/Vdiff in LTspice):

How can I interpret the above plot for βAo? I mean is there a point in this plot where there βAo=-1 (unity gain with 180 degree shift)? If not, does that mean this circuit is never unstable?

And is it possible to see this β*Ao=-1 effect on LTspice time domain?

EDIT:

I followed the user analogsystemsrf's suggestion and added a 10u capacitor at the output. Below the plot of β*Ao.

Here is the new Bode plot of Vout.

Below is the plot of Vout in linear scale:

And below I sweep the 10mV AC input upto 4kHz

Here are my questions:

1-) If you look at the  βAo plot, 0dB and 180 degree never crosses. When 180 degree phase shift the dB is -40dB and when 0dB the phase shift is 178 degree.
So it means its never  βAo=-1. But still one can see some peculiarity on the plot. Why is that so? I mean for oscillation is this a must there must be a point exactly where β*Ao=-1 ?

2-) If you see my plot Vout in linear scale you notice that it makes a peak at around 1.7kHz. But when I sweep in time domain the peak I observe is at around 3.4kHz(the last plot above). Why is Bode and time domain shows this twice different way?


texts: Stepper motor turning only in one direction, stalling in opposite direction

texts:
Components in use for project:
Arduino Mega --> StepStick --> 28BYJ-48 5V Stepper

The stepper is 5V but I am using it at 8V since the A4988 driver requires a minimum motor voltage of 8V. It's a 5-wire unipolar motor, but I opened up the cover on it and cut the trace connecting the 2 coils, so it should be operating as a 4-wire bipolar stepper.

I am testing it with the AccelStepper library for Arduino, running a program to make it turn one direction and then reverse every few seconds.

The issue: it turns fine in one direction, I can feel/hear/see it turning correctly, and then it simply stalls when it's supposed to turn in reverse. When attempting to reverse I can feel the pulsing/jerking of the motor coils seemingly out of step, while in the 'forward' direction it feels perfectly synchronized.

The driver is fine to the best of my knowledge, as I hooked up some LEDs to the stepper drive pins to check if the pulses were coming out alright, and they seem to be in sequence just fine. While keeping the LEDs plugged in, I reconnected the motor one wire at a time, and the pulses kept coming in order ... until I plugged in the fourth wire of the motor. Then, the pulses for the 'reverse' direction seemed to be stalled, while still coming out alright for the 'forward' direction. I reconnected the stepper wires in all possible configurations, and the only result was that the stepper then turned in reverse, but stalled on forward motion instead.

I have no idea what could be wrong, and I don't have easy access to more stepper motors or drivers.

EDIT: here's the post I'd seen about converting the stepper from unipolar to bipolar. I'm using the same motor.

MORE EDIT: I managed to scrounge an old regular bipolar stepper from a printer. Same problem. It has to be the driver. As long as the stepper is NOT connected to the output, the stepping signals come out fine. If I connect the wires one by one, the signals still come out fine. But, as soon as I plug in the 4th wire of the stepper, it goes haywire. HELP.


texts: Why can small LEDs only conduct ~20mA and a 1N4001 can conduct 1A?

texts: I know red LEDs have a higher forward voltage drop than a silicon diode; this leads to about 2.6x more power dissipation at a given current and so 2.6x less current rating, but 20mA is way less than 1A. And yet, a humble 1N4001 won't complain about 1A but a 5mm LED (about the same size) will not last long at all. Why is this?


texts:
How do I regulate the output coming from a 50V transformer? At the filter's output, the transformer has 50*1.4142=70.7 volts. But this voltage of course drops as a load is applied, since the filter capacitor doesn't get a chance to charge fully.

70 volts is still manageable, as there are devices able to work at that voltage. But what if I want to do 60V DC. 80 V DC? Things start getting complicated there.

I think a 3-pin regulator is no longer suited for this. Probably a discrete zener diode + power transistor would work, but the regulation is not as good as a 3-pin device. Though, I don't mind this, as this is the supply for a closed-loop audio amplifier, which has good PSRR.

What if I wanted to do this with a buck converter? I'm familiar with the TPS40061. This device works with inputs 10 to 55V. Can a device like this be used with an auxiliary power supply, and regulate higher voltages?


texts:
My aim is to create this using MOSFETs:

Currently, I have this schematic: (I cannot to use TRIACs because I need to cut the AC line in the middle of cycle.)

Question:
So, I'm using 4 MOSFETs for '1 switch'. Is there is a way to optimize this circuit?
If I have to do the same for the neutral, I will have to use 8 MOSFETs...
L1, and L2 are 220VAC (RMS).


texts: Since capacitors and inductors can filter on their own. Why are separate resistors needed? For example in a RC circuit, using only a capacitor would be different in what manner?


texts: VFD for a 3-phase delta-connected 415V~ motor

texts:
When a motor starter is to be replaced by a 3-phase 415V~ VFD, can the existing motor be used without changing its winding configuration (star/delta)?
The motors are from different manufacturer

earlier was 37 kw, 415 v , star connection and

now 37 kw , 415 v , Delta connected.


texts: What is the best way to safely verify the state of a digital pin on a live circuit by external means?

texts:
A typical digital pin of a microcontroller usually has 4 possible states:

output, logical 0
output, logical 1
input, tri-state (high impedance)
input, internal pull-up resistor

On a live circuit, what is the simplest safe method to verify which of the above 4 states a specific pin is in? Assume we have a simple multimeter and basic passive components, if necessary. The ground (GND) and power (Vcc) pins are known.

#1 is the simplest to identify. If I measure the voltage between Vcc and the pin, and it's the same as between Vcc and GND, we found it.

#3 should also be obvious, because in theory it neither sources nor sinks any significant current, so I shouldn't measure any significant voltage, neither between the pin and GND, nor between the pin and Vcc. However, due to the characteristics of digital multimeters, and that tri-state doesn't have literally infinite resistance, can this method go wrong? I wouldn't want to measure resistance on a live circuit.

What about differentiating #2 and #4? Both would result in the same: the pin will have the same potential as Vcc. As pins in the output configuration can typically source more current, I guess I could put higher and higher loads on it, but I find this not being without risks. Also, this might highly depend on the type of circuit we want to test.

Edit: Let's assume the pin doesn't change states while the measurement is performed.


texts:
I am creating a DMX receiver circuit. The dmx that is received from a controller (USB DMX dongle) is converted via a transceiver (SN75176BP) to a signal which can be understood by an ATMEGA328P.

I now have the problem that it is not recognized. When I measure on my circuit at RX I get the signal that can be seen in the image. I think it is not working due to the fact that a 40+ Volts signal is supplied which can not be read by the ATMEGA328P.

Can someone explain to me why the signal can be 40+ Volts and how I can solve this in a good way so that my micronctroller can properly read this signal.


texts: Recovering a Differential Equation From the Transfer Function of a Cascaded System

texts:
With respect to the below discussion, consider that we are talking about Continuous LTI systems characterized by constant coefficient ODEs.

Consider a cascaded system whose transfer function \$H(s)\$ is given by

$$H(s) = \frac {s+2}{(s+2)(s+3)(s+1)} =\frac 1 {(s+1)(s+3)}$$

"Recovering" the defining differential equation from this transfer function yields

$$(D^2 + 4D + 3)y = P(D)x$$

where \$P(D)\$ is unknown but irrelevant for the purposes of this discussion.
What are the characteristic modes of the system?

Is it acceptable to simply say that the natural response \$y_n\$ is given as below?

$$y_n(t) = Ae^{-t} + Be^{-3t}$$

It would seem to me that the answer is no. Why can we recover an ODE from a transfer function in general? For instance, what if the cascaded system had've had \$(s-2)\$ factors rather than \$(s+2)\$ factors that cancelled (ie. one of the subsystems had a pole at \$s=2\$). In such a case, would it not be wildly incorrect to recover the ODE above since then we are ignoring an internal characteristic mode that blows up \$(e^{2t})\$?

If the procedure of recovering an ODE from a transfer function doesn't work in this blow-up case, can it work for the (s+2) case, or in general? I think not, but am looking for some guidance.


texts: Confusion in understanding a line filter datasheet

texts:
I'm planning to buy the following line filter:
http://uk.rs-online.com/web/p/iec-filters/4540956/

And I was planning to check the differences between 10A or 15A models.
But I have difficulty to understand the "Typical filter attenuation" graphs in the third page of the datasheet:

Aren't these supposed to attenuate the high freq. noise?
I'm aiming to filter 70kHz switching noise coming into a system through AC lines.

At 70kHz it looks like the filter graphs are flat. In some graphs the attenuation is -dB at 70kHz.

I'm confused if it would make a change if I use it.


texts: When jumpstarting a car, why do I need to wait a bit for the bad battery to charge a bit?

texts:
So I have a car A with dead battery but good everything else and a car B with good battery.

What I did was disconnect car A's dead battery, connect car A's terminals directly to car B's battery.
When I connect the two batteries together (+ to +, - to -), I cannot immediately start the engine of the dead car, even if the good car's alternator is running.
Why is that?  Shouldn't the power from car B's battery be enough to start car A?

The power from car B should be diverted to car A to start its engine.


texts: Choice of capacitor for high frequency application

texts: I want to recreate this wireless power transfer system that utilizes two resonating LC circuits and induction for power transfer. I want to know the best type of capacitor to use in the LC resonator circuit. Should it be ceramic or film or something else? The frequency of operation is 150 kHz.


texts: Is the usual model for batteries still valid in the reverse direction?

texts:
We all know the usual (simplistic) model for batteries, that is, representing it by a pure constant voltage source in series with its "internal resistance". This is probably sufficiently precise for many applications during a relatively short time. I think this model (implicitly ? / not at all?) assumes that the battery is discharging into some load, or what is the same, that the current is flowing from the + terminal to the - terminal. But let us assume that we have a rechargeable battery (say a lead acid battery) and, for the sake of simplicity, that is it is fully charged (so that the pure voltage source of the model cannot much increase its voltage). To put flesh on bone, let us assume its voltage is 12 V.

If this battery is submitted to a somewhat higher voltage in the reverse direction, say +17V at its + terminal, is the above model still approximately valid ?


texts: Signal Fluctuation WiMax at Night (Remote Wells Comms)

texts:
We have a heap of newly installed WiMax devices that we use to communicate with remote wells. During the day, they operate fine. But as night time approaches and all through the night, the signal is hugely disrupted and we have large error rates.

Our main tower has 4 WiMax devices to cover the 360 degrees, and the wells are between 5 and 15kms away. Our telecomms guys aren't much help at the moment.

This is in the desert, in Egypt.

Thoughts?


texts:
Data is written to CD/DVD using an encoding called eight-to-fourteen modulation, where each eight bits of data are encoded by fourteen bits on disk. The encoding was designed to give the encoded signal some useful properties, such as limiting consecutive identical bits (for clock recovery).

One property that I'm struggling to find motivation for is the low power density at low frequencies. Can someone explain why this property is useful?

  the spectrum (power density function) of the encoded sequence vanishes at the low-frequency end

(source: Wikipedia)

  EFM combines high information density ... with low power at the low-frequency end of the modulation bit stream spectrum.

(source: abstract of related paper)


texts:
I am trying to control a servo motor using PIC 12F675. I was successful in driving the servo as well as achieving the speed control for the servo. Thanks for the help from Stack Exchange

Now, my speed control is quite flaky. I tried tweaking my code here and there but I have had no success so far.

My main objective is that the servo should spin 0 to 90 and back based on the data from toggle switch. I achieved this goal. When I turn a potentiometer, the speed at which the servo rotates should change. I achieved this too. However, the servo is not rotating 90 degrees at all the time.

It rotates 90 ish -120 degrees at high speeds and rotates only 30-45 degrees on low speeds (or some weird behavior is happening). I want my servo to rotate 90 degrees but just my speed should vary.

Can any one point me to the error in my code?

GO_DONE=1; // start ADC
while(GO_DONE); // wait for ADC to complete
V_in=(ADRESH<<8)|ADRESL; //copy ADC values into a variable V_in
quotient=V_in/200; // I am dividing this because I will have integers between 1 to 5
// I am using this quotient value to magnify/diminish my time delays for speed

if(quotient<=1)
{
    quotient=1; //fool proofing
}

if(GPIO&(1<<3)) //checking whether toggle switch is high. If yes, go forward else reverse
{
    while(counter>1000) //this counter is for the delay cycles.
    {
        counter=counter-(20*quotient);
        GPIO|=(1<<2);
        cnt_1=counter;
        while(cnt_1>0)
        {
            __delay_us(1);
            cnt_1--;
        }
        GPIO&=~(1<<2); //low signal
        __delay_ms(18);
    }
    cnt=1000;//reset of counter for reverse direction
}
elseif(!(GPIO&(1<<3))) // check if switch is low
{
    while(cnt<1500)
    {
        cnt=cnt+(20*quotient);
        GPIO|=(1<<2);
        cnt_2=cnt;
        while(cnt_2>0)
        {
            __delay_us(1);
            cnt_2--;
        }
        GPIO&=~(1<<2);
        __delay_ms(18);
    }
    counter=1500;//reset of counter for forward direction
}


texts: How do computer power supply testers simulate loads without using large resistors?

texts: I notice that commercial computer power supply testers are pretty small devices. However, I would expect such devices to have a 50W resistor at a minimum which is a pretty large item. Do they squeeze a big wattage resistor into their device somehow, or do they have a way of simulating a 50 Watt load without using a 50 Watt resistor?


texts: Dedicated current sense amplifier vs simp,e difference amplifier

texts:
I need to implement low-side current sensing for a H-bridge motor driver. While there are dedicated current sense amplifiers such as TI’s INA180, can I use a simple difference amplifier for this with equivalent gain of the INA180? What are the specific advantages of dedicated CS amplifiers?
There are issues with stock availability of the INA180 variant with specific gain in my part of the world. However opamps such as the MCP6001 are widely available and inexpensive.


texts:
I made a NE555 circuit with speaker. It works fine, but when I connect its output to the oscilloscope, I get this view:

How could I reduce these voltage spikes? How can I get nice square waves? Or maybe this is normal and I can't do anything?

My circuit:

Component values are:

\$ C_1 = 100nF \$

\$ C_2 = 10\mu F \$


texts: How to assign constant value to bus in Quartus II schematic editor?

texts:
No matter what I try, Quartus just spams errors similar to this:

Error (12009): Node "modulus[31]" is missing source


texts: Differential Binary PSK (Phase Shift Keying) based UWB (Ultra wideband) communication

texts:
I am trying to create a circuit which can perform wireless communication over short ranges (less than 10 metres) at a very high data rate (approx 10 Mbps) and low power (in the range of 10-20 mW). There have been IEEE papers in which people have implemented this using UWB. They have used about 20-25 mW of power to transmit to about 4-5 metres at 10-15 Mbps.

As a result, I decided to do this using UWB technology. UWB technology employs using a large bandwidth even into the licensed regions to get a good bandwidth. FCC has put in an upper threshold of -41.3 dBm/MHz to limit its range and thereby the interference with other licensed products. Because of the low output spectral density, it is possible to have a good data rate consuming small power for small ranges.

UWB requires modulation techniques to be implemented. They are various choices available like PPM and BPSK. BPSK has been found to be more suitable compared to PPM because the power spectrum of PPM has peaks and hence severely limits the usage (recollect the FCC threshold of -41.3dBm/MHz). As a result, I landed up on BPSK (Binary PSK) or to be more precise DBPSK (Differential BPSK). Differential BPSK does not require coherent clocks on transmitter-receiver and hence preferred.

Instead of going into the design of the entire modulation/demodulation circuit, I want to use commercial ICs/modules. Designing has many challenges:

Design of antennas and modulation/demodulation circuit is very difficult at such high frequencies.
The wavelength at such high frequencies is proportional to the circuit dimensions and hence creating an entire new range of problems.
Time is critical in my case. I do not have the time or resources to do circuit simulations and design a good circuit. Designing a circuit may be a follow-up of my work.

So, if you have any ideas about various commercial ICs or modules available for the following, it would be really great

Transmitter: Modulator (+ Antenna) for Differential BPSK. There are power constraints and should be able to do communication at high frequencies.
Receiver: Antenna + RF detector followed by Demodulator.

Just to summarise my requirements for the transmitter:

Weight: 100 grams or less
Data rate: 10 Mbps
Power: Less than 50 mW (Smaller the better)
Range: Less than 10 metres

Receiver has no such constraints. The transmitter is portable and battery operated and hence there are many constraints.

Please do let me know if you need more information. Thanks in advance.

Edit: Complete restructuring of the question


texts:
I'm able to establish a communication channel between two nRF24L01+. But once I kick in a second listener, only one of them gets the message. Funny enough, it's always the same that "wins" in the situation where two are listening. Is there any way of having multiple receivers (like a broadcast?)

Here's the receiving code I'm using for the Arduino:

#include <SPI.h>
#include "nRF24L01.h"
#include "RF24.h"
#include "printf.h"

#define channel        0x4c                  // nrf24 communication channel
#define writingPipe    0xF0F0F0F0E1LL        // nrf24 communication address
#define dataRate       RF24_250KBPS          // nrf24 data rate (lower == more distance)
#define paLevel        RF24_PA_HIGH          // nrf24 power level (black ebay models have some problems with PA_MAX)

RF24 radio(8,7);

char receive_payload[33]; // +1 to allow room for a terminating NULL char

void setup(void) {
  Serial.begin(57600);
  printf_begin();

  radio.begin();
  radio.setPALevel(paLevel);
  radio.setChannel(channel);
  radio.openReadingPipe(0, writingPipe);
  radio.enableDynamicPayloads();
  radio.setDataRate(dataRate);
  radio.setAutoAck(false);
  radio.startListening();

  radio.printDetails();
}

void loop(void) {
  // if there is data ready
  if (radio.available()) {
    uint8_t len;
    bool done = false;
    while (!done) {
      // Fetch the payload, and see if this was the last one.
      len = radio.getDynamicPayloadSize();
      done = radio.read(receive_payload, len);

      // Put a zero at the end for easy printing
      receive_payload[len] = 0;

      // Spew it
      printf("Got payload size=%i value=%s\n\r", len, receive_payload);
    }
  }

  delay(1000);
}


texts:
I am looking to build a UPS circuit using supercapacitors.

I have seen a number of circuits posted online, and a lot of them look very complex (some using lipos, some using NiMH etc).

Please note, I do not know electronics and the extent of my knowledge is pretty much being able to follow a circuit and soldering it (as long as it's not too complex).

I found the following circuit and was wondering if it would work for the Raspberry Pi and other 5v based SBCs.

http://www.linear.com/solutions/1774

Could I potentially use 300f supercaps with this circuit?

The web site says that it supports 5v at 2.5A. How do I calculate how long I could sustain 5v at 1.0 - 2.5A with this circuit (or using larger caps e.g. 300f supercaps)?

Can I modify the circuit to trigger the GPIO pin on the SBC when it switches to backup mode (i.e. DC power in fails)? The GPIO Pins on most SBCs are 3.3v.

My goal is to build a circuit that could keep a board running for a couple of minutes at the most (assuming a current draw of around 1 - 2A on backup power). Around 2-3 minutes would be great, or around 1 minute minimum.

I also need the circuit to be able to provide around 2.5A when powered from the wall wart (and whilst the battery is charging).

The other problem I am having is when I download the LTspice version of the circuit, it shows the supercaps as 5m. When I change it to 50f, the simulation does not seem to work correctly.

Thanks!


texts: Interfacing an inductive proximity sensor with the Pin RA0 of PIC16F690

texts:
I have 3 inductive proximity sensors with NPN-NO open collector:

The sensors are interfaced with PIC16F690 using pin RA0, RA1, and RA2, here is the circuit for Pin RA0, it is the same for Pin RA1 and RA2:

When the sensor is activated, the 10K pull-up resistor is grounded to read the required logic.

Problem:

This interface works well for the sensors in Pin RA1 and RA2, however, when one of the sensors is interfaced with the Pin RA0 and when i switch the power ON  the PIC won't start until i push an external MCLR push button. Even after that, if i switch the power OFF then ON again, the problem reappears again and it doesn't disappear until i make another external MCLR.

Notice that when the sensor in pin RA0 is removed from the circuitry, everything is normal, the PIC starts normally, no need for a MCLR, and the remaining sensors in pin RA1 and RA2 work also as expected.

What i tried so far:

I suspected a problem in my PIC16F690 program, so, i substituted the sensor on RA0 with a pushbutton, everything worked as expected, additionally, i suspected a problem in my PCB circuit, so i removed all the sensors and changed them with pushbutton switch to lighten 3 LEDs to be sure everything is okay with the program and the PCB. No problem here.
Before pushing the MCLR button, to know if the PIC is partially blocked or fully blocked, i changed the program to lighten up an LED when the sensors in RA0 is activated, so, i approached a metal plate from the concerned sensor, the LED get ON and when i remove the metal plate from the sensor (sensor not activated) the LED stay ON.

It seems the problem is specific only to the pin RA0 of the PIC16F690 and only when it is interfaced to an inductive proximity sensor, it works well when using a pushbutton.

Used Fuses in the program: XT,PUT,NOWDT,NOPROTECT,BROWNOUT,MCLR

XT is a Crystal Quartz 4Mhz with 22pF capacitors.

I disabled ADC,CCP, SPI, and Comparator.

From the datasheet of the PIC16F690, RA0 can be a:

general purpose I/O, ADC, analog comparator, ICSP data signal, ULPW analog input.

I need your help, please.

Thanks


texts: Sharing Isolated Power supply for CAN and RS485

texts:
I am using ISO1432 from TI for isolated RS485 transceiver function. And ISO1042 for Isolated CAN transceiver. Both devices requires an isolated supply on bus side. Can I use one isolated 5V DC-DC converter and use the supply out for both the transceivers?
Is there any issue will be there if I use the same supply for both the interfaces?


texts:
Recently bought 3.7mAH li-ion batteries on ebay (it's labelled for use with RC toys, but I'm using it for DIY projects). Will need to buy the female adapter. Here are some pics:

EDIT: Well then, looks like I'll have to cut it off.


texts: Equivalent circuit of resistor in parallel with inductor

texts: Anyone know where the value 120 + 240j comes from? This is a resistor in parallel with 300Ω inductor.


texts: SystemVerilog Code for a lock combination (Finite State Machines)

texts:
I am writing code for a door lock combination. My inputs are b0, b1, b2 and b3, which correspond to the buttons to enter the code to unlock a door. The code to unlock this particular door is b2 --> b2 ---> b3 ---> b1.

However, between transitions,the code must take into account the user lifting their finger off the button before proceeding to press the next button for the door code.

ie. b2 --> release --> b2 --> release --> b2 --> release --> b3 ---> release --> any button ---> reset.
If the user presses the wrong value in the process, the state must go back to the reset.

The picture below is my code, however, the synthesis is failing. I have looking through the next state logic of my code, but I can't seem to find any issue with it, and I am not getting any kind of syntax errors either.

I appreciate any help,
thank you for your time.

https://i.stack.imgur.com/8zBji.png

 module Lock(input logic clk, reset, b0, b1, b2, b3,
 output logic unlock);

typedef enum logic[2:0] {s0, s1, s2, s3, s4, s5, s6, s7, s8} statetype;
statetype state, nextstate;

//state register
always_ff @(posedge clk, posedge reset)
    if (reset) state <= s0;
    else state<=nextstate;

//next state logic
always_comb
case (state)
s0: if (b2 & ~b1 & ~b0 & ~b3) nextstate = s1;
    else if (~(b2 & ~b1 & ~b0 & ~b3))nextstate = s0;//ie. if did not press the corrrect button (b2)

s1: if (~b2 & ~b1 & ~b0 & ~b3) nextstate = s2; //. ie move a state ahead when you release the b2
    else if (b2 & ~b3 & ~b1 & ~b0) nextstate = s1; //ie. If user is holdig down the button b2.

s2: if (b2 & ~b1 & ~b0 & ~b3) nextstate = s3; //entering the second digit of the door code
 else if(~(  b2 & ~b1 & ~b0 & ~b3))nextstate = s0; //back to reset if the second digit inserted is not b2
 else if  ( ~ b2 & ~b3 & ~b1 & ~b0) nextstate=s2;//e. if still havent pressed a button, stay in state s2

s3: if (~b2 & ~b1 & ~b0 & ~b3) nextstate = s4; // ie. when releasing button b2
     else if (b2 & ~b1 & ~b0 & ~b3) nextstate = s3;//ie. if holding down b2 still, stay in s3.

s4: if (b3 & ~b0 & ~b1 & ~b2) nextstate = s5;
   else if (~(b3 & ~b0 & ~b1 & ~b2))nextstate = s0;
    else if  ( ~ b2 & ~b3 & ~b1 & ~b0) nextstate=s4;

s5: if (~b2 & ~b1 & ~b0 & ~b3) nextstate = s6;
    else if (b3 & ~ b0 & ~ b1 & ~b2) nextstate=s5;

s6: if (b1 & ~b0 & ~b1 & ~b2 & ~b3) nextstate=s7;
    else if (~ (b1 & ~b0 & ~b1 & ~b2 & ~b3))nextstate=s0;
     else if  ( ~ b2 & ~b3 & ~b1 & ~b0) nextstate=s6;

s7: if (~b2 & ~b1 & ~b0 & ~b3) nextstate = s8;
    else if (b1 & ~b0 & ~b1 & ~b2 & ~b3) nextstate=s7;

s8: if (b0 + b1 + b2 + b3) nextstate = s0; //ie after unlocking, if press any button, return back to reset.

endcase

//output logic
assign unlock = (state==s7);

endmodule


texts: phone battery usage at various audio volumes

texts: I was wondering if anyone knows how the power output of my phone varies with the level I set it at. Lets say I plug my phone up to a stereo to play music and I set my phone volume to 5/10 and then only adjust the stereo as needed (lets say 80% gives me the volume I want). How much power would I save if I did this vs. setting my phone volume to 10/10 and then only needing the stereo volume to say 60%. I was wondering if anyone has any idea the differences in power usage that the different phone settings would have from a battery saving perspective.


texts:
I am doing a project that requires me to control the heating element (as shown below 12V 100W). It's a PWM control from the Ardruino through a BJT transistor to control the MOSFET to the element.
My problem is the calculations for the resistors to use. With what I have done so far is to say that R1=100k\$\Omega\$ and R2=3k\$\Omega\$, but I do not know if that is correct or if there is a better layout to use. Using the S8050 and IRFZ44N.

simulate this circuit – Schematic created using CircuitLab


texts: How to terminate 50 ohm transmission line without drawing DC

texts:
I am sending a 10 MB/sec digital data stream by amplitude moduating a infrared quantum cascade laser. The laser requires a hefty bias of about half an amp (which drops about 8.5 volts across the laser). I am mixing the digital signal with the bias using a broadband bias-tee (a Picosecond Pulse Labs 5546). The bias-tee expects a 50 ohm load on the AC+DC port. When I use a 50 ohm power resistor to terminate the line, all is well and the signal looks good on the scope. However, when I use a load that simulates the laser (a 5 watt 8.2 volt zener in series with a 1 ohm resistor) there is extreme ringing. This could be expected, since the dynamic impedance of this simulated load is about 2.5 ohms (the dynamic impedance of the laser is about 4 ohms at 500 ma).

I cannot just increase the load impedance with a series resistor, because at half an amp it would generate about 12 watts of heat inside the temperature-controlled laser enclosure. However, the modulation amplitude is only about 70 ma, which at 50 ohms generates only a quarter watt, which is acceptable. So what I need to do is present a 50 ohm load to just the RF and not the DC.

Is there an off-the-shelf device that will do this? If not, are there design examples of a passive network for this purpose?


texts: Did a pretty bad job soldering a mouse switch. Is the chip damaged?

texts:
My mouse was double clicking so I, who had little to none experience with soldering, tried switching the switch of it. Had tons of trouble desoldering it without a desoldering tape or pump and may have burnt the chip.
Also, when trying to solder the new switch, I don't know if the solder or the soldering iron I bought are bad, but the solder kept melting in balls like the one on the first tip of the image. Now the button doesn't work (the image shows after I removed some of the solder to show the chip) and I'm afraid I lost the mouse.
Can somebody please give me a light on this?
Thanks a lot.


texts:
I want to make a 2S LiPo battery charger. I used the bq24171 chip from TI and followed the datasheet. All the conditions to enable charging seem to be ok but there is no actual charging (no output voltage).
I can provide the board and schematic (in eagle).


texts: Only one LED is working on this traffic light circuit

texts:
I have a problem with my traffic light circuit. I've made sure of the wiring and everything seems right but for some reason only the yellow LED is lit constantly without it flashing and the other 2 LEDs are not even working. It's my first circuit so I feel a bit lost.

Here are some pictures of my circuit:

Here's the circuit diagram that I'm using:
BTW I didn't use the 0.1uf since I didn't have any

I've got it from this website here

Edit

After receiving your answers, I have corrected the breadboard errors.  Now only the red LED is lit.  Here are two new pictures:


texts: Magnetic RJ45 question. PCB to PHY 8 pins vs 12 pins

texts:
So I am working on a design where we are replacing a RJ45 PulseJack J0011 connector that has the magnetic transformers built in with a RJ45/USB combo jack(with magnetic transformers).  I found an Amphenol one that has a USB and the LED's built-in, but it is a 1000base-T connector.
I am trying to figure out if I can make the connector work for our purposes by just grounding out the other two transformers, but I don't know if that would actually work the way I am hoping because I just am not that familiar with how the ethernet protocols work with this magnetic transforming.

Thanks for any help you can provide!
Datasheets:
Current: https://www.mouser.com/datasheet/2/336/J403-370307.pdf
Proposed: https://www.mouser.com/datasheet/2/18/1/rjmg233022610er-1365423.pdf


texts: Converting 2 pin plug into a 3 pin grounded plug

texts:
I have a portable power socket that accepts two 2 pin power plugs and 1 pin 3 pin grounded power plug. There is a hole on one side of this portable power socket where the wire goes into. Oddly this power socket only exposes two ports for the wire to connect to. No ground port. Hence I am forced to use a two core wire.

I also have a 3 pin power plug to connect the whole contraption to external power. My question is can I get away with using a two pin if I connect the neutral of the two core wire to both the ground and neutral of the 3 pin power plug?

This is basically for extending a power outlet for a refrigerator since there is no power socket near it.


texts: Is it OK to combine passive and active filters?

texts:
I am a newbie to filter design. I would like to know: is it common to use a first step active filter followed by five or six passive LC-filters for very high orders? Or do people usually don't combine those two?

In my case I'd have:

Active filter with some gain  → five LC-circuits  → 2nd order active filter (without any gain)?


texts:
I'm trying to turn on my LED's with IRF540N mosfet. Here's my plan:

I'm not totally sure on the resistance. How can I calculate the resistance required between the base and the controller and between the ground and controller so I don't burn anything down? In addition, do I need to put another resistor (250ohms) between the drain and the LED's terminal? Thanks!


texts:
I know that similar threads had been answered but due to the fact that i am a beginner at electronics i would like to verify my measurements concerning about voltage total current and power consumption of my circuit.As you see i use an Atmega 328p microcontroller and some sensors such as Dht22(digital temperature-humidity),lm35(analog temperature)Soil Humidity(classic arduino analog sensor from adafruit).Below its my schema http://imgur.com/gdbhBi9 and a table of my results http://imgur.com/Zmq3ugE

1st Question:According to these measurements my calculations are right?
Total Current 26.8mA
Total Power=26.8mA * 12V=321mW
8battery pack AA Alkaline 2600mAh
Battery Lasts=2600mAh/26.8mA = 97Hours

2nd Question:Concerning efficiency will be better if i have a 9V power supply or a different perspective of my circuit and how i measure this in theory with numbers.

Any suggestions to my circuit and my measurements will be great!


texts: 14watt 6v solar panel feeding to a TP4056 based charger for charging a Li-ion battery

texts:
How to design a solar power based power supply for charging a Li-ion Battery of 3.7v 3500mAh,  using TP4056 ?

Specs about Tp4056 based charger using are it is programed for 1.2A current max, and 4.2v constant voltage charging,

A  6v 14watt solar panel to 4056 based charger to charge the Li-ion battey could be feeded?

Will it damage the 4056 based charger?

As the max current produced can reach above 2A.

Our Intention is to provide maximum current available to charge the battery enough and rapidly.

How does the Open circuit voltage of the solar panel affects  the 4056 charger? whose operating voltage is 5v to 6v.


texts:
simulate this circuit – Schematic created using CircuitLab

Just purchased an Omega data logger, i'm very concerned with the readings I am getting out of it. As a start I just want to make sure i'm not crazy with just this one hook up. See picture. Just a 12V battery and a 12V 48W LED light, measuring current through a 100A 50mV current shunt on the positive side of the battery. Resistance in the circuit as measured at the end of the data logger leg is 0.2 Ohms. Voltage measured with a multimeter on the data logger leg is 190mV. At roughly 3.9 A that is correct, but on the voltage logger I read 0V on each channel I try. Is there something inherently wrong with my setup that could cause an issue? Omega is trying to tell me I wired something wrong. Thanks for the help i'm really lost on this one.

As a side note, when I connect battery voltage to channel 2 and current shunt voltage to channel 1 I read 12V on both channels.

The plate everything is mounted to is Lexan.


texts: Using a far field UHF RFID in the near field range

texts:
I have a 902 MHz to 928 MHz UHF 8dBi far-field RFID antenna connected to a reader. I want to read RFID tags.
What will be the consequences if I used this UHF antenna in the near field range when it is meant to be used in the far-field range?
This is just an acquiring more knowledge sort of question. My intentions are to use this antenna in the far-field range but what will happen if I then place it in the near field range and scan RFID tags, will it still detect those tags in the near field?


texts: What does "IF" in "IF voltage" stand for?

texts: In the following sensor datasheet (https://github.com/rellimmot/Sony-IMX219-Raspberry-Pi-V2-CMOS/blob/master/IMX219PQH5_Module_Design_Reference_Manual_ver2.2_140425.pdf), it details the supply voltages for the major components on page 13. There's a supply voltage for a component labeled "IF". What does "IF" stand for?


texts: How to work out lifting capacity of a motor with a power rating in newtons?

texts:
I am building a "dumb waiter" (it is a small lift to move glasses, plates and stuff from the basement, up a vertical shaft to the ground floor). I wish to use a garage door motor as my lifting device.

This particular motor is power rated at 1000 newtons. Could anyone advise me if this will be able to lift +/- 40 kg? This would be the maximum I believe I would ever need to lift. Will it have enough torque? Many thanks in advance.


texts: High Voltage and Low Charge - Analogy (ESD & Lightning)

texts:
How can something have high voltage but low charge?

Can anyone provide an analogy for this?

I was going through the ESD topics and read the ESD events usually have high voltage but have low charge?

I am actually confused with the ESD event principle/concept. Like, If something has high voltage, does it mean that it has a lot of charges having similar or equal electrical Electrical potential values or does it mean that it has less number of charges, charged to high potential.

This is where I am not able to understand.

Q=CV. Without talking about capacitance or talking less about capacitance, can someone provide an analogy of High voltage and Low charge?

And do Lightnings that occur, also have high voltage and low charge? If Lightning is also an ESD event, how come Lightnings are very dangerous but small ESD events are not that dangerous for Normal person?


texts: Operating semiconductors outside of Voltage specifications?

texts:
If I were to employ the schematic below will the transistors survive.
I ask this because I was able to operate 3 low voltage(I'm guessing 1.5v), run of the mill junk LED's in series at a voltage of 340V @ 113uA using a 3M resistor with no ill result.
Is the same true for other semiconductor devices?
I'm building an off line power supply and making a linear regulator to power the primary control ICs seems like a terribly inefficient use of power.
The schematic works in simulation using LTSpice, but will the oscillator work on the breadboard or am I setting myself up for dead transistors?

EDIT
The original reason for this question was because my reasoning was that .25W of power has the same charge (number of electrons) no matter the voltage.  I = dq/dt, so that is essentially .25 coulombs per second at .25W.
if I=.25 and V=1 then P = .25 (P=VI) and since Q = 1 Ampere second or 1 Ampere is 1 Coulomb per second, therefore 1V at .25W should be .25Cu/sec and even if the voltage is 340V @ .25W, it is sill only .25Cu/sec. Transistors require  sufficient current to operate correctly and even MOSFETs that are voltage controlled devices wont fully turn on unless they get sufficient charge (I know from personal experience), so that is why I think they may work in simulation.
I'm still a student in AC Theory, so I'm jumping ahead a little, but I figured in reality I would see an expectable voltage drop, like I did over the LEDs. There was a 335V (5V remaining) drop over just 3 little crap LEDs running at 340V in the uA range.
In a search for a totally different topic I came across this post where in the answer the user states:

The problem is that you are expecting a model to have more
functionality than it has. Most models are simply parameters in an
equation. They are designed to approximate the actual device behavior
within specific operating conditions. For example, a diode is modeled
using the following equation:
\$\Large I_f = I_S(e^{\frac{Vf}{NV_t}} - 1)\$ Where Vf is the applied voltage and If
is the forward current. Notice that there's nothing stopping me from
putting 50V as the applied forward voltage, and I will definitely get
an answer from the simulator. It will be completely nonsense, but the
model is assuming that the behavior of the diode is always described
by that equation.

Which combined with the answers below provides me with a complete understanding of why the 2N2222 worked in simulation but WILL NOT work in a "real world" application.
Thank you all for your assistance. I is well appreciated.


texts:
I have designed a PCB for a PIC32MX795 chip. (Datasheet)  I want to use an external crystal (Link to datasheet in PDF) but when I solder the crystal to the board, I can't get my PLL to lock to 80MHz.
I can get 80MHz using the internal RC but I don't know if that will be stable enough to run a CAN network at 128kBit/s in extreme conditions (50°C)?

I have tried various values of caps but that didn't help.

The caps are connected between the 2 crystal pads and ground.

The 2 remaining pads of the crystal (lid and ground) are both connected to ground. I don't know if it is OK to connect the lid to ground?


texts: How do I tell if a voltage regulator is enough to supply a larger board?

texts:
So I'm currently designing a PCB that's fairly large by my standards (10"x5"). It's a 4-layer board with internal GND and 5V layers. I'm currently using a linear regulator (LM340SX) to provide the 5 volts. The regulator can provide more than enough current but I am kinda concerned whether or not the single regulator is enough to ensure that the 5V plane is uniform given it's a bigger board than what I'm used to working with.

I have a copper pour connected to the output with 12 vias connecting it to the internal layer (and a similar situation with the ground tab to help with heat). Is this something I should be concerned with? Any advice would be appreciated!


texts:
I'm using an Arduino with MCP2515 and MCP2551 to read data from a CAN bus over the OBD-II port of my car, Honda Jazz 2012. From what I've read on other forums and the OBD wiki, I can transmit the PID query to the engine over CAN ID 0x7DF and should be receiving the data on 0x78E.

I'm transmitting the data in the format described on the wiki:

Number of bytes|01|PID|0|0|0|0|0

The data I'm receiving doesn't contain data from CAN ID 0x78E or any ID nearby. Also even if I'm not sending data to the CAN bus, I'm still receiving the data, so using that I tried to remove noise, but it seems all the CAN IDs are broadcasting all the time.

So, I sampled some STN1110, OBD-to-UART interpreter, and tried to tap the connection between STN and the car ECU. It appears that the STN has a CAN ID of 0x18DB33F1 and the ECU is transmitting the data queried over CAN ID 0x18DAF110. I've put some of the data here: https://goo.gl/zTTIkk.

Do I need to assign my circuit an ID manually. I believe it's done automatically, otherwise I won't be getting any data.
How do I interpret this data? Is there a way or I'll just have to go with reading more data and making sense out of it, removing noise little by little.

I have read that there is a gateway between the OBD port and the CAN bus, so to access data from the bus, I'll need to pass the gateway. How?


texts: Weatherproof enclosures IP65 or Nema 3R, with specific holes, 150x150mm?

texts:
I'm needing an enclosure weatherproof and with dimensions around 150x150mm.
After searching, I know that I should look for something like IP65 or higher, is this right?
I also want to have holes for an antenna, and a power suply cable, all this ofcourse weatherproof? Are all the enclosures in OKW ready with holes?How can I make sure the right holes are there before buying the cases?

thanks


texts: Do residential smoke alarms monitor their sounders? If so, how?

texts:
This is an open question, and wondered if someone out there might have the info on a typical fire alarm architecture, such as for this generic alarm:

Image source : LABChomeowners
Obviously as much as the detection of smoke is critical, it is no good if it is unable to warn the occupants.
I know that most residential smoke alarms have a test button to periodically test it. However I was wondering if there are any further controls that is common practice to:

self-detect a non-functional speaker without sounding it
self-detect a non-functional speaker during sounding
have redundancy in the speaker section of the system (e.g. 2 speakers?)

I came across this 3 wire piezo topology (whats-the-third-wire-on-a-piezo-buzzer), and I wonder if the 3rd wire could actually be used for monitoring.


texts: Writing one program for different microcontrollers

texts: I got 2 totally different microcontrollers (one is 16-bit MSP and another 32-bit nordic). They are supposed to do the same task and I thought that maybe it would be posible to write one program  in C language and then use different compilers while programming them. I got some common xxx.h files with different source implementations for each device so part of the code would look exactly the same. The difference is when it comes to writing internal registers and that part of code has to be various for each device so I tought about introducing some macro that would point which microcontroller I want to compile code for. Then I would be able to use #ifdef directive inside source files to carry conditional compilation. I have no experience with such programming so I need some tips, is it good idea or is it better to write one program for each microcontroller ?


texts: Unreliable Serial Communication between Arduino serial and Android via HC-05 Bluetooth SPP

texts:
I have an Andriod APP which connects to Arduino UNO over bluetooth( HC-05), and receives sensor readings using Serial.print() command in Arduino sketch. The App is made using APP inventor and uses Bluetooth blocks in that program.

Here's a snap

It works fine until I use a Dust sensor, which needs Android to sample on pin D8.

int pin = 8;
unsigned long duration;
unsigned long starttime;
unsigned long sampletime_ms = 1000;//sampe 30s ;
unsigned long lowpulseoccupancy = 0;
float ratio = 0;
float concentration = 0;
unsigned long timeElapsed=2000;
unsigned long sTime;

void setup() {
Serial.begin(9600);
pinMode(8,INPUT);
starttime = millis();
}

void loop() {

duration = pulseIn(pin, LOW);
lowpulseoccupancy = lowpulseoccupancy+duration;

if ((millis()-starttime) > sampletime_ms)//if the sample time == 1s
{
ratio = lowpulseoccupancy/(sampletime_ms*10.0);  // Integer percentage 0=>100
concentration = 1.1*pow(ratio,3)-3.8*pow(ratio,2)+520*ratio+0.62; // using spec sheet    curve
 Serial.print(analogRead(analogInPin)/20);
 Serial.print("s");
 Serial.print(analogRead(A5));
 Serial.print("s");
 Serial.print(analogRead(A3));
 Serial.print("s");
 Serial.print(concentration);
 Serial.print("s");
lowpulseoccupancy=0;
starttime=millies();
 }

 }

Adding the variable "concentration" above to the Serial.print() leads to the error in which the APP receives no information block on one clock timer, then receives two consecutive in the next clock timer. The APP is designed to check bluetooth every 1000 ms, and I am sending the sensor data after 1000ms. When it receives no data, it shows error="Cannot acces item/list is empty. What to do? It works fine if I leave "concentration". Serial rate is 9600bps.


texts:
I am using 16.6V Allegro.Is there any option on OrCAD Capture CIS for beautifying Schematic?

For example, say,

I have entered a schematic with irregular wires and used long wires. Is there any option that can be used to select the entered schematic and modify the drawn wires to look cleaner?


texts: red led has turned off but conduct current

texts:
I have some LED modules powered with 12 VDC. Each module has 3 LEDs and 3 resistors all in series. After working for one year, in some modules, one or two LEDs turned off but another one is on.

I wonder because all LEDs are series and must conduct current because one or two led are on but one or two are off.

Why does this happen?

I choose three 27ohm resistors for sinking 30ma current
if LEDs fail in a "short" mode, why when I increase input voltage, the off LEDs become on?


texts:
I am working on a design where  I have 2 digital signals one is TX while other is RX. and at the output both are connected to same connection. This means my output is bi-directional. I am looking for a switch type of electrical circuit or IC which can connect one input(TX) to the output and keep other input(RX) unconnected. There is no possibility that both inputs have signals together.

TX and RX are 200mVpp. they are already on seperate signal line. But when they go to chip only one can go at once. I thought of using a select signal but as TX and RX are in Vpp and no other signal can determine when its transmitting or when its receiving.


texts: What is the correct way to indicate a NC (no connect) pin in Eagle CAD

texts: I looked around for NC symbols etc. and off course, leaving pins hanging will throw errors when doing a design rules check. So what would be the best practice for indicating NC pins in Eagle CAD?


texts: Question about setting the MPPT on BQ24650

texts:
I have a question about the MPPT in BQ24650 chip.
It has the MPPTSET pin that need to get 1.2v because the inside comparator.
According to the datasheet, on page 13 section 8.3.2, they say:

When the voltage sensed on the MPPSET pin drops below 1.2 V, the charger maintains the input voltage by reducing the charge current. t. If the MPPSET pin voltage is forced below 1.2 V, the BQ24650
stays in the input voltage regulation loop while the output current is zero

And on the other hand on page 18 section 8.3.18 they say:

MPPSET is used to disable or enable the charge process. A voltage above 175 mV on this pin enables charge. A voltage below 75 mV on this pin also resets all timers and fault conditions

My question is if the MPPTSET pin, senses a voltage so 175mv < Vmpptset the charging is enabled.
But they also say that if Vmpptset < 1.2v, the output current will be zero. and the batteries will not charged.
What will happen when 175mV < Vmpptset < 1.2V? the charge will be enabled and output current is zero?
It seems a bit weird or Im missing something..


texts: How can I claculate how much via is required to dissipate a given amount of heat energy, for example my smd device case tmperature in datasheets says 80C, I used nearly 20C12 via 16 nos, but still the device is over heating, please let me kwow if there any calculation is there for via calculation for thermal pad.


texts:
I have a bit of a problem correctly wiring up the motor on a piece of industrial equipment that was ordered from China.

When ordering I was told that it would run off of a three phase supply.
I've attached a picture showing the label with the wiring diagrams (supposedly for clockwise and anticlockwise operation) attached to the motor.

The label shows two wiring configurations. It was wired up in the first (clockwise) configuration when it arrived. Both of the configurations seem to expect a single phase supply and use two external capacitors.

The second one quite clearly just shorts the supply. The first one is less obviously stupid, but does not look like any motor wiring scheme I have seen before. But when i connected it up, the motor ran for a few seconds before one of the capacitors (rated for 450 V/AC) started smoking and the breaker tripped.

Can any one explain whats going on here and maybe give me some advice on how to wire it up correctly? Any help would be greatly appreciated!


texts:
I am in the process of learning the fundamentals of electricity, however I am having trouble understanding why there is no measurable current in a closed DC circuit when there is no power consumption.

Joules law states that there would be no current if there is no power consumed by the circuit.

However if I connect the two terminals of a battery together with a simple wire then voltage will flow until the battery is dead. So if there is voltage flowing through the circuit why is there no current?


texts: PSoC5LP + Adafruit LSM303DHLC compass + I2C

texts:
I am trying to replicate https://jimmyutterstrom.com/blog/2015/07/12/psoc-tutorial-adafruit-lsm303-magnetometer-compass-module/ on the PSoC5LP. I managed to get Magnetometer readings, but the stay the same every power cycle of the sensor, they don't seem to update until i remove and supply power again.
I am not sure if it something to do with the I2C configurations or the code i am replicating.
Any guidance / help is much appreciated.
#include <project.h>
#include <math.h>
#include <stdio.h>

#define LSM303_ADDRESS_ACCEL          (0x32 >> 1)
#define LSM303_ADDRESS_MAG            (0x3C >> 1)

#define LSM303_REGISTER_ACCEL_CTRL_REG1_A   0x20
#define LSM303_REGISTER_MAG_MR_REG_M        0x02
#define LSM303_REGISTER_MAG_OUT_X_H_M       0x03
#define LSM303_REGISTER_ACCEL_OUT_X_L_A     0x28

typedef struct Vector3{
    int x;
    int y;
    int z;
} Vector3;

void LSM303_Init() {

    //Start the I2C component.
    LSM303_I2C_Start();

    /*------------ Accelerometer ------------*/

    //Send start command for write mode.
    LSM303_I2C_MasterSendStart(LSM303_ADDRESS_ACCEL, LSM303_I2C_WRITE_XFER_MODE);

    //Specify which register we want to write to.
    //This register is written to for enabling x, y and z
    //output as well as setting datarate and powermode.
    LSM303_I2C_MasterWriteByte(LSM303_REGISTER_ACCEL_CTRL_REG1_A);

    //Set the required bits in the register.
    LSM303_I2C_MasterWriteByte(0x27u);

    /*------------ Magnetometer ------------*/

    //This register is written to for setting data output rates
    //and controlling measurement flow.
    LSM303_I2C_MasterWriteByte(LSM303_REGISTER_MAG_MR_REG_M);
    LSM303_I2C_MasterWriteByte(0x00u);

    LSM303_I2C_MasterSendStop();

}

void LSM303_ReadMag(Vector3 *magData) {
    uint8 data[6];

    //Prepare the module for magnetometer output.
    LSM303_I2C_MasterSendStart(LSM303_ADDRESS_MAG, LSM303_I2C_WRITE_XFER_MODE);

    LSM303_I2C_MasterWriteByte(LSM303_REGISTER_MAG_OUT_X_H_M);

    LSM303_I2C_MasterSendStop();
    //--

    //Start the communication in read mode.
    LSM303_I2C_MasterSendStart(LSM303_ADDRESS_MAG, LSM303_I2C_READ_XFER_MODE);

    //Read databytes.
    data[0] = LSM303_I2C_MasterReadByte(LSM303_I2C_ACK_DATA);
    data[1] = LSM303_I2C_MasterReadByte(LSM303_I2C_ACK_DATA);
    data[2] = LSM303_I2C_MasterReadByte(LSM303_I2C_ACK_DATA);
    data[3] = LSM303_I2C_MasterReadByte(LSM303_I2C_ACK_DATA);
    data[4] = LSM303_I2C_MasterReadByte(LSM303_I2C_ACK_DATA);

    //Notice that we are here using "NAK_DATA". It's to tell the
    //LSM303 that we're done and don't want to read anymore data.
    data[5] = LSM303_I2C_MasterReadByte(LSM303_I2C_NAK_DATA);

    //Put together the different data bytes to form complete
    //integers for storing the output values.
    magData->x = (int16_t)(data[1] | (data[0] << 8));
    magData->y = (int16_t)(data[5] | (data[4] << 8));
    magData->z = (int16_t)(data[3] | (data[2] << 8));

    LSM303_I2C_MasterSendStop();

}

int main()
{
    Vector3 magData;
    char output[4]; //String for storing uart output.

    PC_UART_Start();
    LSM303_Init();

    for(;;)
    {
        LSM303_ReadMag(&magData);

        //Calculate heading using arctan on the Y and X vectors.
        //And convert from radians to degrees.
        float h = (atan2(magData.y, magData.x) * 180.0) / 3.14159265359;

        //Map the value to comply with the standard system where the heading
        //is specified as an angle between 0 - 360 degrees.
        if(h < 0) {
            h = 360 + h;
        }

        //Output the heading through our UART component.
        sprintf(output, "%i\r\n", (int)(h+0.5));
        PC_UART_PutString(output);

        //Update heading at 1 Hz
        CyDelay(1000);

    }
}

/* [] END OF FILE */```


texts:
I have a PCB I'm currently working on in Altium where the only thing on the bottom are some LEDs that I'd like to mount through a cutout on a sheet of plastic, with all of the other components on the top. The PCB will be directly attached to the plastic sheet via some bolts, but I am concerned that any imperfections in the PCB could lead to light escaping out of any gap between the PCB and the plastic, and because I'm planning to use this in a darkroom I can't afford to have any light leak out in this fashion.
I'm looking into the idea of using some kind of O-ring-like seals around the LEDs and around the bolts, to ensure the light can't escape in unintended directions, but I'm not sure how I would be able to attach these to the PCB, as I don't think that leaving the rings loose around the LEDs is going to work very well when I try and make multiple of these devices.
If anyone has any similar experience, I'd really love to hear how this kind of problem has been solved in the past. I'm considering some kind of cutout on the PCB to help keep the rings in place, or perhaps some kind of sealant to bond the rings to the PCB, but I don't know how practical either idea is (I've never seen cut-outs in PCBs like I'd need to seat the rings, and I'm afraid using a sealant on the rings could end up causing them to not work correctly) or if there are other solutions that are just better.
Thanks.


texts:
I am building a computer and thought if I could simply use diodes instead of OR gates. Will this work with logic ICs such as the 74LS, 74HC and 75HCT series?

Sorry if this is a stupid question, I am new to electronics.


texts: In a circuit with the TI TPS61165, how was D2 chosen?

texts: Looking at datasheet for the TPS61165, I don't see how they chose D2 - it looks like it will only work if the voltage supply is above 12v due to this diode, but the chip's input range is 3-18v. I would like to know if I can replace it with say a 9v diode, could I use a 10-15v range for powering it, or should I stick to the 12v, even if my supply voltage drops below it?


texts:
What do the 3 symbols (circle, square, triangle) in the USB Type-A plug represent?
Is it power-/data-related notifications or just universal identification for USB?


texts:
I am using low gauge magnet wire, wrapped in cigarette paper soaked in GE varnish, as pegs to solder to inside of a cryostat.

However, I have found it nearly impossible to solder to the magnet wire, at least not at low temperature. I strip the insulation off with a razor blade, apply flux, then try to solder at 400 degrees F.  That never works.

If I up the temperature to 450 degrees F, the wire whets as expected, but the insulation changes colors (i.e. it gets darker). It seems to still be insulating, but I am not sure if any harm was done.  Additionally, I would prefer not to solder at such a high temperature, as some of the things I need to solder are very fragile and should not be soldered at temperatures greater than 400 degrees F.

I would have thought that the "tinning" process I just describes above would make it possible to solder at 400 degrees F, but that still won't work. The tinned solder wont melt until it gets hotter, despite the fact that fresh solder will melt on the iron's tip.

Am I doing anything obviously wrong here?  Does anyone have advice on doing apparently impossible soldering jobs?


texts:
I am considering using PTC to protect PS/2 keyboard +5V power line. As it is low probability that there's something wrong will be inserted into the 6-pin mini-DIN connector, IMHO it is not necessary to design more complex electronic protection, and it would be enough to have just PTC to prevent fire development.

However, when PTC is in action, it heats up to 125 C. Imagine there're plastic parts around - specifically ribbon cable, which may be rated for 85 C, hot PTC will melt its isolation and cause even bigger problem.

Is there any mean to physically protect the component (PTC) from the touching anything else (in addition to placing it properly onto the PCB)? Maybe some mesh-type cage solderable to PCB allowing proper ventilation but disabling anything coming in touch with the heating device?

Update: thanks for the comments! So let's consider PPTC. There's an inportant note in the Bourns SMD PPTCs (MF-MSMF) that they can not be soldered by hand. Considering MF-R series - let's say, MF-R020.

Update: I have bought MF-R020, with initial resistance of 1.9 Ohms, connected it to 5V, ATX PSU did not get into the protective mode, current through the PPTC after several seconds is about 100 mA. Temperature is hot, but not enough to melt the plastic. After disconnection from the +5V power rails restores value to 2.4 Ohms within a minute, and keyboard keeps working properly. Several stresses seem not degrade the PPTC.


texts: Max speed of communication between the switched device of I2C switch IC

texts:
I have a I2C switch PCA9546 that lets me connect I2C devices with the same address to a host device. My slave and host device can go up to speed of 1 MHz, but I do not know if the switch allows for me to be able to communicate at this speed.

The datasheet says:

  0 to 400-kHz Clock Frequency

but I think this is referring to communicating with the switch itself to toggle the devices. I could also not find a reference saying/implying that the host and slave devices must be at 400 kHz max.

The block diagram of the IC seems to support my theory, as MOSFETs are used to open and close channels.

So does this mean I can communicate at 1 MHz (assuming I meet the bus spec required for this speed) of the host and slave device. I will have to slow down the speed when communicating with the switch itself. Can anybody confirm or contradict this?


texts: Altium place string (letter with macron)

texts:
I am looking for a way to place a macron in top of a letter on the silk screen. in Altium i have only 3 fonts to chose from default??, Sans Serif and Serif non of them supports macron for capital letters, but i have seen this on many locations so is the only way to place a line separately over each letter ?
eg.


texts: Should I Boost ~3.7V to 9V and 5V or downregulate ~12.1 to 9V and 5V?

texts:
I'm restoring an old radio/cassette player and I want to add lithium-ion batteries. Originally it was able to house 6 D-cell batteries, so I thought I'll just use 3 li-ion batteries connected in series and down-regulate voltage to 9V and 5V(for the bluetooth adapter).
But now I started thinking, maybe I could just use those 3 batteries in parallel to get more capacity and instead boost the voltage to 9V?
If I understand correctly I would lose some of the battery capacity if I would use some sort of buck-boost converter, but I wouldn't have to add a BMS for 3S configuration.
Which option is more optimal? What other questions should I investigate?


texts: Why is this Schotty diode breaking a PoE PD module board?

texts:
I've designed this simple circuit that uses a Silvertel AG9205 PoE PD module in order to extract 5.65V from the RPI PoE header pins.
Here it's the schematic:

In order to be careful, I've placed a SS34 Diode as reverse voltage protection directly at the +VDC output pin of the module.
Now, here comes the strange thing.  When powered up, the board itself produces a strange noise (like a whistle) that comes from the capacitors, after three or four seconds, the Poe PD module goes in toshutdown mode.
When I remove the diode and bypass it with a jumper wire, the problem disappears.
Initially, my doubt was regarding a faulty diode, but measuring with a multimeter the diode it shows a voltage drop of 180mV, so it seems okay. In addition, I've tried another board and it shows the same symptoms
Where is the problem? I really can't understand it.


texts:
I'm working on a motion controller using the mbed platform.
The idea is to calculate the theoretical position in the move every x milliseconds and then compare it to the actual position from the encoder, the resulting error of which will be subject to PID.

Currently I call the procedure every x milliseconds by using the delay() function at the end of the position calculation routine.

I feel this may not be the best way of doing this. Is there a lower level way of calling the routine with a fixed time step?


texts:
I have a circuit that draws a maximum on 1 amp @ 11v. Its an ATmega328P running PwM through some Mosefts to run some LED DRLs (Daytime Running Lights).

I want to prevent the situation where, during the engine starting, the LED rings flicker as the voltage drops below 11v on starter motor crank. I was thinking that a large capacitor on the input of the PSU would be sufficient but no idea how big! I estimate that the circuit would only need a 4 second buffer tops.

Any thoughts?

PS, I don't want to redesign the LED driver side of the circuit to make use of dedicated DRL controller chips as it massively over-complicates a simple circuit! :)


texts:
TL;DR: If I connect one of these https://www.scantool.net/scantool/downloads/97/stn1110-ds.pdf directly (i.e. the CAN RX and CAN TX pins, plus overall 12 V power) to a device intended for a car (in order to make the device think it is plugged into a vehicle and thus initialize itself) is that going to work or is the circuit more complicated than that and where should I look for more information?

I notice the datasheet on page 10 has a 100 kohm pull-up to 3.3 V on both CAN wires. Maybe that's what the bus needs to operate correctly.

I'm trying to create a system, driven by either a Raspberry Pi or Parallax Propeller board that can be used to initialize an OBD-II connected device - one that is intended to be connected to your car.

To do this, I need to emulate the minimum functionality needed to get the device to be aware that is plugged into a car. The point is to test that the device is working with basic functionality without having to physically run out to the parking lot and plug it into a car. The goal is to be able to do this with a lot of devices - possibly batches of 20 or so at a time.

After puzzling out the various types of signaling used for OBD-II (the two that look most promising seem to be SAE J1850 PWM and ISO 15765 CAN, but neither is straightforward) and the issues involved with voltage level conversion, I'm looking at using an IC like this: https://www.scantool.net/scantool/downloads/97/stn1110-ds.pdf. These are relatively inexpensive and would appear to handle the underlying CAN or other signaling and give me something I can just treat as a serial interface. This sounds great and like a good approach.

However, what is not entirely clear to me is if a chip like this is intended and able to be used to emulate the "car side" of the bus. Almost everything I read about OBD-II assumes you are trying to hack or otherwise get data out of your car. In my case I want to "be the car". I've read through what I can find for free on ISO 15765 and the concept of a CAN Bus, there should be no problem - each node is a peer and broadcasts messages to everyone on the bus and the interested device(s) listen and do what they want, with collision detection, etc. This all sounds good and fine, but I wanted to see if anyone with more experience than me has any ideas about what I might run into with such an approach.

For example, and this is probably a stupid question, but bear with me - the CAN bus is described has having a "recessive voltage" around 2.5 volts and a high wire and low wire which are respectively driven up to around 4.5 and down to around 0.5 volts. Where does that recessive 2.5 V come from? If I am going to emulate the "car side" do I need to provide that?


texts: Are thermal reliefs on SMD pads beneficial when reflow soldering?

texts:
I know that thermal reliefs have benefits when hand-soldering through-hole components.

For some high-frequency or high-current components, I understand why it's a good idea not to use thermal reliefs.

Is it a good practice to use thermal reliefs by default for all other SMD components?

How do they affect reflow soldering?


texts:
I have a Arduino controlled RGB strip, which uses PWM to control the brightness of each colour. I have been using an Arduino UNO to do this but I have have just upgraded to a Photon by particle. Similar to a micro Arduino but with wifi shield built in. The main difference is that the Arduino Uno is 5v and the Particle is 3.3v.
When I do the switch using the same value for analogWrite the particle seems to make the mosfets (STP16NF06L) heat up, not to a burning temperature but warm. I have checked the minimum threshold for the mosfet, which is 1v, and the power being used by the strip is not exceeding the drain current.
I just want to check that I am doing this right and not damaging the mosfet, thanks in advance.
Here is the datasheet for the mosfet http://www.farnell.com/datasheets/1690175.pdf
The circuit diagram
(source: makeuseof.com)


texts: Trying to work out the pinout of an RJ10 (or RJ 11) RS232 port,

texts:
New here so please bear with me ;-)

I have a salt chlorination system for my pool, which includes a unit that tests the water for Chlorine and PH. It has an 'RS-232' port on it, which is supposed to be for external data capture. I then want to collect the data for my home automation system.

Unfortunately there is NO documentation for any of this, except that the User Doco for the device says 'For external Data capture' on the system diagram. The port is labeled as RS-232.

I am trying to work out the pinout (GND, RX, TX) and voltages of the 4 ping RJ-10 (or RJ-11) interface.

What I have found so far is:

+--------------+------------------+---------------+-------------+
: pin          : Direct to Ground : V to ground   : Assumption  :
: (wire color) : (BEEP from MM)   : when ON       :             :
+--------------+------------------+---------------+-------------+
: 1 (YELLOW)   :      YES         : 0v            : GND         :
: 2 (RED)      :      NO          : 0v-0.004v     : RX          :
: 3 (GREEN)    :      NO          : 9.54v         : TX          :
: 4 (BLACK)    :      YES         : 0v            : GND         :
+--------------+------------------+---------------+-------------+

Are my assumptions correct?

I really only want to receive data, as I believe it only sends data over the port, not receive commands. I am assuming the presence of the 9.5V on Pin 3 means this is the transmit pin?

I assume also I need to connect the ground from the device to the ground of the ESP8266 and can use with PIN 1 or 4 as the connector?

I want to use an ESP8266 to read the RS232, but it only takes 3.3v so will need to use a voltage divider to bring it down to 3.3v? (like described here https://electronics.stackexchange.com/a/186182/245164) Is that correct? And ground the bridge to the common ground (as described above?

Thanks in advance for your responses.

G./


texts: Effect of P,I and D terms on output response in PID controller?

texts:
I have read that "P" term manages current error and "I" term manages Past errors while "D" term manages Future errors

But how these three terms effect/shape the ouput response??


texts: Using ESP8266 to read digital input pin to be notified when motion is detected from 24VDC source device

texts:
Software developer here, trying to mess around with hardware (VERY NOVICE) and implement neat things around the house using ESP8266s and Arduinos.

I have a commercial wall plug that is activated when motion is detected, to turn on the light in my home office. I want to use that 24VDC signal to publish an MQTT message via ESP8266.

I connected to the relay inside the motion detector and it reads about 24.4VDC when motion is detected.

I read online about reducing voltage and used a voltage divider to bring the voltage down to a solid 3.26-3.3V.

On an ESP8266, I use the D1 pin, mode set to INPUT, sampled at 5Hz. It is powered via USB, connected to my laptop.

The problem is that when I connect that voltage-divided 3.3V signal to D1 on the ESP8266, instead of steady 1s I get a seemingly random mix of 1s and 0s...

So I measured the voltage between D1 and G on the ESP8266 and it is showing 1.57V.

I measured the voltage between the motion detector's ground and voltage-divided output and it's showing 12.6V instead of the original 3.3V.

As I said, I'm a software guy dabbling in hardware and this is some serious sorcery to me.

Attached is a crude schematic. Green numbers represent measurements AFTER the working 3.3V dashed line is connected to D1 on the ESP8266.

Any ideas would be greatly appreciated. Thank you in advance!


texts: meaning of MOSFET "linear region" in the context of switching losses

texts:
In the context of MOSFET switching circuits (PWM, motor control, etc) I've read the "linear region" of operation is where you don't want to be for long, because here is where there is large power in the MOSFET. For example, this answer:

  you are driving the MOSFET into its linear (power dissipating) region

Or this application note from International Rectifier:

  If the device is operated as a switch, a large transient current
  capability of the drive circuit reduces the time spent in the linear region, thereby reducing the switching losses.

Yet, Wikipedia offers these definitions:

linear region: \$V_{GS} > V_{th}\$ and \$V_{DS} < ( V_{GS} – V_{th} )\$
active mode: \$V_{GS} > V_{th}\$ and \$V_{DS} ≥ ( V_{GS} – V_{th} )\$

That is, \$V_{DS}\$, and thus the power in the MOSFET, is less in the linear region than in active mode. Therefore, I would think it's time in active mode that one would want to avoid. As one switches from off to on, one starts in cutoff, moves through active mode as quickly as possible to minimize losses, then ends in the linear region.

But, I can't reconcile this with the examples above, which discuss minimizing time in the linear region. Where is the inconsistency?


texts:
I have two threads:
1. ReadFromUART(): It reads from UART (RX), parses the message and put a command on the messageQueue
2. CommandHandler(): If a message is present in the messageQueue, It execute some instructions then it sends a message via UART (TX)

void CommandHandler(void const * argument)
{
    osEvent event;
    uint32_t x;
  for(;;)
  {
        event = osMessageGet(pkQueueHandle, 100);
        if (event.status == osEventMessage)
    {
            x = event.value.v;
            if (x == STOP)
            {
                if (HAL_UART_Transmit_IT(&huart1, bufferTX_Stop, sizeof(bufferTX_Stop)) != HAL_OK)
                {
                    Error_Handler();
                }
            }
            if (x == PAUSE)
            {
                if (HAL_UART_Transmit_IT(&huart1, bufferTX_Pause, sizeof(bufferTX_Pause)) != HAL_OK)
                {
                    Error_Handler();
                }
            }
            if (x == RESUME)
            {
                if (HAL_UART_Transmit_IT(&huart1, bufferTX_Resume, sizeof(bufferTX_Resume)) != HAL_OK)
                {
                    Error_Handler();
                }
            }
            if (x == START)
            {
                if (HAL_UART_Transmit_IT(&huart1, bufferTX_Start, sizeof(bufferTX_Start)) != HAL_OK)
                {
                    Error_Handler();
                }
            }
        }
    osDelay(1);
  }
}

void vReadFromUART(void const * argument)
{
    uint32_t cmd_ID;
  for(;;)
  {

        if (HAL_UART_Receive_IT(&huart1, (uint8_t *)bufferRX, 2) != HAL_OK)
    {
            Error_Handler();
    }

        if (memcmp(bufferRX, "ST", 2) == 0)
            cmd_ID = START;
        if (memcmp(bufferRX, "PA", 2) == 0)
            cmd_ID = PAUSE;
        if (memcmp(bufferRX, "RE", 2) == 0)
            cmd_ID = RESUME;
        if (memcmp(bufferRX, "SP", 2) == 0)
            cmd_ID = STOP;

        if (osMessagePut(pkQueueHandle, cmd_ID, 100) != osOK)
        {
            Error_Handler();
        }
    while (HAL_UART_GetState(&huart1) != HAL_UART_STATE_READY);
    osDelay(1);
  }
  /* USER CODE END vReadUARTCommand */
}

As you can see, I'm using UART interrupts (RXNE and TC) to handler UART data flow. The problem is interrputs are no longer detected. I thought this could be caused by context switching, I used vTaskSuspendAll() before HAL_UART_Receive_IT() but the problem is still there.

I want to understand how to handle UART interrupts with FreeRTOS


texts: KVL and KCL in MOSFET small-signal model, how?

texts:
I want to find the gain in this MOSFET small-signal model.

KVL in loop 1:

\$+V_{in}-V_{gs}-g_mV_{gs}R_s=0 \iff V_{in}=V_{gs}(1+g_mR_s)\$

KVL in loop 2:

\$+V_{out}-g_mV_{gs}R_s=0 \iff V_{out}=g_mV_{gs}R_s\$

Questions:

In the answer \$V_{out}\$ should have a negative sign,  \$V_{out}=-g_mR_s \cdot V_{in}\$. What have I missed?

The final answer is \$V_{out} / V_{in}=-g_mR_d/(1+g_mR_s)\$. (*)

How can the current through \$R_d\$ be \$g_mV_{gs}\$? Shouln't there instead be a KCL in \$V_a\$, so the current through \$R_d\$ is \$V_{out}/R_d\$?

simulate this circuit – Schematic created using CircuitLab

Update with KCL in \$V_a\$:

\$I_{out}-i_d-I_r=0\$

where \$i_d=g_mV_{gs}\$ and \$I_r=V_{out}/R_d\$, so

\$I_{out}=g_mV_{gs}+V_{out}/R_d\$.

I'm stuck here, how can I find equation (*) above?