Hull Pixelbot Script

I'm not sure if I'll ever get this working, but I am sure that without the language design I'll never get it to go.

I've got a tiny little language running inside the Hull Pixelbot which works rather well. All the commands are two characters and they are interpreted by the Arduino that controls the motors and sensors. And I can store the programs inside the robot EEPROM, as well as deploy them from Azure IOT hub amongst other place.

But the language is a bit of a pain to use to be honest. And there are things I just can't do. So it's time to make a proper language. I'm calling it Hull Pixelbot Script.

I've not done programming language design for a while. I'm a big fan of syntax diagrams (or railroad diagrams). To me they seem a really neat way to express the arrangement of a language. Above you can see the design for the statement element of Hull Pixelbot Script. You can see that the colour (or color) command must be followed by three values which are separated by commas, and an if statement can control a large number of statements (and maybe I could add an else later).

I made the diagrams by using a web site that takes my grammar and makes the nice looking output. It took me a while to remember how EBNF (Extended Backus–Naur form) fits together, but I'm quite pleased with the result.

Of course I've actually achieved very little, what I now have to do is build the actual code that implements the language.

But it's a start.  

Tetris by Box Brown

I don't have many claims to fame. But one is that I once had my picture taken by Alexey Pajitnov, the inventor of Tetris and thoroughly nice man. It was when I was helping out with Imagine Cup Judging in Russia. Alexey and myself were alone in the judging room and I was trying to pluck up the courage to ask him for a picture.

Then a student came in, took one look at me and asked "Can I have a picture with you?". He was one of the competitors, another thoroughly nice chap, and he wanted a picture of himself with one of the judges (i.e. me). He asked Alexey to take the shot, and Alexey obliged. I never got a picture of me with the man who invented Tetris, but having my picture taken by him seems somehow better.

Anyhoo, I was reminded of this when I came across this awesome book by Box Brown. The story of Tetris is fascinating on a whole bunch of levels, and the presentation in beautifully drawn pictures does a great job of telling the tale. If you like video games, social history, business shenanigans or well drawn art, you should get this book.

Ziggy Stardust Live

Ziggy Stardust and the Spiders from Mars is one of the best albums ever made. Fact. It says "Play Loud" on the album sleeve. Good advice.

Tonight we saw it played live by Holy Holy, a band containing the original drummer, "Woody" Woodmansey and long time Bowie collaborator Tony Visconti. Singing duties were taken up by Glenn Gregory of Heaven 17 fame.

It. Was. Awesome.

The band were "really tight" (to coin a phrase), with Woody's rock steady drumming underpinning some brilliant musicianship. Glenn Gregory is not David Bowie, and didn't try to pretend to be, but sounded great as himself. There was no messing with the material, no added flourishes or frills, and the rendition was all the better for that.

They played the whole album, in order, and then moved on to other classics, including a fantastic version of "Life on Mars".

There's a strong Hull connection to this work, several of the original Spiders from Mars, including Woody, were from the city. Not surprisingly the venue was packed, the music was well loud and we left with our ears ringing.

Fantastic stuff. If you get the chance to hear these folks, just go.

Splatoon Switch Taster

Managed to find a few minutes to play the trial of Splatoon for the Switch today. Nintendo had earmarked a few hours during the day for a multiplayer tester of the gam, although whether this was cunning marketing or proper testing we'll never know. We could have had a go at 3:00 am, but instead plumped for the early evening slot at 7:00pm.

The game was great fun. Everything worked and the switch (in handheld mode) was well capable of keeping up with the action. Half way through I turned off using the motion system to aim the gun, which I think helped, but I definitely need more practice. There were sometimes people worse than me, but there were always people better.

In fact it's inspired me to dig out the game on the Wii U and have a blast with that.

Red Nose Day Racing and Rhyming

33660904295_7b0353aeff_z.jpg

Well, that was a fun day. Up bright and early to head up town to talk about the Great Robot Race on Radio Humberside, then home to write some poetry, then up to c4di to run the first race (which went rather well as you can see above). Then home for another radio chat, then tea and finally out to the University to deliver a lecture in rhyme. And race some more robots.

This is the winner of the first ever Hull Pixelbot Great Robot Race, who succeeded by using a cunning trick called "taking the race seriously".

 

This is the racing action at the Lecture in Rhyme

..and these are the winners of the rhyming race.

A good time was had by all, I took 149.68 over the two events, which I've generously rounded up to 150 pounds. That'll make my total takings up to over 600 pounds once I pay it all in. Not quite tutu money, but I'm happy with that.

If you want to take me closer to my 1,000 target, you can still give me some cash here.

Red Nose Day 2017

Don't forget that this Friday is Red Nose Day. I've got a couple of Hull Pixelbot themed events going on.

Great Robot Race

On Friday 24th of March at 3:00 pm in the Ground Floor Boardroom at c4di we're having a Great Robot Race. We'll have lots of robots for you to drive, and a tricky course to negotiate. With a "Big Prize" for the winner.

Robots and Poetry

On Friday 24th of March at 7:00 pm in the Large Lecture Theatre in Applied Science 3 at Hull University we'll have "An Evening of Bad Poetry and Robot Dancing". It will be the first outing of my robot dance group, tentatively named "The Pixelbotettes" (now there's a word my spelling checker hasn't seen before). They'll be going through their routines while I attempt to find rhymes for technical terms. And just so poetry fans don't feel left out of the racing action, we'll have another "Great Robot Race", just for them.

The event is open to anyone from Hull, you can find a map of the university campus here if you want to find your way to the Applied Science 3 building. Doors open from 6:30.

If you're in Hull, you should come. If you're not in Hull, I'll make sure that it is all captured lovingly on video so you can enjoy (ha!) it later.

Sponsor Me

Please, please, whatever you do, sponsor me here. If I get more than 1,000 pounds pledged I'll consider bringing the tutu out of retirement. If I get more than 2,000 pounds pledged I'll definitely not wear it. Now there's an incentive.

Rehearsals

A sneak peek at the "Pixelbotettes" at their first rehearsal....

Hardware Meetup Gadgets

We had another really excellent Hardware meetup tonight at c4di. What surprises me about the events is that we get people walking in with awesome projects and things they've built. Last time we met up Andrew was showing us the thing he'd built above. Just because he'd only got one of his two robot motors hadn't stopped him from building something really neat.

The two "eyes" at the front are a distance sensor. You can place Andrew's device in the middle of the room and it will spin round and generate a polar plot of the distance of objects around it, measured by the ultra-sonic distance sensor and transmitted via WiFi to a web page hosted out of the device itself. The leds are to show the motors being driven, and just to look awesome.

Tonight we also had Brian showing off how he was using Blink to wirelessly connect sensors together and also provide remove monitoring via an iPhone app. And Steve demonstrating a really neat Raspberry Pi powered wildlife camera which automatically converted it's camera from infra-red to normal during daylight hours.

Great stuff. If you want to come along and show us what you're up to (or just find out how you can build something awesome) you can sign up for our next event here, or just come along to c4di and say hello at our next Meetup on Thursday 6th of April.

The Hypocrite is wonderful

The Hypocrite is sold out. I'm not surprised. We were lucky enough to go and see it this afternoon. Probably the best thing I've ever seen in the theatre. Ever. With nods to Shakespeare, pantomime and Black Adder, it tells the story of Sir John Hotham, Governor of Hull who, at the start of the English Civil War, had the unenviable task of picking whether to side with Parliament or the King. For a variety of reasons he ends up doing both, although - as the picture above illustrates, it doesn't end that well for him.

The large cast did a fantastic job of bringing the play to life. And the play itself was peppered with local references which went down beautifully with the audience. And me. Favourite exchange:

"Have you got any spare change?"
"I'm from Yorkshire. We don't have spare change."

I'd say go and see it if you get the chance, but I you'll be chasing returned tickets if you want to go. There are some fairly adult bits, so it's not for the kiddies. But for anyone else, and particularly anyone from Hull, it's wonderful.

Found the bug..

m3umaker.PNG

At risk of receiving further flack for my taste in music (like I care) I present to you a screenshot of my M3U playlist maker in action. I'm not saying it's perfect, but it works, and it does what I want it to (so - OK, it is perfect).

Anyhoo, if you want to see how it works, make it better, colour in all of the letter "o"s in the text, or perhaps even use it, you can find it on GitHub here.

Oh, and the bug from yesterday. Very simple. I'd forgotten to get the text out of the TextBox when forming the for the playlist.

string fullFilename = currentDrive + playlistName.Text + ".M3U";

Turns out the ".Text" part of the statement above is really rather important. Otherwise it just gets the string that describes the TextBox, which doesn't make for a very good name for the file.

Finally, if you've not heard of the "Bonzo Dog Doo-Dah Band" then you really should take a listen.

Working on it....

Windows 10 is lovely. But there are some things that it does that drive me a bit nuts. Like, when I've downloaded a file, and then want to find it in my downloads folder.

Not a particularly strange request you might think.

But Windows 10 acts as if I've just asked for the cure for cancer and the ten millionth digit of pi. Along with next week's lottery numbers. My powerful machine with it's ultra-fast hard disk (at least that's what the salesman said) grinds to a halt while the operating system "works on" finding the files in a folder.

Why?

Nintendo Switch

Is the world surprised that I bought a Nintendo Switch? No. Does the world care what I think of it? Probably not. But anyway, I like to write these things down, so here's my thoughts after nearly a week of ownership.

The Nintendo switch is properly different. It's not just a console. It's trying to be a way of life. My Xbox One sits under the telly and when I fancy a bit of Forza Horizons I can fire it up. And that's that. Walk away from the Xbox and I walk away from the game. But the Nintendo Switch wants to go everywhere with me. It can be connected to the TV. But I can also undock it and carry my games with me. The controllers can be attached to the side of the tablet, or they can be undocked and used individually, or clipped to a carrier to be used as an external controller. There's no need to buy a second controller if I fancy a bit of two player action, each player can have their own tiny controller. And I can prop the tablet on its kickstand and use it as a tiny free-standing display.

And everything I've described above just works. But there are niggles. The hardware is nice, but the screen looks incredibly easy to scratch. The slide on/slide off side controllers can be fiddly to remove and re-attach. They also have a wrist strap attachment that is horrible to use, and makes you feel like you're breaking something each time you detach it. There are not that many games available. Zelda: Breath of the Wild is awesome. A properly vast and detailed world that you can inhabit. 12 Switch is a real curate's egg. Great in some parts, very ho-hum in others. And horribly over-priced. But the SnipperClips game is fantastic. One of the best two-player games I've ever seen. I'm not sure if it was just made for the Switch, but the gameplay and the way that you use the controllers feels like it was. Great fun. If you have a Switch, you must get this game. But that's about it for the release games. Everything else is either out on other platforms or looks a bit ropey to me. Although I've heard some good things about Shovel Knight.

I've grown to like the Switch. If I'd bought a new console and stuck it on a screen in the house I'd probably have played with it quite a bit in the first week. But I've used the Switch a lot, simply because I can. I can cart it around with me, and wander around the Kingdom of Hyrule any time, and any place I want, It's not got graphical quality that I've not seen before, although Zelda does look very good on the big screen, but it does have a portability and a package that I think will appeal to folks, as long as Nintendo can keep "Zelda quality" games coming.

Visual Studio 2017 and Python

Visual Studio 2017 came out yesterday. And today I downloaded my copy. I was keen to find out what was happening with the Python support. 

What can I say? I like Python.

Anyhoo, Python is not in the release version of Visual Studio 2017, which is sad. But, you can still get all that crazy Python goodness (along with Intellisense and a lot of other neat stuff) by going here and following the link to download a pre-release version of Visual Studio 2017 with Python built in (which actually works alongside your "proper" install). Which is great.

Red Nose Day Robots

Comic Relief Lecture Poster.png

I've got confirmation of the venue for my world famous (in my world) Comic Relief lecture in rhyme for 2017. I've been producing bad poetry in aid of charity for over twenty years. This year I'm breaking one of the immutable laws of showbiz:

Never work with children, animals or robots.

My lecture will be accompanied by a horde of Hull Pixelbot robots, each of which has a mind of its own (and isn't afraid of using it). You'll even be able to control the robots yourself during the lecture. As long as you've sponsored me here.  

I've chosen a crack team of robots to help in the presentation. Above you can see them being put through their paces.

The lecture starts at 7:00 pm in the Large Lecture Theatre in the Applied Science 3 building on the Hull University campus. You can find a map of the campus here.

There is free admission to the lecture but, as always, you'll have to pay to get out. I'll have robots guarding all the doors.

Please come. Bring money. Bring a friend. Bring pies.

"Alloy" wheels for the Hull Pixelbot

OK, they're not really alloy. Although you could cast them out of shiny metal if you wanted. I'm going to have a go with some metallic filament I've got lying around.

Anyhoo, I've spent some time today improving the Hull Pixelbot wheels. They've been simple disks for too long. They now have a specially designed rim which turns a simple elastic band into a workable tyre (and the band doesn't seem to come off) and the rim is actually narrower than the wheel. And, the wheel now has holes in for lower weight, a better 0-60 time and faster printing.

I've just to do one final test on the finished design and then I'll put them on GitHub.