Are there any implementation for MQTT in Omnet++ Simulation framework ?
There are a paper but i cant find the download link for the paper and the orginal implementation
"Mqtt Performance Analysis with Omnet++" (http://www.citeulike.org/user/sammydre/article/604340.
I'm not familiar with Omnet++ but you could just use real implementations (e.g. mosquitto and the paho clients) on the CORE network emulator
This lets you run full apps on emulated networks and allows the bridging of real machines and networks into the emulation to increase the fidelity of the emulations.
You can also plug in the EMANE framework to do full radio emulation if needed
Related
I'm trying to communicate with a Bluetooth Optical Probe using a SPP (serial port) that is attached to a smart meter. I have seen that using the Gurux software will be a good idea. However, they do not offer native support for Bluetooth communication (other than in the Python example) and their mobile support is only for Android-Java. Has anyone managed to create an instance of IGXMedia within Gurux for Bluetooth? The Gurux BTSerial class uses System.IO.Ports.SerialPort which is only available on Windows, where I am trying to use Cross-Platform C#.
I am just learning about embedded systems and checking about wifi modules. I see in the datasheet they mention about a core processor that is integrated with rf SoC. I also see another processor on the MCU called application processor. I am confused about its purpose. What is it used for? Can someone please clarify? For reference, I was reading about the ATSAMW25 module.
Typically, devices that include wireless technologies (whether its Bluetooth/BLE, WiFi, LoRa, etc) include both the hardware required to manage the wireless connectivity and then separate hardware for running the higher-level application of the system. Frequently, managing the wireless protocol is intensive enough that it is best done with its own small processor running its own firmware to deal with connectivity and sending data over the link and might include a fair amount of proprietary firmware from the vendor (ie, Microchip in your example). To enable programmers to write their own code for the system, these protocol processors are paired with application processors, ones for whom the development tools and documentation are more openly available to developers for implementing whatever they want to do with the module. By separating the two operations (wireless/protocol and application), the code developers implement has less chance of causing fundamental problems for the wireless connectivity (like, application code hanging causes entire WiFi networks to fail) and the proprietary aspects of the system can be better protected (or another way, more documentation can be provided to developers without signing an NDA as the application processor is more "open" while the details of the wireless implementation are usually not).
In the case of the module youre looking at, the wireless hardware is all inside the ATWINC1500 and is accessed via SPI and some other GPIO by the SAMD21G (the application processor). All the code you write for the module end up running on the SAMD21G with some library/driver support to implement the wireless functions (which under the hood, are implemented by talking to the ATWINC1500). The ATWINC1500 simply runs the code the vendor (Microchip) wrote to actually do all the wireless protocol work and provides an interface for another processor (in this module, the SAMD21G) to control it.
I have an embedded wireless driver for wireless communication that I would like to run in a simulated environment so that I don't have to own hundreds of the devices to test my code.
Ultimately I would like to be able to specify a network connection between nodes, which would be an instance of the C++ code that is used in the embedded device. The connection should simulate the wireless medium such that no packets arrive to the node whilst it is transmitting and no packets arrive at the node if two or more nodes are trying to transmit. Connections modelled by a basic connectivity graph.
I wonder if such a model is possible in the Python Twisted framework. If it is not are there any networking frameworks that would make such a task simple.
Language preferences are Python or Java.
Thanks.
You can use Network Simulator 2 (NS2). Its a awesome network simulator. Its uses C++ and TCL.
I would like establish a mesh network using Zigbee modules and ATmega8.
I need some basic c routines for establishing the network. My Controller is running with ATmega32. and end nodes will be on ATmega8.
I want plug and play wireless connection between Controller unit and nodes.
Please help me.
The Digi XBee series of RF modules is popular for plug and play wireless. In it's simplest configuration, a pair of modules operates as a serial cable replacement, with bytes going in on one module coming out on the other.
If you want to have a multi-node network, you'll have to use the radios in API mode, where frames include a header with addressing information and checksum in the footer. Digi has released an ANSI C XBee Host Library as Open Source on GitHub that could be a good starting point for that since you mention using C. It looks like there's even a fork of the library targeting the AVR platform.
#user2031622, zigbee nowdays has builtin microcontroller such as CC2530 provided by TI stack (Texas instruments).CC2530 has a inbuilt 8051 microcontroller which supports mesh networking.
I want to implement bluetooth communication on my final bachelor project, but I'm having a lot of doubts.
One of the requisites of this project is to have a Java application that can talk to the micro via Bluetooth. After a lot of research, I've found one that I think it's very good with a SPP profile, but I still have a lot of questions about it:
All the bluetooth on a PC implements the SPP profile stack?
If you need to develop a Java application that runs on every PC that implements the SPP stack, how would you do it?
We started by trying to use BlueCove and JavaBluetooth.org API, the first one runs great but I don't know if it's just on my PC and the second one sends an error (Stack not initialized). Which one would you use, and why?
We decided to buy this bluetooth module, from Sparkfun, any comments for those of you who already use it?
Thanks
I used a similar product for my senior design project from Sparkfun (RN-41): http://www.sparkfun.com/products/10559
It worked right out of the box as a simple UART. This allowed my team and I to develop a simple C# application that used the .NET SerialPort class (System.IO.Ports) to communicate between an MSP430 and the PC application we were developing. If streaming data is all you care about, these Bluetooth modules work great. Java implements a similar SerialPort class for RS-232 communications. Don't forget that Bluetooth was developed to replace a serial cable.
I hope this answer helps! Good luck.
I personnally achieved to use the Sparkfun's bluesmirf devices to communicate with my own Java application (an Eclipse plug-in). I tested it successfully under Windows, MacOS & Linux based systems.
I used the RXTX Java library to connect to the corresponding serial port once the Bluetooth devices were paired. Under Linux I even achieved to configure rfcomm to automatically pair the Bluetooth devices on demand.
From my experiment I encountered some stability issues... Sometimes it simply fails to connect to the given port even if it exists or refuse to reconnect on it. Sometimes it hangs the whole system...
I never found any good solution to fix those issues that seems to be completely system dependent. I would be interested if any one achieved to use it properly...