texts:
As I understand it, EEPROM is a part of a computer (in my case, an AVR microcontroller) which stores data, and holds on to it even when the device completely shuts down. It allows data to be written to it, and read from it.

The problem I am seeing is that it has a finite life, and a pretty short one. In other words, I can only read/write a finite number of times before I wear out the EEPROM.

What I am looking for is a way to achieve the same functionality as EEPROM, but in a small form factor. I suppose I can use something like a microSD card, but I would prefer a solution which does not require the user to buy a memory card. Additionally, I only really need a few bytes of space, at most. Let's just say 1 kB to be very, very conservative. I would be spending more than needed to accommodate a memory card of any sort.

So what are my options? Are there any common IC solutions which would allow me to achieve this kind of data storage/retrieval, without a short life and high cost?


texts:
I use the following DC drive model:

with the following parameters of the motor:

Matlab variables for these parameters:

L = 0.343*10^(-3);                  % H
R = 11.4;                           % Ohm
Kt = 11.2*10^(-3);                  % Nm/A
Kemf = 1/(2*pi*849/60);             % 849 [rpm/V] -> [V/(Rad/s)]
J = 0.993*(10^-3)*(0.01)^2;         % [g * cm^2] -> [kg * m^2]
B = 0.00;                           % Friction coefficient
G = 35;                             % Gearing coefficient

Jload = 0.0;                       % N*m^2

Transfer function which converts torque into omega is derived from the following considerations(here I omit damping B):

What makes me feel that model does not work properly is its' output.
With Jload = 0 I have the following current and speed responses:

And the settled speed actually is close enough to that of declared in No load speed field(note that field is in RPM while plot is in rad/s). However if I change Jload the behavior seems to be wrong. When I increase the load I expect that motor will shift along speed/torque curve leading to an increased current and reduced speed. Nevertheless making Jload = 0.05 gives me the following output:

Here is how output is generated:

As you can see the only thing that changes is settling time. What am I missing here?

Thanks!


texts: PCB Trace Repair (Need to keep track shape?)

texts: Need to repair a trace on my PCB.  The burnt trace has a hairpin turn on it.  Instead of following the same hairpin shape, can I just bridge across the undamaged points at the bottom?  And also, the printed "TF b=0.4mm" on the PCB, does it have any significance to it?  Next to it appears 0.6mm that has the same hairpin shape, but trace looks a bit wider. I have superimposed two pics together.  One has light shone through the PCB


texts: Sign across resistor, circuit with diodes and fuse

texts:
Okay, so I had shown with arrows the signage in question, shouldn't it be other way? Otherwise KVL
$$ V_s = I_{fuse} (50) + 1.4 \color{red}{+} I_{fuse} R_{L} $$ isn't correct...
Also, in the problem, $ I_{fuse} $ shouldn't exceed 0.1 A, otherwise fuse will "blow".


texts:
I am using MSP430F235 which is supplied with 2.5V on DVCC. So, all its I/Os will be in 2.5V level. Now, I want to enable a LDO in which EN pin is tied to a different level (>2.5V is the battery supply as well as the input to LDO). Refer to this diagram

I suppose the enable signal will now be in V_SPST level and not at 2.5V as high, Vih and Vil  of EN pin is okay. Kindly let me know whether my understanding is correct.
Will this affect the MSP430 in anyways or will there be any ground level offset in this pin?


texts:
I want to use a 555 timer to measure humidity using a humidity dependent capacitor which goes from about 300-> 400 pF.

This makes the frequency way to high for me to measure.  Is there some similar cir cuit I can use to bring the frequency down to more like hundreds of Hz?


texts: Can I get underneath a BGA mounted chip?

texts:
I want to get to some pin signals on a mounted MCU, but it's a ball mounted / soldered one ...

Is there way to 'hack' underneath it to get some signals out? Any usual home-lab setup people came up with ?


texts:
For experienced designers probably it is easy question but I am reading "Signal and Power integrity, E. Bogatin" and don't understand one thing.

"The two most common sources of EMI are the conversion of some differential signal into a common signal which eventually gets out on an external-twisted pair cable and ground circuit board generating common currents on external single-ended shielded cables."

My questions are
 - why differential lines can be such big problems ? It is good in communication lines because it provides immunity to environment noise (like rs485) but why in opposite side it is bad for EMI ?
 - ground common currents on shielded cable - this is about current in
   the shielding which emmits radiation ? If shielding is connected on
   both sides the problem doesn't exist ?

Sorry if that's stupid questions but it is my begining in signal integrity and EMI field.


texts: Stuck on designing a simple CS Amplifier

texts:
I am trying to design a common source amplifier and getting stuck during the design process. Was wondering if anyone can help me out. Ill show my process with comments and if anyone can show me the underlying flaw that would be highly appreciative.

Using this topology With:

\$ V_{in}=1V_{pp} \$

\$ Assuming,\lambda = 0 \$

simulate this circuit – Schematic created using CircuitLab

The process -

Design Spec:

\$ P_{Output} = 5W \$|

\$ R_L = 8\Omega \$

Start by to see how much voltage I need at the output to deliver 5W into the 8Ohm load.

\$ P = \frac{V^2}{R}\$

\$ 5W = \frac{V^2}{8\Omega}\$

\$ V = 6.325V\$, thus at the output I would need a 6.325V to see 5W into a 8ohm load. VDS = 6.325V
Now I would use Large Signal analysis to see whats the current I need in the drain to achieve such a voltage drop across RD in order for VDS = 6.325V using KVL.

\$ V_{DD} = V_{DS} + I_D*R_D \$

\$ \frac{V_{DD}-V_{DS}}{R_D} = I_D\$, but in order to get RD I need to see the transfer function of this circuit. Come back to this equation.

simulate this circuit

using small signal analysis to obtain the gain of the circuit

Obtaining Branch 3:

\$ \frac{V_o}{V_D} = \frac{Sc2}{\frac{1}{RL}+Sc2} \$

Obtaining Branch 2:

\$ V_D[Sc2+\frac{1}{RD}]+gmVgs = Sc2Vo \$

Obtaining Branch 1:

\$ \frac{V_{gs}}{V_{In}} = \frac{Sc1}{\frac{1}{R1}+\frac{1}{R2}+Sc1}\$

Obtaining Overall Transfer Function:

\$ \frac{V_o}{V_in} = \frac{-S*C2*RD*RL*gm}{S*C2*RD+S*C2*RL+1} * \frac{Sc1}{\frac{1}{R1}+\frac{1}{R2}+Sc1}  \$

Here's where I am stuck. Where does one find Gm? Without knowing what VGS is yet how do you find what R1 and R2 is?

However if I where to have all the values I would essentially plug in everything and find RD. Once rd is found ill go back into that KVL question above, find the needed Current then use the \$ I_{Dsat} \$ equation to find the acquire vgs to allow current to follow into the drain that will allow my desire voltage drop across RD.

Please let me know what Iam doing wrong. This been driving me crazy for the past week. I read almost everything online and read some textbook still not understanding. This is where I am at.

simulate this circuit


texts: How do I safely connect a 74HC00 series circuit to microcontroller?

texts:
I built and simulated a circuit out of 74HC00 series ICs and want to connect it to a microcontroller (ATmega 16).

The development board I use (Atmel STK500) supplies 4.93 V (GND to VTG and GND to output pin). Can I safely connect the 74HC00 series circuit to power supply of the development board without any current limiting resistor or something similar? Can I safely connect the output of the 74HC00 series circuit to pins of the microcontroller as input and outputs of the circuit without any current limiting resistor? It seems that directly connecting an output to an input pin of microcontroller will create a short circuit. Do 74HC00 series ICs limit current?


texts: Is it possible for Ltspice to label the polarity of the resistor

texts:
I know Ltspice set a polarity for the resistor and by default it is (Top + and Bottom -)
Is there a feature which would show little + and - signs for me to keep track of the polarity after rotating them?


texts:
i have this problem with a diode and a series resistance next to it. They ask me to calculate an expression for the diode current in function of the diode voltage. This resistance is a parasite resistance Rs. I know i have to use Id=Is(e^(Vd/nVt)-1), but i don't know how to clear Id because now Vdtotal=Vd+Id*Rs

Help please!


texts:
Pressure sensor used in my project is MPXV5010DP.
Here is the datasheet
In the datasheet, It is noted that port-2 should be kept as vacuum.

What is mean by vacuum? Should I have keep port-2 as open or closed?


texts: "CH340" usb-serial interface chip drivers cause AVR reset problems under Windows / Linux

texts:
Attaching a "Nano V3.0" arduino clone device to a Windows 7 PC's USB port causes the ATMega328P on the device to misbehave and lock up.

We are deliberately NOT using the Arduino toolchain - we are using Atmel Studio and a JTAGICE 3 programming device, the AVR does NOT have the standard bootloader installed.  We need low level hardware control and so we're writing the firmware to have no bootloader.

Attaching the Nano to a Linux box (CentOS / Android etc) USB port was also causing the device to lock up in an unknown state.

Running this from a "dumb" USB power pack however was successful.

What could be causing this?


texts: How can I discharge static electricity from my body?

texts:
I am planning to install a PCI Express Wifi-adapter in my PC. In order to do this, I would need to open my PC. I'm worried that if there is static electricity in my hands it could fry the motherboard.

I don't have an anti-static wristband, nor do I have an ESD mat. Is there a still a safe way for me to install the PCI Express Wifi-adapter without frying the motherboard?


texts:
I am trying to build a small DIY kit that can detect water flow in a pipe using ultrasonic sensor. I have found Ultrasonic Distance Sensor but not Ultrasonic Flow Sensor. Would really appreciate any advice or guidance on this.

I have explored many options including liquid flow meter but they don't fit my purpose. In my case both ends of the pipe are inaccessible apart from a few meters of the pipe in the middle. I cannot make any modifications to the existing configuration apart from strapping on a sensor that can detect water flow.

Upon researching I've learnt that an ultrasonic sensor can do a reliable job. There are commercial sensors that are way too expensive and above my requirement.


texts:
"Short" question

Which flux type to use for SMD hobbyist (home-made) PCB?

How to know if a specific flux (e.g. F-SW-33) is no-clean or require cleaning.
How to know if a specific flux conduct electricity?
What is the impact of Halides?

Longer question, including context and previous researchs

I just had a hard time searching why my SMD circuits was not working properly, up to the moment I found the flux deposit was conducting enough to switch some transistors ON.

After some research, I found the following info:

Wikipedia flux specification differenciate types:

Base material: Resin, Organic, Inorganic
Corrosivity: not, weak, strongly.
With/Without Halides
Base component
etc.

Different types as:

no-clean (which unintuitively do not need to be cleaned)
water-soluble
etc.

On the other side; With my poor understanding of PCB fabrication, the process is simplified to:

The circuit is printed (UV-positive painting, exposure, development, etching)
I protect the circuit with some soldering mask/protection (recommended)
Silk-printing (optional)
Soldering (using flux)
Cleaning of flux ?

But, how to clean below SMD small resistors or IC? That seem to me not an easy task. My conclusion is: Better use a no-clean flux, or at lest a non-conductive flux.

But which type match this specification?

This answer suggest that for electronic I should only use Rosin flux. Is that generally correct? or could an F-SW33 fill the task?

Are all the F-SW26 to F-SW32 equally good?

Related questions:

Specific solder wire/flux questions
Solder Flux Classifications


texts: Find Vref of the level shifter when a offset is removed

texts:
I derive the Vout . (Vout=23Vref-22Vsensor)

Then, I want to find the value of Vref so that it can remove a 1.8V DC offset from a sensor output. That is, when Vsensor=Vreal + 1.8 and G is a constant gain,Vout=G(Vreal).

---------------------Edit------------

Solution:
-22*1.8+23V_ref=0

V_ref=1.7V

Please explain this equation.

(I already knew the characteristic of op-amp, V+=v- and how to derive the vout in the op-amp)


texts:
Lately, I have been messing around with inductors and wireless power transfer. I have studied couple online tutorials on RLC circuits. I thought I have basic knowledge and good ground to actually build something, but sadly no...
I am trying to couple two air core inductors, I tried lots of combinations so I will only show the latest one

Rx and Tx coils, Both have value of 1.6uH

Tx 1.6uH with 900pF cap in series. Rx 1.6uH with 900pF in a parallel combination, later I added 100ohm resistor in parallel to lower damping factor. Resonant frequency isenter image description here 4.19410MHz.

I drive mosfet with a square wave from a function generator at the resonant frequency. And I get nice sine wave between cap and inductor. I am using peak detector circuit to measure voltage drop when I get two coils close. But voltage drop never occurs, so I am pretty sure coupling doesn't happen. Anyone know what the problem is?
I used different types of inductors for Rx as well, drum core, resistor shape ones with different inductance and cap values, but with no luck so far.

Maybe the problem is related to Q factor of Rx coil. I am not sure if I understand Q factor correctly but according to online calculator dumping factor of receiving coil is 0.21 so it is underdamped and its Q is rather high, but the bandwidth is pretty high too, almost 10MHz, not sure how that affects receiving coil.

EDIT: The reason I chose single layer coil is that I want to design flat double sided PCB coil later with a spiral shape. That's why I am experimenting with one layer spiral coil design. Sorry for not inclouding this information from the beginning

http://imgur.com/a/Efp0r coils picture.

http://imgur.com/a/KvyAt circuit schematic.


texts: Transformer-insulated flame ionization detector. How to improve response? Triode, messure current safety, ignition fires

texts:
I am trying to do a isolate flame ionization detector with a transformer ignition. But, when I put it on the frame, nothing change.. (0.2VAC)

I put a amplifier (10 teraohms impedance) to read the signal too, but it is the same of the osciloscope.

If the probe touch the ground of my house, it messuare 5 VAC, with nice senoid (or shorted too);

*: The transformer is the same used to ignition. Primary 230 VAC and Secondary 8KV
 Please, what is possible to do for improve more sensibility/response at Primary? I put one source 300VA by another transformer to produce elétrons, but the triode frame don´t work as expected.


texts: Seared my circuit while checking voltage

texts: I was attempting to diagnose a problem with my dvd player as I was not getting any power, I wanted to use my multi-meter to see where the circuit was shorting out, I set the setting on the multi-meter to the 200V reading and placed the nodes in the correct configuration, however when I placed them on a component sparks started flying everywhere, I seared the pcb and I ended up wrecking the circuit. I don't understand where I went wrong though, how do you properly check the circuit with a multi-meter without shorting both the board and your meter. Asking as a noob. Thanks for the help.


texts:
I'm learning about op-amps and feedback and how feedback affects their stability.  I've been reading about gain and phase margin and their uses when I came across this:

I don't quite understand how the system shown in the picture will be stable given that at about 2 kHz, the feedback will be positive; I would've thought that this would cause a 2 kHz frequency to become larger and larger and not converge.

Why will this system be stable?


texts: Can I test a high frequency transformer (50Khz) on low frequency (50hz). If then what changes will occur at 50hz? can output voltage be same on both the frequencies?


texts: How much time computer can last without power?

texts:
I got curious what if my power power was cut off by some amount of time, say 1/10 second, will computer be still working? I think so instinctly but not sure. Is there a way of telling how long will it last? I use P650B power supply.

EDIT

And what are the edge cases? Between working and not working. will the programs running on it be partially damaged?


texts: Why does the frequency response H(f) exhibit conjugate symmetry in case of a linear system with real impulse response?

texts:
The frequency response H(f) is a complex quantity. So, it can be expressed as:

$$H(f)=|H(f)|exp[j \beta (f)]$$

Why in case of linear system, having a real valued impulse response h(t), does the frequency response H(f) exhibit conjugate symmetry ie.

$$|H(f)|=|H(-f)|$$

$$\beta (f)=-\beta (-f)$$


texts: How to design Gray code synchronous counters of large widths using SystemVerilog?

texts:
I want to design a synchronous gray code counter which is 10 bits wide in SystemVerilog. The counter should have an Active HIGH synchronous reset.
I know how to design a 3 bit gray code counter like this:
module gray_code3(input logic reset, clk, output logic [2:0]q);
always_ff @(posedge clk) begin
if (reset)
 q <= 0;
else
  case (q)
   3'b000:  q <= 3'b001;
   3'b001:  q <= 3'b011;
   3'b011:  q <= 3'b010;
   3'b010:  q <= 3'b110;
   3'b110:  q <= 3'b111;
   3'b111:  q <= 3'b101;
   3'b101:  q <= 3'b100;
   3'b100:  q <= 3'b000;
   default: q <= 3'bx;
  endcase
end
endmodule

Using the same technique would be very tedious for gray code counter of large widths. How to design gray code counters of large widths?


texts: Reasons to use parallel dual wound inductors in power converter designs that require a single inductor

texts:
In the AN65 application Note, Jim Williams has used Coiltronics CTX series dual winding inductors/transformers in all of his designs. (Datasheet Here) The current and inductance varies in the design, but it is always a dual winding inductor used in parallel.

Can it eliminate RF emissions by making it a quadrupole rather than a magnetic dipole, if the windings are counterwound?

Is there a particular advantage to it other than being practical to have different combinations in one component?

]2
https://www.analog.com/media/en/technical-documentation/application-notes/an65fa.pdf


texts: Simple wire loop for detecting AC Mains activity?

texts:
Part of a project involves knowing if an AC motor is running or not, with that bit of information read by an Arduino. I understand there are several different paths I could take to detect this.

The motor is controlled by relays with a 24V coil, so I could use a voltage divider of resistors across the coil of the relay. Or I could put a small-value current-sense resistor in series with the relay coil.

However, this question is about another idea:

The motor is a 120VAC (US mains) device. Could I wrap a couple of turns of small-gauge wire around one of the wires delivering mains power to the motor, rectify and smooth it and detect the resulting voltage using an opto-isolator?

The schematic below shows an inductor, but that is really the couple of turns around the wire.

simulate this circuit – Schematic created using CircuitLab

Is this idea even viable for detecting (not necessarily measuring) AC power/current?


texts: Using LPCXpresso 1114, I am unable to call a function in a C++ file from a C file

texts:
I am having a similar problem to the one described in this post:

Why isn't my SysTick_Handler() being called in my LPCxpresso C++ Project?

I have a couple of .cpp files, but the rest are .c files. Everything builds just file except when I try to reference a stand-alone function in a .cpp file from a .c file. Even though I have the entire function in the .cpp file enclosed in:

extern "C" {
    void function( void ) {
       .
       .
       .
    }
}

I still get an undefined reference to 'function' in the calling .c file. Any ideas? It really has me stumped and I'm trying to add some elegance to some very procedural code by using class objects that make total sense in this application.


texts:
Is there any resources online that describe how to match antenna elements to a TX line with a lumped element matching network?  I've got a 50 ohm load and a TX line that i'm trying to match to a 2.4GHz chip antenna...

Some research online shows that this antenna can vary around 50ohms and the PCB i'm reworking has 0402 pads available in a 5-element Chebychev filter arrangement.

I have a network analyzer 10MHZ to 6GHZ from HP.

So, the antenna is around but probably not exactly 50ohms, the microstrip is at 50ohms characteristic, and the chip has a balun inside the port, but the datasheet promises that it's 50ohms (which I don't understand how an inductive balun can be be a real 50ohms, but that's a topic for another post).

Since I can't do any stub matching or anything with the traces, is it possible to match this with a handful of L's and C's?


texts: Reverse polarity of 90 VDC motor with 2 foot switches

texts:
I am building a tool where I need to change the direction of the 90 VDC gear reduction motor with two foot switches.
Power is coming from a motor controller with variable speed. Terminal 4 and 5 have 90 VDC across them.
Motor has green, white and black wire, black and white to terminal 4 and 5 drive the motor fine, reverse the terminal and the motor runs in reverse direction.
I have 2 foot switches that have NO, NC, COM terminals on them.
Is there a simple way I can wire this motor to not run when neither switch is pressed, and run in either direction based on which switch you push?
Sorry for the non-technical description, I'm not a electrical guy, but a mechanical guy.


texts: FTDI/MCU design question to detect boot mode

texts:
MCU(ATMega 8 series) on my device has two operating modes

Bootloader mode
Normal operation

The firmware can be upgraded through MCU USART interface. To connect to PC I want to place FT232RL between PC and MCU. Device is normally powered up from external car power supply. During startup, MCU is checking certain GPIO pin and decides whether to enter bootloader mode or start normally. The question is what is the proper way to connect power bus of my device and USB/FT232 in order to have some output pin on FT232, which can be connected to MCU boot mode detection pin? That pin should have steady value once MCU/FT232 powered on from

External power supply
USB power

Basically there are 4 components a) MCU b) FT232 c) USB power bus d) External power bus

One power source is connected at the same time. I'm not sure if having one common power bus is good idea. Also I initially thought FT232 #PWREN pin can be connected to MCU for boot mode detection, but not sure if it will give me steady value.

Update:

When USB is connected, MCU PB2 will have logical 1. When 12V is connected, MCU will have 0. Can this work or I missed something?


texts: How to use CC/CV Charger with a DC/DC converter

texts:
I am searching for a solution to charge a battery pack (7S1P)[ICR18650] with a charger with CC/CV mode and I have a BMS for protection (I've done research to maximise the security of the battery pack).

I wanted to know if the CC mode of the charger will cause issues with the dc/dc converter.

The batteries may power equipment while charging.

I want to allow the use of the batteries only when the charger is not plugged in.

Here is the schematic

And the BMS I will be using in this project:


texts: Pre-amplifying an electret mic already in use

texts:
I want to remove the DC component and boost to a line in level the mic signal of a regular headset plugged into a mobile phone while still allowing the mic to be used by the phone at the same time:

simulate this circuit – Schematic created using CircuitLab

I need this to work with any standard headset and mobile phone; i.e. I want the preamp box on the diagram to act transparently, not affecting the interaction between the mic and the phone.  For example, it shouldn't modify the impedance since iphones measure that impedance to detect whether a microphone is connected or not.

What is the simplest way to achieve this bias removal and amplification so that I get a low-noise line in version of the mic signal that I can use for other means (e.g. feed to a computer for monitoring or recording)?


texts:
I was challenged in university to Hack a mouse in the following manner:

What is happening:
computer1 has an optical mouse connected to it, and this optical mouse has been hacked in one way or another so computer2 can send commands to the Arduino which in turn sends commands to the optical mouse that control the cursors movements in computer 1.

Basically all the drivers and all that stuff that the optical mouse of computer1 had is not being changed. I have to hack into the mouse at some point to change the information that is being given. It could be at the sensors (sending predesigned images to them to provoke specific movements) or it could be somewhere after the information from the sensor has already been analysed. Basically computer1 has no idea the Arduino is interfering in any process, very under the radar.

I am not sure however how I would go about doing this... hacking the sensor would require me to design images that would be sent to the mouse.... not sure how the hacking there would work. If I were to hack the end result of the images being analysed, I would have to find out at what point is the mouse sending this information (and over which peace of circuitry) and find a way of intercepting and replacing this information.

Which of the 2 options do you guys believe is more realistic and why?


texts: What is this connector called? (automotive blu-ray unit)

texts:
I have an automotive grade blu-ray unit and I'm missing a cable to connecti it to a second screen.

The cable is the blue one I'm showing in the pictures (LVDS) and it is a universal FAKRA type, however, I do not know what the connector type itself is called (4 pin, round).

Would you happen to know what these are called?


texts: How do I change the properties of several objects at once?

texts:
I have several lines and arcs in an EAGLE footprint library I need to modify to make thicker.  In Altium it's straightforward to hold Ctrl, click on a bunch of objects, open up their properties and change them all at once.  In EAGLE I have no idea.

EAGLE's "group" paradigm seems a little far-flung from the standard, so my attempts to use that may be a dead end, but is there some better way?  Is there some magic command I could run to give every single line and arc in a library part on layer X a thickness of Y?  How about in a PCB, smashing all the parts and changing all their labels to font Z with size W?


texts: High current in the presence of high frequency digital logic circuits

texts:
I'm in the process of designing an ARM single-board computer that would also have high current (18A) running through the same board. Think of a BeagleBoard, but powered by a 6V/2800mAh battery. So the raw battery voltage at a possible peak current of 18A is fed to motor outputs, and about 1-2A is fed through a 5V regulator to the logic part of the board.

How close could I route the high-current traces to the logic traces? Would these high-current traces need to be on their own layer? What other design/layout considerations would I need to take into account for something like this?


texts:
I want to interface 3 separate ADS8548 ADC with XC3S200AN fpga. The fpga masters the control lines of the ADCs and it also acquires the digital data from the ADCs through parallel bus.

I will have to acquire data from all three Adcs simultaneously. I am a beginner when it comes to VHDL and I have no idea on the time span of the data acquisition.

What are the things I will have to consider in VHDL to make sure that all three Adcs are controlled effectively and data is acquired without any time lag between one another.

Replies in terms of Logic blocks in the code and example code for ADC data acquisition will be really helpful.


texts:
I took apart a flickering led candle. The circuit oscillates at 1 Hz verified with multimeter and oscilloscope.

Can anyone explain how the circuit works? It looks like the emitter is grounded in a pnp. I googled several days for an answer. Thanks.


texts: Transfer function of a R+RLC low pass filter

texts:
Here's a picture of the R+RLC circuit:

I'm trying to find the frequency response of this low pass filter, my solution is below and please let me know if there is anything wrong with it.

My solution:
$$ \\
x=V_{in} \\
y=V_{out} \\
x-y = (i_1+i_2+i_3)R_1 \\
y=i_1R_2 \\
y=Li_2'\\
i_3 = Cy' \\
x'-y' = (i_1'+i_2'+i_3')R_1 \\
x'-y' = (\frac{y'}{R_2} +\frac{y}{L} + Cy'')R_1 \\
LR_2x' = R_1R_2y + L(R_1+R_2)y' + LR_1R_2C y'' \\
x(t) = e^{st} , y(t) = H(s)e^{st} \\
H(s) = \frac{LR_2s}{R_1R_2+L(R_1+R_2)s + LR_1R_2Cs^2} $$

Thanks for your help!


texts: what is the physical meaning of transconductance?

texts:
i know for a BJT transconductance is the slope of the collector current to the base-emitter voltage difference plot..
ans also it is equal to the slope of the collector current to the thermal voltage Vt = (nk)/q
where n can be 1 or 2 and k is boltzman const

but what all this physically means..
what is the use of transconductance?


texts: Need Help To Identify Attached SMD Component

texts:
I am trying to fix a RS485 circuit.
There is 3-pin protection components on both A and B pins.
The component is connected serially to the line and mid pin is grounded.
There is no label on the component.

The resistance is nearly 0 ohm and the component is short circuit by defult.

Could you please help to identify this component?


texts: What check can Ι perform to verify that a load cell is operating properly?

texts:
About five years ago I was tasked to develop the software for a small custom made testing machine (everything is custom-made from frame, to the measuring system). Last year, I was volunteered to  "inherit" the maintenance of the system (which is used a few times per year).
About a month ago, I had a complaint that the force measurement was not giving reasonable results. Upon closer inspection, I realized that there was an unpredictable behavior, ie. the force would increase and fall by  at least +/- 2.5%, over the course of a few tenths of seconds.
One thing I am worried is that, this testing machine has been used to test specimens over the capacity of the load cell 2tf ( which I hope I am correctly translating to 20kN ), and this unpredictable behavior is the result of this mistreatment.
My questions are :

how would a damaged loadcell behave?
how can I test the integrity of the load cell?

Below is the only image  I have on the load cell. Also the closest reference is in the following link

my thoughts on how to check.
One of my thoughts on how to proceed is that, I have another load cell (of smaller capacity ) that I could try out.  The reason, I am considering this, is that I am worried about is whether the power supplies and/or accompanying electronic/bridge amplifier circuits are starting to show their age and have become unstable (although I haven't spotted any bulged capacitors).
Ideally, I would like to cross out that the rest of the circuit has a problem. The way I am planning to do that is by replacing the load cell, and checking that with the other loadcell, given a dead load, the standard deviation of the load cell signal acquired over a few seconds at 200Hz sampling rate is in the order of 0.5% of the full range of the load cell.
If I then compare the standard deviation with respect to the full range, I should be able to determine whether there is something unsightly.
Buying a new loadcell or replacing the amplifier circuit is not prohibitive, however  I am on a budget, so I want to make an informed decision. Also, I have access to power supplies and oscilloscopes and (I guess) most of the hobbyist's electrical workshop tools.


texts: Widely available IC for encording and Decoding DTMF data

texts:
I am planning to do some research in data transmission over the air. For this I am interested in DTMF encoding and decoding.

Is there a widely available IC to achieve this? A circuit diagram using the same ic would be a better answer. An arduino solution would be even better.


texts: Can LabVIEW be used instead of an oscilloscope to measure signals?

texts:
I've been thinking about buying an oscilloscope for self usage. However, searching for oscilloscopes on Google reveals that they are very expensive - the cheapest I found was about $200.
It turns out, however, that my university provides a license to LabVIEW for students. I have used LabVIEW before, and know that it can be used to measure and display varies signals and measurements.
So all I need is a data acquisition card, such as this one https://www.ebay.com/itm/National-Instruments-USB-6501-Data-Acquisition-Card-NI-DAQ-DIO/153961979967?epid=153445569&hash=item23d8d9603f:g:GIAAAOSwGhRe21we
My question is whether or not LabVIEW can replace an oscilloscope for signal measuring, or if an oscilloscope is something that you just can't replace.


texts: Driving a speaker with a 3.3 V processor

texts: I got this design off of the internet and it is not working.   I am trying to drive a  PKLCS1212E4001-R1 with a MMBT2222A-7-F.   The 3.3 V of the STM32L0 is not enough to turn on the BJT transistor.   The package of the MMBT2222A is an SOT 23-3.  Is there a part substitution that will work with this PCB footprint?


texts:
I need to step-up a clock signal of 8 MHz from 3.3V to 5V, I was wondering if this type of level shifter would work :

The BSD840N as rise and fall time fast enough for my application but I'm not sure I'm thinking this the way it should be thought. Is it correct to assume it will work in such a setup ?


texts: Why is impedance matching and maximum power transfer aimed in radio transmission?

texts:
As far as I know the RF amplifiers are voltage amplifiers. On the other hand, from transmitter to the receiver there is a lot of effort for impedance matching. But impedance matching aims max power transfer at the load/receiver not the max voltage.

Shouldnt the aim be maximum voltage instead of max power at the recevier amplifer’s input?

Where am I thinking wrong here?


texts: Ist the radiant flux of a LED equal to the Power consumption - Power dissipated?

texts:
After I had my question How can I find the PPF of an LED? answred, I've started to look for some LEDs datasheets with the intention to find the radiant flux of then, but unfortunately all the datasheets that I found hadn't the radiant flux, the unique thing that I found about the radiant flux was a graph "relative radiant flux vs wavelenght" and that, as far I know, was useless for reach my goal (find the radiant flux, divide it by the photon energy of the wavelength (hc/lambda) and then find the PPF of the LED).

So, after that, I started to think about how I could find the radiant flux, and I saw that some of the datasheets had the power dissipation of the LED and, since the energy must be conserved, I started to think if I could say that the Total power consumption  - Power dissipated = Radiant flux, once the rest of the energy should be light, ist that right ? or am I missunderstanding something ? Please, some one help me !


texts: HSI and MSI - Applications of two Internal RC OSC in Microcontroller

texts:
In a ST microcontroller I'm using there are two OSC's that can be routed to exactly the same hardware and I'm wondering when you would use each one.

Link to part documentation
STM32L496ZG

Excerpt from the data sheet about the two OSC's -

  -16 MHz high-speed internal RC oscillator (HSI16), trimmable by software, that can supply a PLL

  – Multispeed internal RC oscillator
     (MSI), trimmable by software, able to generate 12 frequencies from
     100 kHz to 48 MHz. When a 32.768 kHz clock source is available in the
     system (LSE), the MSI frequency can be automatically trimmed by
     hardware to reach better than ±0.25% accuracy. In this mode the MSI
     can feed the USB device, saving the need of an external high-speed
     crystal (HSE). The MSI can supply a PLL.

ST AN4555 Application Note explains

  HSI16 clock

  The HSI16 clock signal is generated from an internal 16 MHz RC Oscillator.
  The HSI16 RC oscillator has the advantage of providing a clock source at low cost (no
  external components). It also has a faster startup time than the HSE crystal oscillator
  however, even with calibration the frequency is less accurate than an external crystal
  oscillator or ceramic resonator.
  The HSI16 signal can also be used as a backup source (Auxiliary clock) if the HSE crystal
  oscillator fails. Refer to reference manual section: Clock security system (CSS).

  3.3 MSI clock
  The MSI clock signal is generated from an internal RC oscillator. Its frequency range can be
  adjusted by software by using the MSIRANGE[3:0] bits in the Clock control register
  (RCC_CR). Twelve frequency ranges are available: 100 kHz, 200 kHz, 400 kHz, 800 kHz,
  1 MHz, 2 MHz, 4 MHz (default value), 8 MHz, 16 MHz, 24 MHz, 32 MHz and 48 MHz.
  The MSI RC oscillator has the advantage of providing a low-cost (no external components)
  low-power clock source. In addition, when trimmed by the 32.768 kHz external oscillator
  (LSE), the MSI can provide the USB device with very accurate clock removing the need for
  an external high speed crystal (HSE).

My problem

I've been pulling my hair out as the STLINK LPUART was adding an extra zero in the middle of each byte that I sent to the PC from the micro controller. I put it down to timing and I realised that I had assigned HSI as the LPUART clock. When I assigned MSI the error disappeared. I assume I'll need to trim the HSI as it must need calibration.

But this got me wondering, as I can use the MSI for just about anything, why do they include both clocks in the single chip?


texts:
We're finding that when we drive through a car-toll collection point, our Car-Pay Wifi connection cuts out. (Music and maps cut out).
I'm guessing that the Car-toll tag system uses the same frequencies used by Wifi.
My question is: Is there an international standard on the frequencies used by car toll tags?
EDIT:

By 'wifi' I mean 'router wifi' eg 802.11b/g/n
The toll tag system is in an isolated plastic case, connected to nothing.


texts: Circuit Analysis: Obtaining Close Loop OP - AMP Transfer function

texts:
Trying to figure out the Close Loop System transfer function of an op-amp, however the math isn't working out as it should.

Circuit In question:

simulate this circuit – Schematic created using CircuitLab

Using this as the foundation of calculating the Close loop transfer function:

Where A is the Transfer function (open loop) of the LM1875 which taken from the bode plot obtained here: LM1875 DataSheet. TF should be $$\ A = H(s) =  \frac{31.62}{\mathrm{707*10}^{-9}*s+1}$$

Where B is the transfer function of the negative feedback $$\ B = G(s) = \frac{R2}{R1}+1 = \frac{1000k\Omega}{1000k\Omega}+1 = 2$$

The close loop Equation $$\ CL(s) = \frac{H(s)}{1+H(s)*G(s)} $$

$$\ CL(s) = \frac{\frac{31.62}{\mathrm{707*10}^{-9}*s+1}}{1+(\frac{31.62}{\mathrm{707*10}^{-9}*s+1})*(2)} $$

$$\ CL(s) = \frac{\frac{31.62}{\mathrm{707*10}^{-9}*s+1}}{1+(\frac{63.24}{\mathrm{707*10}^{-9}*s+1})} $$

$$\ CL(s) = \frac{\frac{31.62}{\mathrm{707*10}^{-9}*s+1}}{\frac{\mathrm{707*10}^{-9}*s+1}{\mathrm{707*10}^{-9}*s+1}+(\frac{63.24}{\mathrm{707*10}^{-9}*s+1})} $$

$$\ CL(s) = \frac{\frac{31.62}{\mathrm{707*10}^{-9}*s+1}}{\frac{\mathrm{707*10}^{-9}*s+1+63.24}{\mathrm{707*10}^{-9}*s+1}} $$

$$\ \require{cancel} CL(s) = \frac{31.62}{\cancel{\mathrm{707*10}^{-9}*s+1}} * \frac{\cancel{\mathrm{707*10}^{-9}*s+1 }}{\mathrm{707*10}^{-9}*s+1+63.24} $$

$$\ \require{cancel} CL(s) = \frac{31.62}{\mathrm{707*10}^{-9}*s+64.24} $$

Using FVT as $$\ S\xrightarrow{}0 $$ :

$$\ \require{cancel} CL(0) = \frac{31.62}{\mathrm{707*10}^{-9}*(0)+64.24} = \frac{31.62}{64.24} = 0.4922 = DC Gain$$

Where did I go wrong?
I know this is wrong as the DC gain should be around 2V/V


texts:
I am working on a WordClock. First, I want to give you all the details needed and then I will ask my question. So, for this WordClock I used the Arduino with the FastLED library. I made a PCB (350 x 350 mm) on which I positioned the 90 Neopixels (WS2812B). I am using a DS3231 RTC for the time. Currently, I am testing all of this on a breadboard. Because of 90 LEDs I have two power injections: in the middle and at the end (and of course the one at the beginning). For the data line, I use two 220 ohm resistors in series and I have a 1000 uF capacitor on the 5 V and ground rails. I also use a 5 V / 2 A power supply (I have common round everywhere). The Arduino is powered from my laptop. When I turn on all LEDs, it works perfectly fine. Now, here is the problem: Say for example, it is 12 o'clock. For the word 'twelve' to light up, the LEDs at the bottom should turn on. They do turn on, but they have this effect of flickering. See the video.

In short: The LEDS which are further from the data-input are flickering.

I did my research on this. First of all, I thought maybe the LEDs at the end do not get enough voltage (because voltage drop occurs). Therefore, I added two injections, at the middle and end, but this didn't help the problem of flickering. Then, I came across a lot of people with the same questions on other forums. Most of them solved the problem with these lines of code:

#define FASTLED_ALLOW_INTERRUPTS 0
#define FASTLED_INTERRUPT_RETRY_COUNT 0

But these also didn't help me.

Let me tell you how my code works now:

I made if-statements for each time and in the statements, I put which LEDs should turn on. I put all of these if-statements in a function called "tijdsWeergave". Then in the loop, the first thing is to convert the string data from the DS3231 library to integers. After that, I call the "tijdsWeergave" function and add a delay of 1000 ms. It seems like, every 1000 ms it flickers. If I use 10000 ms, it flickers every 10000 ms. Does anyone know how I can fix this problem?

Here is my a part of the Arduino Code (I let you guys see a part, because it is all the same code over and over again. One picture of the setup and loop, and also one picture with an example of how all the if-statements work.

EDIT: You can find my code here: https://codeshare.io/GABKYE

I hope I gave you all the information needed to answer my question.


texts:
I am working with the CS4234 codec for a project
It has 4 ADCs and 5DACs.  One thing that is confusing me is that the pins are labled AOUT1- and AOUT1+ in the similar fashion for all ADCs and DACs.

The device states it can do single ended, which I believe is what I need to achieve stereo sound.  How can I change these various ADCs and DACs to Left and Right input/output channels?

Could I just use the positive for left and then the negative for right? Like are they already in this configuration or do I need to use an op-amp to convert the signals?


texts:
simulate this circuit – Schematic created using CircuitLab

This is a circuit I made with an 1838D IR receiver in order to test if a tv remote is working, but as soon as I press the button, the led faintly lights up, and when I use a remote at the receiver, it just starts blinking. I tried using the transistor you see in the picture in order to make the LED supposedly light up stronger, but because of that constant flow of current out of the receiver, the transistor’s base turns the emitter on, and the LED still faintly lights up, as if there was no transistor.

Is there a way to fix that constant flow of current from the receiver, or is that something receivers are supposed to do?


texts: When is a resistor actually short circuited?

texts:
I am having a bit of difficulty figuring out when is a resistor actually short circuited. Take the following 2 examples:

In here, current flows through both 8k and 3k ohm resistors. Why is the current not bypassing them completely?

In this example, the 8k, 3k and 1k ohm resistors are completely ignored and all the current goes through the 4k and 6k ohm resistors. I understand why the current is bypassing the 2k ohm resistor (short parallel with resistor), but how to tell exactly when a resistor is shorted?


texts: What is "2DIN" in the context of car radio interfaces?

texts:
I want to install a custom computer in lieu of my radio in my 1996 Volvo 850. I have seen various kits, such as one offering a barebones "2DIN" computer. What does this mean?

(My main concern is basically hooking the power supply of the car to the computer. Since the car can turn off and on and generate DC surges, obviously the computer needs to have a specialized 12V DC power supply of some kind.)


texts:
Could you check my schematics? especially the high pass's polarized capacitor.

So I have this signal, coming from an optical sensor, it's small and dirty.
In it's "original" form the signal looks like a continuous 3V tension.

And nom the same output in AC mode :

I want to exploit this signal with a microcontroller, so first I'm going to put a high pass at 0.001Hz to get it like in the AC mode, then I'm going to put it through a low pass a 7Hz to remove those parasite and finally I'll amplify it 11 times.


texts: Minimum Rise Time for Microcontroller (STM32F769IIT6)

texts:
I'm trying to do some crosstalk calculations between signals and I'm trying to find the minimum rise times for the STM32F768IIT6 - all I see are the maximum rise/fall times for the specified test conditions. I've looked in the datasheet and reference manual but all I can find are maximum rise/fall times. How do I find the minimum rise/fall time? Why are these not included?

For example I have SPI traces around 35mm long going to TLC5922 LED driver. How can I calculate what my fastest rise time will be ?

Thanks in advance!


texts: the difference between capture effect and signal superposition

texts:
from the wiki about the "capture effect":

  The capture effect is defined as the complete suppression of the weaker signal at the receiver limiter (if it has one) where the weaker signal is not amplified, but attenuated. When both signals are nearly equal in strength, or are fading independently, the receiver may switch from one to the other and exhibit picket fencing.

Following is my understanding, for the receiver side, it can distinguish the two of the different arriving signal and determine which is the stronger one thus only decode the stronger one.

But, on the other hand, in the signal interference (such as, WIFI is interference protocol, and the ZigBee is the intended signal protocol), the interference power would superposition the intended signal power. Is it means that under this condition, the receiver can not distinguish two of the different arriving signal and just amplified the superposition of the two different signal (intended signal power and interference power)?

Well, there is obviously a conflict understanding about the above two, and is there misunderstanding? Thanks!


texts: Mutually exclusive latching momentary pushbuttons

texts:
Here's a circuit which implements a radio button arrangement.

All switches activate the clock.
One of the switches enables a latch which has no output connection.
The other two switches each enable an output.
If neither of those outputs are enabled a DTL NOR gate creates a logic high indicating that neither switch if 'on'.
So switch one and two operate as radio buttons (mutually exclusive) and the reset switch disables the other two outputs.
If sw1 is active, and I push the button again nothing happens, sw1 remains active.
I can only disable sw1 and sw2 by pressing the reset switch.
I don't want this.
It occurs to me that the reset switch COULD be made redundant.
What I really need is for each switch to toggle itself on and off, and IF it toggles high to disable the other switch.
ie. (truth table)
S1 S2 S1_CURR S2_CURR S1_NEW S2_NEW
1  0  0       0       1      0
1  0  1       0       0      0
0  1  0       0       0      1
0  1  0       1       0      0
1  0  0       1       1      0
0  1  1       0       0      1
etc.

KEY
S? = status of switch 1 (1 = closed, 0 = open)
S?_CURR = status of current latch output for the given switch (1=high, 0=low)
S?_NEW = the result of the switch press

I could have one of these on each button :

But how would I link two of these together in a radio button arrangement (mutually exclusive).
I considered some sort of XOR arrangement but that has issues.
I think this may be a pretty standard requirement that someone might know the solution to?
Many thanks for anyone who can be bothered to read this!


texts: Can a 6.3v capacitor be replaced with a 16v capacitor?

texts:
I'm repairing my old 478 socket computer motherboard and two 6.3v 2200uF capacitors near the CPU are bust. The computer still powers on, but it doesn't pass the BIOS screen without the ps/2 mouse plugged in, and the keyboard stops working after about 20 minutes.

I'm wondering if I could replace the broken 6.3v 2200uF caps with 16v 2200uF ones instead?


texts:
Here is a simplified digram of a sine wave oscillator (part of Colpits oscillator arrangement) stressing on the LC circuit. I am concentrating on the event at T = 0 sec.At the beginning, the inductor L2 would act as short and C3 and C4 will charge up to same potential. And here is my question, if the capacitors C3 and C4 charge up to same potential, then how on earth they discharge through the inductor L2.

I am guessing it won't, and let me take a step forward. Say voltage across C3 is fed back to the base of BJT (not shown in diagram). In that case collector current would increase, hence voltage across C4 would decrease, and only then the discharge process starts through the inductor as C3 is maintaining its starting potential. Hence can I state that the feedback is necessary to even start the discharging process through the inductor?

Is the above reasoning of mine correct??


texts:
How can I plot "F1(t) = 20MHz" in Excel?

I will eventually put it into mathcad. The amplitude would be a variable as well but lets pick 4.5 for now. Just  get the 20 MHz wave to look how it should.

20,000,000 cycles in t=1 sec. I think I'm just missing something simple.


texts: Physical address is hardware address of physical memory and virtual address is the one the processor will be seeing, it has it has a tag and offset. I understand this. Can any one describe it with an example, like how the MMU does this operation (what it adds to the physical address) and what's memory mapping? And what is physically addressed physically tagged, virtually addressed virtually tagged?


texts: How to read the circuit to drive the numerical value of Vgs1?

texts: b) How do we know the numerical value of Vgs1? can you show me the exact mash?


texts: Nixie tubes displaying multiple number simultaneously

texts:
So my question is about nixie tubes.
To skip the whole designing-my-own-controller part I settled for the arduinix (schematics) solution, which some of you might know. I am currently using an Arduino Uno to drive this controller.

The problem

After soldering the kit, I connected one tube to one anode (170V) via a 10K resistor, and the 10 cathode pins to the outputs of one of the two k155ID1 drivers.
Because I was in prototyping fase I used jumper wires to connect the anodes and cathodes to the outputs of the driver ICs on the arduinix board.

I used a simple script to alternately send a 0 ( A:0 B:0 C:0 D:0 ) and a 1 ( A:1 B:0 C:0 D:0 ) with a 1 second interval in order to test if the tube is actually displaying the values I want to show.

Here I run into the problem: The nixie tube just seems to ignore these values I set to the IC. Instead, it's is lighting up multiple numbers simultaneously.

I tried disconnecting some jumper wires from cathodes to see if this would make a difference. When disconnecting the cathode corresponding to the number it will turn off, but when reconnecting these numbers light back up again :/

I did a visual inspection of all the soldering connections on the arduinix board; no gates look like they were "accidently soldered together"

Also I replaced the tube with another; same behaviour occurs.

Also I tried the second driver; the same behaviour occurs. It occured to me that maybe BOTH drivers are broken, but it seems rather unlikely..

I also tried verifying the driver IC's behavior by just measuring the voltages from the driver IC. I noticed a very small difference in the voltage (in the range of 0.05V, around a 1.6V base) that corresponded with the 1 second interval that I was sending from the microcontroller. Is this a correct way of verifying the IC's workings? Is this voltage difference enough to properly sink one of the cathodes?

This is the relevant part of the schematic; basically I hooked up a single tube to the driver IC, the high voltage is provided by the arduinix circuit and even the routing from the arduino GPIO pins to the driver IC is taken care of by the arduinix circuit.

simulate this circuit – Schematic created using CircuitLab

I measured voltages while the tube was on and these are my measurements:

Only nixie: 130V
Nixie + 10K resistor: 152.7V
Cathode 0: 3.2V
Cathode 1: 27V
Cathode 2: 61.5V
Cathode 3: 3.2V
Cathode 4: 50V
Cathode 5: 3.2V
Cathode 6: 57V
Cathode 7: 3.3V
Cathode 8: 33.5V
Cathode 9: 26.5V

Looking at these I can't make sense of why this is happening... Hopefully it helps one of you guys to tell me what is going on here..

Picture of the situation:


texts: Slew Rate, Settling Time, Bandwidth, Rise Time - High Speed Transimpedance Amplifier Design

texts:
I'm in the process of designing a Transimpedance amplifier for an analytical instrument. The sample waveform (hand-drawn) is attached in the attachments. The requirement is to amplify a pulse kind of signal whose maximum amplitude is around 700 nA and the width of the pulse is around 1 ns. So, I need a high-speed transimpedance amplifier.
My question is what are the opamp parameters that decide the speed of the amplifier. I need a concrete relationship between slew rate, settling time, rise time, bandwidth/gain-bandwidth. And particular to the signal which parameter is most important so that I can choose the right opamp for the design.
Regards
M Arivalagan


texts:
I'm having trouble to understand the phase compensation on the PA92 opamp. First I'll explain quickly the circuit I'm building.

1.  The circuit

I'm using a 200V battery and would like to create a virtual Gnd for my circuit. The PA92 OPAMP is the ideal component for that, because it can operate on high-voltage supplies (up to 500V). Below you can see the circuit I've built:

simulate this circuit – Schematic created using CircuitLab

R1 and R2 create a reference voltage aimed to be 0V. Capacitors C1 and C2 provide some stability for the reference.

D1 and D2 are 3V6 zener diodes that keep the inputs close to each other. A differential input voltage of more than 20V can damage the OPAMP.

You can find the datasheet of the OPAMP here: https://www.apexanalog.com/resources/products/pa92u.pdf

2.  Phase compensation feature

This OPAMP has a "phase compensation" feature. You have to connect pin 4 to pin 5 through an RC circuit. The choice of the resistor and capacitor values define the phase compensation of the OPAMP. The datasheet explains briefly:

  The PA92 is externally compensated and performance can be tailored to the application. Use the graphs of small
  signal response and power response as a guide. The compensation capacitor CC must be rated at 500V working
  voltage. An NPO capacitor is recommended. The compensation network CCRC must be mounted closely to the amplifier
  pins 4 and 5 to avoid spurious oscillation.

These are the "small signal response" and "power response" graphs:

The datasheet also provides this table:

3.  The problem explained

I have to admit that I don't fully grasp what this phase compensation actually does. To make the component behave as a general everyday OPAMP, I thought I had to choose the last line from the table (10pF, 0Ω). I couldn't be more mistaken. The output oscillates at about 60V peak-to-peak, as you can see on my oscilloscope screenshot:

> YELLOW: V+ input
> BLUE:   V- input
> PURPLE: Vout

> Horizontal: 400ns per division, 10 divisions in total
> Vertical:   10V per division, 8 divisions in total

Note: For this test, I used two batteries in series of 100V each, so I have a real Gnd right in the middle. These oscilloscope screenshots are measurements respective to that real Gnd.

I then changed the CC and RC values to 100pF and 100Ω respectively. This corresponds to the second line in the table. I now get this output:

> YELLOW: V+ input
> BLUE:   V- input
> PURPLE: Vout

> Horizontal: 1us per division, 10 divisions in total
> Vertical:   1V per division, 8 divisions in total

There is still an oscillation, but it's only 5.5V peak-to-peak (note the different scale!).

Finally, I would like to do a test with CC and RC equal to 150pF and 100Ω. I'll order 150pF capacitors for that. Hopefully, there will be no more oscillation.

4.  My questions

I have basically two questions. A theoretical one, and a practical one:

What does this "phase compensation" feature on the PA92 actually do?
What is this "Gain" from the small table in the datasheet? Open-loop or closed loop? At what frequency?

What practical advice can you give to get rid of these oscillations? I'm really puzzled, I'd never expect this on such a simple voltage follower...

5.  Notes

The circuit I've drawn above is really all I've put on the board. For now, the only load is the 100kΩ resistor.
@laptop2d says that the "phase compensation" feature "allows the OPAMP to respond faster at high frequencies". In short, can I look at this feature as a way to tune the "rise time" and "fall time" of Vout? So I could tune it from like 5V/µs to 50V/µs?


texts: Is TINA-TI as good as PSpice for simulating RF?

texts:
I am taking an electronics for telecommunications class in my senior year of my undergrad engineering degree. Our teacher said we'd be checking results using Cadence's Orcad Pspice. I find the newer Pspice versions a little confusing and difficult to work with so I asked if I could use TINA-TI, which I used for circuits using transistors in previous courses and found it just fine, but our teacher said that some simulators have less accurate models for high frequency and he would rather I use PSpice so all of us have the same results. I've looked a little bit into it (Comparison Between SPICE Simulators) and all of them seem to have the SPICE base, so I guessed I wouldn't have any problem.

My question is: is that really true? What are the models and differences between simulators? Is there an upper frequency limit for TINA-TI where it starts misrepresenting circuits? I remeber reading there is a way to include your own modeles, is that true for TINA-TI?


texts: How does supplying a DC motor with lower than rated voltage affect current draw?

texts:
I have a DC motor with the following characteristics:

Voltage: 24V
Rated Current: 14A,
Speed: 2750RPM
Power: 250W

I am using a 12V 7Ah battery as a supply for this circuit.
The motor is controlled with 12V 6A relays, which I can hear furiously clicking on and off (and getting slightly warm) as I start the motor, but once it gets some momentum, they settle down and things run smoothly.
I can't check the actual current draw at the moment as my multimeter can only measure in the mA range.
Questions:
Am I correct in guessing that the motor is attempting to pull too much startup current through the relays causing them to turn off, but because they are getting the required voltage on the coils, they turn on again (and repeating until current draw lowers/evens out). Based on P = V x I, does that mean that running the motor at a lower voltage will increase the current draw? E.g. 250W/12V = 20.83A.
So I should be looking for relays with a rated current of about 25A?


texts: Voltage lower than expected (voltage regulation)

texts:
I am attempting to make a voltage regulator. When I make the circuit below but without anything to the left of the dotted line I get the expected voltage; however when I make the full circuit the voltage is much lower than expected. Also the led is a bright for about a quarter second then dims, I can only assume that the voltage across the led is initially as expected but then drops to 2.7v (assume as I cannot get the multimeter ready in time to test initial voltage).

Can someone please help me understand why this voltage drop occurs?

Many thanks.

edit: I realise I have drawn the battery upside down.

edit2: the purpose of the left hand side is to ensure there is enough voltage available to split it into two 4.5v outputs (9v required)

edit3: typical input voltage is between 9 and 12 volts.


texts: I am using this schematic as a frequency meter. I tried to search proteus libraries for this CMOS 'CD4050 , [IC3 in this schematic]' but all I've found is 4050 CMOS non-inverting buffer with one input and one ouput, I need this specific element with all the other pins of it, not the 4050 CMOS that proteus is showing, because the whole design of circuit counts on this element 'CD4050'. Any idea how to add this element to proteus ? Where can I find the library of this element. Please advise me ASAP. Thank you all.


texts: Simple step-up transformer not working as expected

texts:
I'm doing some pretty basic "experimenting" with some transformers to step up voltage for an embedded project. I've got various 1:N transformers from coilcraft:
http://www.coilcraft.com/lpr6235.cfm

I'm driving a FET with a  5V to 0V square wave (not -2.5V to 2.5V) from a function generator, and I'm powering the primary side with a power supply. Unlike the flyback circuit example in the data sheet, I've got a high power resistor in the circuit to limit the current to not exceed the saturation current of the transformer.

I was expecting that with a 1:N transformer, my output voltage would be N times my peak voltage, provided that I reach the saturation current. So, with a 1:10 transformer and a 5V square wave, I expected a peak to peak voltage of 50V, but I'm not getting anywhere near that.

edit: Added information

simulate this circuit – Schematic created using CircuitLab

The FET I'm using is actually FQP30N06L

Since I'm using a function generator, I vary the frequency until I hit peak voltage on my rms multimeter. I'm using an N-fet to switch a 5V supply, and I am expecting 100V, since the transformer ratio is 1:20, but my multimeter only shows about 19 V.

Here's the output of the scope: The yellow output is measured at Test_Point. The Blue output is measured at V_supply. The gate signal is not shown, but it's very clean by comparison.
Also worth noting: I switch out the R1 resistor for various values to try to hit saturation current. When the resistor is 2 Ohms, and the current is about .56 A, I get a higher voltage than when I use a lower resistor and run at saturation current (.7 A). Either way, the output voltage is about 1/5 what I was expecting.


texts:
I have some single core wires normally used in simple breadboard circuits to handle 5V.

I have built a power supply circuit on a perfboard, with a standard transformer + capacitor + 7805 build. Can I use a single core wire to make the connection on the perfboard?

The 5V devices I am connecting to this will not draw more than 300 mA. The transformer I am using is rated at 300 mA.


texts: Equivalent circuit of a solid state relay

texts:
I want to switch 50V AC voltage. Maximum drained current will be 5A. Frequency is 50Hz. Switching speed is not important, can be real slow, it is not a problem in my application.

I wanted to use solid state relay at first for this purpose. But as soon as I started to search an SSR, I saw that their prices are too high. For a cheaper alternative solution, I want to use MOSFET transistors (can be a different transistor type as well) instead of solid state relay.

Can you suggest me a MOSFET equivalent circuit of the solid state relay with the specifications I gave above?


texts:
i am trying to calculate these formulas:
  -and-

(p-side: x < -xp , n-side: x > xn)
But i wonder, how can i find pn0 and np0
Thanks in advance.


texts: How this voltage resonant soft-switching IGBT works?

texts:
In this voltage resonant soft-switching IGBT:

1) When IGBT turns off, what is the reason why Vce slowly(sinusoidally) increases after current turns off?

Was it because the stored voltage in L1 is slowly discharged so that Vce will not abruptly increase???

2)When IGBT turns on, what is the reason why Vce is zero when current is slowly increasing?
I mean, if the Vce is zero at the moment of increasing current, then where is the remaining voltage is dropped in the circuit???And looking at the waveform, the Vce is already zero even if current is just starting to rise

Source:https://toshiba.semicon-storage.com/ap-en/semiconductor/knowledge/faq/mosfet_igbt/igbt-013.html


texts: How do I make a keyboard cable detachable with a USB C female port?

texts:
Alright so I'm new to all of this but I've been modding my keyboard recently and would like to get a custom cable for it.
I saw this video on how to do this with a USB micro connector, however I know that it will be a bit different for type C.
Also, I know that video isn't that good considering that person didn't even know to shrink the heatshrink. I'm thinking of doing this method, but with solder heatshrinks such as these.
Any pointers on how I should go about doing all of this? Alternatively, would it work if I just did it how they did in that video, then used an adapter such as this? Thanks!
Note: I do not have a soldering iron.


texts: How to separate high voltage and low voltage side of a circuit?

texts: I want to design an ATS for a single phase. Here, I have added two sources and also control circuits. But I need to separate the high voltage and low voltage side of the circuit. In order to do that, what should I add in the circuit?


texts:
I've got a 18.5 volt battery made up of 5 3.7 volt cells (Li-Ion). For charging the datasheet for the single cells says the battery requires .5 volts more, to counteract the internal resistance, I guess.

My question: Since the nominal voltage is additive per cell, is the additional voltage as well? As in: do I have to charge at 21 (18.5 + 0.5*5) or at 19 (18.5+0.5) Volts?

I believe it is the the former, since in a serial circuit resistance is additive as well, but since I don't want to make a mistake, I decided to simply ask.

https://voltaplex.com/media/whitepapers/specification-sheet/Sony_V3_Specification_Sheet.pdf


texts: Question on JK Flip flop Output waveforms

texts:
I'm fairly new to the world of Flip Flops, and this type of material. I'm hoping to gain some clarification on how to correctly create output waveforms based on different implementation. I'm not exactly sure how the implementation of a JK affects how the output would be calculated.

Please note I'm not asking you do answer this question for me. Rather, I'm hoping that somebody will be able to offer some guidance about how I can calculate/draw what the output should be.

Thanks!


texts: Setting DDRx register before PORTx register or after AVR cores?

texts: Please explain me why DDRx register must be set in some situations after setting PORTx register.


texts: How gate voltages are established to turn on mosfets?

texts:
I am a bit confused about how the gate voltages of M13, M14, M15 are established here.

With M9, M10 by diode connected or feedback the gate voltages can be established from the biasing current.

However, I don't see how gate voltages of M13, M14, M15 are formed to turn on these mosfets.

Could anyone explain the mechanism for establishing these voltages here?

Thank you.


texts: What frequency bandwidth should an accelerometer operate for measuring punching and kicking movements?

texts:
I'm trying to choose the bypass capacitors for a schematic circuit that measures the acceleration (in g) for punching, kicking, throwing, etc. But I don't know what to place on the x, y, z output of the accelerometer (ADXL-377 - page 9) because I don't know what bandwidth I should choose.

What could be consider a proper bandwidth for measuring these types of movements?


texts: Need mating PCB connector for Micro JST 1.25mm 2 pole Li Battery

texts:
I have spent hours to search for the mating connector fo the below battery connector.
Source: https://www.amazon.com/gp/product/B0867KDMY7/ref=ppx_yo_dt_b_asin_title_o03_s00?ie=UTF8&psc=1
Image:
Please help me to find the right mating connector for PCB or guide me with right keywords to look for.
many thanks, in advance
I have found one: https://www.digikey.in/product-detail/en/amphenol-icc-fci/10114830-10102LF/609-5378-1-ND/8555649
Promising:

but not sure


texts: What will happen if I send an analog signal through a digital regenerator?


texts: Why there are 7 pins in I/O PORT C of Atmega328P as against 8 pins normally?

texts: In any 8 bit microcontroller, normally there will be 8 bits per I/O port. But in AVR atmega328P, there are only 7 bits in one of the I/O port (PORT C). What might be the reason for the exclusion of one bit in PORT C?


texts: Are there any functional differences between xc16 and C30?

texts:
I've recently istalled MPLAB X (free version) and tried to build an existing project which uses C30. C30 seems to have been replaced with xc16 which does indeed build the project but the resulting .hex file cannot be flashed onto a dspic30f6013a.

Where can I get C30? The error message shown when updating (by ds30Loader) was that the bootloader would be overwritten.


texts: Help with LiPo/solar panel/motor circuit

texts:
For a school project I am working on, we have been instructed to use the following circuit design:

If you can't see the image, here's the general idea:
The solar panel connects to battery via SW2.
The battery connects to the motor via SW1

[Solar panel--Switch 2--Battery--Switch 1--Motor]

The general idea is that when SW2 is closed and SW1 is open, the battery will charge from the solar panel, and when SW2 is open and SW1 is closed, the battery will power the motor.

I'm concerned about this as the lipo has no boost/charge circuit, no undercharge or overcharge protection or anything like that, just directly connected to the solar panel and battery.

Will this work at all? If so, how well? If not, what's the simplest way to make it work (is there a way without using ICs or complicated circuits?).

Any help would be appreciated.

EXTRA INFO:
The battery is a 3.7v, 1S lipo battery.
This is the
solar panel, this is the motor.

EDIT: The battery may have overcharge/discharge protection built in, but I'm not sure about this.


texts: Is a PCB a requirement for an RFM95 family for HopeRF LoRa modules?

texts:
I watched a few videos and read a couple of blogs regarding the HopeRF RFM95W family of transceivers.

All of the videos recommend using a breakout PCB similar to this one or this other one, or this one

One of the videos states that the distance between the center of two IO holes on the RFM module is 2mm, and the distance of the top edge to the center of the first hole is 1mm, and thus standoffs are not an option.

I am curios what other options there might be?  Couldn't one just solder wires directly onto the module? If that is a bad idea, why?  If not a bad idea, what size wire would be best to use?

Please understand I have no real training in electronics and only self taught on YouTube.  My soldering skills are improving, and even with the PCB, soldering is required.  Just seems that the PCB is unnecessary in this case.  It is not a flat connect MCU.


texts: What will happen if we use an Inductor in place of a Capacitor in Single phase Induction motor

texts: So as the titles says, well i know that a capacitor give phase shift and that results in a rotating Magnetic Field. So i was wondering what will happen if we use a an inductor, i mean doesn't it create phase shift like capacitor and make rotating field ?


texts:
The pictured circuit below works nicely as a electronically switchable-gain photodiode amplifier.
Except for the small issue that as it is being plugged in, U2, a fast CMOS RF switch, has  a nonzero chance of catching on fire.

Here's a partial view of the PCB:

From what I can tell of the wreckage, the +15V and -15V supplies get shorted to ground through the RF switch, U2, ADG1219. They are >1A capable off-board linear supplies, so they burn through the tiny RF switch.
Now, I realize I need fuses.
But what's causing the destruction of the switch? It seems to me EN and V+, being jumped, means the chip won't exceed its absolute maximum ratings for the digital inputs (Vdd+0.3).
I can reliably produce an RF-switch-molotov-cocktail after about 10 or so plugs- and re-plugs of the power connector. So it has something to do with the rise of the supplies, but I don't see what I can do about this?
Any ideas???


texts: I am using an ATtiny861a and I want to enable it to use SPI. In doing this I need to assign not one, but two CS/SS pins in order to communicate with a radio and an external memory. Does the CS/SS pin need to be connected to an ADC pin or could it be connected to a AREF, PCINT, or OC1A/OC1B pin?


texts:
I am not sure about an implementation. I've a multiplexer 8 input, 1 output and 3 select signal. One of these selects signal sequentialy acquires all value of a bit vector. Now I can choose 2 way.

The first way is to use another multiplexer where the input is the bit vector and the select signal is a counter log2 of the input.

The second way is to use a shift register and take the LSB bit of the vector.

What is the best solution in terms of area in a FPGA


texts: Can dust affect the power output of a PSU?

texts:
I've recently had some power issues with my PC and I thought it was due to the PSU being under voltage.

When I took it out my PC, I noticed it had quite the ammount of dust on it, so I cleaned it with compressed air then tested it with a voltmeter and it showed me it was delivering normal voltage (according to this graph : https://cdn.makezine.com/uploads/2014/04/da87333a_atx24-1bcq.jpg).

Since then (2 days), I didn't notice any power issues after cleaning & testing. I'm wondering if dust can affect the ammount of power a PSU can deliver. (Before testing, I had those power problems quite frequently.)

I did search on google but I could not find an answer, I'm just curious to see if dust was the problem.


texts: Two power sources into appliance (12Vdc)

texts:
I am creating powering board for LED strips inside the cacti glass house. It consume 12V DC around 2 amps. I would like to power them up from battery (charged by solar, lead-acid battery 20Ah), but if there is no energy left, switch to DC power supply (12vdc).

I found the answers that it is possibly made by diodes here. But I do not fully understand, I am a programmer with no electro background, so I am a beginner (and I love it :)). I do not understand how to wire the diodes to do the job.

I understand that it will choose higher voltage, so when the battery drops down below some limit, it will take power from the power source. But how to do it, please?


texts:
I am implementing the following circuit

but I am stuck at one point.

How can we input the wires in IN1 , IN2, OUT1, OUT2? I don't know which wire to insert because there are almost 4 or 5 wires inside the telephone wire. So which wire should I insert in the respective areas?

And is there any alternative for the antenna because it is short in market. :)


texts: Can we phase lock to a reference signal of square wave

texts: Does the reference signal in the phase lock loop have to be a perfect sine wave？ If not, how can it be phase locked to?


texts: controlling heating element using microcontroller

texts:
I have a 3000 Watt, 240 VAC heating element. (This is the heating element in a commercial espresso machine.) I want to use a micro controller to turn power to machine on and off. it has a pressure controlled relay in it now that will control the heating element when powered as well. I plan to use two CMRD2435 to do this. I included a datasheet here. It seems like I can just use this as they are, but one blew on me the other day. Did I do something wrong? It worked for months without issue.

http://www.crydom.com/en/Products/Catalog/c_mr24.pdf


texts: What is the physical interpretation of "Bandwidth" in control systems not in filters? i.e What is the relationship between Bandwidth of a system and stability of a system??


texts: ADC conditioning for Lead-Acid monitoring?

texts:
I want to monitor a 12V lead-acid battery using an ADS1110 ADC.

This ADC has a reference voltage of 2.048V. Thus, I (think) need to condition my input from, say a 10V-15V level range to 2 volts (0.4 gain) and then add a DC offset to bring it down to 0V-2V for my ADC.

Can anyone recommend a low current (<1mA), low component solution for me?

Many thanks.


texts:
I was trying to analyse a lumped element-delay line by changing the frequency and measuring \$ V_{in}\$ , as shown in the graph the goal of my analysis is to find the time-delay and the attenuation for the circuit thus finding, the capacitance and inductance for the circuit shown below
The problem that I am currently facing is I can't relate the time delay, nor the attenuation with the frequency, and the measured \$ V_{in}\$. I have an equation that relate the coefficient of the reflection and propagation waves. as follow
$$V_n=A(e^{i(\omega t-n\phi)}+re^{i(\omega t+n\phi)}$$
where \$ \omega=2\pi f\$, \$n\$ is the voltage in the \$n^{th}\$ section \$ \phi\$ is the phase change per section.
I obtained results for different terminal impedance, namely resistance equal to infinity, zero, and other value for resistance. Any help in how what should I do from here to find attenuation will be appreciated.
\$ V_{in}\$ is a function of frequency" />


texts: VHDL design: why my integer goes by the number of bits and not the value?

texts:
I am trying to build pwm in wave form .meaning for exmaple I want the pwm go for 5 rising edge on and then 5 rising edges off . But for some reason when I write :

    variable counter_test : integer  range 0 to 10 ;

meaning that variable counter_test should run from 0 to 10 ,so in the waveform it runs from 0 to 15 (my guess is that it runs to 15 becouse 10 in binary form is 1010 ,so it has 4 bits and 2^4-1=15 ) .My question is simple why it runs till 15 and not 10 as I wrote ?

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;

entity Clock_Divider is
        port (
                clk_in_27Mhz  : in std_logic ;
                clr  : in std_logic;
                clk_out_960Hz: out std_logic
                );
        end Clock_Divider;

architecture logic_clock_divider  of Clock_Divider is

    begin

    process(clk_in_27Mhz,clr)
        variable counter_test : integer  range 0 to 9:=0;

        begin

            if (clk_in_27Mhz'event and clk_in_27Mhz='1') then
                    counter_test:=counter_test+1;
                    if (  0< counter_test and counter_test<4 )  then
                        clk_out_960Hz<='1';
                    elsif (  4<counter_test and counter_test<9) then
                        clk_out_960Hz<='0';

                    end if;

            end if;
        end process;

    end logic_clock_divider ;

and the waveform is :

why the variable counter_test does not reset at 9 and keeps till 15 ? what is wrong with my code ? and how to fix this problem ?


texts: What is this cylindrical electronic component with six pins?

texts:
I bought a bunch of electronics in a purchase, so I wound up with lots of components I didn't expect. I could identify all of them except these 4. I have 4 little cylinders. Two are stamped "12" and two are stamped "13". Judging from the misalignment of numbers they have been hand stamped. The cylinder appears to be some sort of aluminum material. The device has six pins on the bottom.

They were in a bag labeled "Fuel Cells" "03015-005"

What are these things? Is the package type standardized?


texts: Initialize ARM registers to specific value via Inline assembly

texts:
I have a need to initialize the ARM registers of my ARM7TDMI development board to a specific values using inline assembly. For example currently I do something like the following :

    #pragma ARM
        void init(char * reg)  {

            __asm  {
                MOV    R0,#0x0
                MOV    R1,#0x1
                MOV    R2,#0x2
                MOV    R3,#0x3
               ...
}

The idea is to closely control the contents of each of the registers here. I am using KEIL UVision 5 and it warns me that this may not be a smart thing to do . And looking at the debugger there is no guarantee that the initialization will happen as per my request. For example the value 0x2 maybe stored in register r12 instead of r2 as i requested in my inline assembly  ..

a.c(102): warning:  #1267-D: Implicit physical register R0 should be defined as a variable

Reading up on Keil documentation http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.faqs/ka11441.html it suggests using variable names. Something like this

{
  int val2;

__asm
    {
    MOV val2,0xFFFF0000
    MOV val,val,LSL #16
    }

Well this is not good enough for me as I want precise control over my register contents. How is it possible to do ? Any ideas ?

Thanks


texts:
I am working on a project with the STM32F411 microcontroller. It is set in SPI slave mode and receives data without any problems. When I want to send data over the spi peripheral i works sometimes but most of the time the bits I am trying to send a shifted or there is wrong data sent. I have configured the spi peripheral like it was shown in an example in the standard peripheral drivers for this controller and I also don´t have a chip select line because I only have one slave in the system.

Is there something wrong in my setup or do i refill the tx buffer at a wrong moment?

Here is my code:

void spi1_init(){
SPI_InitTypeDef  SPI_InitStruct;

spi1_gpio_init();

// Enable the SPI periph clock
RCC_APB2PeriphClockCmd(RCC_APB2ENR_SPI1EN, ENABLE);

// Set data size to 8b
SPI_InitStruct.SPI_DataSize = SPI_DataSize_8b;

SPI_I2S_DeInit(SPI1);
SPI_InitStruct.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_64; // 100MHz / 64 = 1.5625MHz
SPI_InitStruct.SPI_Direction = SPI_Direction_2Lines_FullDuplex;
SPI_InitStruct.SPI_FirstBit = SPI_FirstBit_MSB;
SPI_InitStruct.SPI_Mode = SPI_Mode_Slave;
SPI_InitStruct.SPI_NSS = SPI_NSS_Soft;
SPI_InitStruct.SPI_CRCPolynomial = 7;

// Mode 0
SPI_InitStruct.SPI_CPOL = SPI_CPOL_Low;
SPI_InitStruct.SPI_CPHA = SPI_CPHA_1Edge;

// Init SPI
SPI_Init(SPI1, &SPI_InitStruct);

//---------------------------------------------------------------------

spi1_interrupt_init();

//---------------------------------------------------------------------

   // Enable the SPI peripheral
   SPI_Cmd(SPI1, ENABLE);

 }

void spi1_gpio_init(void){
GPIO_InitTypeDef GPIO_InitStruct;

RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB, ENABLE);

GPIO_PinAFConfig(GPIOB, GPIO_PinSource3, GPIO_AF_SPI1);
GPIO_PinAFConfig(GPIOB, GPIO_PinSource4, GPIO_AF_SPI1);
GPIO_PinAFConfig(GPIOB, GPIO_PinSource5, GPIO_AF_SPI1);

GPIO_InitStruct.GPIO_Mode = GPIO_Mode_AF;
GPIO_InitStruct.GPIO_OType = GPIO_OType_PP;
GPIO_InitStruct.GPIO_PuPd = GPIO_PuPd_DOWN;
GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz;

GPIO_InitStruct.GPIO_Pin = GPIO_Pin_3;
GPIO_Init(GPIOB, &GPIO_InitStruct);

GPIO_InitStruct.GPIO_Pin = GPIO_Pin_4;
GPIO_Init(GPIOB, &GPIO_InitStruct);

GPIO_InitStruct.GPIO_Pin = GPIO_Pin_5;
GPIO_Init(GPIOB, &GPIO_InitStruct);
}

void spi1_interrupt_init(void){
NVIC_InitTypeDef  NVIC_InitStruct;

// Configure the SPI interrupt priority
NVIC_InitStruct.NVIC_IRQChannel = SPI1_IRQn;
NVIC_InitStruct.NVIC_IRQChannelPreemptionPriority = 1;
NVIC_InitStruct.NVIC_IRQChannelSubPriority = 0;
NVIC_InitStruct.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStruct);

// Enable the Rx buffer not empty interrupt
SPI_I2S_ITConfig(SPI1,SPI_I2S_IT_RXNE,ENABLE);

 // Enable the Tx empty interrupt
SPI_I2S_ITConfig(SPI1, SPI_I2S_IT_TXE, ENABLE);
}

void SPI1_IRQHandler(void)
{
int8_t CmdReceived;
static uint32_t CmdCount = 0;
static int8_t RecArray[SPI_REC_BYTES];
static uint32_t dataCounter = 0;

    // SPI in Transmitter mode
  if (SPI_I2S_GetITStatus(SPI1, SPI_I2S_IT_TXE) == SET)
 {
    SPI_I2S_SendData(SPI1, 123);

 }

 // SPI in Slave Receiver mode---------------------------------------
  if (SPI_I2S_GetITStatus(SPI1, SPI_I2S_IT_RXNE) == SET)
 {
 CmdReceived = SPI_ReceiveData(SPI1);

        if(CmdReceived < -100){
            CmdCount = 0;
            RecArray[CmdCount] = CmdReceived;

        } else if(++CmdCount < SPI_REC_BYTES){

            RecArray[CmdCount] = CmdReceived;

            if(CmdCount == (SPI_REC_BYTES-1)){
                callbackfunction(RecArray);
            }
        }

  }

 }


texts: Will lower voltage power source supplement/charge higher voltage power source?

texts:
I would like to add a 4.5V 1.5W solar panel to supplement an existing electrical setup in my vehicle. My current setup is an Arduino and other electronics wired up to an "add a fuse" in the car fuse box. Aim is for the solar panel to provide power to the electronics and maybe top up car battery in sunlight and car battery to provide power in the dark.

I have read other questions on the StackExchange about placing differing voltage sources in parallel and understand that there would be a reverse current into the solar panel from the 12V car battery. But I could not find a good explanation of what would happen when using a diode in front of the lower voltage source.

If I place a diode such as 1N5400 rated 50V 3A in series in front of the lower voltage source, will the diode cause the current to only flow away from the lower voltage source and the lower voltage source would either:

supplement power to the load?
charge the higher voltage source (car battery) if there was any extra power?
diode absorbs the reverse current forever since the car battery has a higher voltage? In this case would a zener diode make any difference?

In the diagram below V1 would be car battery and V2 would be the solar panel.

simulate this circuit – Schematic created using CircuitLab

If this is realistic design, are there any protection circuits I need to prevent overcharging with such a low voltage solar panel? Thanks for the help.


texts: Why do lead-acid batteries perform better than Li-ion with substantially more ampere hour?

texts:
I've been using a 36V motor that draws ~13A current at peak. I initally used a set of three lead-acid (12V 12A) batteries in series to power the motor. They had sufficient power to easily take a payload of more than 60kg and output ~35km/h at full speed. I have now replaced them with a set of Li-ion batteries (10 x 12.8Ah + 10x 12.8Ah = ~26Ah joined using short copper wire strips ~1cm) however, I am worse off than the lead-acid batteries. They can't even provide enough power. Without the load, battery voltage stays constant at ~4.2 but when I put load on it, battery instantly drops below 3.8 and is unable to provide neither speed nor power.

Can anybody tell what is going on and how can I get the power from the batteries?

Thanks,


texts: In LTSpice, how to get Op Amp TL072P and potentiometer?

texts: Hey I'm new to LTSpice XVII, I couldn't find TL072 or potentiometers in the component library...Could someone kindly guide me on how I could get these two components


texts: What is this symbol on a schematic for an old milling machine?

texts:
On the schematic below, I'm having trouble identifying what the symbol drawn on top of motors 2 and 3 means. I've never seen anything like it. They're only present on the high-power spindle and feed motors, not on the smaller cooling pump motor.
It's an Abene VHF3 milling machine from ca 1975.
Could it be some kind of thermal switch or auxiliary winding of sorts? Tracing the lines it seems to loop through both motors and then lead to some kind of indicator light.

To clarify, I mean the symbols highlighted in green:


texts: Coil Gun - High V, few MFR but very high power (in theory); need opinions

texts:
I'm doing an electronic related course in school. I really want to make something amazing using theory I'm getting everyday. So when I learned about coil guns I knew I'd want to make very powerful, yet portable one.

I read that it's better to make two stage coils rather than one. I have doubts about my calculations for the second stage because they seem too good to be true.

The first one has high current and medium voltage so I searched and saw some nice 450V 2200uF, so I guess two of those would do the trick according to this formula:

$$0.5 \cdot C \cdot V^2$$

With that I'll get around 445 joules.

The second coil should be high voltage, low current (I read something to do with saturation or something) so I found those caps at 15KV (15000V) 2200pF. And my mind exploded after doing the math (the same formula):

$$\dfrac{2200pf}{1.000.000.000} \cdot 0.5 \cdot 15000^2 = 247.5 \; joules!$$

So from what little I know and from the price of those tiny caps I wanted to buy like 20. I tested in an Android simulator (Everycircuit) and with 20 of those I get a current surge in the coil at 20 amps. They are also very quick to reload.

But when things are too good to be true I need to hear some opinions of experienced people. So do you think this will work? Because if it does, that means I'll get almost 5000 Joules just from the second stage.


texts:
I'm trying to create this prototype where I will require constant charging power for a sensor i will install on a trailer (container truck trailer). However, due to some problem, I wasn't able to tap power from the truck's own battery power.

Hence, I'm actually thinking of an solution where I will install a separate independent charging source to charge my sensor. For example, it could be a solar panel. However, solar panel is not optimal because some times the trailer might be indoors. I am thus wondering if there are any other ways to generate energy, such as a dynamo or alternator etc. I'm open to any ideas!


texts: I am using the fsm to count both rising and falling edges of a slow clock The counter i have incremented inside fsm. I gave used master and slave for counter I.e whenever edge is detected i increment the master counter by one rising edge of faster clock and update its slave at other edge of my faster clock on which I am running my fsm. I find master counter first increase at rising edge and then decrease by one and increase by one. Like this its keep happening,  my counter is not in sensitivity list still this is occurring.  This thing I saw when I ran post route simulation, in behavioral it worked fine


texts:
I want to run/control a BLDC motor from a DVD/CD-rom player and found a schematic how to do this, the so called three phase inverter (see right schematic on this page: http://en.wikipedia.org/wiki/Inverter_%28electrical%29#Three_phase_inverters).

I already made it with some some different types of transistors and an ATtiny2313 for the signal/timing and opening of the transistors, but I don't get the BLDC running. I can get LED's burning correctly, but not enough power for BLDC, I think. There are no 'anti-parallel diodes' in this set-up of my.

Now my question, do you think I can make the NPN's in the schematic with BC639 's? I can get 50 for 3,50 euro, so I can use them also for other stuff. What about the 'anti-parallel diodes' for back EMF, do I need those? The motor doesn't need to turn very fast, easy speed is enough. And what about timings, how long should the open/pulse take (how many ms)? Or do I need to use other stuff/different transistors/schematics?

Thanks for the help.


texts: Best way to poll for Modbus RTU slaves through a Modbus TCP gateway

texts:
I'm using a number of Modbus RTU devices connected to my PC through a Modbus TCP gateway. I'd like to poll all the available slave addresses to check which ones are available through my program.

What would be the best way to do this ?? I guess I could just do a read on some arbitrary register but I would like to use a method and value that's common to all devices.

The official Modbus Application Protocol guide mentions a Diagnostics function code but that seems to be for serial line devices only.


texts: What is the point of 2 inverters in series?

texts:
In the datasheet for the Nexperia HEF4543B, in the logic diagram, there are 2 inverters in series:

What is the point of these inverters in series?


texts: is a Delta Sigma ADC more accurate than a direct conversion ADC

texts:
I'm just trying to understand if my thinking is correct here.  A "regular" ADC in my mind would have a number of quantization levels.  Say 16 bits gives me 65535 levels, if I divide into my input voltage range I'll get a number in millivolts for each step.  So for a 0-1V input range I get 0.015mV per step.

If my input voltage of my signal was only 0.5V I'd be throwing away half of the levels I could be using and losing accuracy I could have had.

Does this same thinking hold true for a 16 bit Delta Sigma, can I still think of it in terms of quantization levels of 0.015mV even though it's being converted into a train of pulses and then decimated?

Would they both have the same level of accuracy?  Would the Delta Sigma be more immune to noise and so have a higher accuracy?

I've never used one before so I was reading up on them today.


texts: Standalone Atmega328p AU PCB noise problem

texts:
I am using my standalone atmega 328p au custom PCB for switching 220v contactor via relay module. PCB contains 5v smps power supply, triac based SSR for indicators and output pins which connects with external relay module.
This all setup works but atmega freezes randomly at time of switching relay(which switches contactor). I am aware that back emf due to contactor creates this problem. So to suppress back emf I have taken following measures:-

Isolated relays optically i.e. separate power supply for relay module, no common GND
Isolated atmega power source i.e. powering through battery
Used MOV at contactor contacts
Used RC snubber at contactor contacts
Relays already have flyback diode

These measures hugely impacted the frequency of freezing but not eliminated it completely. Then I simply replaced my custom pcb with arduino pro mini and then the whole system is working perfectly. Even I removed all the safety measures that I mentioned above and still there are no freezing at all !
Then I came to a conclusion that problem is with my Atmega pcb, and most probably fault is in ground planing. I doubt that ground plane is acting as antenna and can catch even little noise due to emf.
Please help me finding flaws in my current PCB and also I designed new standalone atmega pcb please let me know if I am repeating same mistake again.
I am attaching pictures of my PCB, assuming that whole architecture is not needed here. Still if that is required, let me know.
OLD PCB TOP

OLD PCB BOTTOM

NEW PCB TOP

NEW PCB BOTTOM

NEW PCB SCHEMATIC

NEW PCB TOP ACTUAL

NEW PCB BOTTOM ACTUAL


texts: STML151RB I2C start condition sent but SB not set

texts:
I have a custom board with an STM32L151RB. I want to use I2C in master mode with standard peripheral library. I've started by copying chunks of code from demo project.

The problem is that the start condition is sent (confirmed with a logic analyzer), but the SB (start bit) in I2C_SR (status register) is never set.

I have 4k7 pullups. I2C lines change state separately (so they are not shorted to anything, GPIOs seem to be configured okay and I2C peripheral has clock enabled):

I dump I2C registers in my busy waiting loop and always get (hex):

I2C1->CR1=00000501
I2C1->CR2=00000002
I2C1->SR1=00000000

This is my init code:

void i2c_init(void){
    //enable clock to I2C peripheral
    RCC_APB1PeriphClockCmd(RCC_APB1Periph_I2C1, ENABLE);

    //configure pins in alternate mode (GPIO clock is already enabled in pins_init)
    GPIO_PinAFConfig(GPIOB, GPIO_AF_I2C1, GPIO_Pin_6 | GPIO_Pin_7);

    GPIO_InitTypeDef g;

    //PB6, PB7 - output, open drain, fast
    g.GPIO_Pin = GPIO_Pin_6 | GPIO_Pin_7;
    g.GPIO_Mode = GPIO_Mode_AF;
    g.GPIO_Speed = GPIO_Speed_2MHz;
    g.GPIO_OType = GPIO_OType_OD;
    g.GPIO_PuPd = GPIO_PuPd_NOPULL;
    GPIO_Init(GPIOB, &g);

    I2C_InitTypeDef init;

    init.I2C_ClockSpeed = 100000;
    init.I2C_Mode = I2C_Mode_I2C;
    init.I2C_DutyCycle = I2C_DutyCycle_2;
    init.I2C_OwnAddress1 = 0x00;
    init.I2C_Ack = I2C_Ack_Enable;
    init.I2C_AcknowledgedAddress = I2C_AcknowledgedAddress_7bit;

    I2C_Init(I2C1, &init);
    I2C_Cmd(I2C1, ENABLE);
}

This is my master code:

  I2C_ClearFlag(I2C1, I2C_FLAG_AF);
  I2C_AcknowledgeConfig(I2C1, ENABLE);

  /*!< Send I2C1 START condition */
  I2C_GenerateSTART(I2C1, ENABLE);

  /*!< Test on I2C1 EV5 and clear it */
  while ((!I2C_GetFlagStatus(I2C1,I2C_FLAG_SB)))  /*!< EV5 */
  {
    debugf("----busy wait----");
    debugf("I2C1->CR1=%08X", (unsigned int)I2C1->CR1);
    debugf("I2C1->CR2=%08X", (unsigned int)I2C1->CR2);
    debugf("I2C1->SR1=%08X", (unsigned int)I2C1->SR1);
    delay_ms(150); //this delay does not change anything (just limits debug terminal speed)
  } //this loop never exits

Why can the start bit in status register not be set after the GPIOs have successfully transmitted a start condition?


texts:
I have several small solar panels.  I would like to configure them in series to build up enough voltage for a project.  But some panels are much smaller than others.

Is there a problem of connecting them in series if they have very different voltage outputs?