Electronics and programming interspersed at various levels of difficulty.

Sunday, September 20, 2015

Ikea SKARSTA sit/standing desk hack

Since I am lately doing contract work mostly from home I need to set up the environment just right. Sitting for 8-10 hours straight at a desk is unhealthy and a lot of my colleagues have motorized desks that go for 1700E (~2000USD) a pop.
I just bought an Ikea SKARSTA desk that’s raised and lowered via a manually actuated crank, old-school style. The price for the base was 170E (x1.13 for USD) plus another 30E for the base plate. The motorized version (BEKANT) retails for 500E which means by doing a conversion we can save around >300E - 340$ at the time of writing, likely to be more by the time you read this article.

The base plate is 120x70cm (47.24x27.44”) so I initially wanted to put a smaller plate on it – Linmon 100x60 cm which incidentally also retails for less than a quarter of the price.
Unfortunately the width of the table can only go higher, between 120-150cm, while the depth is fixed at 70cm. See the diagram below for a clearer picture:

The diagram shows the table upside-down, but there are two mounting holes on each leg that give it its fixed depth, while the central piece connecting the legs only adds to ~5cm. So in order to put a smaller tabletop some serious metalworking would be required: replace or modify the upper arms on each leg (they are not straight), shorten and drill the horizontal connecting rods of each leg. I don’t have the equipment for such a task.

The crank actuating the rising/lowering mechanism is driven by a standard 6mm hex key

So I’ve cut the included Allen/hex key into a straight piece using a Dremel to give me a longer actuating rod:

We need at least 2Nm for raising the table, a lot less for lowering it so I’ve thought what kind of actuator device would handle that torque. The only price-accessible devices would be battery-powered drills, of which I’ve got quite a few:
Here it’s a testing run with a Panasonic (semi-professional) screwdriver while the final part will be handled by this:
...a cheap drill that had it’s NiCd batteries fail after just one year. It takes 1.3A at full speed and no load and likes any voltage above 12V.

There are two ways of powering this project: small 12-14V supply (<1A) and a small buffer battery (1Ah) or a 17-20V/5A laptop power supply. I will post updates on this project as I'm going along.

Update

I had let go the cheap blue drill since it likely has a short in its windings. That's probably the reason why its batteries failed.

Mechanical setup

Managed to procure another cordless drill motor, but this one had the issue of having a chuck that's 4cm in diameter while the table would only allow for a 3cm one.

The issue was solved by putting the entire mechanism at an angle and spacing it so that the chuck has a minimum clearance.
See below that the "axle" is slanted down and there is a "spacer" in the form of a zip-tie.

The driving nut inside the table has a bit of play to it and the drill head also has a bit of play, this means that the system is self-aligning, in a poor way.

The entire assembly was affixed with cardboard box ties (black ones) - they have a really high tensile strength and can glue nicely with cyanoacrylate (super-glue):

The contraption easily handles the rotational torque while allowing a bit of flex.

A cutout from a drive belt, positioned between the table and the drill, prevents the later one from slipping and turning.

Electrical setup

After mechanical problem was sorted out it was time to see how to drive this little motor. It has a constant current draw under load of 3-4A but draws 7-10 Amperes on startup.
I've tried using laptop power supplies (12-15-19V) rated at 3-5A but they went immediately in protection mode. I've also used small (1-2Ah) UPS batteries as a buffer but they are not able to sustain the current requirements, requiring usage in short bursts.

So I welcome our new friend, the RC LiPo battery - in addition to being a constant helper in starting my scooter it also easily provides 40A. The battery pictured below is not fit for RC use - because it sustained multiple crashes and one complete discharge - but it does the job fine in other fields. Important to note that it's a 3S configuration (3x4.2V). A 4S would also work, even better.

Ever since The Ben Heck Show I've become a supported of hot glue and cardboard for prototyping and the current project is no exception.

The switch was insulated with hot glue, it was fixed to the table with hot glue while the wires were also held with that.

For all these "home improvement ideas" I like having a DIY look as opposed to a clean one.

Obviously this is a semi-temporary setup until I'm able to verify that everything is running fine in the long term.

Supply and battery life

It looks odd having such a small LiPo cell powering a big table and you might be wondering how long would that be able to last.
I intended floating the cells at 12V, to keep them constantly charged, but as far as I've read LiPo chemistry does not like floating/trickle charge. Nevertheless, if you really intend doing this, a 12V (regulated!) 0.25A up to 1.5A supply would suffice. Smaller is safer.

I've raised and lowered the table several times and the battery voltage did not change much. I would expect that out of a charged 1.8Ah 3S LiPo I would get at least 40 actuations - one month of battery life.

Math

Current draw while lowering the table is <0.5A and takes ~10s, so we can ignore that. While raising it, it's probably within 3-12A for ~10s, let's say an average of 10A. One full up-down movement (to my preferred positions) would then take 10A*10s/3600 = 0.028Ah.
1.8Ah would then mean 64 actuations, so 3 per day over the course of a month. Obviously this is highly simplified.

Safety and finishing touches

The switch will have to be replaced with a higher rated one - 20A to be on the safe side.

There should be an inline fuse on the wires coming from the battery - 20A.

The drill assembly needs to be affixed with a metal bracket.

The wires need to be routed in a nicer way so they are less conspicuous.Under no circumstances should the battery be connected directly to the "circuit". In case of short circuit it should allow a fast way of disconnecting it, either by yanking the battery connector or the fuse out. It will also provide a way to nicely charge and balance the LiPo cells.

It makes a really loud noise, not sure exactly why. It either needs dampeners in the areas the drill connects to the table or a different motor.

Update: the engine was mounted to a bracket, surrounded by circular foam. This makes it a bit less louder.

A possible improvement would be a flexible coupling as used in 3D printers, available on dx.com:

Update:

Two short videos showing the operation and noise levels - measured at 62-65dB with an SPL meter:

Update 2016.07.26

The setup has been in use for almost a year and hasn't failed. I was afraid the switch I used (rated for 250mA) would weld because of the high currents but that hasn't happened.

Hi, it depends on the switch, I used a 2P3T switch (search Google for it, double pole triple throw) or 'DPDT with center-off'.Example: http://www.robotroom.com/DPDT-Bidirectional-Motor-Switch.htmlhttp://www.eleinmec.com/article.asp?12

Make sure to measure the switch first (or know the pinout) otherwise you might short out the battery.

I haven't added it in my project yet, but I highly suggest that everyone attempting this does it. This is because there are no limit switches nor shortcircuit protection.The easiest way: buy a car fuse holder (1~2$) and a 25A matching fuse. Cut the positive wire going to the battery connector and insert the fuse holder in that spot. The positive wire should then run through the fuse (hence: inline).

Hi, thank you. I used a kitchen scale on the rotating arm that came with the table and measured the force at different heights. I also have a luggage scale, but it's less sensitive. I don't remember exactly but I think the pivot length is 25cm and the required force was 700g, tangent to the rotating plane.However, this force varied widely depending on where the table was positioned - higher positions require almost double the force to raise the table while lowering the table requires almost zero torque. 2Nm was a good ballpark figure to allow some headroom (stuff sitting on table).The drill is 14.4V I think, but it wouldn't matter, most of them have at least 10Nm. The 7.2-9V ones are usually made only for screwing (not drilling), they have limited torque.

The first one should be fine.The second one is too small, it needs to have at least 27" depth.The first one is a bit too wide but it will work just fine. You can always go larger with this system but not smaller than 47x27" in either direction.

Would adding a wooden tabletop like the one david is suggesting be too heavy for the mechanism to lift the table? Ikea says it's got a max load of 110lbs. A 60-70lb tabletop with a bunch of stuff on it might push it to it's limits there no?

My tabletop is pretty light, I think around 10lbs plus another 20lbs or so on top of it. The main issue will probably not be the torque of the motor but the mounting. At those force the motor will try to twist itself out of the mount or strip the drive shaft. Perhaps a lower rev actuation would be better than the fast one provided by a normal drill.In response to your YouTube comment the table is still strong after one year, haven't had any issues yet except the noise.

My estimate (after some measurements and calculations) was something that has at least 2Nm of torque, that's 283 oz-in. You can search for 12V gear motor in conjunction with robotics. Also the ones used in automotive (seat motor, windshield wiper) should have enough torque. The drills unfortunately have a too large body and there is <1" of clearance from the top of the table to the drive.

can I use an 18v drill with its included 1.5Ah Battery? will that let me hook up everything the same way safely, with the 20Amp switch and 20amp fuse? I have very limited experience with electronics :/