Saturday, January 31, 2015

An apology for hiatus:


Unfortunately, for the time being, I'm heavily involved in the other two.
I'm studying really hard for some upcoming technical interviews!
I'll be sure to report back with what I've learned. : )

Monday, January 5, 2015

Hansei #1: Winter Break 2014

  1. Hansei (反省, "self-reflection") is a central idea in Japanese culture. Its means to acknowledge your own mistake and to pledge improvement.

Now, I would argue that that's a bit of pessimistic analysis of Hansei (likely from a gaikokujin who had it a few times too many...), but I do believe in the principle of self-reflection, and enjoy the manner in which Hansei accomplishes this. It's important to take a step back and reflect before moving forward, and I feel like it is the cultural idea that has allowed Japan to be known as "the great optimizer" in the field of technology. 

Now enough seiza about hansei. I wanted to take the opportunity to reflect on my progress with projects over the winter break this year. I effectively had 2 weeks of break of because I chose to work the first week full-time at the Technology Center. While this took a bit of my time, it also supplied me with cash for presents for my family, gasoline, you name it.

Unfortunately, much of my break was really not ideal. We had some trauma in the family followed by my own sickness, followed by my friend's tragic car accident. Thankfully he's going to make a full recovery, and I'm feeling much better myself. 

I know this sounds quite soap opera, but it was not enjoyable. Thankfully it was still a good opportunity for my family and friends to come closer together to take care one another.

Though I was sick, and no good for circuiting or the stresses of ROS debugging, I figured it was a good time to start on the Raspberry Pi (B+ model). I went ahead and built my case, and also started playing with RetroPi. Though there's a lot of confusing configuration to be done, it was so cool to be playing late 90's classics on a small 35$ dollar board!

Back on the homestead I also made some progress with my ROS project, but not as much as I needed to. I believe this is because I got an idea of trying to outline all of the publishers and subscribers at once. I should make clear outlining vs. what I choose to implement step by step.

I did learn that I am capable of working on multiple projects though-- providing they are not to similar, and well, feel differently. If that makes sense. Learning that comes from my favorite games feels less stressful and more tangible to others than fine-tuning a state machine, or debugging an IMU. I'll keep this in mind in the future.

I think that's enough reflection for now. As the semester moves on, I will keep these points in mind. Thank you everyone.


Sunday, January 4, 2015

Fooling with RetroPie #2: Configuring the Xbox 360 controller

So I've had a relatively successful night tinkering around with retropie. While I have a lot on my agenda, I've made a bit of progress tonight, at least in understanding how you get from a bare joypad to having input on all of your different emulators. Here I'll briefly explain the architecture of controller inputs for the Nintendo family of emulators (as I understand it) with a small chart.

(This is the first draft of the image... may not be 100% correct)

As you can see here, when you call on a ROM, it calls back to the emulator's config file. If there's nothing there, it falls back on the general config file. Lastly, if there are no notes here, then it calls back to the config file for the controller.

Due to the high amount of incoming enthusiasts combined with their low amount of know-how, I'll be going back and creating individual entries for 'fixes' to common RetroPie problems, such as downloading the 360 drivers, configuring the various emulators, and adding features like hotkeys and the like. You can look forward to those soon. 

Tomorrow I'll be getting to the bottom of this controller hierarchy thing. When I stopped I finally had figured out a hotkey menu that was being pulled from the controller's config file. I hope to overwrite these controls with particular interfaces for each ROM. Then I want to look into MAME emulation-- hopefully in time for my birthday party. I look forward to some four player Trog. : )