Log in

So I've got this really cool Digitech RP255 guitar pedal. It's even got an embedded audio interface, so I can plug it into the computer using a USB cable and record straight into Reason Essentials with very low latency. It's awesome.

The only problem is that every so often, I try and tweak the latency because I'm getting slight lag... and the ASIO control panel for the audio interface mistakenly allows the latency to be set as low as 1 sample, 0 milliseconds.

Of course, once you slide that slider all the way to the left, the changes immediately get applied, and the burden of constantly servicing the audio interface causes Reason to take 100% of one CPU, and the driver (which runs as part of the kernel) to take 100% of the other CPU, so the computer almost completely locks up. Launching Task Manager takes about ten minutes, and as far as I can tell it's not even possible to hard-kill Reason via Task Manager, even after waiting half an hour for it to get the message and die. The only recourse is to hard reboot.

So that's annoying. But the really big problem is that Reason won't allow me to launch the ASIO control panel without actually activating the audio interface, which immediately sends it into death spiral mode.

The solution for this is twofold - first you need to delete Reason's own profile, then you need to delete the RP255 driver's cached audio settings.

The former is found (on Vista/Windows 7) at:

C:\Users\[user name]\AppData\Roaming\Propellerhead Software\Reason

If AppData does not appear in the user folder, this is because Windows is helpfully hiding it. If that is the case, go to:

Organize > Folder & Search Options > View and select 'View hidden files'

The latter are in the registry and require regedit to purge. I uninstalled the RP255 driver first - I'm not sure you actually need to do this, but it doesn't hurt (the uninstall/reinstall is very quick).

Once you've uninstalled the RP255 driver, launch Regedit by hitting Windows+R then typing regedit. Click through the various warning/permissions dialogs that open up.

In the tree pane to the left, navigate to:

HKEY_CURRENT_USER\Software\DigiTech\RP255 ASIO driver\Reason Essentials.exe

Right click on the Reason Essentials.exe "folder" and select Delete, then click Yes.

Now reinstall the RP255 driver.

Once you relaunch Reason, hopefully your driver settings should be back to normal!

New IE App Compat VHDs ignoring CSS

For the benefit of my future self, and anyone trying to Google this crazy issue...

I've been using Microsoft's Internet Explorer App Compatibility VHD images in Virtual PC for a few years. The last two releases appear to have been done using a different setup, with less developer tools installed by default.

Apart from the different setup, one thing which changed for me was that my test environment no longer worked properly. My environment is made up of a remote server which renders some content, then loads the CSS/JS I'm working on from a server on my local box (addressed using a fully qualified hostname, rather than localhost or IP address). Previously this had worked fine, but now the CSS was being ignored. I could see IE requesting it in my server logs, but no style rules were taking effect. Flicking the switch to load resources from the production resource server made IE work just fine.

It turns out that IE is fussy about MIME types, and due to a misconfiguration my local server wasn't serving files with a MIME type header, whereas the production resource server was. When I added the config entries to automatically set MIME types for known file extensions, everything started working correctly.

The strangest thing was that IE only seemed to do this when the rendered page was served from a different domain to the CSS. When I served the rendered page off my local server, linking to my local CSS without a MIME type, IE was fine with that. Mysterious...


'Cavalcade is about burning the candle at both ends, and the middle too.'

Today is a recovery day. I'm exhausted, my hands have bruises, callouses and cracked skin, and my arms feel like they're going to fall off .. but I'm very happy. My first ever Cavalcade weekend was simply awesome.

It all kicked off on Friday evening at Tolcross Primary, with a hall packed full of drummers - almost all of the Kings of Macumba, several people from Sambayabamba, some folks from further afield (including France!) and, of course, almost the entire Edinburgh Samba School.

Roddy Dickson from Sambayabamba was our guest mestre, and he brought with him a monster of a piece. Given that we only had one night and one day to learn it, I'd expected something fairly simple: maybe one main groove, with a couple of breaks and an intro. Instead we got three grooves, two breaks, an awesome sixteen-bar chorus for the repiniques, and a breakdown with a complex and totally sweet solo for the timba section (thanks Roddy! :D)

We spent two hours practicing on Friday night, alternating between singing the patterns and playing them, and getting to know our fellow drummers. It was amazing playing in a ten-strong timba section - when I joined, I was often the only timba player at gigs, and even now we have more timbas in the band, there are usually only a few of us around on any given night.

After getting chucked out by the janitor at nine o'clock, we decamped to the Banter for the evening's entertainment - Mikeoke! One guy (Mike) with an acoustic guitar, a microphone and a folder full of song lyrics (the 'eoke bit). I was gently persuaded (read: shoved towards the stage) to sing by Kate, after she spotted me picking up the lyrics for Wish You Were Here. I had a slightly wobbly start, but it was awesome to sing one of my old favourites with half the pub singing along :D

I headed home on Friday night, crashed into bed at midnight, woke up at 8am Saturday morning and headed out again. We spent about six hours solid practicing on Saturday, punctuated only by a break to inhale a beer and a heaping plate of chilli and macaroni cheese at the Banter, which had laid on a spread for us. Drumming is seriously thirsty and hungry work!

After the practice, I realised that while I was planning to stay the night at Adam's flat in Edinburgh, I had been so tired on Saturday morning that I hadn't actually packed toiletries, a sleeping bag or any change of clothing. This wouldn't have been such a problem if it weren't for the heat generated by about a hundred drummers in a hall with almost no ventilation - I was utterly soaked with sweat. I ended up driving out to Asda in Fort Kinnaird, picking up clothes, shower gel and micropore tape for my bleeding fingers, then heading for Hawke & Hunter for the showcase (with a slight detour to pick up a giant burrito of deliciousness at Illegal Jack's)

Hawke & Hunter, as it turns out, is really really posh. We walked in past the shiny reception desk, past the trendy bars, past the venue's entrance hall with its dark wood panelling and scented candles, and into a large hall with disco lighting and a glittering bar. In our scruffy drumming clothes, we felt a little under-dressed.

Kings of Macumba played first, with a floorshaking set that had me bouncing up and down like crazy. There's nothing like standing about ten feet away from a samba band in a club - the sheer force of sound is wonderful. Next up were Senzala Capoeira, joined at the end by one of the guys from Brazil! Brazil! for some backflipping, cartwheeling, single-hand-standing awesomeness. Then it was time for us to go on.

Eight hours of practicing is not kind on a hand drummer's hands, especially hands which are already a bit battered from several weeks of practicing twice a week and gigging every weekend. Towards the end of the practice the skin on my fingers had cracked and begun to bleed slightly. When we got to the club, my hands had cooled down enough that feeling had returned to them - I tried hitting my timba a couple of times, and even light hits felt like slapping a bad bruise. But we had a showcase to play, so I taped over the broken bits with micropore and grinned and bore the pain until, a couple of songs in, I'd finally managed to hammer the feeling out of my hands again.

Our set went pretty well - the dancers were awesome, managing to fit in three different costumes within a single set: grass skirts and double sticks for Maculelê, long white dresses for Maracatu, and glitter and feathers for samba. The energy of the crowd was great - club sets are always awesome, and even more so this time since half the crowd were drummers. It's wonderful to perform to a good crowd: the whole band tightens up and plays at their best, which makes the crowd even happier, which makes the band go even wilder - it's a great feedback loop.

The last band of the night was Sambayabamba, who were brilliant as ever and had the crowd dancing and demanding encores. After that we danced to tunes from our resident DJ Sally, then headed down to Hawke & Hunter's other club when the venue closed at 3am. It was 4am before the club closed and I joined a small party of worn-out sambistas walking home.

I woke up at 10am the next day feeling unreasonably fresh and lively, walked back to Hawke & Hunter to collect my car (which had miraculously survived being parked on a main road in Edinburgh for a day and a half without being ticketed - think I'm finally beginning to understand Edinburgh parking regulations!) and came back to Adam's flat just in time to receive a much-needed sausage and bacon roll from my awesome host. Cheers Adam :)

We arrived at Holyrood park a couple of hours before the parade was due to start, so we had enough time to do a quick warmup and runthrough. We started up, played our short bit of the intro, then the entire timba section looked at each other, held up their hands and winced. Well, except for the Macumba guys... who went the macho route and started slapping each others' hands :)

It was lovely lying on a grassy hill in the park in the sun, watching the parade roll past... especially the automotive section, with a long line of Ferraris, Gold Wings, Harleys and several beautiful Morgan TriKings. I might have drooled a little bit at the sound of fifty-odd Harley engines revving up ^^;

Eventually our slot came up, we shuffled into place, and then started playing to the cheers of the crowd. The practice had been a little wobbly, but Roddy had gone round each section reminding people of the patterns, and we had formed little groups on the grass to sing them and drill them into our heads. We didn't stop playing until the end of the parade an hour later. Even when the band got confused over an early signal, launched into a break halfway through a pattern, then clattered to a halt in a muddle, the snares still kept going with their steady backbeat and we built it back up from there. At the finish line, we poured in all the last of our reserve energy and finished with a bang. Then someone mentioned that we were meant to do a static performance...

We finished at about half three, put the drums in the van, and collapsed on the grass utterly spent. Then a van turned up from Elbow and unloaded a table, several tureens and boxes, and two cases of beer. People unrolled picnic blankets on the grass, and suddenly we had a little outdoor canteen. I tucked into a giant plate of lamb curry, dahl, and pasta with olives and big chunks of salami, accompanied by a very much needed cold beer. Half an hour later I came back with another plate. And then a chocolate brownie. Finally, watered and refuelled, I felt a little bit more alive.

Holyrood Park is a beautiful place to have a picnic, especially surrounded by great company in the shape of about a hundred drummers. We sat for a few hours chatting and tried to come up with a name for the piece Roddy had composed. He put forward a few, including 'Uproar in Kansas' and 'Flying Heider', but the unofficial name of the piece seems to have become 'Kinky Bum' after the surdo line's pattern mnemonic ('Oh oh kinky bum, give it to me...') Eventually, with many farewells and much hugging, everyone drifted off home.

It was about eight o'clock when I finally got back to Falkirk, jumped in the shower for a long soak to ease my aching muscles, babbled to Nate about the weekend's awesomeness, then headed for bed. Waking up today, it almost feels like one long and epic dream, if it weren't for my shredded hands. It's been one hell of a weekend :)


One of my favourite debugging tools recently has been Fiddler. It's an HTTP proxy which intercepts requests from any browser. I've been using it for a long time, but mostly just to inspect HTTP conversations - it was only a few months ago that I realised that Fiddler's JScript.NET-based Custom Rules support would allow me to rewrite HTTP requests/responses on the fly. It's great for debugging other peoples' code ;)

The recipe for this can be found on the script samples page - look for 'Remove all DIV tags'. The code on that page should be pasted into the end of the OnBeforeResponse function in the custom rules file, and the regex modified as appropriate.


Howto: debranding my Orange HTC Desire

I just bought an HTC Desire from Orange, and while it's an awesome phone, the random Orange branding that came with it was pretty irritating - naff-looking browser icon, non-removable demos for crappy games, an 'Orange Market' alongside the Android Market, no GTalk, etc. I hadn't planned to muck around with alternate ROMs or anything, but I had to get rid of the branding. Debranding to the rescue! Now seemed like a good idea to do it before I played around with any settings, bought any apps, or otherwise made changes to the phone that debranding would erase.

I followed this guide by SJamG, which links to guides on gold card making and ADB setup by TheUnlockr. I've summarised the guides below, but unless they disappear off the Internet it's best to follow them :) My own experience only diverged from the guide right at the end, when the updater hung at "Waiting for bootloader" - see below for more troubleshooting details.

I installed HTC Sync to get the drivers for the phone set up (even though the guide has workarounds for Windows 7 drivers, I didn't need to use them - the drivers that came with Sync worked just fine), downloaded and unzipped the Android SDK, and switched on USB debugging on the phone. I also grabbed a copy of HTC's latest generic OS update (as of June 5, 2010).

The next step needed a free micro SD card - luckily, I'd bought a 16Gb card with my phone, so I was able to use the 4Gb card which came installed in the phone as my 'gold card' (seems like some sort of code loaded onto an SD card which instructs the phone's bootloader to accept ROM uploads, or similar). I also had a handy Micro SD -> SD adaptor to use the card with my laptop.

Creating the card was pretty simple: install the card in the phone, plug the phone into my laptop, open a command prompt, type in the magic incantation:

adb shell
cat /sys/class/mmc_host/mmc1/mmc1:*/cid

I pasted the returned code into this site, then pasted the munged code returned by that site into this site (totally forgot to replace the first two digits of the intermediate code with 00 as required in the 'How To Create A Goldcard' guide, but it didn't actually seem to matter), and waited until I received my gold card image in the email.

I formatted the card in the Desire, put it in the laptop, used the recommended hex editor to write the gold card image onto the first 368 bytes of the SD card, checked that the card still worked as a filesystem under Windows, then put the card back into the phone.

At this point, the guide said to run the HTC updater and let it sort everything out. However, for me, the updater rebooted the phone fine, but then hung at "Waiting for bootloader" while the phone sat at a dark screen with the HTC logo and refused to do anything. Disconnecting the USB cable dropped me into the Android bootloader (a white screen with some skateboarding robots and tiny text). I tried a few different things to try and get it working again, but there were a couple that worked:

Method 1

Make sure the phone is powered on and plugged into the PC (if it's hung at the bootloader, reboot it by removing the battery).

Open a command window and navigate to the tools directory of the Android SDK (I unzipped it to C:\AndroidSDK, so this would be C:\AndroidSDK\tools ).

Type adb devices to check that USB debugging is enabled and the phone is recognised. Now type adb reboot bootloader to manually reboot the device into the bootloader - it should show a white screen with skating androids and some text.

Method 2

You can also get into the bootloader by just powering the phone off, holding down the Back button, and powering it on again.

I've reflashed the phone 3 times now - the first and third times, the only method that worked was method 1, but the second time I got method 2 to work. No idea what the difference was...

Once the bootloader screen is showing, run the HTC updater. It will reboot the phone again itself, but in my case, the phone managed to get past the initial bootloader and begin flashing the phone. This took about ten tense minutes, and when the phone rebooted afterwards it spent some time displaying a green down arrow with two other green arrows in a circle around it. No idea what that meant, but after waiting for a while the phone ran through its initial setup screens and finally booted into an un-Orange-tained version of Android/Sense :D
For my own benefit, and the benefit of anyone Googling for this...

Go into Phone Settings -> Connectivity -> USB connection mode, and choose Data Service

Plug the phone into your computer using the USB cable (presumably Bluetooth will work as well, but USB should be a lot more reliable)

Download the LG Mobile Support Tool. This tool is primarily for flashing your phone's firmware, but it also contains a handy link to download the USB modem driver.

Once the tool is downloaded, run the installer and wait for the tool to appear. If it doesn't, it can be found on the Start Menu under LGMobile Support Tool.

In the tool, go to the Customer Support menu, and click 'Application, Manual and USB Driver Download'. You'll need to put in the phone's IMEI or model/SN, both of which can be found beneath the battery - in my case, the IMEI wasn't recognised but the model and serial number were.

Once the phone is recognised, double-click the usb modem driver to download it. It will be saved to C:\KU990\ as something like "LGUSBModemDriver_(version details).exe". Install the driver.

Once that's done, plug in the phone with the USB cable, and your computer should recognise it as a modem. Go into Device Manager (Control Panel -> Hardware and Sound -> Device Manager), look under Modems, and double-click your LG modem (mine was called "LGE Mobile USB Modem").

Go to the Diagnostics tab and hit Query Modem. The modem should reply with a bunch of diagnostic messages. If this works, go to the Advanced tab and enter the following into the 'Extra initialization commands' field:


Now create a new dial-up networking connection. In Windows 7, you'll need to go to the Control Panel and open the Network and Sharing Center, then click 'Set up a new connection or network'. Follow the wizard, creating a dial-up connection. If you have more than one modem now (most laptops have a built-in one), you'll need to select to use the LG USB modem.

When setting up the connection, you'll want to leave the username and password fields blank, and enter the phone number as:


Finally, connect to the new dial-up connection and try loading something (if you're testing this out, make sure to switch your wireless connection off or unplug your ethernet cable first ;) )
I booked a week off for the move, thinking that we'd be done by Wednesday and I'd have a couple of days to relax in the new house after the move. I underestimated a little...
Details!Collapse )


Timba yay!

I'm now the proud owner of a timba! It's a little one (although surprisingly heavy) and doesn't have much bass tone, but the slap is super loud and just cuts through everything if I'm improvising <3

I've actually been playing it for a couple of months - it belongs to one of the mestres at the samba school, but she didn't play it much because of the tone. The leader of our timba section picked it up, tuned it way up and played it for a bit, then I ended up trying it out when he wasn't around for a few rehearsals.

I love the fact that the tone lets me play rolls and suchlike without needing to put too much force in - I still don't have an enormous amount of muscle stamina, and this lets me play more complicated parts for longer than I would with a full-size (and duller-toned) timba. So when I was offered the chance to buy it, I happily agreed :) Plus, being a smaller drum means easier storage: important in a flat!

I made the trade at today's fun Festival busk, and took the timba home with me. So now all I need to do is find a place to practise. Wonder how hard it would be to soundproof my shed...>.>


Movin' On

It's been almost two years since Nate and I moved down to Falkirk. I'd just got a job at Amazon a few weeks earlier - when he phoned me to offer the place, my boss had asked if I could start the next day, and I had to arrange a delay since I had to a) find a flat nearer to Edinburgh than Dundee, and b) arrange a move. We spent the next few weeks frantically scouring property sites, trying to discard enough possessions so that the contents of our fairly large Dundee flat would fit into our rather less large Falkirk one, and dealing with the fact that our fridge/freezer had packed up (and its contents rotted) while we were in Glasgow earlier that month.

Since we were pressed for time and crazy stressed, we ended up renting the first flat we viewed, on the principle that we would find a better place after our six month lease was up. Hiring a removal firm on such short notice would have been prohibitively expensive, so we had to make do with a combination of my newly-acquired Clio and a van that my parents hired. I discovered that a Clio can in fact hold a large armchair, provided it's inserted in just the right way - it took up every spare inch of the car not occupied by Nate and I! It took a couple of shuttles between Dundee and Falkirk (and down the five flights of stairs to our Dundee flat) to get most of our stuff moved, and by the time my parents got back home it must have been about 3am. I started work the next day while Nate decompressed the house.

The move was sufficiently crazy that we put off doing it again until we'd settled in, and the six month lease turned into a year, then two. Eventually my mum offered to help us out with a deposit on a house. It took a while before we actually did very much, but eventually we began browsing through random property websites. On a whim, I arranged a few viewings, not particularly expecting much out of them - indeed, the first couple of places (which were marked with "needs some improvement" on the schedule) were pretty dreadful. We did find quite a nice place halfway across Falkirk, although since it needed some renovation, we didn't immediately put in an offer.

While we were considering, we started looking for solicitors for conveyancing. Nate stumbled across a solicitor who also did some property and randomly noticed a place two streets away from us for sale - small but nicely decorated, with a garden (and a shed - awesome!). We arranged a viewing and immediately fell in love. The next day we put in an offer (fixed price, yay!), which was promptly accepted.

And so we're picking up the keys on Monday. We've got a van booked for Tuesday - which I can drive now, thanks to recently hitting my quarter-century - and we're planning to go on a shopping spree for some paint and bookshelves, thanks to the awesomeness of actually being able to paint and put stuff up on the walls! This time round, not wanting a repeat of the frantic last move, we've arranged a generous overlap between moving in and moving out of our current flat - we don't need to be out until Friday, so things should be nice and relaxed.

Fingers crossed, by the end of next week we should be in our new home :)


Drumming in the sun

I've been pretty busy over the last couple of months, gigging almost every weekend with Puff Uproar or the Edinburgh Samba School. So far I've played Big In Falkirk, Glasgow Subway Festival, the Edinburgh Marathon, Balloch, the Glasgow West End Festival, Grangemouth, Whitburn, Clydebank, Departure Lounge club in Edinburgh, and Kirkaldy. Often I have to choose between the two bands, since the gigs usually fall on a Saturday and sometimes conflict.

This Saturday, however, was the Edinburgh International Jazz Festival Mardi Gras, and I'd found out a few days before that while both bands were playing in the parade at the same time, they were both performing static sets in the Grassmarket ten minutes apart. Something had to be done...

So I turned up that day wearing my Puff Uproar outfit (black combats, black shirt, silver tie), played the parade - which went fairly well considering it was our first ever parade - then headed to the by now bustling Grassmarket for our static set. We were a bit late on, due to scheduling slips, which meant that by the end of our twenty minute set, the Samba School were gathering and preparing to perform.

I managed to locate the School performers by the simple method of looking for the largest concentration of bright orange in the crowd. Thanks to some samba magic on Suzy's part I had a drum waiting for me, and I had come prepared: in mid-street, I whipped off my black clothing to reveal the orange and white underneath, just in time to move up to the performance pitch. Score :)

Some photos from Flickr:

Puff Uproar:
[1] [2] [3]

Edinburgh Samba School:
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22]