Todd Grooms

Ho Ho Ho


Christmas Project


Christmas Project: Part 3

After finishing the light sequence, I modified the breadboard to wire an LED for each channel. Then I modified the Xmas.py script from the Instructables walkthrough. I then grabbed an mp3 copy of Let it Go from Amazon. Now I am in business.

The next step will be wiring up the relay and stringing up the lights.

Source


Christmas Project: Part 2

The next step for my Christmas project was to setup a breadboard with LEDs and to light those LEDs in a pattern. Once I had one LED working, setting up more was trivial. Now that I have the pattern lit up, I’m ready for the next part.

Source


Christmas Project: Part 1

We have friends who put out a huge Christmas light display every year. The lights are connected to a computer and that computer will drive a light show that is synchronized with music. They also invested in an FM transmitter to broadcast the music to cars who want to stop and watch the show. I have always loved this idea and have often entertained the notion of putting together our own light display. Unfortunately, we live in the rear house of a two house lot, which means we have no street visible area for a light show. We still put out Christmas lights every year, but these lights are mostly for us to enjoy as no one else will see them. I had mostly given up the idea of putting together a large light project. However, this year I stumbled across this: Raspberry Pi Christmas Light Show. After I saw this project, I knew I wanted to try and put one of these together for our house.

I made a hard sell to Max. My idea was to have a project we could work on together. After he agreed, I ordered the parts. The parts arrived the weekend after Thanksgiving and we started to test out a few things. We started by prepping the Pi, which means we had to apply the heat sinks, and install Raspberry Pi OS on an SD card. I had already purchased an Adafruit console cable for when I bought my first Pi to setup our Pi-hole. Connecting the console cable is a cinch:

Black -> GND
White -> TXD
Green -> RXD

If you’re connecting to the Pi through the console cable on a Mac, you’ll need to install drivers. If you’re connecting to the Pi through the console cable on Linux, the drivers should already be installed (or at least were for me on Pop!_OS). You can just use screen to connect:

$ sudo screen /dev/ttyUSB0 115200

The ttyUSB0 might be different on your setup.

After ensuring we could connect to the Pi, it was time for our Hello World equivalent: wire a push button and LED on a breadboard through the GPIO pins and write a simple Python script to run the circuit. When the push button is depressed, the LED should emit light; when the push button is released, the LED should not emit light. After setting up this test, I demonstrated it to Max. He was nonplussed; tough crowd.

Source


Autumn colors in Nashville.


Finally


Rainy day walk near Kentucky Lake.


Fading Childhood

Ashley was helping Max cast while fishing this weekend. As she went to cast, Max leaned forward. Instinctively, she released the fishing pole to catch him. The pole was flung into the water. I watched with dismay as his Lightning McQueen fishing pole slowly faded into the murky water. I briefly considered diving in after it, but noticed the line was still in the boat. I yelled for Ashley to hand me the line. As I started to pull in the line, I immediately realized I was simply pulling the line out of the reel; the catch mechanism had not been triggered and I was unspooling the line. I started to get anxious. Max started to cry. As Ashley consoled him, I carefully pulled the line up. I hoped the line was tied-off correctly and would not simply come completely unwound, leaving the pole to continue its descent. Finally, I could see the pole at the top of the water. I kept pulling, but could not get it to come up high enough out of the water to grab it from the boat. Panic was setting in. I knew the end of the line was coming. Thankfully, enough of the pole breached the surface and I was able to rescue the fishing pole from meeting a cold, wet resting place.

I have been reflecting on why I found this event to be so traumatic. I, of course, do not want Max to be disappointed or to lose something that he loves. However, I think it is a bit deeper than that. I felt as though I was watching Max’s childhood fade from me; slowly receding from view and reach and I was devastated. Over the last few months, as Max phases out things that he has outgrown, I have become quite sad. He is growing up. He is growing up fast. I am not ready for this.


We had originally planned a trip to Disneyland for Max’s fall break. I wanted Max to experience Cars Land. Cars was one of Max’s favorite movies. He adored those characters. We specifically chose to stay at Art of Animation for our Disney World trips so that he could stay in Radiator Springs (part of the resort is Cars themed). I realized that Max would be outgrowing Cars soon. I knew this October was possibly our last shot of him getting the most out of it. It was not long into the pandemic before I realized that our trip to Disneyland was increasingly unlikely; as we approach October, it is a certainty.

I become a little emotional when I think about the things that Max is missing out on. That emotion largely turns into anger given enough time. It feels like his childhood is slipping away from me. Even though I flail and grab at what is left, it feels as though it slips away even faster. I am not sure I am ready for him to outgrow Cars. I realize that Cars is a placeholder here. I am just not ready for him to move into that next stage. We have not watched Cars in months, possibly over a year at this point. I think we missed our window.


I found this friend while cleaning up brush in the backyard. Closest look I’ve gotten in real life. I was so happy to share this with Max.


The Winter Classic

I’ve been meaning to write this post since January. However, with Adelaide’s birth, followed by the pandemic, the abhorrent murder of George Floyd, and the inspiring Black Lives Matter protests, I have felt overwhelmed. My experiences and life seemed inconsequential. I have had the feeling that my blog does not contribute to the current world. Truthfully, it most likely does not.

A handful of people who are very important to me do read this blog. I am trying to overcome the paralyzation I feel at the thought of documenting my life when there are so many notable things occurring in the world. That is why I am revisiting something that occurred at the very beginning of 2020. Bear with me.


I purchased our tickets when they were first available to Predators’ season ticket holders; a friend who is a season ticket holder was able to purchase the tickets for me. I knew Max would be excited: a trip to Dallas to watch an outdoor hockey game between the Predators and the Stars. We had watched the Winter Classic on television in previous years. Ashley and I had never been to an outdoor game. It would be a shared first experience for our family.

As December 2019 approached however, we realized we would not be getting the experience for which we had planned. Ashley was pregnant with Adelaide. On January 1st, Ashley would be over eight months pregnant. Not the best time for air travel. We briefly considered driving, but the a long road trip would not be much fun for her either. We eventually decided that I would take Max and she would stay home. This would be our first trip together, just the two of us. I was excited and scared.

On December 31st, we were departing Nashville for Dallas. Max has always done well with air travel. Other than lugging our bags and booster seat through the airport, the air travel was a breeze. Once in Dallas, it took some time but we found the shuttle to the rental car hub. After a short bus ride to the rental car, we were on our way to the hotel. It was exciting. Max was doing great. We found a burger place for dinner, then tucked in early so we would be ready for the big game.

About midnight, I awoke to a thumping bass line. The restaurant where we had eaten dinner was having a New Year’s Eve party. I silently cursed that restaurant. I have never been a big fan of New Year’s Eve celebrations and this event was not doing much to sway my opinion of them. It was hours before I finally fell back asleep. Thankfully, Max slept right through this. He is one of the heaviest sleepers I know. I have witnessed this kid sleep through an errant smoke alarm. I was worried that the length of time the music was playing would be an issue, but he slept right through it.

We woke up early and ate breakfast while I planned our public transit to the Cotton Bowl, the site of the Winter Classic. I was pleasantly surprised to find out that the public transit was running on New Year’s Day, even though it is not usually scheduled to do so. Additionally, the transit was free as there would not be a good way to enforce tickets with this many people riding the train to the Cotton Bowl. The downside was the sheer number of passengers. We were packed into the cars like cattle. This is when I first started to grow concerned with our big day; I was terrified of Max getting stepped on, trampled, or getting separated from me. I held onto him tightly. Luckily, a family on the train helped make room for us and helped keep us together. They had young kids at home and could relate to our situation. They talked to us and, most importantly, talked to Max, who was excited to talk to anyone about his big day.

The Cotton Bowl is located on a huge plot of land that is commonly used for fairs. The midway area was filled with food and games. The midway was overwhelmed. We played a few games, but it took forever to snake our way through lines. It was cold; not freezing, but borderline uncomfortable. Moving through the crowd was slow. I was still terrified of losing Max in the crowd. My eyes continuously scanned the midway and fell back to him, ensuring he did not leave my side I kept his hand in mine.

Food lines were ridiculously long. We waited in one line for over forty-five minutes, only to be told the one item my son wanted was currently out of stock. “Are you cooking more?” I asked. The cashier confirmed that more were being cooked. “Can I buy one and wait?” I followed up. “No,” was the response. She indicated we could get back in line to try again. What in the fuck? Infuriated, I started searching for shorter lines. I found one, but it was for deep fried Oreos and hot chocolate. This was our lunch. Thankfully, we had brought Max’s small backpack which contained his water bottle and snacks. At least we could fall back on these until we were inside.

About an hour before the game started, we started making our way back to the main entrance. The midway had more people in it than when we arrived. We were slowly shuffling our feet for a minute, then standing still for ten minutes; slow shuffle for a minute, stand still for ten minutes. It was horrible. I felt bodies pressing into mine and I pushed back, ensuring Max had plenty of room. I thought the pressure might be relieved once we made our way through the entrance gate, but I was very wrong. It became worse somehow. The walkways behind the bleachers where the restrooms and concessions were located was completely filled. We were walking by the restrooms when the door opened outward into the crowd. What kind of idiot would design the doors to open out into the walkway?

We made our way to our seats. We made one exception for a very long bathroom break, but other then that we stayed planted in our seats. The crowd was too much and I did not want to wait in long lines for concession foods, even though I was starving. We snacked on Max’s snacks and shared his water. By the time Max was ready to leave, I was starving.

We left the game with less than ten minutes remaining. The Predators were comfortably on their way to a loss and Max was ready to leave. I could tell that he loved watching the game and he loved the environment. I was focused on the negatives and he was focused on the positives. I found the experience to be stressful, but I also loved spending the time with him. I knew this would be a shared memory that we would have, one that we could talk about for months or years after. It would be ours.

The transit away from the stadium was just a clumsy, crowded, and dangerous as the transit to the stadium. We had to wait for trains, but people constantly broke the rules for boarding the trains, jumping the railing and sneaking across to cut line as much as possible. I loathed them for not waiting in line. Their lack of respect for others agitated and annoyed me. We were finally able to board a train headed back to our hotel. Our train was over capacity. My back was facing the door and my feet were on the last step before the door, past the line where you are allowed to stand. I braced myself the best I could to keep Max safe and away from the door. With each stop, more people departed the train, finally giving us breathing room.

Once we arrived at our stop, I looked up the closest restaurant: TGI Fridays. At this point, I would eat anything. The wait staff was shorthanded (because of the holiday), so our meal was very slow. Par for the course. I ordered a beer. After all of that, I really needed one.


Sunflower in the neighborhood.


Me in 1989

Max in 2019


Video Games in Quarantine

We have tried to avoid allowing Max to use tablets, computers, or video games. Ashley and I were in agreement from the start: we did not like the idea of Max spending his time playing on a tablet or playing video games. We eventually made concessions for long trips (whether it be for car rides or air travel). Then came kindergarten, where use of tablets and computers became semi-frequent as our public school system adopted this technology for testing. It irked me, but I was not going to move Max to a new school over it.

Then came the quarantine. Max has been doing some work via Khan Academy on an iPad. We now have frequent FaceTime calls with friends and family. We also started to allow for more video game play, using our Sony PlayStation 4 and Nintendo Switch. I was hesitant at first, but a friend of mine who does play video games with his kids talked about how he used that time as bonding him with his kids. I started to understand that if you’re playing with them, it can be a good connection or activity to do together.

Max has become enamored with Sonic the Hedgehog. It has been many years since I lost my Sega Genesis, but I wanted Max to see the first Sonic game. Fortunately, Sega has published a version of the original Sonic the Hedgehog on the Nintendo Switch. He enjoyed watching me play the original (much of our video game time is Max watching me play; I have tried to get him to play instead, but he will only play certain games). Then, we found my Sega Dreamcast along with my copy of Sonic Adventure. He pleaded with me to play.

My Dreamcast somehow still works. I have to place a heavy object on top of the CD-ROM lid to keep the lid closed so the system will read the disc and I have to set the date/time every time we power it on (I am assuming the the clock battery is dead), but the system still plays fine. It took some time to get reacquainted with the controls, but they are quite finicky compared to controllers from consoles of today. The graphics are not as appealing on an HDTV as they once were on my old CRT TV, but after a few days I adjusted.

Sonic Adventure can be a very frustrating game. If I did not have a copy of the strategy guide and online guides, I am not sure I would have been able to complete Sonic’s story. The controls, especially the joystick, can be quite unforgiving at times.

After completing Sonic’s story, we started on Tails’s story, but we didn’t get very far; Max had moved on to wanting to play other games. I am happy that we played the game together. It makes me happy to have these shared experiences and memories with him.


Backyard Camping

Max has been asking to go camping for awhile now. We waited a few weeks for good weather. This weekend was the best weather, overnight, that we could ask for: overnight lows would be in the 60s. Additionally, it would be dry. This was our weekend.

I do not feel comfortable going to an actual campsite at this time. I figured the campsites in our area would be packed. We decided to pitch a tent in our backyard. It was great to get the tent out of storage. Max even helped me with the tent. I let him swing the rubber mallet to drive the stakes into the ground while I held them (he only missed the stakes a few times, but got my hand every time he missed).

Our camping trip was a success. Even though we were in the city, it was still fairly peaceful. Once the neighbors’ party (trying not to judge) died down, we were able to fall asleep and stayed asleep until the very early morning (for whatever reason, I awoke around 03:30 and could not fall back asleep).

I do not recall how many times I camped in the backyard as a child, but I only remember one time though. I was staying the weekend with my brother’s father, who I thought was my father (it’s a long story for another time). We were in the backyard and I finally fell asleep. I remember it being cold and dark when I woke up. I was now alone. I remember being scared. I wasn’t sure what to do. I figured it was sometime in the early morning, but did not have a watch with me. My brother’s father had left the tent and went inside the house to watch television instead. I found him passed out on the couch. I do not recall my exact age, but I would guess I was around eight. I will never do that to Max.


🔉 BBC: 13 Minutes to the Moon

I recently discovered a new podcast called 13 Minutes to the Moon. The first season documents NASA’s Apollo Eleven mission. “13 Minutes to the Moon” references the descent of Eagle from Columbia to the lunar surface. I am halfway through the first season and I am loving it. It is such an emotional, powerful story. The second season is about the Apollo Thirteen mission. I am looking forward to that season as Thirteen is my favorite Apollo mission. I love the resourcefulness exhibited to safely return the crew back to Earth.

Last summer, Max’s preschool spent a few weeks talking about Apollo Eleven during its fiftieth anniversary. Max became enamored with space travel, the moon, and Neil Armstrong. All astronauts are very interesting to me, but the astronauts from the Apollo Eleven mission are truly fascinating. We spent weeks reading about the members of that crew and their journey.

One day, while discussion Apollo Eleven, Max asked me if Neil Armstrong was still alive. I was not ready for this. We had not (and still really have not) had a discussion about death and what that means. Max was quite familiar with the concept of “extinct”, but we had not really discussed death. I clammed up. I did not know how to reply. My fear was that if I told him that Armstrong had passed, he would become scared and not want to be an astronaut. Knowing full well that Armstrong had passed in 2012, I feigned ignorance and told him I did not know. I am a coward.


Coping with Coronavirus Part 3

We have been ordering takeout and having meals delivered from local restaurants. We are trying to help local businesses, but every order is sprinkled with guilt and smothered with anxiety. I am attempting to trust the common wisdom that ordering takeout from restaurants is safe, but every order is a journey.

First, I clear off the counter space. Next, I lay out the clean plates where I will plate the food. Then, I watch for updates on our delivery. Once the food arrives, I quickly bring the food in and place the bags on the counter. I take the containers out of the bag, then immediately dispose of the bag. I then pop open the containers, followed by twenty seconds (sometimes more, never less) of hand washing. After this, I swiftly plate the food, then dispose of the containers. With a Clorox wipe, I saturate the counter top and anything else I may have touched in the process (drawer handles for instance). After another bout of hand washing, I am ready to serve our dinner.

Over the past few weeks, I have become rather efficient with this process. However, I am always stressed and filled with anxiety as we eat. It is unlikely that the food itself is contaminated, but I still worry as Ashley and Max consume our dinner. I am on edge if Max is “helping” get dinner ready or if he wants to “help” unpack our groceries after a grocery trip. Not touching anything until I can get everything sterilized would be the greatest help of all, but a six year old hellbent on helping is difficult to deter.

Each time I order takeout or ask someone to risk their health by bringing us food, I feel guilt. I loathe myself for contributing to a system that forces people to work and risk their health at a time like this. To all the workers in the food industry, rather it be the grocers, cooks, or delivery people: I am eternally grateful. I make it a point to thank you as much as I can in our brief exchanges. I tip whenever I can.

Thank you.


Coping with Coronavirus Part 2

I have been a remote employee for one and a half years. I miss working in an office, but I have grown accustomed to digital communication amongst coworkers. Even though I do not always go out for social gatherings, I still enjoy visiting with friends whenever life permits. The past few weeks have been tough. Some of my regular outings are no longer necessary (school pickup, taking Max to the park) or permitted (dinner and a beer, ice cream with the family at Jeni’s). Compound this with the absolutely dreary weather we have experienced over the last few weeks and I was quite glum.

During a walk with Brie (our mischievous Beagle), it started to rain. I was suddenly caught in a downpour. As we walked, I became drenched. I looked up to the sky and appreciated the warm shower. We finished our walk and I felt comforted. A few days later, the weather broke and we now have sunshine. Sitting in the sun, feeling a breeze, fills me with optimism that this will pass.


Coping with Coronavirus

The last week has been a strange experience. Last week, we received the call late Wednesday evening: Max’s school would be closed on Thursday and Friday leading into Spring Break. Not a huge deal for us. Ashley is on leave, bonding with Adelaide. We had already planned a Spring Break trip to his grandparents’ house for Max. Through the weekend, we realized we were all uncomfortable with the idea of Max traveling during this time. Max was devastated, but we canceled his trip. We assured him he would get to visit his grandparents soon, but we could provide no timeline. It was difficult.

The gut punch came a few days later: school is now closed through April 3rd. We now realize how unrealistically optimistic even that timeline is. We felt it was necessary to prepare for the long haul. Ashley started putting together a schedule and a homeschool plan. Fortunately, Max is in kindergarten. It is easy to piece together a small lesson plan for him. Unfortunately, Ashley is caring for Adelaide at the same time. Ashley is remarkable though; the energy and thoughtfulness that she is bringing to this challenge is inspiring.

The most difficult part of this experience for me has been the time Max has missed being a kid. We are isolated in our home, leaving him unable to play with friends from school or even from the neighborhood. To his credit, he has handled this situation with patience. There have been a few questions of “Why?” and “Why not?”, but for the most part he has been great.

It has been an adjustment. I am fearful for the time that he finally asks, “When will this end?” I have no idea when things will get back to normal, or if they ever will get back to normal. At this point, I am just hoping for a “better than now normal.”


Adelaide

In January, Ashley and I welcomed Adelaide into the world. The last few weeks have been quite emotional and very tiring. Max is now six years old. I am completely out of practice. Even if you are out of practice, it comes back to you. After a few hours, I felt comfortable holding a newborn. After a day or two, I remembered how to adequately swaddle a newborn.

Then there are the things that come back, but are not helpful. What worked to soothe one does not always work to soothe another. That has been a hard lesson to learn. I am learning what works for this one though (lots of music and gentle bobbing, much like walking). She cries. She poops. She is beautiful.

The most surprising change has been watching Max interact with her. I knew he would be gentle and respectful. I was not prepared for how much affection he shows her and how understanding he is with her. He reads to her. He talks to her. I try to take it in as much as possible. This is not my first rodeo; I know that these moments are fleeting and one day I will wish to have them back.

I am working hard at being more patient. I remember becoming quickly flustered with Max if he started to cry or became upset. It always felt like I could not soothe him. Either Adelaide is easier or it is easier because it is my second time around the course. Either way, I am appreciative of this time. I am very fortunate to be working for a company that gives a generous paternity leave this time around (whereas with Max, my previous employer offered zero paid paternity leave). I was able to bond with Adelaide over the first four weeks of her life, without worrying about work. I am grateful for that time. Additionally, I still have two additional weeks of leave that I plan on taking later in the year; it will be exciting to have additional time with her when she is out of the newborn stage, when her personality has developed more. She will most likely be a completely new person in a few months. They change so fast.

Welcome to the world Adelaide. I cannot wait to see who you become.


Showers at 4 AM. Such is life when you are on baby watch. After helping Ashley time her contractions, we decided it might not be a bad idea to shower and get ready for what the day might bring. 💐


I just finished painting baby #2’s bedroom. I considered hiring painters to do it. However, I felt this was something I could do as a welcome gift. I am very pleased with the outcome and happy that I put in the effort.


It’s always fun to wake up to fraudulent charge alert emails. Luckily it was just one attempt on one card that isn’t used for our subscriptions. It’s still a pain though.


2019 Kentucky Gubernatorial Race

I am unhealthily obsessed with my home state’s politics and state-wide races. I have not lived in Kentucky since 2009, yet I still follow Kentucky’s political news via a Courier Journal subscription. I was disappointed when Matt Bevin won the 2015 Kentucky gubernatorial race and became the governor. I knew he was running on the idea of rolling back Kentucky’s Medicaid expansion. This concerned me as Kentucky’s enrollment in the Medicaid expansion had been sweeping and popular. I was concerned about Kentuckians losing their health insurance or not getting the medical attention they need.

My disappointment evolved into anger over the years as Bevin continually spurred negative headlines. He was rude and condescending. It hurt me to watch him treat public educators as though they were inferior. His assault on public education has been maddening. During his entire tenure, it felt as though he was trying to disassemble or belittle the public education school system in Kentucky; a school system that I was fortunate enough to participate in.

When Ashley and I were considering our move back from California, one of the reasons I wanted to move to Louisville was to have the chance to vote Bevin out of office. I looked forward to casting my ballot for whomever opposed him. Unfortunately, we did not move to Kentucky; I became a spectator to the 2019 Kentucky gubernatorial race from Tennessee. I was happy that Andy Beshear won the Democratic primary. I watched the returns last Tuesday night and was ecstatic over Beshear’s victory.

However, my excitement soon gave way to anxiety. Bevin refused to concede. Worse, he dropped baseless (without proof) accusations about voting irregularities. Instead of bowing out gracefully, Bevin is trying to harm democracy on his way out. I would love to feign surprise here, but I won’t; Bevin is behaving in a classless manner. At this point, I wouldn’t expect anything less. On November 5, 2019, the people of Kentucky voted against one of the most unpopular governors in the United States, regardless of political affiliation. It’s time to acknowledge your defeat, pass the torch, and fade into the background. Perhaps if Bevin would have attended the same public schools in Kentucky that he is wont to attack, he would have learned how to treat others with respect and to carry himself with grace.


No one prepared me for how much of adult hood is either looking at burned out light bulbs or replacing burned out light bulbs. Come to think of it, most of my adult life has consisted of replacing things.