Poking around on the Android Market for an app to control my Foscam IP Webcams, I stumbled across a cool app concept. Long story short, someone wrote some code to serve the live camera feed…effectively turning an android device into an IP cam.
The app is free on the Market…just search for IP Webcam and it will pop up. Here it is in operation, serving from my Droid 2 for viewing on my Linux machine…
This would pair nicely with my IOIO project, provided I can bring it back from the grave. I could mount the phone itself on the payload, giving this sucker on-board video. A second device (Galaxy…) could provide the board control, and I could implement a web view into my app. Might be on to something here…stay tuned.
I spidered my D2 a handful of weeks ago. The replacement phone I received shipped with Gingerbread…which with my previous version of CyanogenMod was built on top of. I rooted the new device immediately, and dumped all of the garbage apps. My thought was to keep the stock ROM on the device, in order to have a stock testing device once I moved on to a new device.
Well, even stock Gingerbread is borderline useless by comparison. The most annoying tic that developed was with the camera…the flash stopped syncing with the camera shutter, rendering the flash useless.
Change of plans…dev device will run CyanogenMod 7.1.
I falsely assumed that flashing a ROM would work the same on Gingerbread as it did on Froyo for the Droid 2. Way wrong…I honestly thought I had bricked the phone. I ended up having to get creative with ADB and flashing an older firmware version, and standing Froyo back up on my device. From that point, it was the same old song and dance…testing ROMs, pulling batteries, hanging out on the recovery screen.
I wound up settling on an old nightly build of CG7.1. I am due for a phone upgrade right now…my wait for ICS is way more tolerable with a usable phone.
I have to admit that I’m pretty impressed by the Foscam’s IR capabilities. I snapped a screenshot on my Droid last while we were getting the princess ready for her bath…
The lab was light-free, and I was connected to the camera’s web server via my 3G connection. Controls are fairly snappy, and the image looks good even when pushed via cellular. Response time is very quick on the network itself…but remoting in to the router does the trick nicely.
I’m keeping my eyes peeled for a second cam…set designated choppable. We’ll see…I’m growing attached to this guy, but really want to get into its guts.
Before the rugrat showed up, I managed to make some progress on my next project. I just realized that I hadn’t put together a teaser post, hence this quickie.
I started thinking about how to make a better UI to control my remote control via Android project. Instead of going with a touch base, I figured I could implement control utilizing the on-board orientation sensors.
This ultimately led to figuring out how to break said values out…a la this little app:
I wrote a simple app that dumps the sensor values of each x, y, and z axes, for values between -90 and +90 degrees.
The next step would to be to clean up the display, provide some visualizations, (graph-ish perhaps) and use the values to control something physical. No promises on the timeline, but if it gets to be too far out, I will dump this code on GitHub for general public perusal. Back to diapers…
…the old D2 finally met its match. Broken and bruised, the little guy is still working like a champ, bulging battery and all. New phone soon…going to have to figure out how to root Gingerbread I guess.
Consider this the conclusion of the IOIO DC motor experiment until further notice…
I’m chalking this up as a success. Even though it is ugly and raw, I learned a ton mashing this thing together. Very fulfilling project from a nerd standpoint: I learned more Java, had to buckle down and do a little EE, kicked up the soldering skills a notch, and introduced a few more components’ features into my ghetto skill set.
My code is live on github with a preemptive v1.0 push…
Pins 21 though 26, wired through the usual candidates on an H-Bridge. Contact me with any details…it should be very spec sheet-heavy though. The main stumbling point is with the power source, so keep that on the front burner.
Cheers. This may be my last time intensive project for some time. Hardware is time-costly…I am planning to take on the software project I have been contemplating between diaper changes and feedings. Look for some dad stuff in the mean time…
Flashback to 2010. A simpler time. I was finally abandoning my BlackBerry, which is basically one step above bag phone by today’s standards. I was torn between two devices: the Motoroala X and the Motorola Droid 2. I opted for the physical keyboard, and have not looked back.
Flash back to present. A time less simple. With Katie’s iPhone 4S in the mail, it is nearing my turn to make a decision regarding my new device. The best phone on the market, in my book, is the Droid Razr. The kicker is the soon to be released Droid 4…
This thing has the same stuff under the hood as the Razr, very, very similar to the duality between the Droid 2 and X. Trading .3 inches and AMOLED for a smaller qHD screen…sort of a tough call.
But…the good news is that I have a few months left before I need to make the decision. My Christmas wishlist instead is one involving [link redacted] this year. I am a sucker for strange electronic devices…that should be apparent from the remote controlled clock. I’m hoping to pick up some hackable gizmos that I can chop apart, and leave the phone decision for another day.
The project is wrapped. I have fully shown servo control via bluetooth, via Android, via IOIO. +3 via
The easiest way to test this, by far, is to snag the app on the Android Market. Here:
This does require a newer version of the IOIO bootloader than is currently shipping from units at Sparkfun, but details can be tracked down at this Google Groups area on how to update. It will work standardly, with a USB cable.