Fun with ESP32

Posted on 2021-January-27 in programming • Tagged with esp32, lua, microcontrollers, micropython

ESP32

Espressif is this little fabless Chinese company who are behind the incredibly successful ESP8266 chip, followed in 2016 by a more powerful successor: the ESP32. This microcontroller allegedly uses a lot more power than equivalent Arm MCUs (though I haven't done any research on that topic), but what really makes …


Continue reading

Home Automation

Posted on 2020-January-08 in programming • Tagged with home automation, iot, tasmota, tuya-convert

Connected plug

I was a bit late to the party, but I finally got into home automation and bought a couple of connected power plugs. Price and curiosity decided for me: they can often be found online for really cheap and they are a great excuse to spend a week-end doing nothing …


Continue reading

Wunder Weather

Posted on 2016-August-16 in programming • Tagged with geolocation, golang, weather

wunder logo

Just released this small piece of code a few days back:

https://github.com/nicolas31/wunder

I wanted to be able to bring up the weather forecast for the place I am currently visiting without having to yield my address book to a shady app, or suffer from tons of …


Continue reading

OpenWRT on Ubiquiti AC Lite

Posted on 2016-May-30 in programming • Tagged with firmware, openwrt, ubiquiti

Ubiquiti Unifi AC-lite

A year ago, I thought I had upgraded my home WiFi to AC with the purchase of a cheap TP-Link Archer C5, but it only gave me trouble. The 2.4GHz band is working perfectly, the 5GHz not so. The first version of OpenWRT I installed had no support at …


Continue reading

easy-rsa alternative

Posted on 2015-December-30 in programming • Tagged with 2cca, alternative, ca

Glad to announce that 2cca, the two-cent Certification Authority has now been ported to pure C with libcrypto (openssl) as single dependency. The goal was to make it available on openwrt as it seems pyopenssl is not available on this platform -- without a lot of efforts.

As always, I swear …


Continue reading

Easier easy-rsa

Posted on 2015-December-28 in programming • Tagged with easy-rsa

OpenVPN

If you have ever set up an OpenVPN server, you probably had to fight your way through the certificate generation steps. Something like what is detailed here:

https://openvpn.net/index.php/open-source/documentation/miscellaneous/77-rsa-key-management.html

The official OpenVPN guide refers to easy-rsa, which is a royal pain in …


Continue reading

OpenWRT on MR3020

Posted on 2015-December-09 in programming • Tagged with diy, mr3020, openwrt

TP-Link MR3020

Situation: you live in a one-room appartment and receive Internet through a single RJ45 plug in the wall. How do you extend it to all devices in the room for the cheapest price?

Objective: provide WiFi connectivity on a dedicated LAN where users can see each other and share files …


Continue reading

One-time file-sharing

Posted on 2013-July-24 in programming • Tagged with file-sharing, go, one-time, utility

One

Say you rent a box somewhere on the Internet. You installed Debian stable on it because you want it to be nice and stable and run a few daemons that are useful to have online. Could be to hold your vast music collection, family pictures, or use it as remote …


Continue reading

Die C++, Die

Posted on 2012-May-10 in programming • Tagged with C++, programming

Why should I have written ZeroMQ in C, not C++

We now have official confirmation that the C++ standardization body is made of extra-terrestrial beings come to Earth to prevent humanity from reaching the singularity stage. By creating C++ and making it appear as …


Continue reading

Daily Fallacies

Posted on 2011-October-26 in programming • Tagged with fallacies

Monkey

To the question: "Why do we do things this way?", you often get three different kinds of answer:

Argument by Longevity
"Because we have always done things this way", also known as "It is known."
Argument by Numbers
"Because everybody does it this way, there must be a reason."
Argument …

Continue reading