David's Engineering Notes
Notes on Electronics and Software: reminders, tips, sources [proton electron]
Apr 19, 2023
Eliminate audio pops when bypass-switching
›
What really causes switch pop Why a pair of switches is not enough for a clean solution. There are two separate problems to be addressed. M...
Feb 18, 2023
Add Arm Cortex Boards to Arduino 1.8.x
›
For boards not in the Boards Manager 1) go to Preferences to add path of specialty boards (Arduino Feather) https://learn.adafruit.com/add...
Dec 2, 2022
Faster PWM DAC Using Two lower-resolution PWM Signals Added
›
Faster PWM DAC using parallel lower res PWM. Create two PWM outputs, and analog scale & sum to get result 20x faster than with a longer...
Jul 20, 2022
Diagnosing the "Rocket" fence charger
›
Inside look at the Unico Model 24D fence charger ...
Feb 13, 2022
Gyrator theory and a Working Circuit
›
Lots of discussions about gyrators (synthetic inductors and filters) reference a very few of the same pages. Here are two linked articles. ...
Jan 7, 2022
Teensyduino Features and Techniques [Part 1]
›
The Teensyduino is a high-performance Arduino-compatible microcontroller family. In addition to the hardware, developer Paul Stoffregen ha...
1 comment:
Dec 21, 2021
›
Arduino IDE: setting tab indent to another value Change default tab setting to four (4) spaces in IDE (applies to version 1.6.10 and later....
Aug 26, 2021
Python 3: run a script, string and number formatting
›
Python Language techniques To run a python script from the terminal 1) create python scrip t “cow.py” 2) Execute with python3 cow...
Aug 25, 2021
Arduino: Creating asynchronous timed events auto-increment variables, the convenient elapsedMillis() function
›
Code snippets to demonstrate use and a clear way to name the variables. See also the source information from the code function author Paul S...
Aug 24, 2021
R-C Snubber: How to Calculate Values
›
To damp the ringing in an inductor such such as a relay or solenoid, a series R-C circuit or a diode may be added. R-C Snubber (Image from ...
Aug 8, 2021
Measuring Fast and Slow Pulses on the Teensyduino Microcontroller
›
I wanted to measure small frequency changes with the Teensy 3.x. I used the interrupt-driven code from user "tni" that reads the e...
Jul 23, 2021
Assessing Reliability, Statistical Failure rates
›
MTBF: calculate series and parallel Example: If there are two power supplies in a system, with the 2nd for redundancy, what does that do to ...
Oct 3, 2020
Use a Voltage Detector to Create a Fast, Clean Input to your Microcontroller
›
The question was asked of how to fix a very slow-rising power supply which is causing a poor start of micro? The basic function you'r...
Mar 15, 2020
solid-state relays AC, DC, and reed relays
›
SSR parts *** VO2223a DC to AC (opto-coupled triac) 0.5A, Vishay CPC1020N 30V SPST 4-Pin SOP OptoMOS® Relay. IXYS leadless transistor p...
Dec 28, 2019
eeprom read/write functions
›
Read and write one, four-byte variables and character strings to eeprom in Arduino C++ Create functions for a consistent interface for si...
Nov 13, 2019
function to increment/decrement and cycle through a range
›
Cycle through values in C++/Arduino Increment or decrement by an integer value, (normally +1 or -1) but cycle between min and max const...
Sep 24, 2019
modify formatting settings in Visual Studio Code
›
To change formatting preferences, in particular, to put leading brace on the same line, use the folling. To modify code formatting setting...
Sep 7, 2019
getting filename and path of current program [arduino]
›
Capture and extract the filename and path for the current file within an Arduino program. There are a few variables available at compile ...
Jul 26, 2019
mapFloat(): Arduino's map() function extended to allow float variables
›
A function to extend range mapping to float/double variables. // map one numerical span to another with floating point values double mapFloa...
Feb 13, 2019
Using hobbytronics USB Flash Drive breakout board with Arduino
›
To log data from a test system running a microcontroller, I found a flash drive reader (only) from Hobbytronics. https://www.hobbytronics....
Aug 30, 2017
When can adding noise increase signal resolution?
›
Did you know that there are cases where you can add noise to your signal to get more resolution? It is referred to as dithering and works...
Aug 29, 2017
The Sigmoid or Logistic Function
›
A function to smoothly transition from one level to another. It can't be done with polynomial fit. When it's what you need, nothing ...
Aug 23, 2017
Markdown editor uses split-screen web page for real-time rendering
›
Github-Flavored Markdown (GFM) supports embedded code formats Web-based editor is correct and displays instantly. https://jbt.github.io/m...
Lag filter for control systems, calculating the filtering constant k
›
This article clarifies each parameter that goes into filter design, and provides an analytical solution to calculate k value. Site of Jeff S...
Aug 17, 2017
additional high quality random numbers xoroshiro128+
›
About generating and assessing quality random numbers https://en.wikipedia.org/wiki/Xoroshiro128%2B MT Mersenne Twister
Aug 9, 2017
transistor noise generator circuit with lots of gain
›
Noise generator circuit http://www.eeweb.com/blog/extreme_circuits/simple-white-noise-generator application: add a passive summer to ...
1 comment:
Aug 2, 2017
Bayesian weighted probabilities
›
Here's a good synopsis by Jim Stone: CH 1 of Bayes Rules He provides software links as well. Another look on wikipedia for Bayes'...
Jun 22, 2017
output a data stream to screen and a file using tee
›
In linux, process an incoming serial data stream (from program a.out) which appears on screen (stdout) and route to a file at the same time....
Add comma separators to large numbers
›
It was hard to read a column of large numbers, so here's a function to add the commas. It is implemented in liveCode. / / make big ...
Dec 11, 2016
Arduino 3 & 5 point running median
›
Functions for fast 3-point and 5-point median filter, for either integer or float/double var types. Example shows random data stream with r...
Nov 21, 2016
Scan for I2C Devices on Bus [arduino function]
›
Update in 2018: Here's a much shorter version of this as a function call (no args, no return value). Maintained on github here . voi...
Oct 31, 2016
printBits() prints formatted binary numbers, Arduino code
›
When diagnosing embedded code, it's often convenient to see the individual bits of a variable. There is no formatting function for this...
Aug 1, 2016
Consistent system for software versioning [SemVer]
›
Semver .org Summary 2.0.0 Given a version number MAJOR.MINOR.PATCH, increment the: MAJOR version when you make incompatible API chang...
Multi layer air core inductor calculator
›
www.circuits.dk http://www.circuits.dk/calculator_multi_layer_aircore.htm
1 comment:
LC filter web design tool
›
passive LC filter design, Tee and Pi http://www.wa4dsy.net/filter/filterdesign.html
Mar 15, 2016
Lua language is basis for a nice parser in Arduino
›
Information about: Lua (Wikipedia) and at the official site: http://www.lua.org A script language to extend other languages, in particula...
Feb 21, 2016
mosfet controller acts as voltage regulator/clamp
›
Information about: http://www.aeroelectric.com/Mfgr_Data/Semiconductors/LT4356.pdf https://www.maximintegrated.com/en/app-notes/index....
wireless modems radios
›
Information about: http://www.raveon.com/products/
More precise frequency measurement, pulse measurement
›
More precise pulse and frequency measurement arduino.datamaster2003.com/f-measurements.htm See also TimerOne library by Paul S. htt...
U-V LEDs with a wide range of available wavelengths
›
S-ET http://www.s-et.com/products.html
›
Home
View web version