Affordable Exoskeleton Arm (ExoArm)

An affordable Exoskeleton Arm (ExoArm), that will help elderly, disabled people and workers complete everyday tasks with less exhaustion.

Similar projects worth following

I remember watching my grandmother struggling when moving heavy things around when I was younger. So when I was 15, I had big plans on making an exoskeleton arm that would help her. I had a notebook filled with sketches and designs (I turned whole house upside down to find it but I think it's lost) of the ExoArm using buttons and no microcontroller. Good times.

Now that I'm older, I have a new goal. The goal is that people who can't afford to buy those expensive exo-arms, have a chance of making one by themselves. From scratch, with little to no money.

Update that is also included in Project Logs, but I'll put it here non the less.  

First prototype is complete!

How to make it:

Measurements are not defined because until the arm is "universal size" the lengths vary from person to person. So the best act will be that you measure your own arm and use those measurements.


Please ignore all the trash in the code. It works, but not really. I mean, I know what it does, but don't expect that you will, because it's really all over the place. If you have any questions, feel free to ask and I'll try to help as much as I can!

ino - 3.17 kB - 08/03/2017 at 19:58


View all 15 components

  • Schematics

    Kristjan Berce10/21/2017 at 12:51 0 comments

    A schematics. I never got to make a PCB, but that doesn't mean you shouldn't. It's actually very easy, as you can see that there are no resistors, diodes etc.

    For components and links go to PARTS LIST.

  • SOFTware

    Kristjan Berce10/21/2017 at 10:38 0 comments

    Code? Well if I knew how to make a good program that runs it.. I spoke to a friend of mine that is extremely good in electronics and programming, and he said that the most optimal solution to intuitive control would be to insert strain gauge in your bones. But in this world that is not possible and probably never will be. So there's that. 

    See, the problem is that the ExoArm must read the weight of object you lift before it even tries to assist you in lifting. And that is so hard. So hard. Weight changes depending on the angle of fore arm, how your arm is angled in respect to earth, etc. I'm not saying it's impossible, but it would really take some time to make this happen. 

    SO if you are looking to make one yourself, and are not that good in programming you should just use 2 buttons. It's astronomically easier. 


    Short answer. No. Why? Because. 

    Just kidding. I tried using it and it did not work as I thought it will. Not even a bit. See the problem is that when you put the electrode on your biceps, you can trigger it just by stretching your skin. it causes so much electricity that it false triggers and device thinks that you send a muscle signal. So when the Exo-Arm is fastened to your arm, the belt will stretch your skin, especially at the biceps. What happens? Exo-Arm flexes, but does not let go, because it thinks you're still sending signals to the biceps when the only signal is your stretched skin, if that makes any sense.

    Where to put all electronics?  

    I spend so much time trying to come up with a decent place. Perhaps a good starting point would be a little "backpack thingy" that sits on your shoulder or maybe even a small backpack. See the problem are batteries. They are rather heavy and make things difficult. We must also keep in mind that this should be as low cost as possible, so no fancy ExoBacks or similar things. 

  • HARDware

    Kristjan Berce10/21/2017 at 10:18 0 comments

    This are all the wooden and aluminum parts you'll need, minus the mounts that hold wood plates (check out the videos). Please keep in mind that there are no holes. But why Kristjan? Because I'm 99.9999% sure that every motor you'll find has different geometry, every arm is different and it goes on. So in order to make this arm, you'll need to be creative. You can follow my instructions as far as you can, but I can promise you that you'll have to figure things on your own too. But hey! That's all part of experience and that is the most valuable thing in life next to health and knowledge.

  • PID control

    Kristjan Berce10/20/2017 at 15:33 1 comment

    Here is a little test with PID control. As you can see it can hold a position pretty well. The PID is not tuned. That's why you can hear that beeping sound coming from the motor. 

    Now all I have to do is to join PID control with intuitive movement, so that I can actually lift something. 

    This video is without any regulator/power:

    Here you can see PID regulator in action. It is designed so that it holds a setpoint (angle), and tries to do that no matter whether there is a force on it or not)

  • What YOU should do if you make one, or what I should have done

    Kristjan Berce10/19/2017 at 12:50 0 comments

    Let's start off with the MOTOR. I'm using windshield wiper motor, but it is a stupid idea. Well not stupid but a beginners mistake. It's heavy. So heavy in fact that it pulls the whole ExoArm from your arm. I used it because I had ideas of using this ExoArm to lift 10kg and more. What I did not account for was that this ExoArm needs back support if one would wish to lift this kind of loads. But then it wouldn't cost $100 but more like $200.  

    So if you are going to make this arm, I suggest you try the motor that lifts and lowers the car glass window. It's lighter, it has lower torque, but for our applications it's good enough. 

    Something like this:

    But I strongly suggest that you visit a local car junkyard and buy one there. Who would spend $50 on a new motor if you can get used one for $20. 

    Second, how to fix your arm to the ExoArm. If you look at my design, you will see that the only supports that I used are on the bottom and on the side (wood plates and foam). I encourage you that you place a support on the upper part as well. It will make your arm fit tighter to the ExoArm and therefore make it more intuitive. 

  • 19 October (I'm back)

    Kristjan Berce10/19/2017 at 12:02 0 comments

    I'm back and it's two days until the deadline. Which is funny. This summer was hectic and I honestly didn't have much time to sit behind computer and stare in the code while sipping 6th cup of coffee. What little time I had I've been experimenting with arm and I'm getting better and better responses from it. I also resorted to 3D printing because I'm at collage and don't have access to a workshop. All the parts will be designed in a way that they can also be made from wood or any other material.

    To keep this short, in the time of making this project I came to few conclusions and what should be done to make this ExoArm better. I will make another Project Log where I'll talk about that. 

  • july 9, 2017

    Kristjan Berce07/09/2017 at 13:17 0 comments

    Decided to make the stand little more functional.

    Not much going on at the moment regarding the ExoArm. I'm still throwing my time out of the windows trying to make it work with a weight attached to it and I can say with all of my heart that it's a lot harder than it might look.

    Stay tuned for updates, it is bound to happen anytime now! :)

  • july 3, 2017

    Kristjan Berce07/03/2017 at 14:18 0 comments

    The idea turned to reality! It actually works, and I'm super hyped!

    Next thing is to make it useful for lifting heavier things and to somehow detect when something is suspended on it.

  • june 30, 2017

    Kristjan Berce06/30/2017 at 14:44 1 comment

    The SG (strain gauge) is mounted on the forearm. I placed 2.5kg weight on the arm, the SG did the job and everyone is happy forever. Well not really. Not yet. When I applied pressure upwards, the sensor value decreased, which is a good sign so big props to the theory from june 20 log. The battle is on!

    Next step is to create a holder for the arm, so that I can further test it (putting it on and off from my arm is agonizing especially if I do it 40 times a day).

  • june 20, 2017

    Kristjan Berce06/20/2017 at 17:47 0 comments

    I'm still waiting to receive the strain gauge that will be placed in the middle of fore arm. It will be used to determine if there is any object suspended on the ExoArm.

    So far my idea is as following (it's just the idea and may have big flaws, but until I receive the part I can't be sure)

    - There is no weight on the ExoArm:

    This one is simple. Strain gauge will deflect when my arm is moved up or down, so controlling this movement shouldn't be so hard.

    - An object is suspended on the ExoArm:

    The strain gauge sensor will detect a mass of the object, therefore we know the force and also torque. Torque changes with the angle (theta) of the object but if we say that the upper arm is parallel to the body, then the Phi angle is the same as -Theta angle.

    So now we have a good estimate of the torque. Here is the part where I lose my "insight" into the mechanics. If an object is suspended on the ExoArm when I try to move my arm up, the torque on the ExoArm changes. And if torque changes, the output of strain gauge also changes, therefore the ExoArm will follow your arm depending whether the strain gauge output it bigger or smaller. So this could maybe be an effective way to control the ExoArm. I'm still thinking and trying to come up with a 100% effective way, but at the moment this is as furthest as I am.

    Would love to hear your ideas and suggestions!

View all 11 project logs

Enjoy this project?



kamir3607 wrote 12/22/2020 at 17:47 point

Can anyone explain me the use of strain gauge in this?

  Are you sure? yes | no

k anderson wrote 11/27/2019 at 18:02 point

I have a friend that suffers from a form of lou gerhigs disease affecting only his arms.  Wow could he benefit from this but i know nothing about building an arm- do you sell them already built.  I would be very interested if so.  Looking forward to hearing from you one way or another.  You should be very proud of this many will benefit from your efforts.

  Are you sure? yes | no

std0513339 wrote 03/22/2019 at 03:15 point

Sir, can you please send the aurdino code for this project? 

  Are you sure? yes | no

Julian Aguilar wrote 03/13/2019 at 22:37 point

can you send the code please

  Are you sure? yes | no

alexboxgomez wrote 02/27/2019 at 03:29 point

friend a question, how long does the battery last in your exobrazo? Do you consume too much?

  Are you sure? yes | no

Dc.92 wrote 01/20/2019 at 14:24 point

Could i suggest thermoelectric energy, it is inexpensive, light weight and packs a punch

  Are you sure? yes | no

shwetakhaire5678 wrote 01/18/2019 at 05:59 point

Sir can u send the Arduino code for this project ??

  Are you sure? yes | no

keerthubhojan3007 wrote 01/02/2019 at 15:40 point

Sir, can you please send the aurdino code for this project?? I'll be grateful to you if you send the code sir

  Are you sure? yes | no

borayunusoglu wrote 11/25/2018 at 17:11 point

can you send me again arduino code

  Are you sure? yes | no

austinsusa26 wrote 05/25/2018 at 15:09 point

Would it be okay if i tried to made some of these and sell them to help pay for college?

  Are you sure? yes | no

rrohi46 wrote 05/10/2018 at 16:46 point

i need this project, can i buy from you, please reach me

  Are you sure? yes | no

rrohi46 wrote 05/10/2018 at 16:47 point

please reach me, its urgent

  Are you sure? yes | no

Sebastian wrote 02/02/2018 at 19:55 point

Hey. I am currently working on my capstone project and I want to build a robotic therapeutic arm support, and your mechanical arm looks like a great start for my project. I just have a few questions about the potentiometer and the strain gauge. I really dont know how they work and how they are connected. Thanks! :)

  Are you sure? yes | no

nikki.london2030 wrote 10/19/2017 at 22:42 point

Sorry I forgot to add a suggestion to use aluminum instead of steel as another option for light weight

  Are you sure? yes | no

Kristjan Berce wrote 10/21/2017 at 10:40 point

Check out your messages! :)

  Are you sure? yes | no

nikki.london2030 wrote 10/19/2017 at 22:31 point

Comments for exoarm:

1. Could you consider using acrylic sheet instead of steel to make it lighter

2. Would it be possible make/sew up a pouch to house all electronic cables at the back

3. You could consider making adjustable length of the arm by having it moving up and down along 2 strips of plastic with holes and a pin to lock in suitable or chosen position. Forgive me if I am not describing it well here.

Sorry I dont have the electronic knowledge to have input.

  Are you sure? yes | no

nikki.london2030 wrote 10/19/2017 at 22:19 point

Hi. I am very impressed. I am not an engineer. I am carer and I have one pledge to you and the community of exoskeleton to build a device to help my Mum to stand up. She had multiple strokes which caused her left arm paralysis. She has some sensation but could not lift arm or left leg. The NHS wrote her off. I know if I can get Mum to stand up I can start re-train her to walk again. Can you all please help me. I have a small fund for this project. If you can please contact me

I can see the arm of this project can be useful for me to pick Mum up (43Kg) from bed to wheelchair in situation that the hoist is out of order or when the hoist is not able to reach her at floor level (which happened yesterday when she slipped and I had to pick her up with my two arms- I am only small 5 ft 60kg). Thanks a million for reading and hope you can help. Regards.

  Are you sure? yes | no

saadahlufdy19 wrote 09/27/2017 at 04:23 point

what is the value of the strain gauge that youre using just now for this project

  Are you sure? yes | no

Conor wrote 08/25/2017 at 14:08 point

what's the green board next to the arduino duo?

  Are you sure? yes | no

Kristjan Berce wrote 08/26/2017 at 15:03 point

It's the motor driver :)

  Are you sure? yes | no

pafgomes wrote 08/15/2017 at 00:39 point


Congrats on the project. Makes a lot of sense to me. Here to help where I can. Some open thoughts:

Have you considered using a linear motor based on screw-and-nut or ballscrew, to move the arm? The angle of the screw will autoblock the movement. The stepper motor will move it precisely in both directions. The angle on the screw an the friction coeficient will control the amount of weight you can load. You can use the muscle detectors (or two strain gauges) to trigger motion in both ways. 

From an ergonomic point of view, consider increasing the connection points to the torso. I know it makes the arm harder to put on, but consider that if you load 10kg at the end of the arm, you will apply a considerable torque to the back. You might cause a back injury. The user will not be used to lift those loads, hence weak back... 

hope this helps. What kind of help do you need?

Keep up the good job!


  Are you sure? yes | no

Kristjan Berce wrote 08/26/2017 at 15:05 point

Hey! sorry for the late reply!

Linear motor was my first option, however they are slow and expensive.

Yes, my next goal is to make something useful for the back, because it's kinda frustrating to wear only exoarm, without any support.

  Are you sure? yes | no

mikey wrote 08/01/2017 at 22:12 point


Are you able to give a diagram on how you set up the arm, current parts used, and current code (current arm with the strain gauge). Imma build one for a project :)

Many thanks, Mike

  Are you sure? yes | no

dnetford wrote 07/01/2017 at 03:31 point

Hello. This is a great project. Im mechanical enginner from venezuela, About the auto calibration of the weight you need. 
I think you need to set the arm with this logic:
you carry a weigh that displace the hand Y amound of length it is
directly proportional to the force that cause the displacement. So, the
sensor need to be at 0º and you have to keep in that position. With the
displacement value you can switch on the motor an it will apply the
correct charge of energy to keep the wight lifted in the desire

  Are you sure? yes | no

Kristjan Berce wrote 07/03/2017 at 15:11 point

Thanks! Yes I had a similar idea in mind. Will try to implement this in the code soon :)

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates