I am currently running a ROS package (publishing multiple topics including image topics) on multiple computers connected wirelessly using http://www.netwifiworks.com/PicoStation-M.asp . While I get pretty good frame rate on master computer, the frame rate is pretty low on the listener computer. What is the solution? Image compression/ -P
Using Ubiquiti hardware needs a lot of config and correct setups I'm using Bullet M5 on one side of my network and after about a week of testing setups and configs we could get LaserScan and PointCloud2 From master To remote computer on 20+ Hz
Your Problem Too I Think Is In Network Configurations And Since I Don't Have Your Hardware That's All The Help I can Give You On That
If Your Network Is Tested And Good Then It's Your ROS Envs.
Make Sure U Have These On Your Remote PC Envirenments :
ROS_IP Which Sets The IP Your ROS On Remote PC Using And sometimes can cause Data loss If Not Set (Or You can Use ROS_HOSTNAME)
And On Master PC If You are Using Only 1 Network It's Better To Do The same(Optional)
All Of This Are Discussed On Their ROS-Wiki
Related
I use Dragon dictation software including by using it over a remote access to my home computer. I also once had it set up on the network server computer at a client site which I could also access when logged in remotely. But now, I have a situation where my access to work info is over Amazon WorkSpaces. Does anyone know if Dragon Pro can be installed on and accessed through an Amazon WorkSpace desktop?
TIA!!
Your question was bugging me for a long time, finally I gave in and rented a WorkSpace and tried Dragon.
Recognition for me is totally fine as long as your local computer's standard audio input device is actually the one you want to use Dragon with. If your default input device is the built-in micro of your laptop, computer or screen, recognition will most likely be bad. I used a Sennheiser MB Pro 2 with a USB dongle on a Windows machine for testing, as well as a TravelMike with a USB MultiAdapter. Both work fine.
As for factors that influence recognition quality:
I know from other virtualization/remote desktop solutions that the codec that transfers your speech to the virtual/remote machine may work well for one microphone, and not for others. Try a different mike and see if that improves your recognition.
In order to rule out microphone issues, I suggest trying different internet connections (WiFi, Ethernet, tethering, different internet providers). Missing words from speech recognition over remote connections can indicate unstable or slow internet.
As far as I know, there is no way to patch a USB device through to the remote WorkSpaces machine. What you could try is install a VPN on the remote machine and use your smartphone as a remote microphone in Dragon. Your smartphone also needs the VPN. If you get that to work, recognition should be as good as on your local network, given that internet connection is fast and stable enough.
I have an embedded system that runs Ubuntu 14 and is connected to my laptop through an Ethernet cable. I am trying to sync the time/date/timezone of the board with my laptop. The board does not have any Internet connectivity and I can not run ntp like ntpdate ntp.ubuntu.com.
What I have in mind is to get the time/date/time-zone of my laptop using a C++ code like this and then run date --set=<laptop_time_date> command on the remote board (using a remote SSH connection). Is this the correct way to do this? and how to syn the time zones too?
P.S. The reason I need to sync the time/date of the board with my laptop is to let make to work properly. I copy multiple source files through SSH connection to the board and then call make to build the program. make produces a warning that timestamp of file is in the future. One way to solve this is to call touch on all the source files to update the time stamps, but it forces a rebuild.
Quick background, I am an intern at a company assigned to a project that I have no experience with, and I need some help trying to figure out where to start.
The goal of the project is to transfer very large chunks of data from a database, to a PC and then to a Mac. I am trying to code the communication between the PC and the Mac (this has to be done in c++, I've heard Python is easier but I have to use c++). Some requirements are that the PC and Mac be directly connected via an ethernet cable, and neither computer will have access to internet. The data transfer needs to be automated, so whenever the PC detects that it has received a full dataset from the database, it transfers the data to the PC. I cannot use any third party software to do this.
So far, through the research I've done, I think I need to set up a TCP Server-Client network. I've been using the code here (http://cs.ecs.baylor.edu/~donahoo/practical/CSockets/practical/) as a guideline for socket coding. I am first trying to test this by sending files between two macs (I don't have access to a PC atm). Any guidelines as to where I go from here would be helpful. I have looked into setting up static IP addresses and such, but I get stuck from there.
I don't expect anyone to code this for me, I am just new to socket coding and this sort of project, so just looking for a nudge in the right direction. Thanks!
Before you start coding, keep in mind that to connect PC to Mac you may need a crossover cable.
Then do some reading on the wired ad-hoc networks. The last post in this discussion may help.
Finally, configure and mount shared volumes (using the stock software, no 3rd parties involved), and don't use the low-level socket interface.
I am wondering if it is possible to limit/control ethernet upload and download speeds on specific transport layers (tcp/udp) using c++? I am trying to make a simple to use program that can control the speeds of any device that the ethernet is connected to. For example: Computer B is connected to computer A via Internet Connection Sharing, I use my program to limit computer B's download or upload speed to 120kbs (or any number i choose), with this I would also like to choose udp or tcp.
Basically, I want to create my own program similar to net limiter and other such software, but I also want to add my own features which many of which lack for my needs. These other features are easy enough, but I have no idea how to go about the actual limting process.
The way forward in the general case you ask about would be to create a virtual network adapter and all the monitored route traffic through it. Once that was done, then you can monitor streams between hosts or on specific ports.
Not an easy job... A starting point would be the Windows device driver kit.
If you were prepared to limit just one app, and could modify it, the task would be much simpler... wget and curl for example both offer limiting.
HTH, Ruth
First my setup that is used for testing purpose:
3 Virtual Machines running with the following configuration:
MS Windows 2008 Server Standard Edition
Latest version of AppFabric Cache
Each one has a local network share where the config file is stored (I have added all the machines in each config)
The cache is distributed but not high availibility (we don't have Enterprise version of Windows)
Each host is configured as lead, so according to the documentation at least one host should be allowed to crash.
Each machine has the website I testing installed, and local cache configured
One linux machine that is used as a proxy (varnish is used) to distribute the traffic for testing purpose.
That's the setup and now on to the problem. The scenario I am testing is simulating one of the servers crashing and then bring it back in the cluster. I have problem both with the server crashing and bringing it back up. Steps I am using to test it:
Direct the traffic with Varnish on the linux machine to one server only.
Log in to make sure there is something in the cache.
Unplug the network cable for one of the other servers (simulates that server crashing)
Now I get a cache timeout and I get a service error. I want the application to still be up on the servers that didn't crash, and it take some time for the cache to come back up on the remaining servers. Is that how it should be? Plugging the network cable back in and starting the host cause a similar problem.
So my question is if I have missed something? What I would like to see happen is that if one server crashes the cache should still remaing upp since a majority of the leads are still up, and starting the crashed server again should bring it back gracefully into the cluster without any causing any problems on the other hosts. But that might no be how it works?
I ran through a similar test scenario a few months ago where I had a test client generating load on a 3 lead-server cluster with a variety of Puts, Gets, and Removes. I rebooted one of the servers multiple times while the load test was running and the cache stayed online. If I remember correctly, there were a limited number errors as that server rebooted, but overall the cache appeared to remain healthy.
I'm not sure why you're not seeing similar results, but I would try removing the Varnish proxy from your test and see if that helps.