This is a discussion for the 1MB flash limit issue so that we can consolidate any discussions and concerns about it in one place.

To give some background, all Pixhawk (and compatible) boards use STMicroelectronics's STM32F427 as their main CPU.  This CPU is advertised as having 2MB of flash space (flash is where the ardupilot software is held) but we have discovered that early revisions of this CPU (RevA, RevY and Rev1) have a hardware problem and can actually only hold 1MB and if we use more than that they start exhibiting USB communication problems.

Now currently APM:Copter-3.4 is 0.9MB so it's under the limit but as we add new features it grows and if it grows above 1MB users will find they can't reliable connect the ground station to the board using a USB cable (wireless would still work) which could make it very difficult to configure the board, download logs, etc.

We think many boards (perhaps most boards) out there are the early revisions (A, Y or 1) which suffer from this problem.  All the boards on my desk have this problem and you can check your board by following the instruction also shown in the video:

  • Ensure your Pixhawk (or compatible) is loaded with a recent version of ardupilot (like APM:Copter-3.3.x)
  • Connect with the Mission Planner
  • Go to the Terminal screen and select "NSH" on the drop-down on the left, then push the little green connect button beside the drop-down
  • type "ver all" and press Enter quickly into the terminal (the "Overtime in task 19" causes the MP some troubles)
  • look for the "WARNING! Revision Y has a silicon errata".

Some very recent boards do not suffer from this problem.  For example all Solo's are fine as are the XRacer (aka PixRacer) boards.

Before panic ensues I'd like to say that although APM:Copter-3.3.2 is already 90% of this limit, remember we've just done a release and we will put effort into keeping the code size under 1MB.  So for example, I can guarantee that APM:Copter-3.4 will fit and hopefully Copter-3.5 too.

Still, when you're shopping for your next Pixhawk you may consider asking the manufacturer if they are using the latest Rev3 STM32F427 processor.

Views: 15852

Reply to This

Replies to This Discussion

Damn.  This would have been nice to know back in July 2014 when I bought it!  Oh well...

Hi everyone,
I have some STm32 rev.3 chips on the way and I'm going replace them.
Can anyone help me with the boot-loader as these are stock stm32 chips?
I have a Nucleo board with the ST-LINK/V2-1 debugger/programmer so I think I can load the chip with a firmware this way but I don't have any experience with ST micro-controllers.
Is it possible do get a .hex file of the boot-loader and flash it with the ST-LINK/V2-1?

If I succeed I will make the procedure and the list of equipment public so anyone can do it.
I can also do it for anyone who is scared of soldering iron for a small fee.
This is the board with the ST-LINK, the programmer part can be separated and used to program STM32 chips.
http://uk.farnell.com/stm32-nucleo-development-board?CMP=KNC-GUK-GE...|pcrid|186409739476|&gclid=CjwKEAjw3pTJBRChgZ3e7s_YhAkSJAASG9VrvyCnu4VtfQs90X0OdifTbZbAwADwmF3ZNvUilrdhOBoCAaTw_wcB

Reply to Discussion

RSS

Groups

Season Two of the Trust Time Trial (T3) Contest 
A list of all T3 contests is here. The current round, the Vertical Horizontal one, is here

© 2017   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service