Thursday, August 15, 2013

Tampa Hackerspace: Full Speed Ahead

Exciting times at Inspiration Labs and the Tampa Hackerspace. We had a great turnout at last night's meeting, our first since committing to leasing space. We had about 30 people and a great mix of interests - info security to robotics to wearable technology to molded chocolates to cosplay to biotech. We spent a bit too long having everyone introduce themselves but it's so great to hear all the skills available and projects people are working on. We could fill 3 classes a week for the rest of the year just from the expertise in the room last night.

We took a lot of questions and I know a few didn't have great answers. Like I said at one point, it's going to be a bumpy ride over the next few months as we grow the space and figure things out. But I've never been more excited and more certain that we're on track for a great hackerspace - something that's long overdue in Tampa.

I don't really want to completely recap where we are in our plans because we'll be doing that on the Inspiration Labs blog shortly. But we will be leasing space at CoWork Tampa - the big open meeting room that we've been using. It is office / meeting space and can support the cleaner and quieter fabrication work. We are pursuing several options to handle the messier / noisier equipment like woodworking, welding, etc.

Our next steps are to build out the space a bit, starting with a few locking cabinets and workshop tables. We have a good array of donated / loaned equipment that we will be moving to the space as soon as we have storage for it. We have a group working hard to prepare a Kickstarter campaign to raise funds for a few key pieces of equipment - starting with a 3D printer and a laser cutter / engraver. We will be sorting through the class options and will be offering more classes soon.

I'm really looking forward to looking back at this post sometime next year and remembering when this hackerspace was just 30 people in a room. Just a few months ago it was 3 people talking at the Tampa Bay Mini Maker Faire.

Saturday, July 27, 2013

Nexus 7 4.3 OTA update failing because of /system/bin/debuggerd

When I went to flash my rooted but stock Nexus 7 with Android 4.3, the update was failing because the /system/bin/debuggerd was not the version it expected. This is apparently because stickmount does some tricky stuff with debuggerd in order to work. You get an error like this: "assert failed: apply_patch_check("/system/bin/debuggerd","1ed6f..."

I was able to fix this and get 4.3 installed. Since I couldn't find a walkthrough for this, here's what I pieced together in case others have the same problem.



First, you need the right debuggerd file. For the 4.3 update (coming from 4.2.2), you can get a copy from this XDA thread (post #4 by tiggggr).

Now to get it in the right place. There are a few ways to do this. I used adb but it can probably be done with most file explorer apps. First copy the debuggerd.rename.zip you downloaded onto your device somewhere:

adb push debuggerd.rename.zip /sdcard/debuggerd-4.2.2

Then you need to be able to write to the system partition, stop the debuggerd, make a backup if you want, then copy the file:

adb shell
shell@android:/ $ su
shell@android:/ # busybox mount -o remount,rw -t auto /system
shell@android:/ # stop debuggerd
shell@android:/ # cp /system/bin/debuggerd /sdcard/debuggerd-backup-old-bad-version
shell@android:/ # cp /sdcard/debuggerd-4.2.2 /system/bin/debuggerd
shell@android:/ # sha1sum /system/bin/debuggerd*
a2323a0c8e245e3879d6b8beff6b2c4802045271  debuggerd
df2e705da097e4d535b4f4d98fab3bd76601e76c  debuggerd.backup

I already had a backup copy of debuggerd in my /system/bin and you can see that now debuggerd has the right sha1 hash so the install will continue.

I had to do a similar thing to restore my build.prop from a backup on my device:

root@android:/system # cp /mnt/shell/emulated/0/build.prop.bak build.prop

[Update] Here is a copy of my build.prop that matches what the install script expects: build.prop

shell@grouper:/mnt/shell/emulated/0 $ sha1sum build*
48f7593c2ff2fa85a147639fd7b77c3bc0607249  build.prop.bak


Now to get root back...

[Update]
Getting root back on my Nexus 7 was easy enough that I didn't mention it earlier, but a few people have asked. I pieced together the steps from this Google+ post and part of this XDA thread into hopefully a clearer walkthrough, if this helps anyone. You could use TWRP instead of CWM, but CWM worked fine. Note that this is for the WiFi Nexus 7 (grouper) and there are different downloads for the GSM / 3G version (tilapia).

1. Download SuperSU from here and copy it (I used adb push) to the Nexus 7
adb push ~Downloads/UPDATE-SuperSU-v1.43.zip /sdcard/
2. Download the latest CWM recovery from here
3. Flash CWM recovery:
fastboot flash recovery recovery-clockwork-touch-6.0.2.3-grouper.img
4. Reboot into CWM recovery and pick the "recovery" option
5. Flash the UPDATE-SuperSU-v1.43.zip file from /sdcard
6. When the device reboots, if it asks if you want to disable flashing stock recovery, answer No.

You should have root back.

[Update]
If, like me, you have the same issue updating to JWR66Y from JWR66V, here is a forum post with the right debuggerd.

I also had a permissions error (set_perm: some changes failed) but following this post, I unrooted before applying the update (using CWM) and it worked.

Wednesday, May 22, 2013

The New Flickr

The new Flickr changes are a nice step, but very late in the game. I gave up on them two years ago and migrated to Google - Picasaweb at first but now that's been assimilated into the Google+ brand. I'll probably try uploading some new stuff to Flickr because 1 terabyte of full resolution photos is a huge carrot. But...
I went to look for their desktop apps to upload photos and they're still around, unchanged since 2009. Not one single update or bug fix in FOUR years. That's the Flickr I left.
I tried to use the new Android app and I couldn't log in. Looking through the app reviews, plenty of other people had the same problem. That's the Flickr I left.
I tried the Windows Phone app, but it also just errors out logging in. The reviews are full of people having the same issue. The app hasn't been updated in 15 months. That's the Flickr I left.
I tried the iOS app but it hasn't really changed, despite having an update published today. At least I was able to log in. It still isn't a universal app, so it doesn't really support the iPad. That's the Flickr I left.

Thursday, May 09, 2013

Tampa Bay "Geek" Calendar

I migrated my Tampa Bay "Geek" Calendar to a Google Calendar. Now it should be a little easier for me to keep updating it and much easier for people to subscribe to it.

Again, I can't catch every event in the area, but I'll try to add all the more unusual and non-recurring events I find. There will always be more Meetups and User Groups than I can cover.


Monday, May 06, 2013

Using Google Hangouts to Play Windows Media on the iPhone

Last weekend I was watching the FIRST Tech Challenge World Championship through the NASA TV streams. I had to run out to baseball practice during final alliance selections and was going to miss it, unless I could get the stream working on a mobile device. The problem is that their streams use Windows Media. First I tried VLC and GPlayer on my iPhone but neither worked. Then I tried my Nokia Lumia 800 with Windows Phone 7.8. It's Microsoft, so it should work, right? Nope. Then I went through several Android media players on my Nexus 7 but none I tried could support the stream.

I was on the verge of just leaving something running to record the stream at home and watch it later when it hit me. I set up a webcam pointed at my laptop viewing the stream and started a Google Hangout. I could easily connect and reconnect to the Hangout with my iPhone or any of my devices (except the Windows Phone - still waiting on a Google+ app there). So I got to catch the alliance selections live, thanks to Google Hangouts.

Thursday, April 18, 2013

Out With the Old

I resisted as long as I could, but I finally had to update this blog to use the "new" Blogger templates to take advantage of a number of newer Blogger features introduced in the past few years. I'd miss the old look less if the theme editor here had enough options so I didn't have to edit the template manually and add CSS to get what I want, but I already had to dig into it to fix page titles. Except for this blog, I've pretty much moved on to Wordpress where plugins can handle all the stuff I want without having to hack up Blogger templates. I'm still not happy with this background image, but it'll probably be here for years.


Friday, March 29, 2013

Makerspaces / Hackerspaces in the Tampa Bay Area

This past weekend was the second Tampa Bay Mini Maker Faire. There were some great conversations there about finally getting a makerspace or hackerspace in the Tampa Bay area. We had a lot of these same talks last year, but this year I think we might finally have the critical mass of people to get things started.

There are two efforts to start one that I'm aware of. The first is the LI4E Makerspace. They are focused on starting one or more makerspaces at Pasco County libraries. They have also recently signed an agreement to take over a South Tampa house and re-fit it for public creative use.

The second is Makerspace Tampa Bay. That group had stalled out in recent months, but has now been renewed with new leadership and is making a good push to build a solid core group and get a facility open. They have a website, but if you are on Facebook, there is a lot more active discussion on their Facebook group, Makerspace Tampa Bay.
[Update May 2013: I have joined the board of directors for this group and will hopefully have some good updates throughout the rest of the year.]

There are three four alternatives in the Tampa area that approach what a makerspace is:
    The biggest and closest to a makerspace is the MOSI IdeaZone. It's a fantastic space on the ground floor of MOSI and has a growing collection of equipment, including 3D printers and a laser cutter. They offer classes for both students and adults. 
    The USF X-Labs has built a number of cool science demonstrations, including this massive Tesla coil. I don't know much about their physical space, but it's worth checking out if you're a USF student (and maybe even if you aren't). 
    The Tampa Amateur Radio Club is a bit of a stretch to call a makerspace, but they do have a nice facility with a great ham radio shack. More importantly, 2-3 times a year they run TARCFest, a tailgate / flea market with a lot of radio and electronics equipment.
    The Roosevelt 2.0 is a "creative urban renewal project" in Ybor City. It's an interesting mix of a cafe, meeting space, market, art studio, garden, and more. 
A little further outside of Tampa, there are two good maker spaces:
    The FamiLab in Orlando has great family-friendly programs and has even hosted Eben Upton of Raspberry Pi fame. 
    The Fab Lab at GWiz in Sarasota has fantastic gear, including a big CNC machine and a mill. Unfortunately, I believe they are still closed as GWiz continues to struggle financially and remains closed after many months "for renovations".
Finally, if you missed it, check out the White House Hangout: The Maker Movement, a Google+ Hangout with a number of prominent makers and makerspace founders / users.

Chromebooks for Education

I've been looking a bit more at Chromebooks for Education. Thinkamingo has been doing quite well building up a portfolio of educational mobile apps, but the rise of Chromebooks in schools is something that we can't ignore. So we'll continue to think what role we could take in an entirely web-based environment rather than a on-device tablet environment like iPads.

Chromebooks certainly make sense for a school, especially given the difficulty of managing iPads (or other devices) as a group. I really like the idea of schools being able to quickly swap out broken devices or even loan devices to students without needing to install or replicate anything.

One great point is that adopting an online-only environment, with or without Chromebooks, is really the best way to enable bring your own device (BYOD) because it opens up the environment to a wide range of devices. Right now, it's virtually impossible for an app-based curriculum to allow students to bring a mix of iPads, Kindle Fires, etc. because so many apps are only available on one platform. But as long as each device has a decent browser, all can use well-designed websites.

A couple Chromebook resources I've been looking at:


I'll keep adding to this post if we go anywhere with Chromebooks. I played with booting ChromeOS in a VMWare instance but have had some problems. I'm really tempted to get one of the Samsung Chromebooks as a test device, but I think my desk and laptop bag are finally at their limit of devices.

Update: This isn't really for educators, but this is a good post on developing on the Chromebook.

Thursday, March 21, 2013

DD-WRT Wireless Connections Failing

This morning my Asus RT-N16 router with DD-WRT stopped accepting wifi clients. Nothing could connect to the access point. I could see that it was still broadcasting, but it was acting as if the WPA password had changed. I powered off the router twice, waiting a few minutes, etc. Nothing. I connect a laptop via ethernet and looked over all the settings but everything looked fine. I was ready to reload the router completely when I found this old thread and tried the advice. It worked. I didn't add it to my startup script though. Hopefully it keeps working without me needing to do that again.

I case anyone else runs into this, the fix was: I ssh'ed into the router and ran:
    ifconfig eth1 down
    ifconfig eth1 up 
I'm still not quite sure what interface eth1 is since br0 looks like the LAN side and VLAN2 looks like the WAN side, but it did work.

Tuesday, March 05, 2013

Brick Buddies - State Champions!

This weekend 5018 Brick Buddies, my daughter's FIRST Tech Challenge robotics team that I help coach and mentor, won the Florida state championship!

Brick Buddies went into the state championship ranked as the #6 team in the state (out of 72) and finished qualifying matches with a 5-1 record and in third place behind two undefeated teams from nearby Middleton High School in Tampa: 3846 Maelstrom and 4997 Masquerade. Masquerade is last season's world champion and also won this season's Kentucky state championship last weekend.

After a lot of discussion and examination of possible alliance partner picks, the team decided to accept an alliance invitation from 3846 Maelstrom rather than remain the captain of the #3 alliance. That was a little controversial because that almost certainly meant giving up any chance of going to the world championship, but after a long season of competing against both Masquerade and Maelstrom with zero success, the chances of beating both of them twice with any of the available alliance partners looked very low. Either of them would be perfectly capable of winning this season's world championship and it's a real shame that both won't get that chance.

With a solid #1 seed alliance of 3846 Maelstrom, 5018 Brick Buddies, and 3839 NeXT, they moved on  to the elimination rounds. They won their first semifinal matches to advance to the finals. After losing the first match, they came back and won two matches in a row to take home the championship.

The drive team (which is the entire team of three kids) did very well, winning 5 of the 6 qualifying matches and all three elimination matches they competed in. They made the most of line bonuses whenever possible and mixed offense and defense very well. They also made great use of taking away ownership of pegs to eliminate line bonuses by opposing alliances.

The hard work on autonomous mode programming, especially by Sumukh, resulted in them scoring the 50-point bonus ring in 4 of 6 qualifying matches and in the crucial final elimination match. That was far better than any other team did in autonomous mode, where the robot drives itself based on timing and sensor inputs. One of my favorite moments was when an opposing robot hit them and knocked them off course. The robot still found it's way back to the floor markings and followed them to end up in an almost perfect position to score the ring.

They did great in judging as well, winning the PTC Design Award and being finalists for the Rockwell Collins Innovate and Connect awards. They were the second runner-up for the top judged award, the Inspire Award.

My goals for the team all season were to make it to the state championship, get to play in the elimination rounds, and get mentioned as a finalist for the Inspire Award. They achieved all three, blowing away the first two.

All of this even more amazing considering that they are the smallest team in the state. Most teams are made up of about 10 high school students, often from engineering magnet schools. Ours was one high school sophomore and two eighth graders and runs out of the coach's driveway / living room. The kids aren't as short as they were last season, but they still get "that's the whole team?" comments.

It was great to see all the hard work by the kids, coaches, and parents pay off.  If anyone is interested in mentoring or joining FIRST robotics at any level, feel free to contact me or Shelley Kappeler, the head coach for Brick Buddies.

Wednesday, February 13, 2013

1447 Movie Titles Without an "S"


This is all over Facebook this week, and probably will be for the next 12 years. So a minute with sed/grep and here are 1447 movie titles without an "S" in them:

10,000 BC
13 Going on 30
1408
17 Again
18000 Dead in Gordon Head
187
1941
2012
2046
24
25th Hour
3 O'Clock High
300

Monday, February 04, 2013

Where did January go?

So January blew right by without me blogging at all. I'd even pledged to myself to at least post a weekly recap of interesting links and news, but here's at least a monthly recap:

Thinkamingo

I've been busy at Thinkamingo, working on some new app projects that haven't been published yet. I also shipped Name Dice for Android and the Amazon / Nook versions shouldn't be too much longer. I shipped updates to our Sports Card apps to fix numerous bugs and expand the color choices for the included card template. Behind the scenes, I also consolidated the separate copy-n-paste XCode projects into one reasonably well-managed project with targets for each app. That should hopefully scale when we add additional sports. Finally, I submitted ports of our Android apps (Lists for Writers, Story Dice, Name Dice) to the BlackBerry app store using their Android runtime. It took a few slight changes, mostly to handle different market links, but it was fairly quick and easy.

FIRST Tech Challenge

Team Brick Buddies has been busy getting ready for their league championship and the upcoming state championship. At the league championship, the robot ran fairly well except for a flakey NXT cable. Between strong driving, a solid robot, and a little luck, they finished qualifying rounds 4-2 and in 3rd place. They picked a good alliance partner in Team Duct Tape and went on to win in the semifinals. In the finals against Masquerade and Maelstrom, two very strong teams from Middleton High School, they  fought hard but lost. In judging they did well and were finalists in multiple categories but finished in second place behind Masquerade for the overall judging for the Inspire Award. They'll likely head into the state championship in 5th-7th place in the state (out of 72 teams). They clearly have some work to do if they want to really push the top teams and fight for a spot at the world championships.

Geek Calendar

I've been meaning to try to set up a "geek calendar" of some sort with upcoming techie-style local events for developers and parents. Here's my first set of events: Tampa Bay Geek Calendar.