Is it possible to use BeagleBone Blue without an internet connection?

I’ve never used BeagleBone’s before and I work in a lab with no internet connection, trying to get started with BeagleBone Blue boards for a project. The lab has Windows 10 computers, USB cables, 12V adapters, SD card readers, and an external CD drive. I have access to another facility with a secure internet connection for downloading and I can use an external CD drive to transfer files. I thought I could download everything off of the secure connection, transfer to the lab, and install but I’m having problems. When I tried to run the executable to install the Windows drivers, it failed because of no connection. Also I tried to install Chrome, required for the browsing the web server running on the board, and it also failed. I was able to install Putty and connect using an SSH terminal (192.168.7.2, debian, temppwd). But it didn’t look like their was anything loaded. I found a bin folder in the root directory that was empty.

The Getting Started instructions that came with the board says to connect the board to a computer with a USB cable and then connect to the internet. I obviously can’t do that and I’m beginning to wonder if these boards will work at all without an internet connection. I hoping someone has a clever solution for me to work with these limitations.

Are you allowed to set them up in the internet-connected lab and then take them to the airgapped area ?

The default install is Debian and includes quite a lot. They’re just isn’t anything in your home directory.

As with everything it’s much easier with internet, but you can copy files to a cdr and then load them on the BB via your host computer that you SSH from. It’s a pain but I’ve done it. Dependency management is hell, of course. As you’ve seen so far, you don’t need windows drivers, so you should be pretty good.

Not sure what kind of air gapped network lets you just bring in images willy-nilly, but you seem to have gotten around that so far, so look for bb images which already have whatever you want. There is one with a graphical environment pre-installed, for example.

Good luck. Life is always better when you can apt-get.

J

Unfortunately, I’m not allowed to connect anything to the secure network. I’m only allowed to download and write to an external CD drive. I’m working on getting permission for limited internet access in the lab, where I can temporarily connect for updates only, no browsing. I believe I’ll have a chance to try it out this coming week.

I think you are correct about the drivers, I probably don’t need them. Reading through the Getting Started guide, Step 2: Enable a network connection says that operation system drivers won’t be necessary with the latest images. I think the image that came with the BBone Blue is recent enough.

As I mentioned, I can SSH using PuTTy into the BBone using the BBone wireless. I haven’t tried WinSCP yet but I’ll try to that on the lab computers as well. I was able to get a helloworld program working:

#include <stdio.h>
main(){
printf(“hello world”);
}

Ultimately, I want to use the BBone Blue to drive some servos with PWM signals. I’m search for c program examples to toggle the onboard LEDs and use the servo motor pins.

Look for the rc_ commands. There are a whole bunch of them in your path somewhere which test the BB blue features.

rc_test_drivers is one of them. There are others. You can probably find a useful one and look at its source to get ideas on how to do some of what you want. God help you if you need to mess around with device tree or uboot overlays, there is no reliable information or support on that for the Blue anywhere.

J

Here’s where I’m at now:

I can’t compile programs with rc libraries. I was trying to use some the examples from strawsondesign.com and getting the following error:
fatal error: rc/led.h: no such file or directory

I was concerned about this because it doesn’t look like there are any files or directories loaded on the BeagleBone Blue. When I logged on initially with SSH, I just saw a “bin” directory with no files it in. It seem like I need the librobotcontrol package at a minimum to run these examples. The Installation section of the strawsondesign.com manual says that the correct images should have the librobotcontrol packages pre-installed. I used cat /etc/dogtag to figure out what version I have.

cat /etc/dogtag
BeagleBone.org Debian Image 2017-04-09

The recommended version is 2018-10-07 BeagleBone Blue Flasher Image (checksum). My plan is to try and get this image loaded using Etcher, which hopefully works with Windows 10. If this doesn’t work or doesn’t have the librobotcontrol directories than I’ll try to install librobotcontrol from the github repository manually. Manually installation doesn’t look straight forward as I had hoped. I’m guessing that I have to download on the files from the repository (https://github.com/StrawsonDesign/librobotcontrol) on to a CD, transfer everything to the BBone Blue, and run the install.sh script.

Here’s where I’m at now:

I can’t compile programs with rc libraries. I was trying to use some the examples from strawsondesign.com and getting the following error:
fatal error: rc/led.h: no such file or directory

I was concerned about this because it doesn’t look like there are any files or directories loaded on the BeagleBone Blue. When I logged on initially with SSH, I just saw a “bin” directory with no files it in.

When that “bin” directory exists in the user home, it get’s auto-added to the $PATH variable, it’s empty because, that’s your easy place to copy bin’s…

It seem like I need the librobotcontrol package at a minimum to run these examples. The Installation section of the strawsondesign.com manual says that the correct images should have the librobotcontrol packages pre-installed. I used cat /etc/dogtag to figure out what version I have.

cat /etc/dogtag
BeagleBone.org Debian Image 2017-04-09

The recommended version is 2018-10-07 BeagleBone Blue Flasher Image (checksum). My plan is to try and get this image loaded using Etcher, which hopefully works with Windows 10. If this doesn’t work or doesn’t have the librobotcontrol directories than I’ll try to install librobotcontrol from the github repository manually. Manually installation doesn’t look straight forward as I had hoped. I’m guessing that I have to download on the files from the repository (https://github.com/StrawsonDesign/librobotcontrol) on to a CD, transfer everything to the BBone Blue, and run the install.sh script.

All those projects and the librobotcontrol git repo is available in the default 2018-10-07 image…

Regards,

I appreciate the help so far everyone. I’ve made a little more progress, probably passed the internet access challenge, but I still need help.

I had trouble getting compression/image writing utilities on the lab computers because the executables required internet access. However, I was able to load the img.xz file onto a Mac in the lab, unarchive the contents, and write to a SD card using the disk utility.

I booted from the SD card by holding the boot button and verified that I have the latest version 2018-10-07. I also tested the functionality with rc_test_drivers, everything PASSED, Robot Control Library Version 1.0.3.

I was able to run the rc_blink program but when I tried to run rc_test_servos -c 1 -p 0.0, I get the following errors:
ERROR: in rc_pru_shared_mem_ptr could not open /dev/mem: Permission denied
Need to be root to access PRU shared memory
ERROR in rc_servo_init, failed to map shared memory pointer

I tried to change directory to root, but I don’t know the password (temppwd,root,debian don’t work). I was also trying to find where these rc examples were located. I found the rc_project_template here: /usr/share/robotcontrol/rc_project_template. I’m guessing that the rc examples are in the root directory or I’m not allowed to see them.

sudo rc_test_servos -c 1 -p 0.0

Regards,

Thanks. I was able to login as root by logging in as debian and then entering:

sudo su

then using the password temppwd.

The rc examples work now but I still don’t know where they are located.

They are installed to /usr/bin/ (prefixed with rc_*)

Regards,

i found the examples using

find -iname “rc_test_servos.c”

/opt/source/librobotcontrol/examples/src/

I’m new to all this so and the feedback has been helpful.