How to calcuate the HOPs number in my proposed topology, is there any network simulator to do that? - system

I propose a new topology, and need to know the average number of hops to talk to a node for the other node in the network, is there any software which is particular for it?
Thanks

Related

USB3 super-speed signals without USB2 D+/D-

Hello StackOverflow community,
I've been stuck on the following problem for a bit and would greatly appreciate a bit of help. I apologies in advance for my lack of knowledge about USB in general:
My goal is to use a USB3 port to transmit super-speed data between a computer and another device without having to use the D+/D- USB2 pairs (the reason is that I have 2 optical fibers only!) . In practice imagine an active optical cable which would only be able to transmit the USB 3 super-speed signals -> no D+/D-... both sides of the active cable are of course powered individually. The active cable has on both sides as I/O the copper differential pairs of the super-speed signal as well a source of power.
Both ends of this link are an issue for me at this stage: on computer side is there a way to tweak some kind of USB3 driver to ignore the typical host-device construct which I understand is imposed by the underlying USB2 protocol - a kind of by-pass? On device side... well same thing I guess - I haven't yet figured out implementation option.
Any thoughts are welcome!
Thanks a lot!
Grégory

LoRaWAN Coverage Design in Rural Areas

I need to cover a district with a LoRaWAN network for air quality sensors. I know that the LoRa/LoRaWAN technology is the perfect solution when Line of Sight is maintained, but is there any easy way to determine how many gateways are needed in rural areas? I amning plan to use Kerlink Wirnet iStation V1.5 as gateway and ESP32-based CO2 sensors. Many thanks in advance.
You definitely don't need line of site for LoRa communication.
The easiest, and most accurate way to estimate the number of required gateways is to do a field test with one single gateway and a test device (e.g.: an Adeunis Field Tester). This way you can check what the longest distance between an end device and the gateway can be. Using that information you can calculate the required density of base stations.
If you register for a free account on Actility's ThingPark Community Portal and you connect your Kerlink gateway to the ThingPark Network Server, you will be able to use Actility's Network Survey Tool that can visualize the coverage of your gateway an a map.
If you want to make a rough estimation I would say that in a rural environment, where devices are outdoor and the gateway antenna is on a 20m height pole or on top of a 20 height building the range of a gateway is around 1-3 km. If the end devices are indoors (in rooms having windows) this range is 0.5-1.5 km.
You could also use The Things Stack community edition (formerly known as TTN, The Things Network) in conjunction with ttnmapper.org. Note that there is currently a transition going on from TTN (V2) to The Things Stack V3, see the notice on the webpage. This method uses field tests similar to the system proposed in Norbert Herbert's answer; any simple node is sufficient because the GW's metadata are evaluated. You can track you field test live on a smartphone. As LoRaWAN coverage strongly depends on the gateway's placement, it should be at least similar to the intended position, better be the planned position proper.
For a dry run without any hardware, you may also have a look at the freeware program Radio Mobile by Roger Coudé VE2DBE, with more info by Remko Welling PE1MEW here. The program lets you simulate radio connections in a wide variety of settings, including a complete mapping of a region with multiple gateways.
Line of Sight is not always needed. There are many factors that will affect the reach of your modules, including the terrain (hills can get in the way, especially higher ranges), the settings you would use for your LoRa or LoRaWAN network, and where you position your gateway(s) – when using LoRaWAN – or transceivers, when using LoRa.
I live in a mixed environment, half hills and jungle and half dense, high rises, and I get about 10 km coverage, no LoS, and more if I get LoS from a height, both with LoRa and LoRaWAN, although reliability is not always guaranteed.
But first you have to decide whether you will go the LoRa or the LoRaWAN – this has implications on both the hardware and software budget: while LoRaWAN requires more equipment, and more onerous, it will simplify the setup cost, software-wise. I am very much a LoRa guy myself, but I do recognize the benefits of LoRaWAN for quick developments.
But it'd be cheap to do a first test with a couple of LoRa devices, to check how far you can reach in your region.

Multiple PC's VGA outputs mirroring on multiple monitors with switching capability

Let’s assume that we have a classroom that in the center of the room are some desks, and on each desk there is one Zero Client and monitor that students can use for their homework’s and education.
Around the room and on the walls, there are some mounted monitors (Like 6 or 7 monitors).
The question is how we can:
Mirror one of the zero clients VGA output on all mounted monitors.
Or switch to one-to-one connection, I mean one zero client mirror its output on one of the mounted monitors.
Is there any device or any solution to implement this, it must be convenient to use for someone like a teacher to switch between outputs.
Sorry for my bad English.
I think i found it, something like 8x8 HDMI Matrix Switcher or 8x8 VGA Matrix Switcher can solve my problem.

How to read GPS coordinates from device via USB port

I need to read GPS coordinates using a VB.NET program directly from a GPS device connected to the computer via USB (bluetooth also OK but prefer USB). My constraints are:
The computer running the software is NOT connected to the internet. It is a stand-alone machine in a moving vehicle.
I need to be able to read GPS coordinates from the device while the vehicle moves and use the device to perform location-aware queries on a local database
The GPS device can be anything (e.g. Garmin GPS or GPS card without display), as long at it can be purchased off the shelf or over the internet.
The user group for this solution is quite small (about 40 users).
I have already checked out GPSGate (http://gpsgate.com/) and emailed my requirements to them. They replied, and I quote: "I am sorry but we have no product for you." (end of reply).
I also checked out Eye4Software) and tried using their demo product but it does not pick up my Garmin Nuvi via USB. They responded to my questions but unfortunately their OEM product is an ActiveX dll and I am looking for a .NET based solution.
So if anyone has a "home-grown" solution based on the .NET framework, that can be easily duplicated, I would really appreciate it. Many thanks!
Most of the USB GPS pucks will speak a standardized protocol called NMEA 0183. There are several .net protocols out there that decode this protocol, see here for some pointers to get started.
So, if when shopping around you just check that the device is able to generate NMEA you should be up and running in a minimum of time, and at a reasonable cost.
EDIT: a "gps puck" is a GPS receiver shaped more or less like a hockey puck, like this one
For in-car use there are specific versions that can be fixed onto the vehicle's roof
They are pretty common (many online shops carry them) but select them based on the chip that's inside, the popular Sirf Star 3 is still a solid performer, stable and accurate. I haven't had the chance to play with its successor, the Sirf Star 4 yet, and I'm not implying these are the only good chips around, only that I got most experience with this chip.

Accurate Timings with Oscilloscopes on PC

In the world of embedded software (firmware) it is fairly common to observe the order of events, take timings and optimise a program by getting it to waggle PIO lines and capturing their behavior on an oscilloscope.
In days gone by it was possible to toggle pins on the serial and parallel ports to achieve much the same thing on PC-based software. This made it possible to capture host PC-based software events and firmware events on the same trace and examine host software/firmware interactions.
Now, my new laptop ... no serial or parallel ports! This is increasingly the case.
So, does anyone have any suggestions as to go about emitting accurate timing signals off a "modern" PC? It strikes me that we don't have any immediately programmable, lag-free output pins left.
The solution needs to run off a laptop, so using add-on cards that only plug into desktops are not permitted.
Laptop with a docking station and old-skool parallel port. An alternate is to use a "smart" box connected via USB that handles the timing for you and simply reports the results over USB.
You may want to look into some of the USB logic analyzers like the Saleae Logic kit.
You can get USB dongles that create serial and parallel ports. Make sure you do your homework though, as you want to be sure that you can get all the Pins and all their data, some of the cheaper units don't do everything you need.
I've got a PCMCIA parallel port from Quatech - model SPP-100. It is a "real" parallel port - not a USB-Parallel port one. It is "real" enough to allow me to use a parallel port dongle with Windows 7 x64 on my laptop which doesn't have a parallel port.
How about using the audio line-out port? That should at least have consistent latency since audio applications care about that. That's the only modern computer output I can think of that isn't packet-based or dedicated to other purposes. It only has two channels (though external USB audio devices could expand that, and hopefully also have consistent latency through whatever the protocol does), and there might be a DC filter, but you could at least produce reliably timed pulses.
USB logic analyzers exist, some are even chip. But keep in minds #xtofl's comment about timing.
sump.org
The Bus Pirate