Blog

Omnis and center foot

As mentioned in my previous post, R2’s current main upgrade is to the center foot. The main parts to improve are the wheel, the shell, and the ankle attachment to the body. Improving all these should give a much smoother ride.

Wheels

Assembled set of wheels
Assembled set of wheels

Originally, the center foot had one large castor that swivelled on a mount. The main problem with this is that a) it has to swivel to change direction, and b) because of that the wheel needs to be smaller to allow the change of direction and not hit the foot shell.

With the new Omni wheels from Vex Robotics, there is no need to have any swivel built in as the wheels can roll in any direction smoothly. This also allows the use of much bigger wheels which gives a smoother ride and makes it easier to get over obstacles. The wheels were mounted into a custom chassis that I made from sheet and square tube aluminium which gave a very solid ride. (See this blog post for more info) This also mounted directly to the ankle to make the whole system more rigid.

See the build gallery for more pictures

Foot Shell

The foot shell I had in place was one I received near the start of my build, and was never particularly happy with. Recently a member of the UK Builders Club, Mark Leigh, started making some new steel foot shells for members and I decided to fork out for a set. I’m very glad I did as they are excellent quality and up to club spec.

Center foot assembly

There are a number of benefits to the new shells. For one, the side panels come off which allows for easy access to the main ankle bolt which was a major limitation of the previous one. Also, all bolts could be tightened up with allen keys or screwdrivers whereas before a lot of them could only be done to hand tight, and even then it was very awkward.

Lastly, the new foot shell is no longer structural, with the shell, ankle, and wheel chassis all being mounted via the same bolt. Previously the castor was attached to the shell, which was then attached to the ankle. When I removed the old foot, there was a lot of wear and potential failures waiting to happen.

Ankle

This improvement should never really have been needed if I’d done the job properly in the first place. The ankle is bolted to a plate which bolts through the body into the skirt. When I initially did this, I didn’t make sure the plate was a consistent level, and didn’t have all the bolts done up properly. This led to a lot of wobble and eventual failure of one of them, and then a temporary fix.

This time however, I made some decent spacers all the same length, and bolted everything through them to R2’s skirt (a new aluminium one, but that doesn’t really make a difference, would work fine with the old fibreglass one).

Conclusion

After all this, R2 was feeling rock solid, at least as far as the center foot is concerned.

R2's previously worst nightmare - carpet
R2’s previously worst nightmare – carpet

This weekend R2 was at NWCC Bolton which was going to be his first big test on the new foot. The night before the event, the organisers posted a picture of the hall where everything was taking place and it got me a bit worried. It was a fully carpeted venue. The only part that looked like a hard floor was a little bit infront of the bar where they had the arcade games lined up.

With the old foot, this would have been pretty much a show stopper. However, I got there and unloaded R2 into the hall and turned him on for a test.

Wow, what a difference. At his last event at new year, R2 had great issues being on carpet and I had to push him a fair bit. This time however, not a problem at all. I even got brave and tried going over the transition from hard floor to carpet, and he didn’t miss a beat or slow down. Even going over door thresholds with barely a judder.

This has got to be one of the best upgrades I’ve given R2 since I got him working. I’m so pleased with it all and would heartily recommend Omni wheels for any astromech. Infact, I’m currently wondering if I should replace the castors on the main drive too.

Of course, it wasn’t just the Omni wheels that made the difference, a combination of all three improvements contributed, but I do feel that the wheels made the majority of it.

Looking forward to the Northern Builders Day in a couple of weeks to show him off a bit more.

Weekend of code enhancements

The temperature is getting low, and after spending most of saturday getting numb fingers and feet whilst working on R2’s center foot, I decided to do some much warmer work in the office and do some code enhancements.

  1. Telegram Bot
  2. i2c Monitoring
  3. Drinks Mixer

Telegram Bot

Telegram is a communication system that I already use for my home automation, so figured it might be handy for R2 to use it to. Not many functions added yet, just some simple volume and sound commands, but the main function is the /status command.

Current Status
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Uptime: 14:26:25.870000
Main Battery: 24.865 (balance: 0.011)
Remote Battery: 
Wifi: 
Internet: True 
Location: 
Volume: 0.296875
--------------
Scripts Running:

Still some clean up needed, but gives a good way of checking various stats.

i2c Monitoring

This is something I’ve been wanting to add for a while, and have had the circuit and basic arduino code done already. It is all now tied into r2_control and so current draw and battery status (current voltage and max cell difference) can now be queried. Not only that, if logging is enabled then it will also log to a file twice a second (configurable) as a csv. This means it can be imported into a spreadsheet and graphed so I can see power draw throughout the day.

As can be seen above, the details can also be retrieved using the telegram bot and /status.

Drinks Mixer

Not so much part of R2 exactly, but it will be going into him. The plan is to have a few reservoirs, some pumps, and some control circuit to allow drinks to be mixed and poured.

A base outline of code is now done, which will take in an array of substances and amounts, and turn a set of i2c controlled motors on and off for the desired duration. Still lots to do on this, not least of which is to get a working circuit done, and a decent web interface, etc. But its a start.

Summary

So, all in all I’m rather happy with a mega weekend of hacking at R2. May try to get out to the garage one evening this week to do some more work on his center foot. I’d like to have it ready for the midnight premier of The Last Jedi that I’m attending. Trouble is, the garage is currently sat at around 4.5C.

Working on the new center foot

The main issue R2 has at the moment is a rather dodgy center foot. For a start off, the shell is actually structural which I don’t like. The shell is also not the best, with no easy access to remove the center foot without a full dismantle which isn’t easy.

So R2 got some new foot shells made up, and I started work on a new set of wheels to fit in them.

Based on a design by another builder (Youtube video of them in action), the chassis for the wheels is made out of plates of aluminium with some square tubing for spacing. The wheels going into them are 4″ Vex Omni Pro ones, which allow movement in all directions, not just forwards and back. Much better than a caster as it doesn’t have to swivel when changing direction. Also allows for larger diameter wheels which helps getting over bumps.

Center foot chassis
Center foot chassis

This chassis will be bolted directly to the center ankle, and the foot shell will more or less just be floating on top. This, coupled with a few other modifications and tweaks, should make for a much more steady ride with less rattles.

 

Birmingham MCM, MOT, and Tier 2.

This weekend was R2’s first official outing with the UK R2 Builders. We were invited to attend Birmingham MCM Comic Con with the UK Garrison, an arm of the 501st cosplay group.

I loaded R2 into the car on Friday after work, and drove down to a hotel near the Birmingham NEC. Due to late booking of the hotel, I wasn’t really left much choice, and it showed.  Saturday was an early start so I tried for an early night so I was all set for a 7am start. That didn’t go quite to plan, nor did the hotel room shower. Still, fun and games at the hotel were just a blip on what promised to be a great weekend.

After driving round and getting lost in the maze that is the NEC, I finally saw a few other builders who were also trying to figure out where to go and its always better to be lost in a group than on your own.

Eventually we did find where to park, and where we were unloading and after a quick registration we started getting the droids into the building and set up on our stand.

First order of business was to get my droid a pass on his MOT. To be allowed at official events, and to get some Public Liability Insurance (you know, just incase I ‘accidentally’ run over a little darling who is poking R2 too much), R2 has to pass a club MOT and I have to show I can drive him. Its a really good idea, and adds a great level of professionalism to the whole event.

Thankfully, R2 passed, which meant he was free to roam around and entertain.

The Saturday of the event was extremely busy, with so many extra people showing up that we pretty much didn’t leave the stand. Not only that, but the UK Garrison couldn’t do their usual parade due to safety worries. Still, it didn’t really put a damper on things as people were constantly coming to the stand and being entertained by the droids.

It really is fantastic seeing the interactions that people of all ages have with R2. He isn’t just a remote controlled robot, he is an actual person to a lot of them, and I’m less of a driver and more of a puppeteer.

Then there are the Jawas. Damn things get everywhere!

Only kidding, the UK Garrison have a few Jawas in their midst, and they certainly get into character. It was so much fun getting R2 to play along with them and everyone around absolutely loved it. Even better when their wrangler started jangling keys to distract them and move them along. Bringing out the play in cosplay.

The day passed all too quickly, and we were soon packing up for the day and making our way back to our hotels. A few of us went out for a meal that night at a local hotel, and surprisingly the conversation wasn’t just about droids. Well, not quite anyway.

Another attempt at an early night and a bit more sleep was had, ready for a not quite so early morning on Sunday. The doors were opened for us at about 8:30am, and we wandered in to make sure the droids hadn’t got out over night.

Sunday was a little bit quieter, so a few of us managed to roam about the convention a bit more. I took R2 out on a number of jaunts through the day along the concourse infront of the halls where MCM was running. It was a great area to roll around, lots of people but not as packed as it was around the stalls and other areas.

It did take quite a long time to get from one end to the other, not because of the distance but because he was getting stopped every meter or so for photos, or to chat with me about him. R2 really does like his picture taken, much more so than I do.

We had a few more encounters with the Jawas, and some sneaky avoiding of imperial troops looking for droids but I managed to convince them that these weren’t the ones they were looking for. There was also a group of large feline types who seemed to take a great interest in R2 and got a little curious.

The UK Garrison do a troop on each day if possible, and thankfully they were able to do one on Sunday, not only that but R2 was allowed to join in. At 2pm sharp, we waited outside the UKG changing room, ready to tag onto the end of the parade. There were a lot of the UKG there, I thought the line coming out was never going to end, but it eventually did and R2 joined in. We did a basic loop of the event which took about 20 minutes, it was great fun even for someone like me who doesn’t like to be in the center of attention. Of course, R2 takes a lot of it off me.

So, you’d think that was the highlight of the weekend? Nope, as the event was drawing to an end, I noticed a load of rebel pilots gathering around at the stand next to us. Next thing I know, Anthony Daniels asked if he could borrow my droid for a photo shoot. Not really going to say no now, am I? He stuck around afterwards too and had a few other photos with some of the other droids too.

Sadly, the event drew to an end. We were rather tired by this point, me, the other builders, and even poor R2’s battery was starting to show some signs of tiredness. R2 got loaded back into my car (I really need a van!), and I set off on the 2 1/2 hour drive home. A quick take out once I was in, and then bed became too tempting.

Now that I’ve recovered however, I’m planning the next steps with R2. As well as the MOT to get insurance coverage, there is also a tier 2 option. Tier 2 means that your droid is effectively screen ready (maybe not screen accurate, R2 changes too much between the films and even between scenes in the same film!) and can be used in official Lucas/Disney functions.

This is another great thing about the R2 Builders club, we have tight bonds with Lucasfilm, and now Disney, and occasionally get asked to do some official events. Anyone who is active in the club and has a tier 2 droid can get the chance to do one of these events.

To this end, there is now a long list of issues on my github page that needs sorting to get tier 2 approval. After a weekend with other droids, and seeing what is possible, it has pushed my motivation up a level to improve the droid, and also given me direction. I’m going to stop going for the fancy stuff, and instead concentrate on getting R2 as solid as possible, and looking the part.

Python code to control an R2D2 (or other astromech) from a Raspberry Pi over i2c
Milestone: Tier 2
Issues: 2 open, 11 closed.

Make R2 more solid for shows, and aim for that Tier 2 classification (ready for LucasFilm)

So all in all, it was a really fun weekend. I don’t think the smile left my face during the entire event. I really can’t wait for the next big event with the builders.

Spectre Squad Photo Shoot

This morning, Spectre Squad had got access to the Preston Laser Quest arena for doing some photo shoots with everyone in their gear. R2 wasn’t going to miss out! Early start (for me), but no real problems. Car quickly loaded and off to Preston.

Got there a little early, and waited for the facilities to be opened, then the problems started…

Managed to get R2 through the door, just, and started wheeling him through to the changing room area so I could put him together properly and get him running.

Unfortunately, half way there his foot fell off. The center foot just decided it no longer wanted to be attached. This coupled with the fact that the main leg nuts weren’t tightened yet led to a very unstable droid. Unable to really move him anywhere, I had to get some help to lay him down, whilst I started figuring out if it was repairable or not.

Thankfully, it seemed there was no real damage, and just the main nuts had worked loose. Probably thanks to the nut rattling floor at Preston Guild Hall during the previous event. It still took a good twenty or thirty minutes to dismantle the foot, bolt it back in place, and reassemble it.

Ok, that was the fun for the event, right? Nope. I powered him up and tried to activate the controller. For some reason, there was no connection made. A bit more faffing with mobile phone hotspots and the laptop and I determined that the controller had just lost its pairing with R2. No problems, I’ll just re-pair.

Darn, need a mini-usb cable, and I’d not brought my bag o’ cables. Asking around, noone had one handy. Plenty of usb-micro, but no mini. Last ditch attempt was to ask the staff of the Laser Quest. To which I got presented a rats nest of cables, with the hope that what I wanted was in there.

Success! One fully functioning droid!

With all the drama over it was time for photos. First one was a full group shot outside. Not the easiest of things to do with cars driving by (we got a fair few honks and waves as they passed), but managed to get a decent shot or two

Spectre Squad, outside Preston Laser Quest and Escape Room

Then it was into the arena for various posed and group shots.

We eventually got turfed out as they started to get paying customers coming in, including a kids birthday party who got the added bonus of some Star Wars people attending! R2 did get a bit of a mauling from them, but he’s fairly tough for the most part.

It was a really enjoyable morning, despite the difficulties with R2. Was great meeting more of the Squad, and getting to know them a bit better. Hopefully I’ll be able to troop with them more often in the future, as their events are generally in the North West.

So, lessons learnt for next time? Well, first of all I think R2’s feet need a full overhaul, especially the center one. Fingers crossed I’ll be getting my new foot shells next month, and can start on an improved center wheel solution. I also need to make sure I’ve got the right cables with me. A usb-mini is already in my toolkit.

I also need to improve the options for diagnosing issues and connecting to him with my laptop. He will soon be getting a dedicated 3g connection and will be a wifi hotspot so I can connect directly with my laptop. Possibly also a VPN back to home.

Looking forward to my next event! 😀

Preston Comic Con

Back home now and recharging the ol’ batteries after a day at the Guild Hall in Preston for Preston Comic Con. Had a great day, with lots of interactions with other attendees.

A nice early start to the morning (I don’t do early!), a quick load up of R2 into the boot of the car, and off to Preston it was. Getting this down to a fine art, with R2 all ready the night before and a checklist I have in Google Keep. Main thing to remember is the controller, as it wouldn’t be the first (or second) time I’ve set off without it. Thankfully very little traffic and I got to the loading area of the Guild Hall before 9am.

I’d had no contact from the event organiser, so had to guess where I could unload and get ready. Thankfully they had a large freight lift to use and there were some of the vendors there bringing their wares in. Unfortunately, as I was unloading R2 and getting him off his sled I noticed a bare wire hanging down. Even worse, it was a heavy gauge one which meant it was probably for his main drive. A bit of tracing and it turns out that one of the spade connectors going to the drive relay wasn’t crimped properly and had come out. Thats not good. Anyway, I tightened all the leg nuts up and wheeled/dragged him to the lift and up into the main hall.

First thing to do was go and move the car. I couldn’t leave it in the loading bay all day, and had to move it to the nearby multi storey carpark. Easier said than done, due to roadworks and building works on the multi storey, along with the fun of Preston’s one way system. After a few detours and wrong turns I managed to find the entrance to the car park, following a couple in a car with Judge Dredd stickers on the back. Guessing they’re going to the same place. So finally parked up and paid, I grab my toolkit (well, shoe box… need to improve on that) and head back to R2.

Time to see what I can do about this wiring issue. Of course, one choice was to take the relay out of the equation and wire the drive straight to the Sabertooth speed controller. This however would mean I couldn’t remotely deactivate the drive when he isn’t moving and I really didn’t want to do that. I’ve got loads of spare connectors, unfortunately they were at home along with the crimping too. Ok, what have I got in my mobile repair kit? Gorilla tape! I may be able to do something with that. So, taking a small bit of tape, I managed to actually get the wire making good contact with the terminal on the relay. A load more tape held it fast, and even better, it managed to last the entire event! Marvellous stuff, that Gorilla tape, it saved the day!

With R2 fully functioning just in time for the early bird ticket holders to get in, I thought I’d take him for a spin round the main hall. First stop was to say visit Jimmy Vee who is the new guy to play R2D2 in the films after Kenny Bakers passing last year. I’d cleaned up the inside of R2’s back door ready for siging, and Jimmy was the first to get the pleasure.

View this post on Instagram

R2's first autograph.

A post shared by R2D2 (@r2djp) on

Next, was to say Hi to Robert Llewellyn. Had to point out the R2 and his Tesla had something in common, the power source! It also turns out that I’d left my rucksack in the car with the book I wanted Robert to sign in it. Oh well, I can get that done later. Had a brief chat with him about his YouTube channel, Fully Charged, and he let me know about whats coming in future episodes. I’m very jealous!

With that, I thought I’d see some of the other halls that were on, especially Hall 3 which was where UCLAN were setting up with some fun stuff they had brought, and where I knew a friend had come in her Rey outfit. This gave the biggest problem of the day. The main floor of the Guild Hall is paved with bricks, one of R2’s least favourite surfaces. I tried driving him about on it, but the noise and rattling that was produced made me wince. I really need to improve the center foot system, and I’m glad I made the recent improvement for his ankle lock. Without that improvement I think there would’ve been some serious damage to the foot shell by the end of the day. As it was, the vibrations at one point made the side of his foot and the half moon fall off, which necessitated finding a corner and laying R2 gently onto his back to do some surgery. The vibrations also caused some of the power connections in his dome to work loose which deactivated some of the lighting.

The Gorilla tape held strong tho!

After that, I lifted/dragged R2 across those bits of floor if I needed to move him. Not easy when you have a 65kg+ droid, and a backpack with laptop and toolkit in it. Still, the areas where I spent most of my time were nice and smooth, giving R2 plenty of space to dance around and make a nuisance of himself.

As always, R2 had a great time interacting with everyone at the convention, even the Storm Troopers and evil Empire scum of Spectre Squad. Kids all seemed to love him, and thankfully none of them got too ‘handy’ with him. When they were, the parents were really respectful and stopped them from doing anything damaging. Not that its easy to do much damage, and I work on the premise that if they break something then I just need to make it stronger! A lot of the adults liked him too, and had some nice chats with people, explaining about the R2 Builders Club, and other aspects of the hobby. The reactions from people is one of the main reasons I do these events, it gives a great feeling and the UK Builders Club often describe the results as ‘builders grin’.

Alas, the end of the day had to come, although whilst R2 still had plenty of battery left, I didn’t. There was a last bit of fun to be had when I parked R2 near the stairs up to a seating area and went to rest my feet for a bit. I could keep an eye on R2 from there, but I could be surreptitious enough to control him without being seen. Watching people try to figure out if he could actually see and react to things was very funny. Especially when a couple of lasses were moving round him and I was spinning the dome to follow them.

So the staff started to move us on, I got R2 into the back stage area and went on another adventure to get the car back to the loading bay via another battle with Preston’s one way system and road works. A helpful member of staff helped me with the final lift of R2 into the back of the car, and it was off home for me.

All in all, a really lovely day spent. Special thanks for Nicky as Rey for inviting me along with the UCLAN lot, the combo of R2 and Rey went down quite well. I’ve added a few things to the todo list for R2 improvement, and quite a few items that I need to start bringing as spares. Definitely need to start bringing some spare wire, spade connectors, crimping tools, and deodorant (R2 is heavy, got quite an exercise!).

Looking forward to the next event!

Preston Comic Con Prep

Currently getting ready for a single day convention in Preston. Needed to do a few repairs to R2 after the last event, and as usual I left them all to the last minute. Thankfully for the most part it was tightening up some nuts and bolts (this time putting some loctite on them, lets see if that holds). One major repair was to one of the front door panels where I’d yet again put my knee into it as I was loading R2 onto his sled.

The one improvement I wanted to make before this event tho, was to improve the center ankle lock. After inspection, the previous ankle lock looked like it was going to go through the metal of the foot shell. Not really too surprising as it was just made from two large washers that I’d ground down with the correct profiles. This meant that there was a very small surface area pressing onto the foot shell, with probably half the weight of the droid on it.

The new ankle lock is a much beefier piece of aluminium, with a larger (M4 vs M3) bolt to hold it in place. Surface area onto the foot shell should now be an order of magnitude bigger.

So, with that done I think I am just about ready for tomorrow. I might polish up the inside of his back door seeing as the new R2 guy is at the con, and may get him to sign it. Have to do some tests to see how well sharpie does on metal, and ways to protect it once its done.

Google keep list is ready and cleared so I can check everything off in the morning. Hopefully I won’t do the usual and forget his controller.

Come say hi if you’re there.

Electrics Overview

After a recent discussion on the facebook group, I thought it was time to finally document the internals of R2 as best I could.

Not the most elegant of diagrams, but it does the job.

The battery is made from 18650 cells and gives out about 24v. I did a write up about this over on my personal blog. I’ve managed over 6 hours on a single charge of my main battery, most of the time was spent rolling around an event too.

All power goes through a central fuse box. Each part of the droid has its own fuse of various ratings. A single DPST switch handles turning R2 on and off, with a couple of meters to monitor voltage and current.

The main drive systems all run on 24v to give maximum torque. Each motor is connected to the speed controllers via a relay, controlled from a relay board. This gives both the ability to remotely control the power to the drives, and a safety feature of breaking the circuit to the motors if there is no battery in place. Without this, its possible to blow the speed controller if the droid is pushed whilst no battery to take the regenerated power.

The Pi is the main brain (currently a Raspberry Pi v3), running the r2 control software I’ve written. The vast majority of the control is over i2c, talking to various modules in R2. The main i2c module is an Adafruit i2c 16 channel servo controller. This controls the servos that open the various panels, as well as the signals to the speed controllers. A couple of R/C switches control the power to the drive relays. i2c is also carried through to the dome for controlling anything there.

Lastly, audio is taken from the output of the Pi into a dedicated amplifier and stereo speakers.

I’ve tried to keep it as simple as possible, but with so many options it isn’t always easy. The main thing I wanted to do was keep everything to 24v for as long as possible. With this current setup the body just has two automotive voltage converters, one to power the Pi, and the other to give dedicated 6v to the servos. Everything runs a common ground to simplify things, and also minimise communication errors.