WIFI issues with my turtlebot3 burger [closed]

asked 2022-05-25 09:14:20 -0500

learn2learn gravatar image

updated 2023-03-07 12:38:01 -0500

Hello!

I have a turtlebot 3 burger with a raspberry pi 4 model B on it. Please note that I use the ubuntu image for raspberry pi 4 4GB with ROS noetic given in the turtlebot documentation (https://emanual.robotis.com/docs/en/pla ... #sbc-setup).

To give you the context of my project, I have two turtlebot3 burger and I want to connect them on a same specific and reserved network. With this configuration the master ROS node on my remote computer can get the information of the 2 robots and so apply a group regulation. I bought a WiFi router (https://www.conrad.de/de/p/netgear-ac12 ... wE%3AG%3As) to create a reserved and portable network for my turtlebots. I did that to have a portable network and to be able to define static IP addresses for my robots and my computer so I will not have to change the ROS configuration every time. I setted up the router (just define the ip address range to 192.168.0.X/24 and the ssid/password) and try to connect the raspberry pi but it didn't work.

There is no problem to connect my computer and my phone on the router, but it doesn't work with the raspberry, and there is no problem to connect the raspberry on my phone AP and on my office WIFI. My first idea was that i didn't set up properly the router (for the raspberry because every others computers connect without troubles) so i tried to check everything but nothing changed.

I finally found a trick, if I activate my phone AP and the router at the same time, with the same SSID and password, the raspberry connect to my phone. When its connected to my phone, I turn off the phone AP and the raspberry switch on my router network and after that everything work well (can define static ip, can ping other computers and launch ROS node). I do that every time I turn on the raspberry so I want to find a true solution to this problem.

Do you have any idea or do you need more info ?

As stated above, I use a specific image given by the turtlebot documentation (look like the server version,only a terminal, and raspi-config is not available). So to connect to a Wifi network, i have to go in etc/netplan and write the SSiD/password in the 50-cloud-init.yaml file before to reboot. It works well to connect on my phone AP and my office WIFI but i prefer to precise it because it might be the problem.

Thank you very much for any help provided !

Edit: I may be understood something. When turned on the Turtlebot try to connect to internet to set the date/time so it don't connect to my router because there is no internet but to my phone AP. I don't always have internet access with my phone AP but when I ... (more)

edit retag flag offensive reopen merge delete

Closed for the following reason the question is answered, right answer was accepted by learn2learn
close date 2023-03-07 12:39:05.072133

Comments

you can set the time and date using the sudo timedatectl <command>

can you add the 50-cloud-init.yaml in your question? You can remove the password. But your password in the file should be inside this : " " You might also need to do sudo netplan generate and sudo netplan apply.

aarsh_t gravatar image aarsh_t  ( 2022-06-10 04:22:52 -0500 )edit

Thank you for your answer!

The 50-cloud-init.yaml :

# This file is generated from information provided by the datasource.  Changes
# to it will not persist across an instance reboot.  To disable cloud-init's
# network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      dhcp4: yes
      dhcp6: yes
      optional: true
  wifis:
    wlan0:
      dhcp4: yes
      dhcp6: yes
      access-points:
        TURTLEBOT:
          password: "my_password"

I used the two netplan command and reboot and nothing change, it always refuse to connect directly to the router, it needs the phone AP

learn2learn gravatar image learn2learn  ( 2022-06-10 04:36:43 -0500 )edit

Unfortunately, I did not had the 50-cloud-init.yaml So I added my wifi details in the /etc/wpa_supplicant/wpa_supplicant.conf

It looks like this, You can also try with this method.

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=FR

network={
                ssid="TP-Link-----"
                psk="your_password"
                key_mgmt=WPA-PSK
}
aarsh_t gravatar image aarsh_t  ( 2022-06-10 09:40:40 -0500 )edit

Could this be the issue?

# This file is generated from information provided by the datasource.  Changes
# to it will not persist across an instance reboot.  To disable cloud-init's
# network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}

As for how to fix this. Simply said, this isn't a ROS problem. I get why you posted it here, don't get me wrong. However, your actual question is "I want to connect a Raspberry PI running Ubuntu 20.04 server to my router". It might be easier to simply google "raspberry pi ubuntu 20.04 server connect to wifi" and find a tutorial to follow. As I said, I get why you posted it here, but googling it as a problem that's separated from ROS might give you a better answer.

Joe28965 gravatar image Joe28965  ( 2022-06-13 04:55:05 -0500 )edit

Unfortunately, I tried to add /etc/wpa_supplicant/wpa_supplicant.conf file but it didn't change anything and I also tried to create the /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg file and it didn't works too.

In fact Joe, I first posted this question on the raspberry forum and didn't find answer. But I will follow your advice and try on ubuntu forum too. I followed differents tutorials but didn't change anything, it works but only if i use my phone AP as a relay to my router

learn2learn gravatar image learn2learn  ( 2022-06-13 07:56:02 -0500 )edit
1

I asked on this forum : French Ubuntu Forum: My topic Sorry it's in French but just follow the step of this link (in english):

In case the Raspberry Pi and your wifi router uses different WiFi channel, this could happen. Please try setting your country code in the /etc/default/crda file as below. By default the REGDOMAIN is empty.

REGDOMAIN=US

learn2learn gravatar image learn2learn  ( 2022-06-14 07:43:38 -0500 )edit

hello, did you managed to solve this problem? mind share it with me?

I did all below, it still didn't work for me.

  1. set the 50-cloud-init.yaml, generate and apply netplan, reboot
  2. added wpa_supplicant.conf and edit accordingly
  3. created 99-disable-network-config,cfg and edit accordingly
  4. change the region in /etc/default/crda
  5. couldn't access iwconfig, unable to install as there's no internet connection
  6. tried to connect RPi with network cable - didn't detect any network connection, I've tried to connect the network cable to another PC port, it does give internet connection
  7. USB tethering - I'm not sure whether the cable has a problem or what, it didn't detect to my phone, and the rasp pi sometimes auto shutdown when the cable is attached to the usb port

highly appreciated if someone could help me urgent!

AqilahAD gravatar image AqilahAD  ( 2023-03-06 17:17:39 -0500 )edit

Hello,

I managed to connect my Tb3 to the network by changing the region but it seems that you already tried so I don't know the solution ...

Which OS did you install ?

learn2learn gravatar image learn2learn  ( 2023-03-07 12:34:32 -0500 )edit