I am currently doing development on a Windows 10 machine for a client, and I found myself repeating a bunch of tasks related to the build and deployment process quite frequently. I had already written a few PowerShell scripts to automate much of the boring stuff, but I thought it would be neat to be…
Category: Uncategorized
Calling C code from Python
The majority of all firmware is written in C (or C++), but for writing small utility and automation scripts on the host machine, Python is usually the go-to language. I was recently presented with the problem of running some of our firmware algorithms on a set of pre-recorded data, as part of our suite of automation scripts written in Python. Instead of translating the C code to Python – which could quickly become a maintenance nightmare – I opted for creating an interface so the C code could be called directly from a Python script. Luckily, Python has plenty of support for this.
Project Smart Greenhouse (Part 2): Data collection with ESP32
In part 1 I presented the general idea for the Smart Greenhouse. In this part I am going to get my ESP32 development board up and running and start logging some data to an online database.
Interfaces in C
Interfaces are an extremely useful tool to develop loosely-coupled, testable software. In the embedded world it will even allow us to write firmware and run it on our development PC instead of the actual hardware, which may be scarce or not even produced yet.