{"id":7,"date":"2014-04-15T15:28:00","date_gmt":"2014-04-15T14:28:00","guid":{"rendered":""},"modified":"2025-06-09T13:14:51","modified_gmt":"2025-06-09T12:14:51","slug":"multiwii-controller","status":"publish","type":"post","link":"https:\/\/blog.hslracing.com\/rcmodels\/2014\/04\/multiwii-controller.html","title":{"rendered":"MultiWii Controller"},"content":{"rendered":"<p>I recently purchased an\u00a0<a href=\"http:\/\/www.hobbyking.com\/hobbyking\/store\/__33982__Hobbyking_SK450_Glass_Fiber_Quadcopter_Frame_450mm_UK_Warehouse_.html\">SK450 quadcopter<\/a>\u00a0and\u00a0<a href=\"http:\/\/www.hobbyking.com\/hobbyking\/store\/__25884__Dead_Cat_Conversion_Kit_for_SK450_Quadcopter_Frame.html\">dead cat conversion kit<\/a>\u00a0from\u00a0<a href=\"http:\/\/www.hobbyking.com\/\">Hobby King<\/a>\u00a0along with a\u00a0<a href=\"http:\/\/www.hobbyking.com\/hobbyking\/store\/__54299__Hobbyking_KK2_1_5_Multi_rotor_LCD_Flight_Control_Board_With_6050MPU_And_Atmel_644PA.html\">KK2.1.5 controller board<\/a>.<\/p>\n<p>After checking out some of the\u00a0<a href=\"http:\/\/www.multiwii.com\/\">MultiWii<\/a>\u00a0websites I thought it should be fairly simple to make a\u00a0<a href=\"http:\/\/www.multiwii.com\/\">MultiWii<\/a>\u00a0board\u00a0from an\u00a0<a href=\"http:\/\/arduino.cc\/en\/Main\/ArduinoBoardNano\">Arduino Nano<\/a>\u00a0that can make use of all the relevant guidance chips.<\/p>\n<p>I intend to make use of the latest release of the firmware from\u00a0<a href=\"https:\/\/code.google.com\/p\/multiwii\/\">code.google.com<\/a>\u00a0which at the time of writing is version 2.3.<\/p>\n<p>I like the idea of the\u00a0<a href=\"http:\/\/www.hobbyking.com\/hobbyking\/store\/__31138__Multiwii_and_Megapirate_AIO_Flight_Controller_w_FTDI_ATmega_2560_V2_0.html\">All-in-One Pro<\/a>\u00a0controller, however I don&#8217;t so much like the $50.00 (\u00a330.00) price tag, and even with this controller, GPS is still add-on functionality.<\/p>\n<p>I recently purchased a couple of\u00a0<a href=\"http:\/\/arduino.cc\/en\/Main\/ArduinoBoardNano\">Arduino Nano<\/a>\u00a0boards from ebay for $6.06 (\u00a33.65) each.<\/p>\n<div style=\"clear: both; text-align: center;\"><a href=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/ArduinoNanoFront_3_sm.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-21 size-medium\" src=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/ArduinoNanoFront_3_sm-300x197.jpg\" alt=\"\" width=\"300\" height=\"197\" srcset=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/ArduinoNanoFront_3_sm-300x197.jpg 300w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/ArduinoNanoFront_3_sm.jpg 450w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/div>\n<p>a couple of 10 Degrees of Freedom (DOF) boards for $10.28 (\u00a36.19) each.<\/p>\n<div style=\"clear: both; text-align: center;\"><a href=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/10dof.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-22 size-medium\" src=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/10dof-300x300.jpg\" alt=\"\" width=\"300\" height=\"300\" srcset=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/10dof-300x300.jpg 300w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/10dof-150x150.jpg 150w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/10dof.jpg 400w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/div>\n<div style=\"clear: both;\">This board has the following modules: L3G4200D 3 axis gyro, ADXL345 3 axis accelerometer, HMC5883L 3 axis magnetic field and BMP085 for barometric pressure.<\/div>\n<div style=\"clear: both;\"><\/div>\n<div style=\"clear: both;\">A GPS antenna for $15.98 (\u00a38.99)<\/div>\n<div style=\"clear: both; text-align: center;\"><a href=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/GPS.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-23 size-medium\" src=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/GPS-300x300.jpg\" alt=\"\" width=\"300\" height=\"300\" srcset=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/GPS-300x300.jpg 300w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/GPS-150x150.jpg 150w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/GPS.jpg 400w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/div>\n<div style=\"clear: both;\">and an I2C to serial interface for the GPS module for $5.59 (\u00a33.34)<\/div>\n<div style=\"clear: both; text-align: center;\"><a href=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/gpsi2c.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-24 size-medium\" src=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/gpsi2c-300x300.jpg\" alt=\"\" width=\"300\" height=\"300\" srcset=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/gpsi2c-300x300.jpg 300w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/gpsi2c-150x150.jpg 150w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/gpsi2c.jpg 400w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/div>\n<div style=\"clear: both;\">These last 2 items, I would have needed to buy for the\u00a0<a href=\"http:\/\/www.hobbyking.com\/hobbyking\/store\/__31138__Multiwii_and_Megapirate_AIO_Flight_Controller_w_FTDI_ATmega_2560_V2_0.html\">All-in-One Pro<\/a>\u00a0controller as well, so will not be included in any costings.<\/div>\n<div style=\"clear: both;\"><\/div>\n<div style=\"clear: both;\">The schematic for the controller is actually pretty straight forward.<\/div>\n<div style=\"clear: both; text-align: center;\"><a href=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/Screen-Shot-2014-04-12-at-16.54.41.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-25 size-medium\" src=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/Screen-Shot-2014-04-12-at-16.54.41-300x217.png\" alt=\"\" width=\"300\" height=\"217\" srcset=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/Screen-Shot-2014-04-12-at-16.54.41-300x217.png 300w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/Screen-Shot-2014-04-12-at-16.54.41-768x555.png 768w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/Screen-Shot-2014-04-12-at-16.54.41.png 1004w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/div>\n<div style=\"clear: both;\">Most of the connections are simply one-to-one mappings with the\u00a0<a href=\"http:\/\/arduino.cc\/en\/Main\/ArduinoBoardNano\">Arduino Nano<\/a>.<\/div>\n<div style=\"clear: both;\"><\/div>\n<div style=\"clear: both;\">I have allowed for all the normal flight controls, 8 motors, camera gimbal pitch and roll, as well as 3\u00a0<a href=\"http:\/\/en.wikipedia.org\/wiki\/I%C2%B2C\">I2C<\/a>\u00a0connections, the 5 pin one being for the 10DOF board, one of the others will be for the GPS, the spare could be for an LCD screen or some other functionality.<\/div>\n<div style=\"clear: both;\"><\/div>\n<div style=\"clear: both;\">The board can also be implemented with a one sided implementation and is only 1.85 inches square (47mm).<\/div>\n<div style=\"clear: both; text-align: center;\"><a href=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/Screen-Shot-2014-04-12-at-16.55.00.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-26 size-medium\" src=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/Screen-Shot-2014-04-12-at-16.55.00-298x300.png\" alt=\"\" width=\"298\" height=\"300\" srcset=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/Screen-Shot-2014-04-12-at-16.55.00-298x300.png 298w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/Screen-Shot-2014-04-12-at-16.55.00-150x150.png 150w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/10\/2014\/04\/Screen-Shot-2014-04-12-at-16.55.00.png 760w\" sizes=\"auto, (max-width: 298px) 100vw, 298px\" \/><\/a><\/div>\n<div style=\"clear: both;\">Even if you choose not to use an earth plane, there would only one cross over wire, connecting ground pin of BRL (Bottom Rear Left Motor) with the ground pin for C-R (Camera Roll).<\/div>\n<div style=\"clear: both;\"><\/div>\n<div style=\"clear: both;\">I may yet make the board slightly bigger to allow for mounting holes, however I am sure it will still be under 5cm, which means it would only cost $9.99 for 10 from\u00a0<a href=\"http:\/\/imall.iteadstudio.com\/open-pcb\/pcb-prototyping\/im120418001.html\">Itead Studio<\/a>.<\/div>\n<div style=\"clear: both;\"><\/div>\n<div style=\"clear: both;\">The board is also simple enough for DIY etching or CNC routing.<\/div>\n<div style=\"clear: both;\"><\/div>\n<div style=\"clear: both;\">Total cost per board (assuming I use\u00a0<a href=\"http:\/\/imall.iteadstudio.com\/open-pcb\/pcb-prototyping\/im120418001.html\">Itead Studio<\/a>), including the 10DOF board and\u00a0<a href=\"http:\/\/arduino.cc\/en\/Main\/ArduinoBoardNano\">Arduino Nano<\/a>\u00a0is about $14.00 or \u00a38.45, I could make 3.5 of these and still have paid less than for the\u00a0<a href=\"http:\/\/www.hobbyking.com\/hobbyking\/store\/__31138__Multiwii_and_Megapirate_AIO_Flight_Controller_w_FTDI_ATmega_2560_V2_0.html\">All-in-One Pro<\/a>.<\/div>\n<div style=\"clear: both;\"><\/div>\n<div style=\"clear: both;\">The final design for this board will be posted on my <a href=\"https:\/\/blog.hslracing.com\/electronics\/\">Electronics Projects Blog<\/a>.<\/div>\n","protected":false},"excerpt":{"rendered":"<p>I recently purchased an\u00a0SK450 quadcopter\u00a0and\u00a0dead cat conversion kit\u00a0from\u00a0Hobby King\u00a0along with a\u00a0KK2.1.5 controller board. After checking out some of the\u00a0MultiWii\u00a0websites I thought it should be fairly simple to make a\u00a0MultiWii\u00a0board\u00a0from an\u00a0Arduino Nano\u00a0that can make use of all the relevant guidance chips. I intend to make use of the latest release of the firmware from\u00a0code.google.com\u00a0which at the&hellip;<\/p>\n","protected":false},"author":1,"featured_media":21,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-7","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorised"],"_links":{"self":[{"href":"https:\/\/blog.hslracing.com\/rcmodels\/wp-json\/wp\/v2\/posts\/7","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.hslracing.com\/rcmodels\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.hslracing.com\/rcmodels\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.hslracing.com\/rcmodels\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.hslracing.com\/rcmodels\/wp-json\/wp\/v2\/comments?post=7"}],"version-history":[{"count":4,"href":"https:\/\/blog.hslracing.com\/rcmodels\/wp-json\/wp\/v2\/posts\/7\/revisions"}],"predecessor-version":[{"id":87,"href":"https:\/\/blog.hslracing.com\/rcmodels\/wp-json\/wp\/v2\/posts\/7\/revisions\/87"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.hslracing.com\/rcmodels\/wp-json\/wp\/v2\/media\/21"}],"wp:attachment":[{"href":"https:\/\/blog.hslracing.com\/rcmodels\/wp-json\/wp\/v2\/media?parent=7"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.hslracing.com\/rcmodels\/wp-json\/wp\/v2\/categories?post=7"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.hslracing.com\/rcmodels\/wp-json\/wp\/v2\/tags?post=7"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}