How to know what hardware will work?

I am a seasoned C# programmer, but I’m very new to microcontrollers.

I have an idea that involves a button, a camera, and a motion sensor. I’m not sure how to search for hardware that would work with something like this. Is there some specification that I can look at? Have I missed something fundamental? Where do I begin?

Thank you,
Domenic

Such a deceptively simple question :slight_smile:

Both the Meadow and Netduino family of board have a Foundation library of drivers available for a wide range of sensors. So I would work out what you want to measure, say temperature and then go to the relevant documents on the Developer Portal and have a look at the temperature sensors are already supported.

Don’t worry if the sensor you want to use is not in the foundation library, it does not necessarily mean it won’t work, it maybe that we have not written a driver for it yet.

So assuming that you cannot find a driver in the Foundation libraries, the next step is to start to look at the interfaces supported by the sensor. So does it require SPI, I2C, UART etc. All of these are supported on both Meadow and Netduino boards.

Next thing to look at is the required voltage level. Typically we are looking at 3.3V and 5V here although sensors / robotic components etc are available that work at other voltages. The simplest sensors to work with are those that work at 3.3V as this is the voltage supported by the boards. Again, the Developer site is your friend here as we have published a number of electronic tutorials to help you.

One other source of help is the Foundation libraries themselves. So let’s say you have a preferred sensor that we don’t support but it run on I2C. Well have a look at the source code of another driver in the Foundation Libraries. This will help you work out how to talk to the sensor you want to work with.

One essential piece of documentation you will need to obtain if you are writing a new driver is the datasheet for the device. This will give a lot of information on the commands that sensor can process (i.e. initialise, sleep, take a reading etc.).

And if at the end of all of this, if you are still having problems just ask here, it’s a friendly group. If you do ask about a specific sensor then please add a link to the sensor and maybe it’s datasheet if you need assistance, it helps iron out any confusion if two or manufacturers offer the same part/breakout.

Regards,
Mark

1 Like

Nevyn,

Thank you for your thoughtful and detailed response. This has been helpful.

I have yet to buy a Meadow F7 board, but I plan to in the near future. I see that there are no working camera drivers yet listed in the peripherals section, so I will probably have to finish one of those out or write one when I get a camera.

Thanks!

Hi! If thereare no drivers yet I would suggest you look at camera modules with FIFO buffer and simple interface. a web search on “ov76 AL422B camera module” would yield plenty of useful examples.

For motion sense you would either have to process the image or make it simple and add a PIR sensor.

Good luck! Post your progress :slight_smile: