2017-04-22 (Sa) Weekly Summary

Tim and I have started a short series about immortalizing humans. I guess humans always think we're on the verge of the fountain of youth. We started with cryonics, which is the act/art of preserving humans with extreme cold.
Brian - Left _____ Tim - Right

The firmware on the Arduino has no automation related to buttons, lights, or infrared. All automation was meant to take place in the computer, a Raspberry Pi in this case, so using a Python program to transmit an infrared signal was pretty exciting. That signal was received perfectly on another Arduino.

Automating infrared transmission with Python

After controlling an infrared transmission, it was time to control LEDs. LEDs were controlled by sending a serial command which toggled the LED. In the animation below, it's easy to see that the red and green lights switch with each button press.

 Controlling attached LEDs with Python

Writing the Arduino firmware on a computer at one corner of the room while writing the Raspberry Pi software at a different desk led to a lot of running back and forth. A tablet computer was set up near the Raspberry Pi since it could program the Arduino while the Pi occupied the desktop computer display. In all this cobbled-together hardware, the keyboards were the most expensive pieces of equipment.

Two-computer setup for sending and receiving

The Python game was proven but it was severely hindered by a few things. The game worked but only with two players and each player would have to have their signals hard-coded. This level was never meant to be the final product but the procedure is helping to streamline the firmware.

Readable game data from Python

Data about infrared signals has been as an unbroken string of hexadecimal characters. Python did not have an easy time with this so the firmware was changed to print a header of '00' followed by four decimal numbers with spaces between. The spaces weren't necessary for the computer but they make it easier for someone looking at the readout to understand what's being sent. Three remotes were used to test that the signals being sent were accurate.

Infrared remotes used to test firmware


Disclaimer for http://24hourengineer.blogspot.com/

This disclaimer must be intact and whole. This disclaimer must be included if a project is distributed.

All information in this blog, or linked by this blog, are not to be taken as advice or solicitation. Anyone attempting to replicate, in whole or in part, is responsible for the outcome and procedure. Any loss of functionality, money, property or similar, is the responsibility of those involved in the replication.

All digital communication regarding the email address 24hourengineer@gmail.com becomes the intellectual property of Brian McEvoy. Any information contained within these messages may be distributed or retained at the discretion of Brian McEvoy. Any email sent to this address, or any email account owned by  Brian McEvoy, cannot be used to claim property or assets.

Comments to the blog may be utilized or erased at the discretion of the owner. No one posting may claim property or assets based on their post.

This blog, including pictures and text, is copyright to Brian McEvoy.