Many of us want to run the graphical orca screen reader on a raspberry pi, the credit card sized computer for the ultimate in portable computing experiences. This has been done before. I got this working last night and by popular demand, here are my instructions. Be warned, I went down a few rabbit and may be installing a few extra packages but at the end, orca is working.
My thanks to Michaele A. Ray of the website raspberry VI website for doing this first and showing that this is indeed possible and to the members of the raspberry-vi mailing list for help and urging me to write this post.
Prerequisits
You will need to have the following items.
- A usb keyboard plugged into the pi for use on the pi console.
- A pair of headphones or speakers connected to the headphone jack.
- The raspberry pi should be powered and connected to the internet. A wired connection is the best as it is stable and easy to troubleshoot.
-
Download the full raspbian image
Download the latest image of raspbian from the below link. Get the full image as opposed to raspbian light. This is because the image has a lot of the graphical user interface things installed.
download raspbian -
Getting the image on to the sd card
Burn it on to a sd card using your program of choice. If you are using Microsoft windows, one of the most accessible programs is balenaEtchar
-
Enable ssh at boot
Once the image has been written, you will see 2 logical partitions on the sd card. There is a partition called “boot”. Create a blank file named “ssh” without the quotes on that partition. The way I do this on Microsoft windows is to go to a comma dprompt, switch to the drive that has the partition and then issue the following command.
copy con ssh
You will be in a line editor. Hit ctrl+z to save and close out of the file. -
Eject the card and load it into your pi.
-
Boot the raspberry pi and login to it over ssh.
- Update the raspberry pi
This step is crucial. Failure to do this will result in orca not speaking. Run the following commands.
sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get dist-upgrade -y
Once the above commands have completed successfully, reboot the raspberry pi. -
Configure the pi to login to a text console
run the following command.
sudo raspi-config
Read the screen output very carefully. You need to go into the boot options and enable the option to login to the console without a password. - Once you have enabled the login, and are back on the main raspi-config screen, hit shift+tab once to save your settings and exit. Reboot.
-
IInstall dependencies
This is the trickiest part of the entire exercise.
Orca needs a bunch of things to run. As of this writing, speech dispatcher and espeak are not installed by default.
sudo apt-get install sox -y
Install the sox package for multimedia libraries. Some of them may be needed by speech dispatcher.
sudo apt-get install speech-dispatcher -y
Install the speech dispatcher service. Orca needs to talk to speech synthesizer. Be warned, this is an older version of speech dispatcher. There is a new one available on github but I have not tried compiling it from source on this installation.
sudo apt-get install espeak -y
The espeak speech synthesizer
sudo apt-get install gnome-orca -y
The orca screen reader and associated dependencies
Once you have carried out the above steps, reboot the raspberry pi. The text console login comes in handy here. Ensure that you have a USB keyboard plugged in. You may want to ssh into the pi to ensure that the pi has booted. If you have configured the raspberry pi to automatically login into a text console, you can enter the following at the command prompt. Be warned, at this point, you do not have any speech therefore you should know your keyboard well.
startx
You will have to wait for at least 2 minutes for the gui to load. I am giving a safety margin. Once again, you do not have speech at this point. Press alt+f2. This will place you at a prompt where you can enter a command to execute.
Type the following
orca
You will need to wait yet again but you should hear orca talking.
There is much left to do. I am still working on how to start orca automatically once the gui loads and need to find a good way for this to coexist with a console screen reader such as fenrir. I will update this post as I get feedback and learn more.
JP says
I am having trouble on step number 7 I can’t seem to find the logon without password. I selected the one I though but now it does not load when I rebooted. Any tips?
Pranav says
Hi, You need to launch raspi-config and then go to the menu called “boot”. Once you are in that menu, you can select options to boot into the text console without prompting for a password.
Mike V says
I have done all the above steps but when I reboot the PI I get a terminal screen. when I type “startx” it says bad command. when I type, “orca” it says bad command or a message saying I cannot do what I want to do. Also, I tried joining the Raspberry VI mailing list but I cannot seem to get in even though they have sent me a welcome email.
Pranav says
Hi Mike,
You could set raspi-config to boot into the gui and experiment that way. The x windows subsystem will not run from a terminal. You should run it directly from the pi. However, running the startx command should give you an error message. By running directly from the pi I mean that you need a keyboard connected directly to the pi.
Pranav says
Mike,
I have updated the instructions. Could you please try them?
Alex says
I’m just starting this process. I’m curious why you say to set the Pi to boot into a console, instead of straight into the desktop. Does startx not go to the desktop anyway?
Pranav says
Hi Alex, I boot into the console to have more control and also to allow things to settle. If I am at the console, I can use fixed key sequences to test that sound and speech-dipstacher are working. A spd-say “hello” is always good to do before launching the gui. If you hear “hello” then you are good to launch the GUI. If you do not, you know you have more fixing to do. Once the pi is fully setup, you can indeed switch to booting directly into the GUI.
Ramón says
Hi,
For me dowsn’t work. Also with the last version of RaspberryPi OS Buster that suports Orca. does anyone know the instructions for that new OS?
Thanks in atvance.
Pranav says
Hi,
Please see the revised instructions. I am guessing your problem was a missing Xorg.conf file.
Ted Moallem says
Hi,
Are there any updated instructions? After following these instructions on a RasPi 3B, I am finding that ORCA quickly causes an audio error of some sort at every startup. All sound is lost (incluiding for browser videos, etc.)
Thanks,
Ted
Pranav says
Hi Ted, I am waiting for my raspberry pi 4 and will update the instructions as soon as I get it. I am not sure about the 3B. Unfortunately, these instructions are a moving target.
Pranav says
Hi Ted, I am on a raspberry pi 4 and I have updated the instructions. Can you try them on the 3b? I am not experiencing any audio errors.
Keith W says
FYI, if booting directly into the graphical desktop rather than the text console, there’s a simpler way to enable Orca than alt+f2 and typing orca. The global shortcut key to enable/disable Orca, both at the Gnome login screen and after logging in, is alt+windows+s, or alt+super+s as the Orca docs words it. Super is the windows key.
Ethan Jackson says
Hi. Is orca fully usable on raspbian. Does orca read most desktop elements.
Pranav says
Ethan, orca is indeed reading most desktop elements. What I cannot get orca to read are desktop panels like the status of WIFI etc. I do not know if it is an orca limitation or is it something I have not installed. If you install mate, orca is not preinstalled. You need to install it yourself.
Ethan Jackson says
What ssh client is the most accessible on windows with a screen reader. How can I make wifi working on the pi4 in a text file.
Pranav says
Try the native windows ssh client. Putty also works. As for wireless, search for using the wpa suplicant file on a raspberry pi and you should find something relevant.
Michaël says
Hello,
I am a French speaking user, I decided to start with a raspberry pi 4,.
I’ve tried all of the steps in the article, but can’t get any speeches.
In fact, during the installation I realize that all the packages are already installed but nothing speaks.
So if anyone can help direct me to another solution and text-to-speech, I’m interested.
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade sudo apt-get install orca
sudo apt-get install gnome-orca
sudo apt-get install speech-dispatcher
sudo apt-get espeak
Run orca (mat+f2, orca)
Enter
Thanks you.
Micka
Pranav says
Hi Michaël, do you get speech when you run spd-say “hello” In addition, what is your hardware setup? Are you using headphones? Is your pi connected to a HDMI monitor? If yes, then does the monitor have speakers?
Michaël says
Hi,
sorry, I did not think of filling in my material.
So I have a Raspberry Pi 4b, connected to the 3.5 jack.
I actually tried to do the spd-say “This is a test” command and got an error.
In fact, the connection with Speech-Dispatcher is refused, with the Pi user or in Root.
So I did an uninstallation of SPD and Orca with pat-get remove, then I reinstall everything.
Since the spd-say command seems to speak well, but orca still refuses to launch it.
Last I tried this:
apt-get install speech-dispatcher **
apt-get install orca **
reboot
Having no speech, so I did all this in SSH.
When I run orca this is the kind of error I get:
Unable to init server: Could not connect: Connection refused
Unable to init server: Impossible de se connecter : Connection refused
(orca:699): dbind-ERROR **: 00:37:06.604: AT-SPI: Couldn’t connect to accessibility bus. Is at-spi-bus-launcher running?
Trappe pour point d’arrêt et de trace
pi@mlurkinsys:~ $
Pranav Lal says
Michaël, I suggest you startover. Moddern raspbian should not do this. If you do not have a monitor connected to the pi, then use a dummy display driver and launch the GUI. Your basic process is first, burn the image to a sd card. Second, Ensure that you have a blank ssh file on the sd card. Third, If you need wireless to be connected, get the wpa_suplicant file on to the card. Fourth, Boot the pi, login via ssh and get the dummy display driver working. Fifth, boot into the pi and you should be asked to install orca by pressing ctrl+space bar I think. Press those keys and you should get speech after orca installation.
Michaël says
Hi,
I have the Rasbian Buster version, I didn’t know Orca had to have a display driver, it’s true I didn’t plug in the display.
since I have already done a lot in SSH, I will clone my card with the command from to have a copy.
If I can get Orca to talk, I think I’ll make an image available for newbie users.
I feedback to finish install.
Thanks,
LAWRENCE PEREZ says
Do you know if the Ubuntu Mate Raspberry Pi image has Orca preinstalled? I’m considering on purchasing a Pi, so I can self-teach myself computer programming. I am not familiar yet with SSH, which is why I’m asking. The standard Ubuntu Mate images do have Orca preinstalled.
Pranav says
Hi,
None of the default raspberry pi images include orca. You will have to install orca manually.
You could however consider using stormux which is an arch Linux image that comes talking out of the box.
https://stormux.org I believe is the link.