Total confusement

So I've been working with microcontroller breakout boards such as arduino, adafruit huzzah etc. for over a year now. Coming from a software development (Game Engineering) side it has been relatively easy mastering basic concepts of data streaming, working with sensors and so on. After succeeding in interfacing my pc with an arduino by wire i started reading into rf and all types of wireless communication. I know that almost any information required to work with a mcu is found in the datasheet. I habe also tried reading through several datasheets of rf chips I intendet to use as soon as I found out how they work. The problem is I dont understand most of it in a manner of how to use those informations when coding. It's all hardware specs and so on. So at this point I'm figuring I must be missing an important chunk if knowledge when it comes to interfacing microcontrollers as well as breakout boards.

So what I'm asking for if theres stuff I can read into when not wanting to rely on poorly documented libraries found in the depths of the internet. Altough plenty of stuff works fine I dont want to be super confused and clueless if something that's (according to some makers personal blog or a random instructable) supposed to work doesn't.

I know tech isn't a "do this, then that" field, you got to know a lot of stuff. But if you managed to read through all of this without being bothered already by the stupidity my words are emitting please leave behind any source that somehow fits into "how to understand the link between datasheets and interfacing software"

I do have a lot of time on my hands so I will read through all of it

If you think I'm dumb, please just leave this thread uncommented. Don't get me any more desperate than I already am.

Hi, Thanks for the engaging subject...

I suggest you look at this page: http://arduino-info.wikispaces.com/ElectronicsAndCommunications

and especially the nRF24L01 stuff here: http://arduino-info.wikispaces.com/Nrf24L01-2.4GHz-HowTo

terryking228: I suggest you look at this page

But evidently you need to read fast since those pages are coming down, which is a big shame.

read fast since those pages are coming down

ALL of the ArduinoInfo.Info WIKI is being migrated to a new site right now.. It's based on MediaWIKI which is the system used by WikiPedia and should be stable! You can always find the current version at:

http://ArduinoInfo.Info

terryking228: ALL of the ArduinoInfo.Info WIKI is being migrated to a new site right now..

Excellent- thanks. I've found it quite useful up to now.

i started reading into rf and all types of wireless communication. I know that almost any information required to work with a mcu is found in the datasheet. … The problem is I dont understand most of it in a manner of how to use those informations when coding. It’s all hardware specs and so on. So at this point I’m figuring I must be missing an important chunk if knowledge

When it comes to wireless communications, there is a lot to understand. You’re usually dealing with a “module” that contains 100k+ bytes of firmware (frequently proprietary) that implements 1000s of pages of protocol specification (also sometimes unavailable unless you join some industry group ($$$$/year) or pay for the documentation ($$$) On top of that, it’s RADIO, which is (IMO) fundamentally mysterious.

So, usually, you need to understand whatever module you chose at the level of whatever APIs are provided by the people who wrote all that firmware, rather than at the chip level. Sort of like getting familiar with all the AT commands for your modem (that runs V.90 and V.42bis and MNP) without needing to understand the datasheet for the DSP processor that it uses. There are also all sorts of legal requirements on radio operation; misconfiguring a register could turn you into a criminal.

The next level down is understanding the networking standards for whatever protocols are involved, and their “models” for how things work. BTLE and BT are quite different from one another, for example.

Next down: the implementation of those protocols on your module/etc. Might not be documented, and probably doens’t have source code that you can look at. But others like 6loWPAN do have open source implementations floating around.

Frequently wireless protocols are complex enough that they run on top of some operating system or RTOS or otherwise relatively complex chip environment. (6loWPAN is famous for using Contiki. Or vis versa.)

Then there’s the chip hardware. RF stuff designed by RF engineers. Black Magic! I found this tutorial from TI to be pretty useful: RF Basics, RF for Non-RF Engineers - Texas Instruments (PDF)

But to some extent, your question seems like “I want to browse the Internet, but I can’t figure out the datasheet for the Ethernet Controller that’s in my PC.”

Apart from what has already been said, and irrespective of the functionality of the chip it self (radio module, display, RTC etc. etc.) one daunting aspect of the data sheet is usually this description of the serial interface between the chip and the mcu . You see timing diagrams of enormous complexity, however these are normally variants of one of the standards: SPI, I2C etc. for which the Arduino has built in library functions.