phone

    • chevron_right

      Install Home Assistant Core on Orange Pi Zero 3 (part two)

      pubsub.slavino.sk / onetransistor · Tuesday, 6 February, 2024 - 16:33 edit

    Some time ago I decided to get Home Assistant (HASS) running on a single board computer (SBC) without knowing too much about this software. As I soon found, Home Assistant is complex software and there are multiple installation methods, more or less available depending on target hardware. In short, I got an Orange Pi Zero 3 SBC with 2 GB of RAM which I intend to use as a local home automation server.

    Although the SBC has sufficient processing power for Home Assistant, I shouldn't expect too much from the limited SD card storage. I decided to give it a try anyway since I really like the small form factor of Orange Pi Zero 3 (it can directly replace the old Pi Zero with only 256 MB of RAM I am currently using for hosting a local MQTT broker). Although this guide is targeted at this specific SBC, it is very probable that you can install HASS on similar Linux platforms using the same commands.

    Install Home Assistant Core on Orange Pi Zero 3

    Read more

    Značky: #HASS, #Elektro, #IoT

    • chevron_right

      Receive weather station data with Arduino

      pubsub.slavino.sk / onetransistor · Friday, 26 January, 2024 - 20:43 edit

    A while ago (to be more specific two years ago) I used software defined radio to capture and decode RF signal from the outdoor unit of a weather station. This allowed me to emulate the protocol with an Arduino and a cheap 433.92 MHz transmitter and send my own data to the indoor station. I can make my own units and it is useful if the original outdoor unit fails. The outdoor unit uses on-off-keying (OOK) and sends pulse distance modulated bits, explained in detail in the linked post.

    But what about receiving data from outdoor unit(s) with an Arduino? One can add an ESP8266 to capture temperature and humidity and publish data to MQTT, Home Assistant or other IoT servers. Capturing and analyzing pulse timings of a signal was a daunting task for me. However it turned out to be easier than I thought, using an interrupt routine. In this post, I'll explain all the steps required to make a pulse distance modulation (PDM) decoder.

    receiver_prototype.jpg

    Read more

    Značky: #ESP8266, #LPD433, #MQTT, #Elektro, #Radio, #Arduino

    • chevron_right

      How to use the EZP2023+ USB Programmer

      pubsub.slavino.sk / onetransistor · Tuesday, 26 December, 2023 - 12:51 edit · 1 minute

    Previously I analyzed the hardware of EZP2023+ USB Programmer to find it is a rather simple device, based on CH552G microcontroller which allows for SPI, I2C and MicroWire capabilities. If you didn't know this is a serial memory programmer, which can be used to read and write a variety of memory chips, including EEPROMs and BIOS ICs commonly found in computers and other electronic devices. After I traced the schematic, I realized EZP2023+ also comes with mixed voltage levels (meaning it powers the memory to program with 3.3 V while the data bus uses 5 V for I/O) and this is a big issue since it can destroy whatever you are trying to read or program.

    In this post I will share my experience with the programmer and discover some flaws of its programming software. You should get the programming utility on a CD which is in the product box. Since recent computers and notebooks no longer have an optical drive, this is already an issue. Getting past that, on the CD you will find the user manual and accompanying software, with driver. Let's see how you get everything ready to program memory chips.

    How to use EZP2023+ USB Programmer

    Read more

    Značky: #Elektro, #Programmer, #Electronics, #EZP2023, #SPI, #I2C

    • chevron_right

      EZP2023+ USB Programmer Overview and Schematic

      pubsub.slavino.sk / onetransistor · Sunday, 12 November, 2023 - 18:18 edit

    EZP2023+ is another USB programmer for SPI, I2C and MicroWire memory chips. It is not as cheap as the CH341A however it has some nice features. I got mine from AliExpress with a set of adapters for SMD packages, an SMD clip and LCD panel adapter. It also came with 1.8 V adapter board which is also a nice thing. EZP2023+ is advertised as the fastest programmer, better than previous EZP2019. Soon after I ordered it, I found there is also EZP2025, already available in 2023...

    Anyway, the main reason I got myself one is for the set of adapters which can also be used for CH341A MiniProgrammer. In comparison to that, EZP2023+ seems to be a better product, having a proper enclosure. Although I got a CD with this programmer (which contains driver, software and user manual), they forgot to mention how should I place the IC in the programming socket. I had to get a clear understanding of how it should be used properly, so I disassembled the case to have a look at the electronics.

    EZP2023+ High Speed Programmer Schematic and Drivers
    EZP2023+ USB Programmer

    Read more

    Značky: #I2C, #Elektro, #Electronics, #EZP2023, #SPI, #Programmer

    • chevron_right

      IMSProg and other Linux utilities for CH341A

      pubsub.slavino.sk / onetransistor · Saturday, 28 October, 2023 - 19:22 edit · 1 minute

    It was July 2017 when I ordered an EEPROM programmer I found on AliExpress for only 2.13 USD with free shipping. It wasn't a surprise it came without any kind of documentation. So I began searching for information since I didn't knew how to use it or what PC software I need to read a memory chip. In fact, I didn't even know how to place a chip in the programming socket. I gathered all information about the programmer hardware in this post . At that time I wasn't expecting this programmer to become so popular, still being used today.

    The CH341A MiniProgrammer and other programmers based on this controller are affordable USB programmers used for reading and writing EEPROM chips and flash memory. They are widely used by hobbyists and technicians for tasks like flashing BIOS chips, recovering data from bricked devices, and working with various types of EEPROM and SPI flash memory chips. Yet, with all this popularity, the only (probably) official software for this programmer is Windows-only, hard to get and some of the alternatives come from not very trustful sites. Let's see what is available for Linux (Ubuntu).

    Reading SPI Flash with IMSProg
    Reading SPI Flash with IMSProg
    Read more

    Značky: #Elektro, #Programmer, #USB, #CH341A, #Linux

    • chevron_right

      Review and Tests of Mechanic ET-10 Heating Table

      pubsub.slavino.sk / onetransistor · Sunday, 22 October, 2023 - 13:43 edit · 1 minute

    I've been looking recently to buy a hot plate for SMD work. I didn't like the big 20 by 20 cm ones since I will not be doing such big PCBs. I also didn't like the Miniware 3 by 3 cm hot plate, because this is too small for my needs (and rather expensive). I decided to buy a 10 by 10 cm heating table, and Mechanic ET-10 caught my eye. More specifically I liked the hot plate itself, which is a 10 x 10 x 1.2 cm thick block of aluminum. It has two holes drilled through the back where two heating elements are inserted.

    I eventually bought it and from the outside it seems a solid design. However, just as I turned it on and set its temperature, I heard a relay clicking inside. Well, using a relay for an "Intelligent Digital Constant Temperature" is something that does not look very good. The aluminum heating block has an important volume, therefore a high heat inertia. The best way to get it to a constant temperature is to use PID (proportional-integral-derivative) controller. And I don't think this is how its controller works.

    Mechanic ET-10 hot plate
    Mechanic ET-10 hot plate
    Read more

    Značky: #Electronics, #Reflow, #Soldering, #SMD, #Elektro

    • chevron_right

      Set up Home Assistant on Orange Pi Zero 3 (part one)

      pubsub.slavino.sk / onetransistor · Saturday, 21 October, 2023 - 20:11 edit

    The Orange Pi Zero 3 is a powerful Single Board Computer (SBC) that can serve as the heart of your home automation system. With its compact size, low power consumption, and ample processing power, it's an ideal choice for DIY enthusiasts looking to automate their homes. In this guide, we'll walk you through the steps to set up and use the Orange Pi Zero 3 for home automation. I have previously used a less capable SBC and even an old router to run a self hosted MQTT server. It is time for an upgrade.

    The main point of this upgrade is to add functionality beyond MQTT, such as database storage, reports and Home Assistant. I really want the latter since I have some ESP8266 relays and sensors I currently use and I think ESPHome could speed up software development while being easy to integrate with Home Assistant. Note that you may use another SBC from the OrangePi family for this purpose. I chose Zero 3 because it is powerful enough while being similar in size with the existing Zero I currently use.

    Set up Home Assistant on Orange Pi Zero 3 (part one)
    Read more

    Značky: #Elektro, #MQTT, #IoT

    • chevron_right

      Change default open with application in Ubuntu

      pubsub.slavino.sk / onetransistor · Saturday, 15 July, 2023 - 19:43 edit · 1 minute

    With the new Ubuntu 23.04 release I found myself struggling to find a valid answer to a very simple task. I own a 3D printer and I design stuff in FreeCAD, then export to STL and load this in Cura to slice it and produce gcode for printer. If in Windows 11 there is a 3D viewer application which opens STL files, Ubuntu doesn't come bundled with a similar app and I hate loading every STL file in Cura just to see the 3D model. However, there is fstl , which I found it to be exactly what I was looking for: it is lightweight and it opens STL files.

    I installed it from default repositories with sudo apt install fstl . Although this is a GUI app, it can only be started from command line, having no desktop entry to open it from Apps. I didn't have a problem with this, since I knew I could select any executable to open a file with. However, this is is no longer true. The Open With dialog no longer allows users to choose something else besides installed applications.

    Open With dialog in new Ubuntu versions
    Open With dialog in new Ubuntu versions

    Read more

    Značky: #Linux, #Ubuntu, #fstl, #Elektro, #STL, #3D-Print

    • chevron_right

      Daisy chaining and bus sharing with shift registers

      pubsub.slavino.sk / onetransistor · Sunday, 2 April, 2023 - 12:18 edit

    A shift register is a digital circuit that is used to store and manipulate data in a sequential manner. It is composed of a series of flip-flops, which can be viewed as basic memory units able to store binary values. The outputs of each flip-flop are connected to the inputs of the next flip-flop in the sequence, such that the data is shifted from one flip-flop to the next with each clock pulse.

    In this post I will use the 74HC595 serial-in-parallel-out shift register and its counterpart, 74HC165 parallel-in-serial-out shift register. Both are commonly employed when a microcontroller with limited available I/O pins has to control a large number of digital outputs or read a similar number of inputs (for example in home automation). What I want to show you in this post is how to daisy chain these ICs and how to make them share some control lines in order to keep the serial interface data lines to a minimum.

    Shift registers circuit on breadboard
    Shift registers circuit on breadboard

    Read more

    Značky: #Digital, #74HC595, #74HC165, #Elektro, #Electronics