/megadesk

Open-source IKEA Bekant controller board

Primary LanguageHTMLGNU General Public License v3.0GPL-3.0

megadesk

Do you wish your IKEA Bekant had memory buttons? I sure did. So I made megadesk. Design goals were to have it fit in the original housing and use as many stock parts as possible, be completely independant of the existing controller, as well as store any number of memory positions.

For sale on Tindie - Plug and Play!

I've setup a store on Tindie for those who wish to order a ready to go, plug and play version. It comes with a fully assembled PCB as well as the cable you will need to connect it. No soldering or assembly required! https://www.tindie.com/products/gcormier/megadesk/

Disassembly of the existing control unit

I now have a video with a few tips on disassembling the IKEA Bekant controller and installing megadesk. Due to popular request, I now have a second video with live surgery of a brand new, unopened control unit.

NOTE: Do NOT discard your original control unit board! If you ever need to re-calibrate your desk's motors, the only way to currently do this is using the original board, and they are extremely difficult to acquire again as individual separate units.

Video

Unfortunately the beeps aren't captured well in the video unless you turn up the volume.

Variants

(Updated Feb 20, 2021) There are now 3 different status codes, which means 3 possible configurations. The unit ships by default with mode 1 activated. Changing to an incorrect mode will not harm the desk. The unit will beep and be responsive, but the motors will not engage.

Pressing the UP button 16 times will play a 2-note "beep-boop" tone.

  • Single - variant mode 1
  • Double - variant mode 2
  • Triple - variant mode 3

Any unit shipped after Feb 20, 2021 from the Tindie store will have the 3rd mode. Units from shipped prior will need to be flashed with the new firmware.

Troubleshooting

  1. Have you tried turning it off again? :)
    • Seriously - from testing many of these units, about 1 out of 20 times the handshake seems to fail as it does contain some random elements. A simple power cycle will provide a new handshake and the unit will power up.
    • Try unplugging the desk from the wall and plugging it back in (With megadesk connected)
    • Alternatively, try powering on the desk with NO controller attached, and then plugging in the megadesk after the desk is powered on.
  2. Is the safety key inserted? It is still required for the motors to engage. You will not hear any beeps when using buttons if it is removed.
  3. Try different variant modes described above by pushing UP 16 times.
  4. Test the up/down button connectivity
    • Holding UP while powering on will enter a button test mode, where the up/down buttons can be held to test that they are working - a power cycle is required to exit this mode.
  5. Factory Reset
    • Holding DOWN while powering on will wipe the EEPROM memory - a power cycle is required to exit this mode. The unit will be in variant mode 1 after a wipe.
    • Make sure to try variant modes.
  6. Recalibrate/reset the motors (New discovery : July 2020)
    • This step must be done with the ORIGINAL BEKANT controller.
    • Hold the UP and DOWN buttons for 8 seconds, after that let go of up while maintaining the pressure on the down button.
    • The desk will lower until it stops on its own.
    • Let go of all buttons, and test regular desk functionality with the original controller.
    • Once functionality is confirmed, replace with megadesk.

Hacking, contributing and DIY

This has been moved to DIY.md