It wasn’t quite the speedrun I anticipated when I first started working on version 2 of the Trophy, but I’m finally ready to call my work done (for now) and ship it off. Here’s a changelog of sorts:
- [Hardware] Mounted the Arduino to the base using standoffs
- [Hardware] Trimmed the cables exiting the trophy body and soldered on header pins for a clean connection
- [Hardware] Glued the base to the trophy body using Amazing Goop
- [Software] Developed and implemented yun-easy-wifi-switch to allow for user-friendly WiFi network switching
- [Software] Developed and implemented linino-to-serial for Linino -> Arduino communication
- [Software] Linino notifies Arduino of boot via linino-to-serial and displays a “loading” message until then (previously displayed nothing until boot)
- [Software] Trophy displays the full message cycle only once an hour via cron + linino-to-serial (previously was always on)
- [Software] Updated the Python code to allow for granular control over the trophy’s message buffer
- [Software] Handle errors thrown by the Kimono API
- [Software] Overhauled the Arduino code to accept communication from Linino and act accordingly
An entire fantasy football season has passed since finishing the Trophy of the Future, my “world’s first internet-connected fantasy football trophy,” and my league has a new champion. That means it’s time to revisit the project to tie up some loose ends! More on that will come in time, but first I want to share the solution to the initial problem I encountered.
I wanted to upgrade the Yun to the latest version of OpenWrt because opkg was throwing weird “failed to download” errors. From scanning the Arduino forums, it seemed like updating OpenWrt was the recommended first step (and as it turns out, the update also fixes Heartbleed, so it’s worth doing anyway). The instructions assume you have a MicroSD mounted in your Yun, which I don’t, but it is still possible to do the upgrade without one.
The OpenWrt image clocks in at 16 MB, and by running
df -h I saw that the Yun’s onboard memory had around 20 MB free in the
/tmp directory. I downloaded the latest Yun image from the Arduino website and unzipped it on my Mac, then used
scp to move the file to the Yun:
scp openwrt-ar71xx-generic-yun-16M-squashfs-sysupgrade.bin email@example.com:/tmp/
According to Arduino’s upgrade guide, the next step would be to run
run-sysupgrade on the OpenWrt image, but a second problem surfaces here. It turns out that the first thing
run-sysupgrade does is copy the image to
/tmp, which errors because the file already exists. I could move the file to a subdirectory so
run-sysupgrade could copy it back, but the Yun’s onboard memory doesn’t have enough space for that.
The solution here, noted on OpenWrt’s system upgrade page, is to use
sysupgrade – note the lack of
run- in that command’s name. Like this:
Three minutes later, you have upgraded OpenWrt on your Arduino Yun! All the configurations should be the same, but you will have to reinstall any opkg packages.
In part 1, I walked through the fabrication process of the Trophy of the Future. If you haven’t read that yet, go check it out! In this post, part 2, I’m going to discuss the technology behind the trophy.
The Trophy of the Future (TotF) is the world’s first internet-enabled fantasy football trophy. Being the second-ever and, at the time, reigning champion of my fantasy football league, I felt it would be appropriate to spend some time at ITP producing a trophy to share with the league, so I made it my final project for Peter Menderson’s Materials and Building Strategies class. This post will cover the fabrication of the trophy. To read about the technology behind it, check out part 2!
A few weeks in to the semester we started making molds, and after seeing how much fun that was I had the initial idea of casting a football in clear resin for the trophy. Inspired by this headphone amplifier Instructable and wanting to throw a tech twist into the project, I decided to also embed an LED matrix in the resin that, by way of an Arduino Yún, would display NFL news, scores, and my league’s champions. In this first part of documentation, I will show the steps that I took to fabricate the trophy.