This seems more than interesting. Will check it out in detail, since I haven't heard about it until now. Thanks for the suggestion!
Indeed, I was looking for a simpler and lower level protocol. Thanks for mentioning the network protocol anyway, because I have never heard of CoAP until now. It may come in handy in the future (or maybe for someone else reading the post).
Thank you for your suggestion. Is it really that easy to implement? So far the people I talked with irl told me otherwise, but I will look into it and judge myself whether I am up to the task.
Thank you for your suggestions. Rs-485 seems to be what I was looking for. CAN could also work, but is it reasonably implementable? So far everyone who I spoke with about CAN said that it is a rather complex protocol with a lots of finicky details and an extra long standard. Perhaps I have just talked to the wrong people. I will look into it more thoroughly, and thanks again.
Hmmm... It does tick a lot of the boxes, but the ethernet protocol is way too complex with all of its layers and not reasonably implementable on a low-power microcontroller. Also it requires separate hubs for connecting multiple devices together unlike i2c, which is daisy chainable.
Hi everyone! Recently I have gotten interested in communication protocols and have been looking for one (with little success, hence my question) which would satisfy the following requirements (in prioritized order):
• All devices should be able to initiate communication (not your typical master slave with polling)
• Devices should be able to address messages directly to one another without a single one permanently taking on some host/master/relay role
• Devices should be hot-pluggable (A new device may be connected to the network or removed from it without problems even when the network is up and running)
• The protocol should be stable and immune enough to noise so that it can be sent through wires up to at least 5 meters, ideally even up to 10-50 meters.
• It should be simple, implementable even on low-perfomance microcontrollers.
• It should have its maximum transfer rate in the kilobytes per second range or preferably even megabytes per second.
I have looked at I2C, which for the most part would be fine, but as far as I understand it was not meant to be sent through a wire and it would be quite vulnerable to interference. (It also is by default a master-slave protocol, but it also has a multi-master mode, so maybe making every device a slave and a multi-master master at the same time could work?)
The rest of the protocols I looked at were all master-slave, which, for my purpose, is unacceptable.
That being said, I would be grateful if you could give me some pointers as to what protocol may satisfy these requirements and perhaps even on what sort of wires and signals it would require (twisted pairs? Differential signal? Shielded twisted pairs? Could plain simple wire suffice? etc.)
Okay. Thank you! This explanation made it click for me (now I think I get the original example too). Here the real cause of the violation is the instant communication, isn't it? If the communication was done via radiowaves (which as far as I know also travel at the speed of light) it would not be violated, because of the time it takes for the information to arrive from the Earth to the spaceship and back, is that correct? Is this why (as I have read/heard on several occasions) the upper bound for the speed of information is also the speed of light?
From Earth’s frame of reference, time on board the ship is slowed down by a factor of 0.866, while from the ship’s frame of reference, time on Earth is slowed down by the same factor
Why is time on earth slowed down from the ship's perspective? Shouldn't it be faster? Like if earth perceives that the time on the ship is passing slower shouldn't the people on the ship perceive the time on earth as passing faster to compensate?
Also, I have quite a hard time understanding how time exactly slows down. Is it sort of as though we adjusted the time step duration (tickrate, more precisely) of a physics simulation in an area (making everything happen slower/faster there in relation with the rest, where the original timestep is kept)? (Without losing precision and all those problems that occur in a simulation normally) Or is this analogy flawed and that is why I'm not getting it?
Thank you for your answer. When viewed from this perspective it makes more sense.
I have heard this mentioned several times with this exact wording, that faster than light travel would break/violate causality and I do not exactly understand why and how it would do that. Could someone more well-versed in physics explain to me why that would be the case? Or is it not the case? (Yes, I am fully aware, that faster than light speeds are impossible in real life, but I am more curios about how it would hypothetically affect physics, were it possible). I am somewhat familiar with physics and more so with mathematics (engineering student), if that helps anyone to explain it at an appropriate level.