LiveObjects receive only 'Activity logs' instead of 'Uplinks/Downlinks' messages from device - lorawan

I'm setting up some sensors on my Orange LiveObjects LoRa with a routing to my server, but I'm having trouble:
My sensor is well provided on LoRa LiveObjects and it status is activated (On liveObjects and on the management app).
I'm using the generic profile Generic_classA_RX2SF12
It send some uplinks/downlinks messages.
The uplinks/downlinks messages are interpreted as Activity Logs instead of Messages
The logs can't be used with my routing rule.
I'm using ACS-Switch Ineo sense sensor.
I've tried to:
Delete and add again the sensor
Add the sensor using liveObjects interface
Add the sensor using liveObjects API
Set the sensor on another account of LiveObject and it works well (I received some uplinks/downlinks messages)
Set the streamId with !uplink
Use a FIFO
Deactivate and reactivate the sensor on LiveObjects
Reset the sensor connection so it send again join request that was success again
It seems to be a LiveObjects bug with my account since it works fine on another.
Does anyone already had the same bug ?
Thanks.

what do you mean by "The uplinks/downlinks messages are interpreted as Activity Logs instead of Messages"
What kind of routing do you use and do you route on the same manner on your two Live Objects acccounts ?
regards

Indeed, there may be something wrong with you account (for example created with a wrong offer). You should contact your support so that they could inspect your account configuration.
Regards

Related

Connect mavlink (on RPi) with QGroundControl

I am trying to connect Mavlink (installed on RPi) with QGroundControl via 3DR Radio Telemetry as to transmit telemetry data from RPi without dependency of Ardupilot/Px4 flightcontrollers. I want to achieve transmitting data such as GPS or Postion using the message format of mavlink without dependency of ardupilot/PX4.
So far, I have taken the example code from mavlink git and have built the code as per instructions. I start the QGroundControl and was able receive the System ID and component ID from QGC. I modified the code to transmit a heartbeat from RPI-mavlink to QGroundControl.
mavlink_msg_heartbeat_pack(system_id, 200, &msg, MAV_TYPE_HELICOPTER, MAV_AUTOPILOT_GENERIC, MAV_MODE_GUIDED_ARMED, 0, MAV_STATE_ACTIVE);
int len_hb = write_message(msg);
After building and executing this code, I was expecting the QGroundControl to connect/show received message, but nothing was available at the QGroundControl.
I need to understand if what I am doing is the right way to do or if there is predefined method to establish such kind of communication. Kindly, help me out with documentations (if any) available to accomplish message transmission without ardupilot/Px4. If someone could guide me on this issue, it would be really helpful.
Thanks
If you use RPi you not need the 3DR Radio Telemetry. You can connect RPi by WiFi or LTE to send/receive the Mavlink data. You need:
Wire the RPi to the flight controller;
Setup the Mavlink port in the QGroundControl, let the flight controller send the data to a telemetry port;
Install the mavlink-router to RPI;
Setup the mavlink-router send data to groundstation;
When you can receive mavlink data in the groundstation, you use pymavlink to send mavlink message. There is a sample code
If I have understood the question correctly, then what you are trying to do is to develop your own flight controller using raspberry pi. And, you want it to be detected as a vehicle in the QGC.
The example code that you are referring to from mavlink repository is used on the ground station to receive messages from a flight controller and send command messages to it. However, you are trying to send message from flight controller to the ground station.
What you will first have to do is to keep sending a heartbeat message at the rate of 1Hz as described in heartbeat microservice on mavlink documentation page. QGroundControl will detect a vehicle if it receives heartbeats from a vehicle I guess for about 5 seconds continuously. You have to keep sending the heartbeat at 1Hz after that as well, otherwise the QGC will state communication loss even if you are sending other mavlink messages to it.
On top of that, there are many mavlink messages which can have different interpretation for different flight controller. So, at some point you either will have to match your code to a certain extent to an existing flight controller or you will have to modify QGC to work with how you implement your flight controller.

Is there an out of the box solution for Client-Client communication using the QUICKFIX library?

I'm trying to build a entirely contained trading simulator using quickfix/J. The systems ought to consist of 2 client applications (a market/exchange and a broker) as well as a router (server/acceptor). In particular I'd like to know:
Client-Client communication
How the two clients can communicate to each other, but the server handling all the messaging logic, ie. messages should go through server and it should decide where and how to forward messages. I ought to be able to pass a targetID in FIX message, and the server app should handle routing to desired client.
Multiple clients on same port
Have multiple clients connected on same port but messages should only go to a particular sender comp Id ie. clients should not be privy of communication from other clients.
I've already set up the acceptor, and 2 clients. I know I could do this programmaticaly using plain old Java but I'd like to leverage the quickfix library and would like a relativly out of the box solution.
MVP: client (broker) sends fix message through the acceptor(router), message is processed and forwarded to a particular market, market recieves message through server and does some business logic, market sends fix message back to client through acceptor.
ps: I like the quickfix library but I'm very flexible if there any other library/languages you'd recommend
Short answer: QuickFIX/J (as far as I can tell similarly QuickFIX or quickfix/n) will not route messages based on tags. This has to be implemented in your application code.
Edit: with regard to your second point. There is no problem having your FIX server listening for multiple FIX connections on the same port (This applies for QuickFIX/J and I guess also the other language variants.) Sessions are addressed via the SessionID so it is ensured that only the correct FIX Session gets its messages.

Extracting Data from TTN (TheThings Network) using REST API

I have successfully Integrated TTN theThingsNetwork with my LoRaWAN Gateway. Also I am able to forward data between from Nodes to theThingsNetwork. Now I am looking for information to fetch data from TTN Thethingsnetwork to my own server. Any information will be appreciated.
Thanks in advance.
Regards,
Zaheen
First, let me welcome your on The Things Network !
To get your data to your own server, you have several possibilities:
The first one is to create a MQTT client running on your server to receive all your data in real-time. For this, you can use several SDKs provided by The Things Network at https://www.thethingsnetwork.org/docs/applications/sdks.html
The next way to do it is using integrations. In the upper-right corder of your application management console, you should see an "Integration" tab.
Using this tab, you can create two different types of integrations:
The first type is the "HTTP integration". Using this one, all received messages for your application will be forwarded to the url provided in the integration configuration. A complete documentation is available at https://www.thethingsnetwork.org/docs/applications/http/
The second type is the "Storage integration". Using this one, all your received messages are stored in a database for 7 days ans are query-able via REST. A complete documentation is available at https://www.thethingsnetwork.org/docs/applications/http/ https://www.thethingsnetwork.org/docs/applications/storage/

Peer assisted networking P2P

I was looking for live streaming platforms where you can broadcast yourself and get some money for it. Checked out Streamup, YouNow and AmberDog. The last one was the easiest to use in my perspective but when the stream is loaded, it asks the following:
Peer assisted networking
amber.dog may use peer assisted networking. Do you want to allow
access to your upload bandwidth?
What the hell is that? I haven't seen such a message in any other live-stream platform. Should I allow or deny it?
They are using RTMFP protocol for live-streaming. No harm.
The stream is sent from one peer (source) to another (origin) directly and the server only organizes the graph - who sends what to whom. In this case, by agreeing, you only allow the stream coming to your flash player to be sent over to the next watcher. This is basically the future of live-streaming.

First message not arriving over an MSMQ/MassTransit Service Bus

I've got a MassTransit ServiceBus running over MSMQ. It appears that the first message sent over the Bus doesn't arrive, but subsequent messages do?
Is there some initialization that needs performing on the queue or bus before the message is sent?
This depends on a few settings in how much time the system needs to setup before everything will correctly route. If only first message is failing to end up in the right location, then likely the subscription data isn't propagated everywhere yet. http://readthedocs.org/docs/masstransit/en/develop/overview/subscriptions.html
Using Multicast subscriptions, the easiest choice, will require a few seconds after a endpoint has come up and register a subscriber with all other endpoints. If you can control the order of services starting up, then this can often be avoided by started back to front in the flow.
If you are using the subscription service, then that can also take a couple seconds to get data everywhere. It has to go through the subscription service but the subscription is send to everyone on the bus. This is tied to a SQL db, and latency to the db can effect this timing.
Lastly, if you are using static routing, then that should work immediately, because the subscription is setup upon startup.