After a huge thunderstorm I noticed that the IR beams on my old electric gate were not working so I decided to take a look at the IR beams connected my electric gates poles.
After opening the IR beams enclosure I was greeted with a burnt PCB.
Upon closer inspection I was able to determine that after a lightning strike the bolt flowed through the pole then through the screw inside the enclosure and then from the bolt to the IR PCB board, The board fried and then the bolt transferred from the IR beam PCB to the D5 EVO positive output PCB terminal and blew up a SMD power mosfet above the 12v relay.
Full top of PCB board
Close up of burnt mosfet.
Strangely enough the D5evo PCB could still open and close the electric gate it seems that the only thing affected by the lightning strike was the output power terminal and the destroyed mosfet (55L104 N-Channel)
I had to purchase a set of two new IR beams for R950.00 but I decided to see if I could repair the D5EVO PCB myself. I decided to use an IRL520N N-Channel mosfet since this was commonly available at the time. Unfortunately I could only find the TO-220 package so I had to bend the mosfet a bit but it worked out in the end.
Since I used low voltage with nichrome wire using LAN (RJ45) cable was not an issue. However with the next version I will solder a female RJ45 socket to avoid the hot glue tsunami… 🙂
Creating a WiFi fireworks igniter with a backup LiPo battery.
With December just around the corner I wanted to design a remote fireworks igniter working on WiFi and battery power.
The board will use mosfets as switches to nichrome wire which will heat up and ignite fireworks from a safe distance.
Before completing the PCB
The idea is to have the system self contained with the ability of remote control via a WiFi AP using an ESP8266 12F
The link to my GitHub repository (containing the design, parts list and other files) can be found here.
After testing the generic Andowl UPS device I decided to find out if there were any alternatives in the same price range with similar features. After a few google searches I came across the SINYE TECH UPS device which has very similar features but is black in color and uses a different PCB.
After purchasing one and opening the ups I was disappointed to find out that the 4 18650 batteries had no markings on them whatsoever.. Also the main battery management IC has no identifying text on the chip. Seems like the mystery chip can of worms opens once again.
The good news is that the ups device has battery protection and has some decent components however… the actual black PCB board looks cheap unlike the good quality Andowl PCB…
Another major shock was the soldering (or should I say smoldering) of two of the transformer coil wires.. just looks ugly…
I also noticed the UPS device had a low battery LED flashing when I first switched it on and it never reaches the 100% LED even though the batteries are charged to 4.2V
Overall the UPS does function but I much prefer the Andowl Q-UP1000 UPS with similar functions it’s far more superior from what I’ve seen.
#89 An example app showing a practical use case with the API
Using the Eskom load-shedding API is very straight forward however I have noticed that a lot of people get stuck on the last call where an html document is returned instead of Json data. This can throw a spanner in the works because a developer can’t just get the results as a key value pair… the HTML must be parsed and then put into Json before it can be used effectively.
This parsing process is actually quite easy and jut requires a loop with a bit of regex magic to return the values line by line.
Once the values are returned we can then place them into our own Json object and then do something useful with them like creating a loop which reads the times and compares them to the time on my PC then when the json objects time is 10 minutes away the loop then initiates a shutdown of my fan so that it doesn’t drain my ups battery unnecessarily.
Below I have written a small proof of concept application in C# to help inspire others with their projects.
With the ever growing pains of load-shedding looming over South Africans people have been desperately looking for viable alternative energy and battery powered devices. In my case I needed my remote pepper spray devices to be operational in my laboratory even during extended load-shedding times 4h off with 2h charge times.
I could have purchased added a battery and charging circuit to my existing factory made Sonoff board however that could make the PCB larger and I wanted to build a custom solution instead.
My requirements were WiFi capability, at least 4 relays, li-ion battery powered, battery charger with all the standard protection features and for the device to be powered by 5v from a standard phone charger.
The device must be plugged into the 5v phone charger 24/7, when the electricity goes off the device must continue to operate uninterrupted, when the power comes back on the device must change to the charge state uninterrupted.
The device does not have to send a notification when using battery but it must protect from overcurrent and over-discharge.
While looking for components I came across the ESP8266 PSB 04 module which is basically just the MCU WiFi controller used to switch 4 channels by itself
This was perfect for my application because I am already very familiar with Sonoff devices and in this case I do not mind using the firmware on the esp8266 and the Sonoff application + API software for my automation tasks.
Building around the module was a breeze all I needed was the appropriate relay circuits and a decent charging module.
I ended up creating two prototypes because hey there’s always improvements to be made…
Drill holes for terminals and relays
ESP8266 board with buttons, led and 3.3v regulator
Headers to mount LiPo and ESP8266 boards
The components I used on my final version 1.1 are as follows:
I tried to make the design as modular as practically possible
There are 3 main parts in the design consisting of a main PCB which contains the battery and relays = complementary components then the WiFi module with buttons and 3.3v regulator is located on a small green PCB and finally the LiPo MH-CD42 module can be secured on the main board via headers.
While constructing I had to use a 1.6mm drill bit for the battery holes and a 1.5mm drill bit for the relay holes. I soldered the SMD AMS1117 reg onto 3 a pin male header for easy through hole placement. The relays and the screw terminals required more attention during drilling and placement of the holes due to their pin layout. I also coated all exposed wires with nail varnish as a make shift solder mask.
I had to add an extra 1000uF capacitor between GND and 5v out of the LiPo module because it would briefly lose power when transferring from USB to battery power
After setting up a CCTV system consisting of multiple WiFi cameras placed over my property I noticed that certain cameras were located in areas far away from AC outlets covered by my backup electrical system.
In this project I used some an old 18650 (LG makes the LGABD11865 ) from a laptop power supply. Also I upgraded my 5v charger to a 1.5A to provide enough charging and running current for the camera. The camera I am using is the EZVIZ C3W 1080p WiFi camera
Since Load-shedding has been increasing dramatically I had the need to find cheap simple and reliable power sources for there cameras (12v DC). One important requirement is that the backup system needs to fit into a small area E.G an electrical box on a pole where the camera is located.
While researching I came across the so called mini dc ups device mainly used for backing up WiFi routers at either 9v, 12v, 15v, 24v. however these devices seemed a bit overkill electronically wise and also price wise.
So I decided to opt-in on a cheaper smaller sized DIY version the components consisting of:
The components are all soldered onto a 50mm x 70mm 1 sided PCB board.
I noticed that the 4056 IC gets quite warm but doesn’t burn my fingers. The same goes for the coil. The specification is max 1A and the load I was applying was around 0.33mA – 0.670mA
After testing this particular LiPo charger PCB I noticed a few major problems the first being that the 8-pin 4056 LiPo chip is a copy of a copy… the next critical problem is that there is no protection circuitry besides the overcharge/discharge function in the 4056 chip.
This is a big problem since the chip does not switch off completely when low voltage occurs and as a result the load will periodically switch on and off unreliably before finally switching off completely. This oscillation can damage the load.
A solution will be to use a separate LiPo PCB with protection mosfets and a separate booster board.
12000mAh claim or is it just the name? Only a lawyer could legally advise.
When looking for a suitable min ups for my CCTV cameras and WiFi router I found a wide selection on takealot. After doing some research I noticed that the Q-UP1000 mini ups was listed by many vendors but at varying prices. Many companies had rebranded the device and increased their price quite dramatically.
Wintonic INR18650 3.7v 8.14Wh which is = to 2.200mAh
Finally I came across a deal selling the device for under R500.00 and I purchased 2 Andowl devices. Once I received the devices I was impressed with the quality of cables and the plastic mold of the box. (There are no screws to unscrew the box simply pops open)
No Screws needed to open the box. Four 2.200mAh INR18650’s for easy replaceing
Once the box was open I noticed a decent PCB with all the necessary protection circuits. There are two mystery chips though.
Mains charging circuit
The product was made recently (at least at the time of writing this article) and the designers made the batteries easily accessible for swaps which is awesome.
Charge controller IC
Now a negative thing I noticed is the 12000mAh claim… clearly the batteries are four 2.200mAh INR18650’s and this adds to 8.800mAh
There can be many reasons for this capacity “lie” but other than that the mini ups is looking good. Time will tell if this was a decent investment.
When I think about trainers 3 things come to mind.. original chiptunes, nostalgic games on windows and imaginative unique art styles. funny enough there was a decent amount of programming hacks and tricks used but people rarely think of that nowadays.
I have created an example template application with just the chiptunes and a little bit of art included. I will not include any logic for cracking games or programs etc. this article is just focusing on the visual and music design for nostalgic and educational purposes.
Please se the GitHub link to the source code here.
Back when Keygens and Trainers were the go to applications for poor kids wanting to play the latest games or experiment with the latest software’s the chiptune went hand in glove with these tiny applications. These applications were almost exclusively found on Windows computers
These applications were designed to be as small as possible many of them were written in Assembly or C++ and had all the resources embedded in the .exe at highly compressed ratios.
Even with the music file and the graphics accommodating the functionality of these programs they still managed to stay very small in size.
Thus a whole culture surrounding the traditional past time of “cracking” was born. Unfortunately there’s not much practical use for these activity’s in this day and age. Almost everything revolves around the “Internet Browser” and “Web Applications”. However artistically the past time lives on and we can still create these applications in Assembly, C#, C++ etc. as desktop applications.
#83 The differences between .Net Framework and .Net Core
.Net Framework was created around the year 2000. It’s not just C#, languages are built on top of the .Net Framework. they language like C# are converted into the common intermediate language (CIL).
.Net Framework is now over 20 years old. there’s a lot of checks and processes that have been added which bloat the system. However this is necessary because the .Net Framework still needs to work with older applications E.G an app made in the early 2000s.
So basically the .Net Framework is slowing down apps in the new world of software so many new advancements can’t be leveraged by the .Net Framework.
In 2016 Microsoft started the process of .Net Core. which is a new improved version of the .Net Framework with changes like how processes are executed and what is supported/not supported. Also a lot of backward compatibility has been removed for things no longer needed.
.Net Core has a massive speed increase compared to .Net Framework. Also the code in .Net Framework will run 97% of the time in .Net core however some structures and 3rd party dependencies will have to be changed this is true as of [.Net Core 5].
.Net Framework will still be supported for many years, however new development should be using .Net Core.