Find more Architecture Remote Jobs posted recently Worldwide

Required Python,MQTT,Raspberry Pi freelancer for TDoA Network using Decawave DWM1000 UWB Module job

Posted at - Jun 3, 2024

Toogit Instant Connect Enabled


To develop the software needed for the gateways (base-stations) in a UWB network, using TDoA as the location method:

- Gateway hardware platform is composed of an embedded system (Raspberry Pi or similar), with a Decawave DWM1000 module. The preferred development language for the application is Python 3.x.
- Hard-coded location configuration of the gateway device, during deployment. This configuration should include (but not be limited to): Gateway location, UWB channel, modulation depth, data rate and other physical medium parameters. All the devices (gateways and tags) in a single installation should be assumed to use the same physical link parameters.
- Possibility to exchange user data messages between gateways and tags.
- The messages sent from the tags needs to be received by each gateway in range and relayed to a network server.
- The message destined to the tag is transmitted by a single gateway, and sent from the network server to that gateway alone.
- Ability to determine position of a transmitting tag: Each of the messages received by a gateway should be timestamped with sufficient precision and relayed to the network server, the network server will receive each of the copies of the same transmission from the tag and send the timestamp information to a location server in order to resolve the position.
- Synchronization of the time base for each gateway. This is needed in order to compensate for frequency differences which would lead to timestamping errors (and location inaccuracies). It's implied here that one of the gateways in a cluster (or group of proximity) has a role of a 'sync master' to which all the peripheral gateways synchronize their clocks to. Using GNSS networks is not a possibility here, the system should be able to work on indoor locations. Because of network extension possibilities, there's a good chance that in a network setup not all of the gateways could be in range of a single sync master. This problem is left open to be resolved by the implementator; a synchronization mechanism based on an Ethernet network between cluster sync masters; or a tiered topology, similar to Network Time Protocol 'stratums', could be implemented via the same UWB link, for example.

Network server:
- The network server should receive the message copies relayed by the gateways, preferably using MQTT to receive and publish this information to the data consumer applications.

Location server:
Also, the application for the corresponding location server needs be developed, which would have the following functions:

- To calculate the relative position of a tag given the timestamps on each of the messages, generated by a single transmission from the tag, and received by the gateways in range. The locations should be in x,y,z coordinates, in meters relative to an arbitrarily chosen coordinate origin.
- To send back the calculated position of the tags to the network server in order to complete the message information, using a similar MQTT channel as the network server.

About the recuiterMember since Nov 11, 2022 Arghya Adhikary
from Gauteng, South Africa

Skills & Expertise Required

Python MQTT Raspberry Pi 

Open for hiringApply before - Sep 1, 2024

Work from Anywhere
40 hrs / week
Hourly Type
Remote Job
$24.88
Cost

Offer to work on this project closes in 45 days!
Are you interested in this Opportunity?

Apply Now

Looking for help? Checkout our video tutorial
How to search and apply for jobs

How to apply? Do you have more questions about the Job?
See frequently asked questions


Apply on more work from home jobs posted in Architecture category.


Related Jobs


Latest In Python Jobs


Latest In MQTT Jobs


Latest In Raspberry Pi Jobs