Linear Feedback Shift Registers for the Uninitiated, Part XIV: Gold Codes

Jason Sachs April 18, 2018

Last time we looked at some techniques using LFSR output for system identification, making use of the peculiar autocorrelation properties of pseudorandom bit sequences (PRBS) derived from an LFSR.

This time we’re going to jump back to the field of communications, to look at an invention called Gold codes and why a single maximum-length PRBS isn’t enough to save the world using spread-spectrum technology. We have to cover two little side discussions before we can get into Gold...


Crowdfunding Articles?

Stephane Boucher April 12, 201828 comments

Many of you have the knowledge and talent to write technical articles that would benefit the EE community.  What is missing for most of you though, and very understandably so, is the time and motivation to do it.   

But what if you could make some money to compensate for your time spent on writing the article(s)?  Would some of you find the motivation and make the time?

I am thinking of implementing a system/mechanism that would allow the EE community to...


How precise is my measurement?

Sam Shearman March 28, 20183 comments

Some might argue that measurement is a blend of skepticism and faith. While time constraints might make you lean toward faith, some healthy engineering skepticism should bring you back to statistics. This article reviews some practical statistics that can help you satisfy one common question posed by skeptical engineers: “How precise is my measurement?” As we’ll see, by understanding how to answer it, you gain a degree of control over your measurement time.

An accurate, precise...

Embedded World 2018 - More Videos!

Stephane Boucher March 27, 20181 comment

After the interview videos last week, this week I am very happy to release two more videos taken at Embedded World 2018 and that I am proud of.  

For both videos, I made extensive use of my two new toys, a Zhiyun Crane Gimbal and a Sony a6300 camera.

The use of a gimbal like the Zhiyun makes a big difference in terms of making the footage look much more stable and cinematographic.

As for the Sony camera, it takes fantastic slow-motion footage and...


Embedded World 2018 - The Interviews

Stephane Boucher March 21, 2018

Once again this year, I had the chance to go to Embedded World in Nuremberg Germany.  And once again this year, I brought my video equipment to try and capture some of the most interesting things at the show.  

Something new this year, I asked Jacob Beningo if he would partner with me in doing interviews with a few vendors.  I would operate the camera while Jacob would ask the right questions to the vendors to make them talk about the key products/features that...


Linear Feedback Shift Registers for the Uninitiated, Part XIII: System Identification

Jason Sachs March 12, 20181 comment

Last time we looked at spread-spectrum techniques using the output bit sequence of an LFSR as a pseudorandom bit sequence (PRBS). The main benefit we explored was increasing signal-to-noise ratio (SNR) relative to other disturbance signals in a communication system.

This time we’re going to use a PRBS from LFSR output to do something completely different: system identification. We’ll show two different methods of active system identification, one using sine waves and the other...


Circuit Board Standoffs

Ed Nutter February 2, 20183 comments

If you are unable to find a circuit board mount in the size you need, there is an alternative.  You could make them from tubing, like steel brake line, with a bolt in the middle.  You could use plastic tubing with a bolt.Using a solid rod is also an option.

If you opt to use some type of rod, there are some things to keep in mind.  Drill rod is very tough, but could be hard to thread smaller bolts.  Mild steel rod isn’t quite as tough, but it easier to thread. ...


Is it a Bug or an Error?

Michael Barr January 31, 20184 comments

Probably you’ve heard the story of how Adm. Grace Hopper attached a moth that was dislodged from a relay in the Harvard Mark II mainframe to an engineering notebook and labeled it the “First actual case of bug being found.”

Designers of electronics, including Thomas Edison, had been using the term bug for decades. But it was mostly after this amusing 1947 event hat the use of words like “bugs” and “debugging” took off in the emerging software realm.

So why is it that if a...


A Wish for Things That Work

Jason Sachs January 1, 20182 comments

As the end of the year approaches, I become introspective. This year I am frustrated by bad user interfaces in software.

Actually, every year, throughout the year, I am frustrated by bad user interfaces in software. And yet here it is, the end of 2017, and things aren’t getting much better! Argh!

I wrote about this sort of thing a bit back in 2011 (“Complexity in Consumer Electronics Considered Harmful”) but I think it’s time to revisit the topic. So I’m...


Linear Feedback Shift Registers for the Uninitiated, Part XII: Spread-Spectrum Fundamentals

Jason Sachs December 29, 20171 comment

Last time we looked at the use of LFSRs for pseudorandom number generation, or PRNG, and saw two things:

  • the use of LFSR state for PRNG has undesirable serial correlation and frequency-domain properties
  • the use of single bits of LFSR output has good frequency-domain properties, and its autocorrelation values are so close to zero that they are actually better than a statistically random bit stream

The unusually-good correlation properties...


Introduction to Microcontrollers - Driving WS2812 RGB LEDs

Mike Silva November 14, 201327 comments

This tutorial chapter is a bit of a detour, but I think an interesting and useful one.  It introduces a bit of assembly language programming, and demonstrates bit-banging a tight serial data protocol.  And it deals with RGB LEDs, which are just very fun in their own right, especially these new parts.  So I thought I'd post this to give readers time for some holiday lighting experimenting.

Back To The Future

Remember how we started this...


Boot Sequence for an ARM based embedded system

DM January 16, 201230 comments

Hello all,

Allow me to introduce myself. I am Deeksha and I come from plains of North India. My tryst with embedded technologies has been 5 years long and every single day I am amazed with the vastness and learning involved. The thing with embedded technologies is either you are into it, or you aren't. You cannot just hang around half-heartedly (I guess that holds true for every field, for that matter).You have to keep the learning and sharing process going on. And that is the reason I am...


Introduction to Microcontrollers - Hello World

Mike Silva September 11, 201314 comments

Embedded Hello World

A standard first program on an embedded platform is the blinking LED.  Getting an LED to blink demonstrates that you have your toolchain set up correctly, that you are able to download your program code into the μC, and that the μC and associated circuitry (e.g. the power supply) is all working.  It can even give you good evidence as to the clock rate that your microcontroller is running (something that trips up a great many people,...


How to Read a Power MOSFET Datasheet

Jason Sachs September 15, 201512 comments

One of my pet peeves is when my fellow engineers misinterpret component datasheets. This happened a few times recently in separate instances, all involving power MOSFETs. So it’s time for me to get on my soapbox. Listen up!

I was going to post an article on how to read component datasheets in general. But MOSFETs are a good place to start, and are a little more specific. I’m not the first person to write something about how to read datasheets; here are some other good...


Important Programming Concepts (Even on Embedded Systems) Part I: Idempotence

Jason Sachs August 26, 20144 comments

There are literally hundreds, if not thousands, of subtle concepts that contribute to high quality software design. Many of them are well-known, and can be found in books or the Internet. I’m going to highlight a few of the ones I think are important and often overlooked.

But first let’s start with a short diversion. I’m going to make a bold statement: unless you’re a novice, there’s at least one thing in computer programming about which you’ve picked up...


VHDL tutorial

Gene Breniman October 4, 20077 comments

When I was first introduced to "Programmable Logic" several years ago, it was an answer to many of the challenges that I was struggling with. Though the parts were primitive by today's standards (simple PALs verses FPGA), they were an extremely cost effective tool addressing the need for specialized logic blocks.

I have continued to incorporate these powerful blocks into many of my latest designs. My current favorite part line is the Xilinx CoolRunner series (XC2Cxxx). In this...


An overview of Linux Boot Process for Embedded Systems

Kunal Singh December 25, 200811 comments

This Text provides an insight in to the Embedded Linux Boot Process. Reader should have a basic Knowledge of Boot Process in general and should be familiar with Embedded Linux Boot Process.

.................PART-A................(1) Software components Involved in Embedded Linux Boot Process    (a) Bootloader    (b) kernel Image    (c) root file system - either an initrd image or a NFS location(2) Steps during Booting process of a conventional...

C++ on microcontrollers 1 - introduction, and an output pin class

Wouter van Ooijen October 9, 20117 comments

 

This blog series is about the use of C++ for modern microcontrollers. My plan is to show the gradual development of a basic I/O library. I will introduce the object-oriented C++ features that are used step by step, to provide a gentle yet practical introduction into C++ for C programmers.  Reader input is very much appreciated, you might even steer me in the direction you find most interesting.

I am lazy. I am also a programmer. Luckily, being a lazy...


Introduction to Microcontrollers - Further Beginnings

Mike Silva September 1, 20133 comments
Embedded Programming Basics

This tutorial entry will discuss some further embedded programming basics that you will need to understand before proceeding on to the LED blinky and other example programs. We will do this by looking at the general organization and types of instructions found in most microcontrollers, and how that organization and those instructions are reflected (or, in some cases, ignored) by the C programming language.

Basic CPU...

Understanding and Preventing Overflow (I Had Too Much to Add Last Night)

Jason Sachs December 4, 2013

Happy Thanksgiving! Maybe the memory of eating too much turkey is fresh in your mind. If so, this would be a good time to talk about overflow.

In the world of floating-point arithmetic, overflow is possible but not particularly common. You can get it when numbers become too large; IEEE double-precision floating-point numbers support a range of just under 21024, and if you go beyond that you have problems:

for k in [10, 100, 1000, 1020, 1023, 1023.9, 1023.9999, 1024]: try: ...

Helping New Bloggers to Break the Ice: A New Ipad Pro for the Author with the Best Article!

Stephane Boucher November 9, 2015

Breaking the ice can be tough.  Over the years, many individuals have asked to be given access to the blogging interface only to never post an article.  Maybe they underestimated the time it takes to write a decent article, or maybe they got cold feet. I don't blame or judge them at all - how many times in my life have I had the intention to do something but didn't follow through?  Once, maybe twice 😉 (don't worry if you don't...


Welcoming MANY New Bloggers!

Stephane Boucher October 27, 20153 comments

The response to the latest call for bloggers has been amazing and I am very grateful.

In this post I present to you the individuals who, so far (I am still receiving applications at an impressive rate and will update this page as more bloggers are added),  have been given access to the blogging interface.  I am very pleased with the positive response and I think the near future will see the publication of many great articles, given the quality of the...


Recruiting New Bloggers!

Stephane Boucher October 16, 20157 comments

Previous calls for bloggers have been very successful in recruiting some great communicators - Rick LyonsJason Sachs, Victor Yurkovsky, Mike Silva, Markus NentwigGene BrenimanStephen Friederichs,


DSPRelated and EmbeddedRelated now on Facebook & I will be at EE Live!

Stephane Boucher February 27, 20148 comments

I have two news to share with you today.

The first one is that I finally created Facebook pages for DSPRelated.com and EmbeddedRelated (DSPRelated page - EmbeddedRelated page). For a long time I didn't feel that this was something that was needed, but it seems that these days more and more people are using their Facebook account to stay updated with their favorite websites. In any event, if you have a Facebook account, I would greatly appreciate if you could use the next 5 seconds to "like"...


Free Embedded Systems Books

Stephane Boucher May 28, 2013

Following the success of the Collaborative Writing Experiment: What are your favorite Embedded Systems Online Resources? blog post, let's try a second collaborative writing experiment.  This time, let's work on a file that will list the best embedded systems books that are available online for free.  I am not talking about books that are illegally made available for download by pirates, but books that are made available online by authors and/or publishers.

Do you know of...


Collaborative Writing Experiment: What are your favorite Embedded Systems Online Resources?

Stephane Boucher May 20, 20139 comments

Edit 22/05 - Wow, this went better than expected.  I will try submitting this blog post to Reddit/ece and see if we can get a few more interesting links before I close the document.  Thanks to everyone who contributed!  

_______

Edit 28/05 - The document is now closed to editing.  If there is a link that you would like to see added, please use the comment system at the end of this blog.  Thanks to all who participated!  

Up next, Free...


Success Story

Stephane Boucher April 24, 20132 comments

A blog post has just broken the all-time record for the number of pageviews in 24 hours on the related sites. The blog post in question is titled Data Hiding in C and was written by Stephen Friederichs.  It has been viewed by more than 7000 individuals since its publication a few days ago.  

One reason that explains the success of this blog post is the wide appeal of the subject of the article (c programming) which allowed me to


Code Snippets Winners Announced

Stephane Boucher April 12, 20132 comments

Wow, thanks a lot for all the code snippets - I am pleasantly surprised by the quality of the code that has been shared and I am very grateful.  

Now, as you know, to give momentum to the section I had announced a special reward program for code snippets submitted by the end of March.

The partner members and I had a very hard time selecting the 5 "most useful" snippets out of the more than 50 who have been submitted. 

Here's our selection:


Now on Twitter + More Code Snippets Incentives

Stephane Boucher February 28, 20134 comments

Now on Twitter!

Better late than never, the three related sites (DSPRelated, FPGARelated and EmbeddedRelated) now have their Twitter accounts.  If you are already on Twitter, please consider following.  I'll make sure to keep the tweets interesting and informative.  Plus, once in a while, I will tweet a link where the first x persons to visit will receive a gift (book, gift certificate, etc).  

@DSPRelated


New Code Snippet Section

Stephane Boucher January 15, 20134 comments

More incentives announced

Following the success of the code snippet section on DSPRelated.com, I am happy today to announce the launch of the code snippet section on EmbeddedRelated.com.  

If you have a piece of code that you would like to share with the Embedded Systems community, please go ahead and fill the form.  

If the piece of code you submit is approved, you will be sent $10 through Paypal.

If...