reversing a printer cartridge chip:
How does a printer know when the cartridge is empty? Instead of using a sensor, the toner or ink level information is simply stored in memory and updated after each print. This technique also applies to my old laser-jet printer.
I was able to identify the chip on the toner cartridge as a 1-Wire EEPROM with some authentication features. We will see how and what the 1-Wire protocol is.
I also re-implemented this chip and was able to pass authentication thanks to a secret key I dumped from another chip, allowing me to fool the printer in thinking the toner cartridge is never empty.
building a digital clapperboard:
Clapperboards are often used to synchronize audio and video recordings. I'm also using such a tool for the podcast, so I decided to make my own digital version of it. After all I only have to show the scene, take, video and audio recording numbers. This can easily be done using electronics instead of having to write everything down myself.
For that I used a DS1307-based RTC module using the I²C protocol, seven TM1637-based 7-segment 4-digit displays using an I²C incompatible protocol, two MAX7219-based 7-segment 8-digit displays using a SPI compatible protocol, a piezoelectric element, and a custom power control circuit. We will also see how these communication protocol work.
energy monitoring for 3-phase 4-wire mains:
In episode #014 I presented the spark counter, my custom wireless electricity meter. This electricity meter will only work for 1-phase 2-wire power distribution systems though. Since I have a 3-phase 4-wire system it was time to do it right, with the spark abacus.
We will explore the different ways to collect electricity consumption measurements: using the S0 impulse output from a 3-pahse 4-wire electricity meter (DDM100TC), using the UART interface of 3 cheap power meters (peacefair PZEM-004T, one per phase), and using the Modbus/RS-485 bus of 3 nice power analyzers (Eastron SDM120-Modbus, one per pahse).
A micro-controller (STM32F103) will collect the measurement values and store then using a WiFi module (ESP-01, ESP8266) into a time series database (influxDB) on a single board computer (Orange Pi PC).
adding DCF77 time synchronisation to the LED clock:
By adding a DCF77 receiver to the LED clock presented in episode 16, the clock can automatically update the time (in Europe) in order to compensate for the RTC drift.
I've also used the opportunity to find out how the "analog" clock works.
use LEDs on a wall to show time progress:
The LED clock is an add-on for round wall clocks. The purpose is to have LEDs on the circumference of the clock to show the progress of the time using coloured light.
For that you will need:
a WS2812b RGB LEDs strip (long enough to go around the clock)
a development board with a STM32F103 micro-controller and 32.768 kHz oscillator for the Real Time Clock (such as the blue pill)
a coin cell battery to keep the RTC running (optional)
a GL5528 photo-resistor to adjust the LED brightness (optional)
driving a vacuum fluorescent display:
The vacuum fluorescent display I salvaged from a Samsung SER6540II was only waiting to get used. This was the ideal opportunity to learn how these retro style displays work (through Supertex HV518 drivers) and get familiar with a new micro-controller (ARM Cortex-M3 based STM32F103).