Jump to content

DIY microcontroller


rpayne88

Recommended Posts

I am trying to design a payload for a high powered rocket. I want the payload to take pressure, humidity, and temperature readings, then transmit the information back to my laptop in real time. The transmitter will be an XBee Pro 900 RPSMA. What I need help doing, though, is designing a minimalist microcontroller to take the data from the sensors and send it into the XBee for transmission. I want to design this from scratch, rather than use an Arduino in order to minimize weight.

Anyone have any suggestions?

Link to comment
Share on other sites

you dont so much design an mcu as much as picking one (though you can spin a soft processor on an fpga, but im not going there). arduino uses an 8-bit avr (well some of them, the due is a 32-bit arm chip).

arms give you a lot of performance and lower power operation than avr. figure out how much cpu power, memory, and on chip features you need and pick a chip that fits those needs. it sounds like you are just sending a small amount of data, so you are basically reading sensors and transmitting their data. so an 8 bit chip might be all you need. there is pic, avr, ti, propeller, several others.

Edited by Nuke
Link to comment
Share on other sites

It's not particularly hard to design an 8-bit or 16-bit MCU, but manufacturing one is a completely different matter. There are a few places that build custom chips, but it's not cheap. As Nuke says, you are probably best to go with an existing solution.

Personally, I like the Microchip's PIC series. They are inexpensive, easy to code for, have great selection of features, and some of them come in tiniest packages. The drawback is fairly low clock speeds on most of them. So you need to make sure that the feature package matches your application very closely. Fortunately, it's possible to do more often than not.

Edit: Come to think of it, there is one more option. There are some field-programmable controllers out there. It's going to be considerably more expensive, eat up more power, and probably be less flexible than stock MCU, but if it's just about having a project, and you absolutely must have a custom controller, that's an affordable option.

Edited by K^2
Link to comment
Share on other sites

It's not particularly hard to design an 8-bit or 16-bit MCU, but manufacturing one is a completely different matter. There are a few places that build custom chips, but it's not cheap. As Nuke says, you are probably best to go with an existing solution.

Personally, I like the Microchip's PIC series. They are inexpensive, easy to code for, have great selection of features, and some of them come in tiniest packages. The drawback is fairly low clock speeds on most of them. So you need to make sure that the feature package matches your application very closely. Fortunately, it's possible to do more often than not.

Edit: Come to think of it, there is one more option. There are some field-programmable controllers out there. It's going to be considerably more expensive, eat up more power, and probably be less flexible than stock MCU, but if it's just about having a project, and you absolutely must have a custom controller, that's an affordable option.

I don't think he wants to build a µcontroller. And PIC are quite expensive for what they are (around 1 or 2$ a piece), but you save a lot on the tools, which makes it great for amateurs, and bad for large scale production. A 8bit PIC16F should easily do the trick.

The transmitter will be an XBee Pro 900 RPSMA

Are you sure you will have enough range with that? You might need a high gain antenna, at least on the ground. I's better to avoid using such an antenna on the rocket itself as it is larger and will work only when pointing toward the receiver.

Link to comment
Share on other sites

that xbee will do 10km, and all the ones of that model had one of those screw on antennas, so high gain is an option.

https://www.sparkfun.com/products/9099

xbee has the best options for long range. i just wish their radios had fewer pins (bluetooth has the same problem). its fine if you just want to buy dev boards instead of designing your own pcbs.

i mostly use nrf24l01+ radios, ive got some cheap ones that can do 50 meters and another more expensive pair that can do 1km, though thats not good enough for this application.

Edited by Nuke
Link to comment
Share on other sites

that xbee will do 10km, and all the ones of that model had one of those screw on antennas, so high gain is an option.

The data sheet says you need a high gain antenna to get 10km. And at 900MHz, these are quite big. For example, a 4 elements Yagi Uda would already be 15 by 50cm for a meagre 9dB of gain (compared to 2dB by default)

Link to comment
Share on other sites

A few of thoughts come to mind.

If the rocket or payload are designed to be recovered then forget the xbee and just log the data + time stamp to flash. Quite a saving in power, cost and weight.

How much data is there to be logged? One set of pressure, humidity, and temperature readings per second? 10 per second? 100?

If your data rate is small wrt the available bandwidth you can either knock yourself out on error correction and hopefully increase the effective range, or investigate lower bandwidth greater range transmitter options.

If the size of the required antenna is a problem on the way up, can you log the data, detach the payload with a small parachute and transmit the data on the way back down? Maybe even integrate the antenna into the parachute?

There are so many possible microcontroller options. Here are two ready made to get you started:

Easy option: Arduino Pro Mini 328 https://www.sparkfun.com/products/11113

More powerful: PIC32-PINGUINO https://www.olimex.com/Products/Duino/PIC32/PIC32-PINGUINO-MICRO/open-source-hardware

Finally, the smallest Arduino I'm aware of http://www.frantone.com/CuteUino/cuteuino.html because Arduino does make life, or at least software, easy

Edited by ecat
Link to comment
Share on other sites

this begs the question: how much range does he actually need? "high powered rocket" is kinda vague.

Not as vague as you might think. High power rocketry generally just means in excess of "G" impulse ratings. So like, an H, I, J, K, etc. The thrust of some of these rockets gets over 1 kN. I mean, just look at this beast:

Even if you're "just" using an H motor, there is plenty of thrust left over for electronics... and so I don't understand his desire to avoid Arduino- unless he's using like an H motor and is simply trying to maximize his peak altitude as much as possible.

Link to comment
Share on other sites

well in that case you have plenty of room for a high gain antennae.

A few of thoughts come to mind.

If the rocket or payload are designed to be recovered then forget the xbee and just log the data + time stamp to flash. Quite a saving in power, cost and weight.

How much data is there to be logged? One set of pressure, humidity, and temperature readings per second? 10 per second? 100?

If your data rate is small wrt the available bandwidth you can either knock yourself out on error correction and hopefully increase the effective range, or investigate lower bandwidth greater range transmitter options.

If the size of the required antenna is a problem on the way up, can you log the data, detach the payload with a small parachute and transmit the data on the way back down? Maybe even integrate the antenna into the parachute?

There are so many possible microcontroller options. Here are two ready made to get you started:

Easy option: Arduino Pro Mini 328 https://www.sparkfun.com/products/11113

More powerful: PIC32-PINGUINO https://www.olimex.com/Products/Duino/PIC32/PIC32-PINGUINO-MICRO/open-source-hardware

Finally, the smallest Arduino I'm aware of http://www.frantone.com/CuteUino/cuteuino.html because Arduino does make life, or at least software, easy

if you are going big with the rocket, might as well go big with the electronics. some of these mcus have pretty large eeprom areas you can log to. adding an i2c eeprom to expand this is also an option, then again its fairly easy to connect up to sd cards. if recovery is the plan (and it should be), you might consider adding a gps to make it easier to find if it gets away from you. id also give it its own imu. if you can design the boards there are several fab houses to make them for you at about $20 per square inch. i wouldn't be surprised if someone didnt already make a special dev board for rocket telemetry, much like they do for drones.

Link to comment
Share on other sites

Oshpark will do PCBs for $5/square inch, extremely high quality PCBs.

I'd plop an Atmega328P (the chip from the Arduino, without the Arduino) in there and go to town with that. It doesn't get much easier to use.

Link to comment
Share on other sites

Perhaps a Parallax Propeller? Easy to program, loads of sample code out there for working with xbee, and they are fairly self-contained, so building an MCU around one isn't too hard. Plus, the multi-core nature of the Propeller has got to help with pulling real-time data from multiple sensors and transmitting it simultaneously.

Link to comment
Share on other sites

Oshpark will do PCBs for $5/square inch, extremely high quality PCBs.

I'd plop an Atmega328P (the chip from the Arduino, without the Arduino) in there and go to town with that. It doesn't get much easier to use.

thats not bad, better than last time i looked at having boards made. i make my own boards and it can be rather frustrating. layer alignment is hard and making vias sucks.

im starting to like tqfp packages, recently did a board with one, they are fairly easy to solder and hardly use any space.

Edited by Nuke
Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...