Profile cover photo
Profile photo
Todd Coram
Software/Hardware Hacker; FP enthusiast
Software/Hardware Hacker; FP enthusiast

Todd's posts

Post has attachment
Hack C
Work has been busy and eating up most of my "Copious Free Time", so most of my projects have been placed on hold. However, one thing I am getting from the past 6 months "deep dive" back into C programming (I've been programming C on and off since 1985 -- ye...

Post has attachment
Perl 6 - Diving in...
So, I've been a long time Perl user since the 1990s.  I rarely used it on job, but my only (widely?) used open source contribution is an application written in Perl 5: AFT  (It is on github and is also available to any Ubuntu based distro by typing " sudo a...

Post has attachment
Crazy Complexity:The STM32L476
The STM32L476 very low power Cortex M4  costs $9 at Digikey. This tiny MCU has, among other features, 128KB RAM, 1Mbyte Flash and USB OTG 2.0 full-speed, LPM and BCD 2x SAIs (serial audio interface) 3x I2C FM+(1 Mbit/s), SMBus/PMBus 6x USARTs (ISO 7816, LIN...

Post has attachment
Even Simple things are Complicated... in IoT
So, I strive for simplicity in my design.  But I realize that simplicity in design doesn't  mean simplicity in implementation.  Even simple things are complicated when you consider IoT. Let's take a fairly "simple" example: You want to design a water leak d...

Post has attachment
Brutal High Availability vs Simplicity
I've been toying with the idea of using an  ESP8266   Wi-Fi   SoC  (running NodeMCU) as the basis for my kitchen/stove monitor.  It's cheap ($3), it has the sensor inputs (and libraries) I need and gets my device on the Internet (IoT!) However, I have some ...

Post has attachment
The Mind of a (low level) Systems Programmer
I'm a systems programmer... an obsolete term, indeed.  But that is what I am.  It's not about coding in assembly (fun!) or squeezing out every drop of optimization in C (double fun!), but it is about wanting to "make" systems. Compare this with an "applicat...

Post has attachment
Excessive Portability and Embedded Development
Which is better? /* Read the angle register (ANGLECOM) / angle = spi_write(0xFFFF); or / Read the angle register */ angle = spi_write(A_READ | A_PARITY_1 | A_ANGLECOMREG); Now, you don't have to understand exactly what's going on here (and the actual proc...

Post has attachment
This is a painting on display at The Walters Museum in Baltimore Maryland. (    It is by "Attack At Dawn" by Alphonse de Neuville.   I am not particularly a fan of military battle scenes, but there ...

Post has attachment
Literate Programming... A Revisit
For someone reason (nostalgia?) I've been re-visiting Donald Knuth's concept of Literate Programming. (For a quick intro, critique and discussion on this approach see this blog entry and the responses .) I first discovered Literate Programming via looking a...

Post has attachment
SPLAT Logic Analyzer
Found: A Logic Analyzer written in Tachyon Forth on a Parallax Propeller chip. This is insane.  I love it. Somewhere, in a box, at my last job, is an "over the air" (GSM/SMS...
Wait while more posts are being loaded