Calendar

August 2014
S M T W T F S
« Apr    
 12
3456789
10111213141516
17181920212223
24252627282930
31  

My Flickr Feed

imageimageimageimageimageGlobal RainbowDunstanburgh CastleIt's In The EyesTesting camera+DSC_4306

Arduinophone

Having just picked up an arduino starter kit (the ARDX kit from oomlout) i had finished working through the example circuits.  I played around with writing some custom code to drive some of the circuits in the kit and had a little fun.  I now wanted to design my own circuit and code completely, as that’s really what the arduino is for.  Hacking up a circuit and some code for the micro-controller to drive it.

It’s note the biggest leap from the simple switch test circuit and the piezo music circuit to construct a stylophone.  So that’s what I did.  The results can be seen in this youtube video, and for those interested the following circuit diagram should prove helpful in reconstructing such a project with your own arduino:

Circuit Diagram

Circuit Diagram

Finally the actual code for the arduino is pretty simple, and relies on the known tone durations for the piezo from other experiements.  The code can be found below.  It basically loops over the input pins (2-9) and checks to see if any are LOW (they are all HIGH by default because of the circuit layout).  If one is low, it calls a playTone function for the related note.  It will play the tone until the corresponding pin registers as HIGH again (i.e the stylus is removed).  The LOW signal is produce by the shorting of the circuit to he GROUND pin via the stylus, rather than the input pin.

Enjoy.

The Code:


int tones[] = {1915, 1700, 1519, 1432, 1275, 1136, 1014, 956};
char notes[] = {'c', 'd', 'e', 'f', 'g', 'a', 'b', 'C'};
int speakerPin = 13;

void setup() {
for(int i =2; i < 10; i++) {
pinMode(i, INPUT);
}
}

void playnote(int note) {
int tone = tones[note-1];
while(digitalRead(note+1) == LOW) {
digitalWrite(speakerPin, HIGH);
delayMicroseconds(tone);
digitalWrite(speakerPin, LOW);
delayMicroseconds(tone);
}
}

void loop() {
int note = 0;
for(int i=2; i< 10; i++) {
if (digitalRead(i) == LOW) {
note = i-1;
}
}
if(note > 0) {
playnote(note);
}
}

Introducing Cachepoint

I’m pleased to introduce Cachepoint.  It’s my android app for geocaching.  It processes pocket queries and then helps to find caches when you’re out and about.

This is my first android app and it’s on the market now (search Cachepoint).  Dead pleased, but know that as it’s free the trolls will pan it first…

More details about it on the dedicated Cachepoint page.

HowPack

HowPack.

Amazing print-outs to create fancy boxes for stuff.

Geocaching in the field, phone and all

It’s been a while since I’ve written a propper blog post.  All this twitter etc means my rants are trickled out over a long time rather than in one big lump.

I’m actually trying to avoid a rant here.  Just outlining my thoughts from the past couple of days.  Laura and I had a short break in the lakes to go geocaching, and we racked up a total of 21 caches, which was awesome.  We were using my own geocaching application on my android phone.  We’re being guinnea pigs for it, and I even wrote a quick change at the hotel on the morning of the 2nd day.

It occurs to me, that even with testing, for phone apps which use GPS and other tech which is increasingly available in smart phones, you can’t find all the issues.  It’s only when we were out and about (and on previous occasions) were we able to spot things which made life easier.

I’m pleased to say that the core functionality is there.  I just need to implement the built in navigation elements (I’m using an external one at present) and fully implement preferences and a couple of other bits of polish and I can release it in the Android Market.

I wonder if when developing these sorts of things for work, which I am begining to be doing, whether they’d be happy for me to tramp about the hills in order to test fully what we’re developing.  Probably not, but i reckon there’s little other way you’re able to properly test this sort of location and mobile net based work.

All in all, Laura and I had a very restful time, even if we were walking up hills and dales.

Silly Internet

Jeff Goldblum Will Be Missed | June 29, 2009 | ColbertNation.com.

The above correctly shows the stupidity of people’s internet trust, and the lazyness of todays media which doesn’t do their own research.

The Future

The Riversimple car can go 80km/hr 50mph and travels 322km 200mi per re-fuelling, with an efficiency equivalent to 300 miles to the gallon.

BBC NEWS | Science & Environment | Hydrogen car to be ‘open source’.

What’s great about this story is that they’re trying to bring a complete solution to get past the usual naysaying about infrastructure, but also that they’re adopting an open and distributed development idea.  This means that little companies can get in on the action and help build the infrastructure.

This is exactly how the internet works.  Someone in their bedroom can build a server (I did) and get skills and work with the internet.  In the same way there is a much lower barrier to entry for this.  Maybe not hydrogen fueling in bedrooms, but possibly people making hydrogen available from their house from surplus electricity from their solar panels or wind turbines, solving the whole too much energy being generated problem.

Open-ness is the only way the future can get here sooner..

PC Pro: News: BT wants BBC to pay-up for iPlayer

PC Pro: News: BT wants BBC to pay-up for iPlayer.

So.  BT at it again.  Your stupid adverts go on about how your broadband is a more “complete” broadband because you hand out a nice wireless router.  So you’ll have a strong connection to your wireless router, but that’s pretty useless if the actual internet you get is throttled and can’t be used for, you know, the internet.

A super great connection to a box in your living room is crap compared to a great connection to the rest of the world, being able to view whatever you want.

Too Right, Net Neutratily Is Paramount

Cory Doctorow: We must ensure ISPs don’t stop the next Google getting out of the garage | Technology | guardian.co.uk.

The internet only took off in the UK when people were able to use it as a tool that was simply there, without concerns for costs.  Always on, always available, and the same experience for all.

BT held the internet back for years, and they’re still a major pain for anyone wanting something other than cable or mobile broadband, as their lines and exchanges are still involved.  If all our ISPs go this way and start partitioning off internet sites and giving them lesser status because they decide, not because I give a site higher value, then the net is going to be set back and we’re going to be in this recession for a lot longer..

Disaster Waiting to Happen

BBC NEWS | Education | Database of all children launched.

In the naive view that a massive database with all our children’s details on will help prevent another “Baby P”.

More knee jerk reaction from our government.  How long until this information is compromised like the Child Benefit Data or a similar government mistake, and then those it’s aiming to protect actually end up just that little bit more in danger?

Proprietory Pitfalls

George Mason University Sued by Thomson Reuters over Zotero | Disruptive Library Technology Jester.

This is an example of some of the problems with closed formats.  This article shows that a user who wrote some software which can convert the files from one type of software (endnote) to another format so that the owner of the files (ie. “former” endnote users) can continue to access their data using an alternative.

However the original software says essentially “all your data belong to us”..  Not good.  Imagine if you used MS Word, and all your word docs were owned by MS, and you could not use any software other than MS Word to read them..  It’s criminal.  Software is owned by the companies who create it, fine, but if I use software to make something, that something is mine and I should be able to do whatever I want with it..