Tag Archives: Programming

Yet another one PZEM-004T/ESP8266 energy meter.

This post describes my variant of a system that is able to store and visualize the history of power consumption of a household. System is based on “AC multifunction meter” PZEM-004T and NodeMCU ESP-12F (ESP8266) which transmits data to a remote MySQL database.

Acer C720, its swollen battery and RTC.

A few days ago I pulled my Acer C720 out of the nightstand and noticed that it has a strange shape…
It’s keyboard was bulged toward the screen so the laptop can’t be closed completely.
Battery was swollen.
After I have removed the battery everything seems to work well except the wifi. Wifi couldn’t connect to anywhere and somehow I understood that the problem is incorrect date in RTC. RTC really had some fake date in the far future. It seems that there is no separate CMOS battery in this laptop. And I was needed to find the way to fix it.

Simple Perl CGI shopping list

In my family we often used pieces of paper to write down a list for the next grocery store visit.
I think this is a common situation and many people are using such lists.
After some time I have begun to feel some inconvenience because sometimes I forgot to take these lists to the grocery or I couldn’t understand a handwriting.
So I decided to do a simple web service on my own web server, that will serve as a shopping list.

Converting jqGrid filtering and sorting options to MySQL statements using Perl. And processing them.

Here I will describe a pattern that I used for a couple of years to pass filtering and sorting options from jqGrid to MySQL server.
JqGrig that is used here is simple. What I actually want to share is my two Perl subroutines – get_searchstring() and _get_filterops that allows to translate almost any filtering request from jqGrid to MySQL.
I can’t guarantee anything, you know, but these subroutines worked well for several years and didn’t manifest any glitches.

PS/2 keyboard filter (interceptor) on Microchip PIC

In the project of “internet vending machine” we used almost standard qwerty keyboard and standard PC, so we needed to have possibility to be able to switch off keyboard during reboot, to disable CTRL+ALT+DEL and so on. These functions with a decent quality, until the death of the project, had been performing by “the keyboard interceptor” device. Interceptor is a device that is connected between PC and keyboard for keyboard data filtering. Device also capable to receive from external sensors and transmit to PC via serial port some data, to control some peripheral devices , but it’s main task, which consumes the most of it’s resources, is keyboard data filtering.

Presence detector on Microchip PIC and TSOP1833

Some years ago I participated in a startup that was aimed to create some sort of vending machine. Those machines had to sell internet access for people in places like airports, railroad stations and malls. At that time (2005-2006) smartphones had just started to become popular and access to the Internet wasn’t so easy as […]