Dec 12

Friday Post: Time Drift Sucks

Hey All,

I’ve been plagued by a bug at work for the past 6 months. Every so often, my oAuth library would fail out of the blue, causing some of my apps to die. It never occurred in production, only in our development environments. If I made the oAuth token by hand, or used the console, it worked fine. If I waited a few minutes, it would authenticate, and everything worked. Totally random, no rhyme or reason.

It wasn’t until this week when I was trying to use a library and upload some test files to an AWS S3 bucket that I got an error. My request time signature was 19 minutes behind the Amazon server. AWS (and my oAuth lib) have a 15 minute time window. But why was this happening? My clock was synced using NTP. I went to check my app and it had also failed. Then it hit me. I hadn’t rebooted my machine in a week. Our dev environments use vagrant, which runs a small virtual machine that containerizes our software. The virtual machine has its own clock, which gets synced on reboot. Over the week, it’s clock slowly drifted just enough that my timestamps failed for Amazon, and then for oAuth. Every so often it will resync, but not fast enough.

In 2014, I thought Time Drift was a thing of past, a relic of dying CMOS batteries, but it still exists today. So if you are ever using vagrant to develop your applications, setup an NTP daemon on the virtual machine, or just vagrant halt / vagrant up every so often :)

Happy Friday!

Dec 10

Holiday Shopping Guide 2014

Hey All,

Figured I would post a list of items that I feel would be awesome purchases for anyone with an electronics itch to scratch!

Holiday 2014

Raspberry Pi Model B+ (B PLUS) 512MB Computer Board
Raspberry Pi Model A+ (256MB)
Mayflash PS2 PS3 PC USB Universal Arcade Fighting Stick
Qanba Q1 PS3 & PC Joystick (Fightstick)
X-Arcade Video Game Controller – X-Arcade Solo
AmazonBasics High-Speed HDMI Cable – 6.5 Feet (2 Meters) Supports Ethernet, 3D, and Audio Return
Motorola USB Wall Charger with Micro USB Data Cable – Bulk Packaging (Black)
RASPBERRY PIHUB
Tontec® 7 Inches Raspberry Pi LCD Display Screen TFT Monitor AT070TN90 with HDMI VGA Input Driver Board Controller
Teensy++ 2.0
Super Scratch Programming Adventure! (Covers Version 1.4): Learn to Program By Making Cool Games
SanDisk Ultra 32GB UHI-I/Class 10 Micro SDHC Memory Card Up to 48MB/s With Adapter- SDSDQUAN-032G-G4A [Newest Version]
Rii Mini Wireless Keyboard with Mouse Touchpad-Black
Edimax EW-7811Un 150Mbps 11n Wi-Fi USB Adapter, Nano Size Lets You Plug it and Forget it, Ideal for Raspberry Pi, Supports Windows, Mac OS, Linux
SanDisk 16GB SDHC Card Class 4 Secure Digital High Capacity – Bulk Packaging
FlexPi Raspberry Pi Case (Blank)

 

Dec 03

Encade Portable Raspberry Pi Gaming Console Kickstarter

Hey All,

Just wanted to post a cool Kickstarter that I’m backing.  The people at Nzen Mods are designing a really cool Raspberry Pi based project.

https://www.kickstarter.com/projects/2032055368/the-encade-a-portable-raspberry-pi-gaming-console

It’s a portable Raspberry Pi based gaming console.  They are so close to hitting their goal, and only have 22 hours left.

Enjoy!

-Shea

Nov 23

Late Friday Post (yeah it’s Sunday): IAAPA! Super Smash Bros!

Hey All,

Sorry for the super late post.  The weather changes here in Florida knocked me on my butt.  I’ve been in bed for the past two days trying to get over this cold.  Going from 40 degrees to 70 to 80 back to 40 just messes with me.  It also didn’t help that I ran myself ragged on Friday.

IAAPA

So Friday was the “members of the public” day at IAAPA.  IAAPA stands for  International Association of Amusement Parks and Attractions, which means that if you ever wanted to see how a ride works, or where to get new arcade machines, or pretty much anything within the amusement / coin op sector, this is the place.  I go every year and it is always a blast.  The biggest noticeable trend this year is how un-3d everything is.  2 years ago every ride and game had a 3D gimmick to it.  Now, pretty much nothing is 3D except for the big ride experiences.

This year some of my coworkers went with me.  They enjoyed themselves.

Super Smash Bros.

Super Smash Bros. for Wii U came out this weekend.  Holy crap it is amazing.  I had friends over on Friday, we played 8 player smash, and it was a riot.  I will have the image of me playing as Samus getting the smash ball and taking out all 7 of the other players in one final smash attack burned into my memory for a very long time.

It’s a beautiful, well made, extensive game.  I have no idea how long it is going to take me to unlock everything.

The game also includes support for Nintendo’s new NFC characters called Amiibos.  Think Skylanders but different.  For now, the way they work is dependant on each game.  For Mario Kart 8, it just unlocks new outfits.  In Smash Bros, they act as a super smart CPU character.  The figures are really well made and look good sitting on display.

IMG_4536

I’m still trying to get some of the NFC info from them.  I’d love to write a program to back up the data, but it’s hard finding info on the MIFARE Ultralight chip it identifies as.

If you have any info please let me know!

Have a good week all,

-Shea

Nov 15

Friday Post: MakeSmith CNC Router

Hey All!  Happy Friday!

This has been a “short” week for me.  Had the day off on Tuesday for Veterans Day, and today campus closed early because our football team is going up against Tulsa.  Go Knights!

PiPlay happenings!  Mark has been working on an advanced database scraper tool.

IMG_20141114_163640

It’s going to be awesome once it’s get a little more polished.  I’ve been working on some more controller stuff.  I’ll have more to say about that soon.

MakeSmith CNC

A few months ago I backed the MakeSmith CNC router kickstarter.  The project was created to design and sell a CNC mill / router that cost less than $200.

cncnew

IMG_4466 IMG_4467 IMG_0147 IMG_0148 IMG_0149

My kit arrived yesterday, and I’ve gotten what appears to be the base put together.  The instructions are in the form of a bunch of YouTube videos, so I’m watching each one a few times, and then attempting the install.  I have forgone using wood glue at the moment, just in case I mess up or need to redo something.  I figure I will just reinforce the joints after everything is attached.

Have a good weekend all!

-Shea

Nov 07

Friday Post: DISPMANX_vnc and Homepass

Hey All,

Happy Friday!  I want to send a Very Happy Birthday to my Father.  This weekend is his birthday and I’m very proud to be his son.

I’ve been very busy these past few weeks,  I’ve been contracted to write a second edition of my Raspberry Pi Gaming book, and it’s taking up a lot of my time.  Even though its a subject I’m very familiar with, i’m finding out tons of new things I can do with the Raspberry Pi that have cropped because of my need to record and capture things coming from the Pi’s framebuffer.

I’ve been using a few tools, mainly ones involving DISPMANX to copy the framebuffer into a png file.  It’s called raspi2png and it works really well.  Sometimes its difficult to trigger raspi2png at the right time though.

One thing I have always wanted was a way to ssh / tunnel into the actual console terminal.  Not a new tty device, and not from XWindows, but the one that displays on /fb0.  Enter dispmanx_vnc.  I had never thought of using VNC to tunnel the framebuffer,  but Hanzelpeter has done just that with dispmanx_vnc

There’s definite input lag, and I can only achieve about 15fps, but it is the best way I’ve found to record and capture straight from the framebuffer right now.  I can ssh into my Pi, run the dispmanx_vnc command, then use a VNC viewer (I used tightvnc) to control the main display.  I’m so excited about this :D

Other news, if anyone has a 3DS, then you know about StreetPass.  It’s a way to virtually meet others who are around you with their 3DS.  There are a bunch of mini games built into the 3DS that require you to meet people using Street Pass in order to advance. There is also Street Pass Relay, which Nintendo created last year.  This allows those who are connected to a Nintendo Zone wifi access point to StreetPass with others from around the world, who are also connected to a Street Pass Relay. So of course this has been reverse engineered, and you can now turn a Raspberry Pi into a “HomePass” StreetPass relay.

Original instructions here .  There is a premade SD card available here, but I have yet to try it out.

Have a good weekend all!

-Shea

Oct 24

Friday Post: PiPlay 0.8 Beta 7

Hey All,

Sorry about the lack of posts last week, dealing with family stuff.

I am excited to formally announce the release of PiPlay 0.8 Beta 7!

  • 0.8.0 Beta 7
    • Added changelog popup
    • Themes now support background music (uncompressed preferred)
    • Fixed problems with semi-transparent labels
    • 2 player controller config support added
    • Controller Config list sorted
    • Now using gunicorn for web frontend.

Get it now by by downloading the image or updating your current version with the PiPlay updater.

Have a great weekend!

-Shea

Oct 10

Friday Post: Custom Carts

Hey All,

Happy Friday!  This week I got in two cartridges that I am very to share with you all.  The first one is a custom SNES cart called StarFox Legacy!

StarFox Legacy contains three games:

  • The original StarFox
  • The StarFox competition game (a modified version that has a timer set and you have to rack up the most points before it runs out)
  • The unreleased StarFox 2.

To change games, you hold the reset switch down for 3 seconds.  It’s a really cart, and I’m glad I was able to acquire it.

The second cart is made for the Sega Genesis, and is a homebrew game some of you may know called FIX IT FELIX JR!!!  Yes, someone programmed a recreation of the game from the movie Wreck It Ralph!  It’s really well done, the label looks awesome, and I love it.

PiPlay 0.8 Beta 7 is coming!

Nothing too groundbreaking in this one.  Bug fixes for the controller setup, a popup window on first startup to give you some hints as well as a change log popup.  Some bug fixes, a little bit of speed improvements, background sounds.  I’m also switching out the python flask built in webserver for gunicorn.  It causes great speed improvements, uses less RAM and CPU.  When I switched to it, I noticed a lot of SNES games stopped stuttering.

I’ll be uploading the image this weekend and the updater should be available shortly.

-Shea