Lay The Brick Anyway

Having recently started my first “big boy” job in the last few months, I have gotten into an obnoxious habit of complaining that I never have enough time for myself. I just got off the phone with my girlfriend, the amazing person who tolerates all of my complaining, and she was very excited for me that I had five whole hours on a Friday evening to myself. My initial, sack-of-potatoes-like response was, “Yea…but it will be over before I can get anything done.”

I do not know when I developed the mentality that a small piece of quality work could not be achieved in a short period of time, but it is definitely a great excuse for never starting things. Part of me had been interpreting the phrase, “Rome wasn’t built in a day” as, “I won’t be able to build Rome today, so why bother starting.”

For me, Rome represents developing software projects, building this blog, strengthening my body, and growing my relationships. I should realize that these ventures cannot all be achieved in a single day, and should instead seek to lay a single brick in the right place. Hell, any place would be good to start.

Even though there are a million obstacles between me and Rome, I am going to lay the brick anyway.

Taking Ownership of this Blog

As easy as it was to logistically set up this blog, I have procrastinated on actually posting any content for a variety of reasons. One important reason was the mindset I had of this not being the right time in my life to start a blog. With trying to find a job and apply to graduate school, the long-term return on investment of starting a blog seemed so impractical. Just another example of my sensible practicality gone astray.

A more difficult reason to grasp and especially overcome would be the feeling of unworthiness that I associate with putting myself out there. For who am I to voice my opinion, start a blog, apply for that job, or want to get into that master’s program?

A shift in mindset

I really enjoy listening to clips from Joe Rogan’s podcast. Not only does he have some truly insightful conversations with people, but he has some very inspiring personality traits. Maybe that should be saved for a separate blog post though.

There is a particular clip from his interview of the director Guy Ritchie that spoke volumes to me. In the interview, Guy Ritchie demonstrates that the “essence of all narratives” is the battle of identifying who we are as individuals. “There are two worlds”, Ritchie describes, the external and the internal, each of which are “trying to tell you who you are”. The conflict boils down to having the confidence to remove your crutches, stand as the person you are, and accept that “you are enough”.

The shift in mindset for me came after naming the dilemma and realizing that this battle was going to take place whether I wanted it to or not. Better then, for my sake, to take ownership of the situation and go on the offensive.

This is where I put my ‘X’

I have high expectations for this blog. This is my corner of the world and I’m going to own it. Just like Guy Ritchie says about suits, “I don’t mean by paying for it”. I’m going to own it by being the master of this kingdom. This blog provides me opportunities to develop discipline and creativity, as well as grow as a person. I intend to build this blog into something I can be proud of.

And yes, I am enough.

Embarking on a Journey

Motivated to Build an Electric Car!

I recently started my final project for my embedded systems course in the Winter 2018 term of college. I knew immediately that I wanted to build some sort of autonomous car. While the innovator in me realized how many spin off projects I could have in robotics and machine learning from just this one project, I must also admit that a recent fascination with classic cars certainly helped sway me as well!

I find this to be slightly contradictory actually. Having never driven a classic car myself, I am aware that much of the enjoyment stems from being one with the machine. From feeling the rumble of the engine under your foot to orchestrating the the transmission of the car, the experience is one of raw power. Classic cars simply wouldn’t be what they are if we weren’t the ones in control of that power! So this is what I find to be contradictory: a man that wants to enjoy power while spending every day discovering how to relinquish it!

My end goal isn’t to make it into the autonomous car industry. I am much more fascinated in autonomy in situations where humans are simply not able to perform the task. Many examples in the aerospace industry arise, and this is where I’ve set my gaze for the time being. But before I work on rockets, if I ever get the change, I’ll start where many have started before me: a simple remote controlled car!

The Project Proposal

For the scope of this project I would like to build the foundation of a remote control car and introduce some aspects of autonomy. The car will be remotely controlled by a joystick and four DC motors. To begin, the joystick may be wired to the car necessitating the driver to follow the car around. Once the mechanics are working, I will introduce the nrf24l01 transceivers so that the car can be remotely controlled. Finally, I would like to add an automatic braking system into the car using an Ultrasonic sensor. This feature should prevent the driver from having a head on collision with any obstacles.

Components

  • The course requires that I use the Atmega 1284 micro-controllers.
    • That wasn’t a complaint at all. While I’ve read up on the importance of Arduinos in prototyping, I’m much more interested in getting my hands dirty with some serious hardware, the stuff that’s actually used in industry.
    • So if anyone that’s reading this sees that I’m using an “inferior” product in their eyes or that maybe I could enhance my learning by using some other piece of hardware, please let me know.
  • Joystick for dictating the car’s speed and direction.
  • L2930 H-Bridge Motor Driver for communicating with the motors.
  • 6V DC Motors with built in gearboxes.
  • HC-SR04 Ultrasonic sensor for detecting obstacles.
  • nrf24l01 transceiver modules for remotely controlling the vehicle.

Pin Layout

This is my initial layout for the micro-controller ports and component placement. I know I’ll end up changing something, but for now, I know everything will fit alright!

I’m new to image licensing, so I may be infringing on copy-write…but this is not my image. The original pinout image was found on Google Images and belongs to Protostack.

In Conclusion

I hope to be posting progress of my project at least every other day: whether it be code, breakthroughs in how to use a piece of hardware, or ideas to extend the project. I want to build the habit of documenting why I made decisions in my projects, as well as be able to look back fondly at this experience in a couple of years . If this documentation manages to help someone else, all the better!