Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

SIMCOM SIM9000B - General Advice For My New Project!

Status
Not open for further replies.

Kaywarner

Newbie level 4
Joined
Feb 7, 2012
Messages
6
Helped
1
Reputation
2
Reaction score
1
Trophy points
1,283
Activity points
1,341
Hello Everyone,*

Thanks for taking the time to read the post and hopefully helping out!

I have a question related the assembly of a SIMCOM SIM900B GSM Unit, which might be for the more experienced of you.

In short, this is my question: What do I need to do to get a SIM900B Module, a Screen, a Mic, a Speaker and a Keypad working together to make/recive calls and send/receive SMS?

I understand a (very) little bit from playing with my Arduino, that is, about the simple AT Command set, but how do I make it stand alone without an arduino and interface it with a screen?

It seems that a lot of displays use the SPI interface, has anyone tried to use a SPI display with these SIM900B *units and could advise on its complexity?*

I suppose what I'm asking for is as a novice programmer but general geek, is this possible?!

many thanks for your time,*

Regards,*

Kay Warner*
 

If you mean that you want to eliminate the arduino unit and connect everything directly, I can't help you but I think you can't do this at all

the role of the arduino is to talk with every unit with its own language

i.e. GSM needs at commands, LCD needs ascii table and several controls, Keypad need scanning, ......

All you can connect directly is the Mic and The speaker and the GSM module as it has interfaces for these two

hope this is what you want
 
Kaywarner said:
It seems that a lot of displays use the SPI interface, has anyone tried to use a SPI display with these SIM900B *units and could advise on its complexity?*
I cannot understand why you are mixing those, they are two different parts on a board.


Kaywarner said:
In short, this is my question: What do I need to do to get a SIM900B Module, a Screen, a Mic, a Speaker and a Keypad working together to make/recive calls and send/receive SMS?

I understand a (very) little bit from playing with my Arduino, that is, about the simple AT Command set, but how do I make it stand alone without an arduino and interface it with a screen?
Well before you get to the entertaining part of assemble the whole project, you should first make the "dirty job". This means you have to make the GSM work through a terminal software.

SMS Tutorial: Introduction to AT Commands, Basic Commands and Extended Commands
SMS Tutorial: How to Use Microsoft HyperTerminal to Send AT Commands to a Mobile Phone or GSM/GPRS Modem

The above references will be helpful to get you started.

Alexandros
 
Thanks for the post guys, seriously..top work!

So it appears that I might have the wrong end of the stick here so to speak!

I thought that perhaps I could plug everything into one SIM900B module, program it to communicate with everything and off I'd go! haha! Learning...always learning! (Alexandros- this clarifies your comment about SPI communication!)

So do normal phone manufactures, Samsung, Nokia and the like, have all these components above plus some control chip?

Or does anyone know if I can buy a GSM module with the capacity to communicate with everything integrally?

Thanks again guys!
 

Kaywarner said:
does anyone know if I can buy a GSM module with the capacity to communicate with everything integrally?
Modern GSMs have pwm pins, analog ports, GPIOs etc. So strictly translating your question then yes, you could send AT commands to the modem to perform such tasks. On the other hand, you need a device to communicate with the modem. This device will propably be a microcontroller. So if you already have a microcontroller, then why read analog values from the GSM and not from the MCU? Of course there is no "right" or "wrong" on this, I am just expressing a personal opinion. :)
 
Thanks Alexandros! Any opinion you have will be greatly appriciated because I have absolutely no idea at the moment- so it's all a great starting point!

So really, what we're saying here is that the easiest option is to have a MCU, GSM unit,keypad,speaker,mic,antenna and battery.

I think this would be a good way to carry on from here, I can use (to a limited degree) an arduino chip so that might help get the project started. Also, I know a few things will interface with the arduino chip rather than having problem interfacing them with a GSM Module.

Do you think this would be a reasonable way to progress?
 

Kaywarner said:
Do you think this would be a reasonable way to progress?
Absolutely. Although I do not use higher level compilers like Arduino, I believe it is better to drive all those peripherals you mentioned from the MCU, than the GSM.
Just one comment on this. It will help you if you test the modem on a terminal program first, like hyperterminal. It is easier to first study GSM's behaviour on the terminal software, isolate the AT commands you need, see how the GSM responds to those commands and after that you can write the GSM code for the MCU. Otherwise you will go blindly in a way. Of course debugger and input buffers are there for you, but you will not have the straightforwardness of a PC monitor. Send command, receive responce, both printed on screen. Simple as that.
 
That's great Alexandros!

I think I am going to look at using an ATMega328p-AU version for the project, it was from an Arduino Nano. Only thing is I think it will use quite a lot of power, which will be scarce, but that's another question for another day.

So If you were doing the project, what kind of MCU would you be looking at? I.e. your personal preference?

Really I suppose I need to look round for a MCU that has enough power and enough functionality to run the components, but not so much that it wastes battery power.

Thank you very much for you help!
 

Kaywarner said:
So If you were doing the project, what kind of MCU would you be looking at? I.e. your personal preference?
It depends on the project. Normally you need a lot of RAM because you need buffers for transmit commands, received responces, sms buffers (sms can support up to 160 characters if I remember correctly) etc. In a project you may need to work with 10 AT commands. In another project with 20 and so on. You may also want to do some GSM responce triggered actions, different from project to project.

Since you are using Arduino which consumes more memory than a low level C compiler like GCC for instance, and taking under consideration that the MCU is not dedicated to GSM but needs to perform other tasks as well, I will risk to say that maybe the MCU RAM of 2K could be proved smaller than your needs.

Honestly I don't know which MCUs Arduino supports, but maybe it would be better to avoid this family of ATmega48/88/168/328. Because if ATmega328 will be proved small, you cannot easily go to bigger MCUs. Maybe for Arduino this is not a problem, I don't know that, I am expressing opinion on the use of a C compiler without higher level layers.
But if you use a 32K flash AVR which is similar to a bigger one, then the code will be much more easier to be carried from one MCU to another. Take a look at the below datasheets to get an idea what I am talking about:

http://www.atmel.com/Images/8285S.pdf
http://www.atmel.com/Images/8272S.pdf
 
Ahhh I see what your saying now! Thank you so much Alexandros!

I think my next step will be to have a look around and see if i can purchase one of these MCU's then see if i can and get it to load a Arduino Bootloader. I think that would be a good starting point.

I only had a very simple system architecture in mind for the project, I think that maybe just storing say 5 SMS text messages, say 10 phone numbers and a welcome screen graphic would be about it. Do you think I'd need extra memory for that or could it be held on a chip like you have discribed?
 

Kaywarner said:
I only had a very simple system architecture in mind for the project, I think that maybe just storing say 5 SMS text messages, say 10 phone numbers and a welcome screen graphic would be about it.
Again depending on the project, some things could be stored in flash. The LCD welcome screen for example. If it is always the same, then it could be stored in flash. If it is almost the same, then only the varying parts could be stored in RAM. Or the SMS messages. If there are messages to send that they are always the same, then they could be stored in flash. If certain incoming messages are expected, then again they could be stored in flash and the incoming message could be compared with the stored messages. If nothing is fixed on the other hand, then RAM should carry this load.
In any case you could make a plan. What do you need to be stored? Calculate the total memory and see if it is enough. Also keep in mind that there is 1K EEPROM available for those 32K AVRs. Stored incoming messages could reside in EEPROM for example. But EEPROM is a very slow memory and is not suitable for all situations. If RAM and EEPROM are not enough, only then you should consider using an external memory.
 
Alexandros this is top information!! Thank you so much!

I went onto a leading Internet auction site(!) last night a brought one of these to get me started. .

**broken link removed**

It's a ATMEGA325V-8AU, 8BIT MCU, with 32K FLASH. I haven't been this wired about a project in ages!!

The total bonus is that it's an SMD so I can easily prototype it at home, plus I use the designspark software from RS components and its included in there, so I can genuinely get the project rolling.

If it's ok, I'll post a few project notes as I do the project with the aim of helping another hapless newbie!

Thank you for your time and effort Alexandros!
 
  • Like
Reactions: alexxx

    alexxx

    Points: 2
    Helpful Answer Positive Rating
Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top