I struggled a little bit to rotate my IR-Frame to work with my mirror in portrait mode.
So, I wrote this little guide to help you out. This is a guide from a noob to noobs
first if you want to rotate your screen, follow this instruction
How to rotate your screen
then open a command prompt on your raspberry
now you must create a new folder
before we create a script, we need some information. Type this in your command prompt
it will show you something like this
this shows you the name of the IR-Frame, in my case it is IrScreen cc (yours could be different)
open a 2nd command prompt, it is time to create our script
type the following command
enter this code
xinput set-prop "THE NAME OF YOUR IF_FRAME" --type=float "Coordinate Transformation Matrix" 0 1 0 -1 0 1 0 0 1
now youmust enter the exact name of your IR-Frame in the code. In my case the code would look like this
xinput set-prop “IrScreen cc” --type=float “Coordinate Transformation Matrix” 0 1 0 -1 0 1 0 0 1
save and exit with Crtl+X and Y
next step, make the script executable type
sudo chmod +x ~/startup_scripts/portrait.sh
now we can test it type
your IR-Frame should be set in the right orientation now,
in case it is inverted then your screen is in portrait mode (rotated 90 clockwise)
this will inverse the curser, open the portrait.sh file in the nano editor
replace the numbers with the following
0 -1 1 1 0 0 0 0 1
and it should work for you
now we only have to add some line to this on every startup of you raspberry.
sudo nano /etc/xdg/lxsession/LXDE-pi/autostart
and add this line
@lxterminal -e /home/pi/startup_scripts/portrait.sh
close and save it with Ctrl+X and Y
if you like it, feel free for a up-vote or a comment
Hi there, thank you for taking the time to write your guide, its something that i would find incredibly useful to get working.
Here is a copy of xinput -list
pi@raspberrypi:~ $ xinput -list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Multi touch Multi touch overlay device id=6 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
After running portrait.sh I’m getting an error: Unable to find “multi
I have typed the whole line in like you did but i dont think it likes the word touch in portrait.sh?
Do you have any ideas please?
@fordi is it exatly the same name, I think it could alse be case sensitve.
you could also use the ID Number. Problem is, if you chance the usb port you will probably get also a new ID Number and it wouldn’t match the number in the line.
Is your name 2 time Multi touch Multi touche overlay device? with that many spaces?
can you copy paste the
This post is deleted!
Hi there, thank you for assisting. Here you go!
Realised the image I was trying to send before was far too big, so have made it smaller.
There are slot of spaces in the name. Why can’t the manufacturer keep it simple? When I copy paste the text spaces are removed in this forum so i sent a photo.
you could try to reference to you IR-Fram via the ID (instead of the device name). But in case you change the USB port it my change so you also have to change the ID number in your script.
xinput set-prop 6 --type=float "Coordinate Transformation Matrix" 0 1 0 -1 0 1 0 0 1