Using capslock as screen reader key on Parallels

The caps lock key is often used across multiple operating systems to trigger screen reader functionality. This can become an issue when running multiple operating systems under Parallels. Typically, I have re-mapped a key to act as the screen reader key under Parallels, this works but it has two main issues: I lose a key and I have to perform some ridiculous finger gymnastics for keyboard shortcuts.

I wanted a far more refined solution. Ideally the caps lock key would automatically identify which operating systems windows was currently selected and trigger the appropriate screen reader. The great news is I finally have this working. There are a few steps to make sure it will all work smoothly.


  1. Windows installed through parallels and running in Coherence mode

  2. NVDA installed with insert as one of the trigger keys

  3. Install Karabiner-Elements

  4. Download this extract the JSON

5. Copy the JSON file from above into the following folder: /Users/andadapt/.config/karabiner/assets/complex_modifications read more

Google Drive on ARM under Parallels on the Mac

For the Last few months I have been perfecting my Windows 11 setup through Parallels on theMac. While, Apple Silicon can run windows 11 fantastically well, tailoring to my workflow may take a while. There’s still a way to go, however, a substantial hurdle was solved this week.

I now have access to Google Drive under ARM through the file explorer. It is worth mentioning, that Google have publicly said they have no plans to support Google Drive on ARM for windows. So we are left looking for other solutions. Thankfully, this week I have one. Mountain Duck works well under ARM and is capable of mounting Google Drive as well as other cloud services. Giving complete access to Google Drive through the file explorer.

It is a great solution ands one step forward for supporting my complete workflow.

Creating, editing and presenting slides as a blind teacher

As many teachers will tell you having some slides makes teaching a lesson far easier. So how do you create the slides when you can’t see?

PowerPoint and Google Slides work ok in presentation mode with a screen reader, assuming no complex images and standard flow. However, as soon as you switch to creating or editing that accessibility quickly changes. Adding titles, lists and text elements is a laborious task. It just takes forever, what may take a sighted person a few minutes to create, could take a screen reader user 10 or 20 times longer. Imagine that, your main teaching resource taking 10 or 20 times longer to create each time.

So what’s the solution? How do i generate slides, present them to students and mask the screen reader? Oh, and right now do all that virtually.

The answer is markdown, reveal-md and and AirServer. If you don’t teach computing all those terms may look a little alien. read more

Making Graphs And Plots Accessible For The Blind

During my computer science masters, there was a need to analyse data through plots. Analysing graphs and plots while blind is near impossible. Unable to see the lines or bars means you rely on sighted assistance or jumping through the data points with a screen reader. Jumping through the data points is easy with 20 or so data points, increase that to 20,000 and things get significantly harder.

With these issues in mind i focussed my dissertation around increasing accessibility to data. Part of the project is an audio plotting system built in python.

The intention was to create a system that was easy and fast to use. Plots can be generated for line, bar and histogram by passing through most data structures. Anything that contains numbers and is itterable will generate an audio stream. Below is a brief video demonstrating a test procedure for line plots.

Currently, the plotting works well under MacOS and Linux, Windows is not currently supported. Windows support is reliant on some core audio modules that are not simple to install. As soon as i find a simple solution I will update the python code to support windows.

You can grab the python module here. Instructions are included in the git repository on how to use the module.

I am happy to continue work on the module if there are any features people require. I hope others find this useful especially in educational settings, as this module enables blind and visual impaired students to generate plots as easily as their sighted counterparts.


Easy Access To Emoji Entry With VoiceOver For MacOS, IPad And IPhone

Emoji’s are something i have never had the opportunity to fully explore. As a blind person i have found them difficult to use under MacOS and iOS. There exists no simple way to search and use emoji. Apple does however, offer a fantastic system to understand emoji, so i have always felt left out. I want to use them, its just not easy to.

Well all has now changed. While, exploring accessible ways to generate slides for presentations i came across GitHub emoji short codes. A text based system that is used to generate the emoji, so for example :tada: is converted to a 🎉 emoji. This offers the entire emoji character set through text. Perfect!

Now enter another fantastic Apple tool, text replacements. With text replacements i could use the same GitHub shortcodes across MacOS and iOS to have access to the full emoji character set. This has given me complete access to the emoji set with VoiceOver across all my devices, its fantastic. The steps below will enable you to get access across all your devices.

Emoji setup

  1. follow the instructions here

That’s it, there is only one step!

I hope you enjoy full access to the emoji character set and keep an eye out for my accessible slides post!


Judd street: Where Progress Goes To Die

When i saw Google had released a new assistive tool, i was reminded of a meeting i had just under two years ago. The CEO of a large assistive technology company wanted to meet. I found this surprising as it was well known that i had progressive ideas on where assistive technology should be going. What would someone from the old guard want? Perhaps they were ready to change?

We met in a cafe on Judd street a few doors down from the RNIB headquarters. Quickly the CEO began to pitch to me their exciting new product. I imagine from the expression on my face they quickly deduced i was not quite sold. The product would cost around the same as an iPhone, increase access to information – but only the information on their system and apparently open up new ways for users to experience information.

I could not get over the capital cost. The intention was to sell a product at an equivelant price of an iPhone but with less functionality. THey intended to develop their own software that would run on a platform they had to licence, develop and partner with someone to make the hardware, deliver and support both hardware and software and make a great user experience. From a business and end user experience this made no sense to me. The only reason the product would cost so much was due to the direction they had chosen.

I countered with an alternative business model, that would reduce capital expense, ensure no hardware costs, leaving only the software. This would not only reduce their costs, but the cost to the customer and be delivered far quicker. I also suggested a mild pivot that would expand their potential markets and demographics. Essentially, i gave them a plan to make more money while delivering the product at a lower cost to the end user. Win, win.

I mentioned it would be vital to move in this direction as mainstream technology companies would be stepping on their toes before they knew it. This it appeared would be the final straw. I was told i was wrong and greatly misunderstood the capabilities of the blind and visually impaired community. It is worth mentioning i am blind they were sighted…

I realised at this point i had been brought here to be told my ideas and philosophy to making the world more inclusive were wrong. I quickly re-iterated my points that mainstream will be addressing assistive needs and please think about changing direction. But no, i was wrong. They boldly stated that mainstream companies would never address the needs of the disabled community. There would always be a market for their products. I felt this greatly misunderstood a few core issues. Namely, that the way information is distributed will change, as will the communities technological ability. If these issues were not addressed they would find themselves in a very difficult situation.

So today i present to you yet another step forward from a large technology company. Ensuring your systems are inclusive is the direction the industry is moving in, i don’t know why some companies still fail to see it. It must be something about Judd Street it is where progress goes to die.

Treadmill Training For The Blind And Visually Impaired

Training on a treadmill when blind has a number of challenges mainly interacting with the controls, monitoring progress and trying not to fall off. There are however, a number of steps we can take to make the experience as accessible as possible. THis is thanks to a few pieces of technology: an iPhone, some Bluetooth sensors and an Apple Watch.

The key to tracking progress is having two metrics. For example, time and heart rate, time and distance etc. With two data points progress can be tracked. Therefore, that is our target, to always have two accessible data points for progress monitoring.


Before we can start using technology to make tracking progress accessible, we need the right treadmill. Any treadmill that has speed and elevation as physical buttons will suffice. Generally, even touch based treadmills still have physical buttons for speed and elevation.

When starting the treadmill it starts at a default speed. It is important to know the default speed of your treadmill, to learn how many presses to get to a given speed. YOu can do this by using something like SeeingAI or ask a sighted person. From that point on its a case of pressing the buttons the required amount.

But how do you not fall off? Practice! After years of running on a treadmill i still find myself holding onto the hand rails now and again. So do not be afraid to hold on until you are comfortable. If you still retain light perception focussing on a light source and ensuring you keep it central can also be a great help. Additionally, using a physical tether you place on the hand rail can be helpful.


Wahoo on the iPhone is a fantastically accessible application that works with a whole host of Bluetooth sensors. The app is well worth exploring to discover all its functionality as you can create some very detailed and specific setups to suit your needs. The important thing to note for accessibility is that it has a highly customisable audio feedback system. You are able to create triggers for distance, time heart rate, battery level and so on. This enables you to create a system that can give heart rate every minute, battery level every 10 minutes, workout distance every 3 minutes. The customisations are up to you. I however, have an announcement every minute for distance, speed and heart rate. I find this sufficient for my training needs.

Heart rate sensor – Wahoo TICKR Heart Rate Monitor, Bluetooth / ANT+

The Wahoo heart rate sensor is a Bluetooth enabled heart rate strap. It is simple to configure, strap it on open up the wahoo app and add a new sensor.

Heart rate crucially is a simple and effective way for a blind person to train on a treadmill. Choose a heart rate zone to train in and off you go. A good start would be to run at 65% of your maximum heart rate. With audio triggers set to every minute this is easy to track and just requires you to adjust speed and elevation on the treadmill as you see fit.

Bluetooth foot pod – Zwift RunPod

**PLEASE NOTE: the Bluetooth sensor mentioned here is not the one i use. The sensor i use has been discontinued, with the Zwift RunPod its replacement.
Zwift RunPod
Is another sensor that will enable a broader range of data points: cadence, speed and distance.

The setup is similar to the heart rate sensor, open wahoo add a sensor and away you go. With multiple data points you can choose the ones you would like to train with. It is worth noting however, that speed is a difficult metric to train with using this type of sensor, as the speed will jump around quickly making it difficult to track. Distance or cadence are easier to train with. I have found the distance is accurate to my treadmill distance, so is an ideal pairing. There is an option to adjust the sensor within Wahoo if you find the distance metrics do not match those of the treadmill.

Apple watch

The Apple Watch removes the need for Wahoo and its additional sensors. It is capable of heart rate, distance and cadence. I find my watch tracks quite well to my treadmill distance. The one downfall however, is automatic audio feedback. I find that so useful when i am training long on the treadmill. I do however, find my watch incredibly useful for outdoor running and prefer to use it over the app based system on my phone.

SO what do I use?

Right now i use a combination of all the systems above. With Wahoo i use a 1 minute interval for feedback but still find myself tracking on the watch too. For treadmill training it appears we have lots of options and its worth trying them all.

If you have any questions feel free to ask and i will do my best to answer

Last year -> this year

Entering a new year always makes me ponder the challenges and goals for the year ahead. The past year has been the usual treading the lines of technology, inclusivity and running so the year ahead will cover those bases but in new ways.

Last year my two technology highlights were creating an eye gaze control system and working on user led accessible hackathons. The eye gaze system saw its first use in a real time painting robot, its applications however, are much broader and would be great to see it integrated with environmental control in 2019.

The hackathons were also a fantastic success. There was a careful and thoughtful focus in the projects being user led. This allowed a number of disabled people to nengage, highlight a goal they had and be a key driver during the hackathon. This is something we hope to grow not only this year but in future years.

This year I intend to work on the sonification of data to enable greater inclusivity within computer science and particularly machine learning. Interpreting and analysing data is an important step and the current tools are somewhat lacking. This will form my MSc dissertation project and looking forward to getting stuck in.

Through exposure to some incredibly interesting projects through the hackathon work, i also intend to do a few side projects around switch access. With a focus on zero force switch access, i.e. trigger switches without.a physical press of a button.

The inevitable over eating at Christmas has also ensured i commit to some running. My favourite side of running nowadays is helping others achieve those goals. So in the first half of this year i will be training with a few friends and crossing the finish line alongside them on their first races.

There is of course always the thought of pushing the boundaries, something that is never too far away. All i need is for LIDR to drop in price and that line of possibility will be moved forward once more.

HOWTO change the font size in safari on the iPad and iPhone

The ability to change font size can have an enormous impact on accessibility. Pinch and zoom is wonderful for this on iOS, but it introduces another problem. Zoom to much and you now have to scroll sideways as well as down to consume content.

There is however, a little workaround. You can increase and decrease the font size on a per site basis in Safari. This is done through a bookmark, adding two bookmarks one for increase and one for decrease. You can manually set the appropriate font size. Reloading the website will return the font to its original size.

To enable this feature follow the steps below:

  • In Safari create a new bookmark, this can be of any website as we will be editing it soon
  • Open bookmarks and tap edit and edit your new bookmark
  • Change the Title to either Increase Font or Decrease Font
  • Copy the Appropriate code from below into the link fiel
  • Click save and repeat so you have both increase and decrease font size bookmarksd
  • read more

    Apple defining the future of accessibility

    with the public beta of iOS 11 now well underway, I thought it was time to dive in. There have been a number of improvements for accessibility but the two i would like to cover are smart invert and image description.

    For the past few years the way we interact online has been changing. In the early days of the internet and indeed the early days of social media, interactions were predominantly text based. Now however, images and video reign supreme. This leaves the blind and people with low vision at a disadvantage. We now struggle to interact online. It is easy to miss out on the thread of a conversation if it begins with an image or if images are posted as comments. Facebook and Twitter have made improvements on this front, the former adding automatic image tagging and the latter allowing the user to add tags to an image. This is however, restricted. Not only to Facebook in its case but for TWitter relies on the user to add those additional tags. It is easy to see how restricting this can be for the blind and visually impaired. Dare to go outside these wall gardens and ;it becomes even worse.

    So Apple’s new image description feature is welcome indeed. Interestingly within Facebook you now have two sets of tags. Selecting an image with VoiceOver initially reads Facebooks tag then a three finger tap Apple’s. This can give even more context to an image, as right now both systems seem to focus on describing the images slightly differently. Using the feature on twitter means for the first time all images can be described. It truly is a wonderful feature and i have used it multiple times in each use of an app. It is worth noting of course, that this works across all apps, so no matter where you find an image, a triple finger tap gives you that vital detail.

    This leads me to Apple’s other new feature Smart Invert. Previously inverting the screen meant all images and media was inverted too. Now this is done intelligently and media is no longer inverted. This is instantly noticeable on the home screen, where icons are no longer inverted. Open an app with a dark background and the system is smart enough to know not to invert. This is truly powerful for people with low vision. This is the difference between not being able to see photos one day and you can the next. As an example, there was a point in my sight loss journey where i was unable to see faces in real life, but i could in a photo. This is because you view a photo on a backlit screen so there becomes enough contrast. However, with a white background this contrast difference can be lost and you no longer see the image. This smart invert corrects for that.

    These two new Apple features for me are the greatest steps forward for accessibility in years. It is hard to put into words what it will mean for people to see photos again. Or even enable them to interact more socially online. Apple has now set the bar incredibly high for accessibility, the competition needs to take note. It isn’t about policy, its about ensuring people can always connect and engage. That is what true accessibility is..