The venerable STM32 line of processors, featuring the ARM CORTEX-M3 core, have now been extended to include up to 512KB of flash memory on-board! That's a huge bonus for those Nav/AutoPilot projects that want to feature a lot of code!




Let's see who's the first DIY Droner to fill all that flash with new firmware features!

Views: 1668


3D Robotics
Comment by Chris Anderson on November 24, 2010 at 4:13pm
Excellent! Stay tuned for some ArduPilot news in this space ;-)
Comment by DougB on November 24, 2010 at 5:46pm
"Excellent! Stay tuned for some ArduPilot news in this space ;-) "

Chris, what a teaser statement that is.
Comment by Paul G. on November 25, 2010 at 2:42am
Microchip has had this for a couple years now - but the arduino crowd will like it.
Comment by Yuan Gao on November 26, 2010 at 2:20pm
We're using an LPC1768 for our UAV project, it's also ARM Cortex-M3 chip featuring 512kb of flash. And having used it for a few months, I've found that Cortex-M3 to be pretty awesome, and I'm never going back to PICs ever again.

I would highly recommend the STM32, LPC17xx and other Cortex-M3 microcontrollers to anyone - one great thing about ARM chips is that you're not locked into one supplier unlike PICs and Arduinos/ATMegas
Comment by Lew Payne on November 26, 2010 at 4:49pm
@Yuan - I concur. It's actually a pleasure coding for ARM CORTEX based chips (STM32, LPC17xx, etc), and the assortment of I/O, timers, vectored interrupts and general design is fantastic. I chose the STM32 over the LPC because of the upward (compatible) migration path that is (and will be) available... including hardware floating point, multi-core processors and even hybrids (DSP + ARM chip: e.g., TI).

Comment by Lew Payne on November 26, 2010 at 4:51pm
PS - The STM32 has had 512KB flash available for quite some time now. The announcement was specific to the "value line" series of STM chips, which comprises their most power lean series of chips. These power misers now also come in 512KB flash versions.
Comment by Yuan Gao on November 27, 2010 at 3:07am
@Lew - That looks awesome, I'll look into it. The main reason we're using LPC17xx is because that was the first ARM mcu I picked up, and I've basically stuck with them. Now going back and comparing with other Cortex-M3 mcu, it looks like the LPC1768's 100MHz clock and 512K flash makes it absurdly powerful compared to similarly priced Cortex-M3s (correct me if I'm wrong, I may be misreading the datasheets here).
Comment by Lew Payne on November 27, 2010 at 8:02am
@Yuan - Here's my STM32 development platform. The 72MHz clock and instruction set optimizations make it a good platform for running an RTOS, such as FreeRTOS, eCOS or uC/OS-II. The STM32F103ZET6 (512K) costs around $17.00 from DigiKey. As long as you don't need floating point, or can make due with the CORDIC fixed-point library, they're great. I was looking at the CORTEX-M4 (with floating point) as well as the "A" series, but another project has me working on the TI Delfino DSP chip (with floating point). However, TI is now coming out with a dual-processor micro, which has both a DSP and CORTEX in it! That may be an ideal platform for me; the CORTEX could integrate the navigation sensors, and the DSP could be available to do image recognition as well as optical flow.
Comment by Yuan Gao on November 27, 2010 at 9:37am
@Lew - awesome, we're using a simple breakout board (NGX Blueboard LPC1768), there's no need for peripherals or RTOS, the LPC1768 itself costs just $11.40, and is definitely great value for performance. I'm currently designing a more compact breakout board for the LPC1768 as well (the board will actually be used by the research group that I'm part of for various projects, but I'll be trying to sneak some features into the design that'll be useful for us - spots for connecors to the GPS modules and the like, and hope nobody notices)

We hope to incorporate a little computer vision into our UAV too but probably not advanced as body detection - starting out with horizon finding and IR beacon tracking for automated landing (mostly just Canny or Harris detectors rather than full-blown optical flow). Personally though, I'd like to move onto Cortex-M8, and I'm particularly interested in boards like Gumstix or Beagleboard.
Comment by Lew Payne on November 27, 2010 at 10:49am
@Yuan - That's a nice little breakout board you've got there. I like a breadboard on-board, along with some basic I/O stuff (switches, indicators, etc). It makes prototyping much easier, and debugging with LED's comes in handy at times. I found that for an AHRS, MARG, IMU or INS, no RTOS is needed. But, if you start cramming other features onto the board (navigation, servo control, PPM decode/encode, etc) the RTOS makes life a lot simpler.

Before starting my project, I contacted Zik Saleeba (Flying Fox) to find out how his choices had fared. He had to drop his project, due to being hired by a company that makes UAV's, but his parting words were "look at the CORTEX line... upward migration path."

For object recognition, I'm not planning on anything fancy (at first). Thermal imaging, in the snow. Locate a cluster of pixels with a high heat signature, and take a snapshot of it (both thermal and regular). Let a human sort 'em out (was that a water pipeline, a deer, or a lost person?). Eventually, I'll try and expand it to wilderness rescue situations (lost campers, hikers, etc). We seem to get people lost in the snow here (Boise, ID) every year, so I'm starting with the more straightforward stuff.

Comment

You need to be a member of DIY Drones to add comments!

Join DIY Drones

© 2017   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service