NE-Five Visits The Touring Toolshed!

NE-Five meets the legends that are Sir David Jason and Jay Blades MBE on The Touring Toolshed!

NE-Five met the legends that are Sir David Jason and Jay Blades MBE! I was asked to go on their new tv show, now airing in the UK and available on iPlayer, to show off my long running passion project, NE-Five!

David and Jay having a laugh with NE-Five, Keegan was probably involved somewhere…
[Copyright BBC Two and Hungry Jay Media]

This was all filmed in mid 2023 and I’ve been very busy since then, so over the next week in the lead up to the episode airing on BBC Two I’ll be releasing a load of videos and blog posts showing what NE-Five can do now! I’m going to bite the bullet and finally release the CAD models too, perfect is the enemy of done and they’ll never be done!

Me and Sir David Jason, he has given me and the nation countless laughs over the years so it was amazing to return the favour with a joke or two of my own!

Stay tuned for more, and if you’re eager (and in the UK) you can check out the episode on iPlayer already! Don’t forget to check out the rest of the episodes and awesome makers that have been showcased too!

To dispel any doubts, I was featured on The Touring Toolshed showing off NE-Five as a personal passion project and not on behalf of Neave Engineering, this doesn’t imply endorsement by the BBC or Hungry Jay Media. The BBC is an amazing institution and needs protecting, just ask Public Service Broadcasting!

Big News, Going Pro!

I have taken the plunge and I’ve gone part time at work, dropping to three days a week, to give me far more time to concentrate on my lifelong passion of robotics with the aim of making it my career!  This wasn’t exactly planned if I’m honest but the result of a recent epiphany, building on my experience with MacFeegle Prime at PiWars.

My plan is to use this time to continue learning ROS, finish development on MacFeegle Prime and it’s controllers, and restart development of a few stale projects.  I’ll be making all of these projects open source too, to give back to the community that has, and continues to, inspire me to bigger things.

The projects should be familiar to long time followers of my blog and other channels, though as I’ll be rebuilding them to share they’ll have more sensible names.  Sensible, but all puns…

NE-1 (Bumblebee)

This will be a resurrection of the first robot project I tried since my A-Levels, rebuilding my Original Roomba nicknamed “Bumblebee”.  I was given this robot in a broken state by a friend of mine, it turned out that the issue was a duff battery so easy to get working again, it quickly developed a fault where it’s speaker died though and it lost its voice which is where the nickname comes from.  I used it as designed for more years after that before it just stopped working, none of the buttons worked and it was totally unresponsive, looked like the main circuit board had died.

Bumblebee

I made a series of videos showing the in’s and out’s of reverse engineering the robot culminating in being able to drive it around using a gamepad, I never recreated its autonomous functions of being able to hoover by itself though.

Project NE-1 will resurrect this project as a way to show how a cheap old hoover, which can be found on eBay for as little as £25, can be reborn using a Raspberry Pi and given new purpose. The newer versions have a diagnostics port which makes this even easier, but this will concentrate on how to reverse engineer the hardware and hopefully show how this or an RC car can be converted in to a very affordable robotics platform. I’m hoping that this will show that there are ways for anyone *cough* can get in to robotics.

NE-5 (MacFeegle Prime)

MacFeegle Prime was my entry for PiWars 2020, it won the public vote for fan favourite and came second overall! This robot has had a lot of blood, sweat, and tears put in to it but it suffers from a lot of legacy problems from early in its development, essentially I didn’t *really* know what I was doing, making it up as I went along and in some ways it shows.

Very Early Prototype…
Winner! Celebrating on the day of Virtual PiWars 2020

The plan for MacFeegle Prime is to finish the build as per the MVP and get him to the basic level to compete in PiWars for when it’s held next year. At that point I’ll have learned how to build an awesome robot, more importantly though all the ways not to build a robot. Using all my experience, and the parts, from MacFeegle Prime I’ll design and build NE-5 which will be redesigned from the ground up. The mechanical files, BOM, and code for NE-5 will be published so anyone can build one to use for research or just for a laugh.

MacFeegle Prime has been build using off the shelf parts, some slightly modified, along with 3d printed custom components. It’s this combination of easy access to components and relatively simple construct that makes for an incredibly capable mobile robotics platform. Also a testbed for larger versions. In future phases there will be an NE-5L, and hopefully an XL, closer to the size of it’s inspiration…

NE-Where (The Luggage)

Has to be done!

The Luggage has been a daft project that has been on and off the back burner since EMF 2016, when I realised how annoying it was to walk back and forwards from my car to bring all my crap to the campsite. Fast forward a couple of years to EMF 2018 and Hacky Racers was born! I decided to resurrect the project as a racer, with a pair of 2KW motors and a lot of moxie! Again, I was making it up as I went and I didn’t have the experience with CAD I do now, I didn’t really have a plan so much as a pLn, left everything to the last minute and it didn’t come together at all.

After the first couple of events for Hacky Racers I realised I really like commentating and running the races, handy as everyone else wanted to race! This also meant that I didn’t have to worry about falling within the rules (which was already in a lot of grey areas) nor have to worry about getting it done “in time” for anything, which meant it didn’t get done…

Fast forward to now and I have the majority of all the parts to not only finish it but make it much more capable. Rather than being a racer, then a racer that could be remote controlled, it’s now going to be a robot that I can ride.

To complement the relative simplicity of the NE-1 and the complexity of NE-5, NE-Where will be my heavy duty rover. I’ll be redesigning it from scratch along similar lines to my bike trailer. It was literally built around an 84L Really Useful Box, and that’s my plan for NE-Where too. As well as having a daft alter ego in the shape of The Luggage, legs and all, it’ll also have a full set of wheels for more sensible uses.

A Really Useful Trailer

This will be used for research into logistics robots, rough terrain navigation, and as a base for NE-5XL too.

NE-Thing

Robots aren’t much use if they can’t be controlled and for PiWars I made a custom controller for MacFeegle Prime based around a pair of three-axis joysticks, a bunch of switches, and a Raspberry Pi.

This controller uses ROS, as does the rest of the robot, to communicate and control it remotely. I got it to the point where it could drive the robot around and control it’s head too, with the live video stream I could control it remotely. The plan was to have a driving mode and manipulator mode, alas I didn’t get the arms integrated in time to get that far.

This was always intended to be reused for other projects, hence NE-Thing, and the design will be extended with that in mind. Along with WiFi and Bluetooth that are available on-board the Pi I’ll be adding an NRF24L01 transceiver as well as a GPS reciever. This will be useful for outdoor projects where WiFi isn’t available and GPS will allow for dynamic return to base control too.

In this phase this controller will be used for the robots above, longer term I intend to build a drone too where the return to base functionality should come in to its own.

NE-Body

One thing I’m going to research and develop further is teleoperation, with NE-5 having stereo vision I wanted to build a waldo controller to allow for more intuitive control over the robot’s arms.

A render of the waldo controller

The design above was a pretty quick design I threw together in a few hours, that I can say that alone shows how far I’ve come, and needs a lot of improvements to be actually useable. Likely I’ll switch to encoders of some kind instead of potentiometers but that needs researching. Due to the sheer number of potentiometers involved this will be based around either a Teensy or Arduino Mega, I think it’s 16 joints in total after all.

At the minute I’m not sure if this will connect directly with the robot or be a peripheral of the NE-Thing, I’ll have to make that call when I get around to it.

Funding…

Dropping to three days a week means I’ve still got a regular income and I’ll be able to cover my bills, I’m incredibly lucky to be able to say that, and the vast majority of parts for all the projects above I’ve purchased over the years already. For the foreseeable future I’ve plenty to be getting on with and all the parts I need, but for future phases I’ll need to find that budget from somewhere. My plan is to launch a Patreon page to help fund future work with the hope of taking this full time too.

If you stuck around to the end, thank you! Let’s see where this ride takes us!

Docker, A Reverse Proxy, This Site and LetsEncrypt!

The site was migrated to SSDNodes last year as my previous host was becoming less reliable and I fancied something more versatile.  I’ve not covered it on here but here is how my site runs, now with added HTTPS thanks to LetsEncrypt!

A bit of history.  This is a WordPress site and has been since it was migrated from Windows Live Spaces which shows it’s age!  There is an official Docker container available so I thought I’d give that a go.  I may want to host more than one site on the same virtual server at some point so looked in to my options for a reverse proxy and jwilder had the perfect solution it turned out.  Building on an example I found I managed to get the site going behind the proxy but wanted to secure it.  Unsurprisingly this problem had already been solved too…

Follows are my Docker Compose files that work a treat, as much as examples for others as to help me in the future if I need to set up a new site or rebuild this one if something goes wrong.  When the container for the site is fired up for the first time it creates, and maintains, a Lets Encrypt certificate automatically.  Neat!

One thing for VaultPress users to be aware of is that you’ll need to follow the steps here under the reverse proxy section otherwise the service won’t be able to connect to your site to back it up.

If I need to host a new site, I just need to create a new site definition file and it should sort itself out.  Please note, the formatting may be screwy if you copy and paste these so you may need to manually tweak them.

neave-eng.yml

version: '2'

services:

neaveeng:
 depends_on:
 - mariadb
 image: wordpress
 links:
 - mariadb:mysql
 environment:
 WORDPRESS_DB_PASSWORD: [YOURDBPASSWORDHERE]
 WORDPRESS_DB_NAME: wp_neaveeng
 APACHE_RUN_USER: wp-neaveeng
 APACHE_RUN_GROUP: wp-neaveeng
 VIRTUAL_HOST: neave.engineering
 LETSENCRYPT_HOST: neave.engineering
 LETSENCRYPT_EMAIL: my.email@domain.com
 volumes:
 - ./neaveeng/code:/code
 - ./neaveeng/html:/var/www/html
 - /etc/passwd:/etc/passwd:ro
 - /etc/group:/etc/group:ro
 restart: always

mariadb:
 image: mariadb
 environment:
 MYSQL_ROOT_PASSWORD: [YOURDBPASSWORDHERE]
 MYSQL_DATABASE: wp_neaveeng
 volumes:
 - ./neaveeng/database:/var/lib/mysql
 restart: always

proxy.yml

version: '2'

services:
 nginx-proxy:
 image: jwilder/nginx-proxy
 ports:
 - "80:80"
 - "443:443"
 volumes:
 - /var/run/docker.sock:/tmp/docker.sock:ro
 - "/etc/nginx/vhost.d"
 - "/usr/share/nginx/html"
 - "/etc/nginx/certs"
 restart: always

letsencrypt-nginx-proxy-companion:
 image: jrcs/letsencrypt-nginx-proxy-companion
 volumes:
 - "/var/run/docker.sock:/var/run/docker.sock:ro"
 volumes_from:
 - "nginx-proxy"

whoami:
 image: jwilder/whoami
 environment:
 - VIRTUAL_HOST=whoami.local
 restart: always

December Recap and The Year Ahead

December, a wonderfully triumphant mess!

The Bad Bits

I had a weird bug that left me knackered, we had project end which was busy and I was generally pushing myself too hard.

The Good Bits

Despite having a bug that left me knackered through application of drugs, coffee and rum I ignored it long enough to get shit done.  The entire team at work pulled off a blinder, everything clicked and we delivered an awesome demonstrator!  We aren’t allowed to show it off yet as we need to add a few bits for data attribution but we have produced something beautiful!  We had the Christmas party the same day and that was loads of fun too, then my friend Christy’s party a few days after that.  I’ll admit the post-con blues hit hard afterwards but I’ve had a bloody good sleep over Christmas!

I’ve also done a load of hacking this month; bits on the Mini before the above hit hard, more on the server which I rebuilt only to revert it and even hacked my hat to prevent migraines at work.  I’ve pictures and such so will write these up soon now that the dust is settling.

The Coming Year

Hopefully my role at work will change slightly soon which will be awesome, more details once/if it happens, but the things I’m looking forward to are the deadlines…  I’ve signed up for a track day in Hugo for the end of April and the London to Brighton Run in May!  I’ve also the Nerf shooting gallery to make for the beer fest for May Day weekend and hopefully will be attending World Maker Faire in August.

This year has been a bit of a revelation for me, with the anxiety and depression diagnosis and finally getting treatment I feel I’m finally on the right track, this year I think it’s time to get up to speed.

November Recap

Following up from my post on my Simple Rules I thought I’d start doing month end posts as a recap and log on how I’m doing.  Mostly for myself to read back on to see how far I’ve come but hopefully help other people too.  It’ll also be a great place to list the odds and sods I’ve done but not written a standalone article about.

Regarding tinkering, I’ve hacked my home server to act as a TV server and now installed a PCIe tuner to hopefully get Freeview HD hooked up to Kodi.  I’ve also done work on Hugo to get started with the EFI upgrade, after dropping the coolant I’ve removed the starter motor, distributor, the radiator and next up is installing the crank sensor and fuel tank.

Regarding The Rules I’m not going to lie, this month hasn’t been great though they are proving their worth because of that.  I’ve had a perfect storm of end of project stress, which despite the best of planning always happens, and a bout of some kind of cold bug.  I literally worked through the cold but it really wasn’t a good idea, it needed doing though, the result was that I was utterly wiped out mentally and physically.  I broke and ordered takeaway as I didn’t have the energy to cook.  Hell, I didn’t even have the energy to go to the pub at the weekend it was worst so that says something!  The flat got a bit messy but not too bad, cluttered more than actually untidy.

One thing I’m glad didn’t stop was tinkering.  I didn’t have the energy for big projects but messed around with Linux from the comfort of my sofa under a comfy purple fleece blanket.  Considering that in the past my tinkering has really suffered at times like that I take it as a sign things really have change for the better.

Though I have had a blip I take it as such, a blip.  The great thing about the rules though is that once the dust starts to settle, as it already has, I have a ready made template for getting back no track and tonight I already have.

Oh, I’ve also signed myself and Hugo up for a track day just after my birthday so there’s a big fat deadline right there!
EXCITED! 😀

Six Simple Rules For Dealing With My Anxiety

This post is the first non-technical one I’ve done in a while and will discuss my mental health issues, the problems therein and how I’m mitigating them.  I talk about things like this on Facebook, Twitter and even all-staff emails at work and I thought I’d finally pen something here.  This will also cover some of my favourite life hacks I’ve collected over the years, mostly via Lifehacker, which have helped me a great deal.

First off, I’m not a mental health professional and if you think you need help, please please please seek it.  This post will cover some of my issues, how I’ve dealt with them and maybe give some tips on helping you deal too but this isn’t a substitute for getting professional help.

Background

Anyone who knows me will know I’ve had problems with sleep for a long time, since I was 11 or so.  I chalked this up to puberty kicking in and then that just being how life is.  I’ve also had issues with crowds, confidence, imposter syndrome, stress and who knows what else and I always assumed they were lots of different things that weren’t related in any way.  I would get angry at the drop of a hat for the most inane of things, I would feel physically overwhelmed when in noisy rooms and generally feel constantly on edge.  These weren’t related though, clearly it was just that I’d had a bad week, bad nights sleep, I’d eaten something that hadn’t agreed with me and so on, always able to rationalise it away and though I was trying to deal with each of them it was in isolation.

One day last year I cam across a video from ProjectUROK in which Wil Wheaton talked about his struggles with anxiety and depression.  Now a lot of people thought his character in Star Trek TNG was irritating but I was young when I watched it so he was the character I associated with, a geeky kid with lofty goals trying to find his feet, so him talking about these issues I thought I’d give it a watch.

It really did hit me like a ton of bricks, all the little things and everything else swam in to focus.  It still took me a few months of reading up on it and talking with friends but I finally went to see a doctor about it in January this year.  She asked me a bunch of questions to get a idea of the severity and the results were pretty high.  High enough the question was raised, “how the hell have you dealt with this so long?” and I’ve no idea in retrospect.  I just kinda got on with life and hoped for the best but things were just getting worse.  She referred me for cognitive behavioural therapy and proscribed some medication to dampen the physical symptoms and I was finally on the right track.

The Early Days

What I learned about my condition was that my fight or flight response was almost permanently active, this explains why I couldn’t sleep, either hid from problems or got angry at them and more besides and the medication mitigates that until the therapy kicks in.  I didn’t quite have the epiphany that Wil Wheaton mentioned but after a few weeks I woke up one morning feeling odd.  I couldn’t quite place it, but something had changed and I couldn’t for the life of me figure out what.  After a few hours of pondering it occurred to me that the ache in my chest that I’d had for years had gone.  I’d always chalked it up to a symptom of asthma but apparently not!

At the same time as this was happening my work health care added mental health cover so rather than tying up NHS resources I thought I’d take advantage of our health plan.  Over the six months or so of sessions we talked about all sorts of things but mostly it taught me coping mechanisms on how to get out of the vicious mental loops I find it so easy to get in to.

Over time, things improved a great deal but I was still finding it really hard to maintain momentum and even get up on time still.

The Rules

I’ve spoken about The Chain on here in the past and last time it didn’t really work for me, no idea what it was but something knocked me off my stride and I gave up on it.  I came across this article that says that before building up to big changes make little ones so I thought I’d combine the two.  I set myself the first of my little rules;

Have breakfast and watch some TV before work.

The key thing with this one was the TV bit as it forced me to get up early enough to be able to spare 22 minutes to watch an episode of 3rd Rock From the Sun, I figured starting a day with comedy was a good call.  It worked in the week and I was getting up more regularly for work and not really feeling like I was sleeping better.  After a month or so I thought I’d have another look at this one rule and break it down a little;

  1. Get up and shower straight away
  2. Make breakfast
  3. Watch something or read the blogs I follow

I also combined this with the chain to track how well I was doing and thought I’d add some evening rules too to allow me to get more done in the evening rather than just slump on the sofa.

  1. Tidy for 25 minutes
  2. Cook a meal and prep lunch for work the next day
  3. Make or learn something for 25 minutes

The biggest change was getting up and showering straight away, I’m waking up a lot earlier now and actually have a sleep pattern.  When I mentioned this on Facebook a friend shared a link to info on something called sleep inertia and it seems that the shower really speeds up recovery from sleep.  If you are wondering why 25 minutes then see my earlier post on the Pomodoro timer I made.  It’s also a mental hack as “It’s only 25 minutes, not even half an hour” seems easier to swallow.

After 21 days of this regime my blackboard looks as follows;

 

 

I missed one evening of making meals early on and figured today I’d earned a lie in.  My flat is much tidier, I’m sleeping much better, I’m now known at work for being optimistic rather than cynical and I’m generally happier.  I still have bad days but the list helps, my therapist once told me “you don’t have to feel like doing something to do something” and it’s all too true.

The days where I don’t feel like tidying or tinkering I do so anyway and when I wake up the next morning or get home from work to a tidy flat it really helps break the cycle.

The Next Steps

I figured that if it takes 21 days to make or break a habit then reviewing the rules every 21 days would make sense too so today I’ve taken stock and tweaked them as follows;

Morning:

  1. Wake up and shower
  2. Have breakfast
  3. Chill out

Evening/Afternoon on weekends

  1. Tidy for 25 minutes
  2. Cook something healthy
  3. Make/Learn/Do something for 25 minutes
  4. Update my Bullet Journal

Not much of a change but that’s the point I guess, using this as a base for bigger changes was always the plan so making another small change makes sense and hopefully will help get my weight back down and keep it down. I’ve been using Bullet Journal on and off for years too and it really does help keep track of random tasks so making me update it more often can only be a good thing.  I’m also planning on taking notes of things I’d achieved each day too as a reminder I’m still getting shit done.

Thanks

Oh, and last month I got to say thank you to Wil Wheaton in person.  They say never meet your heroes but I thanked him for sharing his story and told him it was the reason I got help.  He turned to me and said “You’re very welcome. Depression lies” and gave me a reassuring smile.  It was brief but glad I had the chance and he really does seem a gent.

wil-and-i

A massive thank you to all my friends, family and colleagues who’ve supported me through all this and put up with me on the bad days before I knew what was going on.  The epiphany that was the video got me started but you all kept me going.

So, that’s the story so far and I expect I’ll post updates to my rules as and when they happen.  Until then I hope you all stay well or get the help you need.  Oh, and I know I ended up with seven rules but I’m a Computer Scientist so off-by-one errors are kinda my domain…

The next post should cover the multi-room audio system I’m building so normal service should resume shortly!

New Job!

Things have been a bit manic since the last post, both in job hunting and random other things that have made the last few weeks disappear, including the inaugural Reading Hackspace Hackathon at Horniman Gardens!

The most important part is the job hunt, which was both successful and massive successful.  The repetition is entirely justified as I appear to have landed a job in the space industry!  I started work at the Satellite Applications Catapult as a Software Engineer a few days ago, I’m still getting to grips with the culture of the company but as the place has the feel of a hackspace I can’t imagine that will take long.  Hopefully with time I’ll have projects to share, a lot of what I’ll be working on will be open source, in the mean time I’m enjoying the challenge of learning new technologies as this role will involve a lot more focus on Linux as a development platform.  Not a bad thing as it’s something I’ve wanted more experience with anyhow as I’ve always felt I’ve been missing out and it means Raspberry Pi projects are a go!

SatApps also has a hackathon coming up in October which looks to be very interesting, well worth checking out.

Interesting times indeed!