Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 1 year ago.
Improve this question
Working with ESP32 and IDF
I'm working in developing an application that advertises BLE data. I need to send custom data to each one of the different devices scanning. I'm able to write a custom manufacturer data. I can also write a custom scan response message but, can a different custom response message be sent to each individual remote device? If possible, how do I do it?
I have multiple iOS software for checking the BLE data but I have not been able to find one that displays both the Advertisement data and the scan response data in real-time. Does anyone know of one?
Thanks
Please don't ask two completely separate questions in one question. But anyway:
The Bluetooth specification has no way of specifying different scan response data for different scan request bluetooth addresses. The address field in the scan request is there only to make it possible to discard scan requests from devices that are not in the white list.
The iOS api does not differentiate advertisement packets from scan response packets, so I don't think any app can do this. But you should however be able to get a notification as soon as some data arrives. I guess nRF Connect does this.
Related
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 2 years ago.
Improve this question
Given the degree of uselessness one has come to expect from both tutorials
https://inet.omnetpp.org/docs/tutorials/wireless/doc/step5.html
and manual pages:
https://doc.omnetpp.org/omnetpp/manual/#sec:ned-lang:warmup:network
how can collision be modelled at the application layer?
You did not find a tutorial how can collision be modelled at the application layer simply because in application layer collisions do not occur.
Generally, a collision may occur when some medium (or layer) cannot be accessed simultaneously by many elements. However, there is no such limitation for application layer. Application may send a packet in any time, that packed will be processed by the transport layer (TCP or UDP) and then it is sent to network layer. The network layer has a buffer so in the situation when at the same time two or more application send packets the conflict will not occur.
According the details presented in your question:
how can hostSink check whether hostA or hostB are still sending packets [originally: signals]? Answer: hostSink cannot determine whether hostA is still sending packets. Simulation reflects the behavior of a real network and in real network host does not know whether the another host is still sending packets.
How does time "pass" in a simulation? Answer: OMNeT++ is Discrete Event Simulator and according to Simulation Manual:
A discrete event system is a system where state changes (events) happen at discrete instances in time, and events take zero time to happen.
It means that a simulation internally maintains variable called currentSimtime. At the beginning currentSimtime=0. When the first event (for example sending an ARP packet) is scheduled at, for example, t=0.003s, currentSimtime is set to 0.003s and the sending ARP packet is executed.
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 4 years ago.
Improve this question
Hi guys I'm creating a device that can be controlled by google assistant;
currently I created an arduino that interfaces with an esp8266 and through the service "IFTTT" I can communicate without problems. Now I would like to extend the project so as to make it public so as to find it in the "Home control" devices of google.
Is it possible to use "Arduino / esp8266"? How?
If it is not possible in this way what kind of board do you recommend?
In order for your device to work with the Google Assistant, you should consult the smart home documentation. If your device can connect to the Internet, you're good. The ESP8266, since it already connects through IFTTT, will work for a more public project as well.
You'll need to create some sort of server backend which will act as the source of truth, responding to requests from the Google Assistant and dispatching commands to devices. If you can use the ESP8266 as a web server with minimal (< 5s) latency, you'll be set. Alternatively, you can use a simple service like Firebase.
Your web server will need to respond to three primary types of intents: SYNC, QUERY, and EXECUTE. The documentation walks through all of them, but they give you the ability to provide devices for each user, return the state of these devices, and send commands to do actions.
Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 6 years ago.
Improve this question
Does number of available ports limit the number of tabs that can be opened in a browser, if not the how browser knows which incoming data belongs to which tab.
There doesn't need to be a direct association between browser tabs and network connections. When a tab needs to send a request to a server, it could open a network connection, send the request, receive the reply and then close the connection.
There are other options too:
The browser could open multiple connections so that it can make multiple requests to the same server simultaneously.
The browser keep old connections open so that it can sens a sequence of requests.
To get a better understanding of how a browser could interact with a webserver, refer to the HTTP specification; e.g. RFC7231
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 8 years ago.
Improve this question
I read about OpenBTS it's really amazing... but I was wondering if we can use it to build phone-to-phone provider-less network.
Any clues or experiments are really appreciated.
One thing to be aware of is that open BTS is 2G/GSM only - i.e. it does not support 3G/UMTS.
This may or may not be important to you depending on what you would like to achieve.
There does appear to be some discussion on adding this functionality in the future (i.e. building an open node b/RNC effectively) but it will be tricky as the authentication mechanism used in 3G requires the network owning the SIM to provide authentication data for even the most basic communication.
GSM follows a strict client-server model. Mobile phones are intended to be clients.
If you would want to build phones with phone-to-phone capability you would need to implement network functionality in the phone. With this, phone-to-phone (theoretically) could be done in an ad-hoc-network model, with one phone running the network part.
I would suspect that one has to look at impacts on the pyhsical/radio layer as well.
Rather unrealistic, IMHO.
May be of interest:
http://terranet.se/history/
So far this company (TerraNet) seem to be only offering sowftware for creating mesh networks over Wifi (I think Wifi is a big disadvantage due to the battery drain. If only we could use GSM), but they seem to share this idea.
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 4 years ago.
Improve this question
I am trying my hands understanding PCAP libraries.
I am able to apply a filter and get the TCP payload at port 80. But what next ? How can I read the HTTP data - suppose I want to know the "User Agent" field value in the http header..how should I proceed ?
I have searched the website (and googled a lot too), and could find a related thread here :
writing a http sniffer. But this doesn't help me anywhere...
Thanks !!
First, you should know that PCAP give you packets, and will not reconstruct the TCP stream so you won't be able to read full HTTP TCP streams without first reconstructing the data.
Assuming all the data is available in one packet try and look at my answer for a similar question. All you need to do different is to parse the HTTP header and get the user agent.
If you don't limit yourself to C, and if you can use Windows, you can write a .NET application and use Pcap.Net to parse Ethernet, IPv4 and TCP perfectly.
Why don't you use a Wireshark Dissector?
There is already a good Pcap wrapper for .net called Pcap.Net - here it is
"Pcap.Net is a .NET wrapper for
WinPcap written in C++/CLI and C#. It
Features almost all WinPcap features
and includes a packet interpretation
framework."