Can not log into BBB using SSH on initial boot

I did some searching, but did not locate a solution. if I missed the post, please let me know what it is. (Thanks)

I am trying to get my BBB up and running today, but I am having a login issue.

  • I downloaded and flashed the SD with:
  • Verified “OK”
  • Installed in my BBB
  • Connected the BBB to the router
  • inserted my USB power cable into the BBB, then the transformer
  • Switched the power to the transformer on
  • Blue lights flashing
  • Logged into my router and got the BBB’s IP address
  • Started Putty, set it up with the local IP address… saved it and clicked on “Open”
  • Text on screen appeared “Login as”
  • Entered “root”
  • Text on screen appeared "root@192.168.xx.xx’s Password
  • Left PW blank and hit enter
  • Text on screen appeared “Access Denied”

Thought… is SSH activated upon initial boot of BBB?
Do I need to access BBB through windows to set it up?

root has been disabled for a long time, use:

debian temppwd


1 Like

Thank you very much,
Let the fun begin! Basically purchased this for the Analog “Inputs” in my project.

Hello…I think you may have gotten the incorrect image from the


I think you are correct… no you are correct. I have both downloaded and saved in my Beaglebone folder on Windows. Even though it appears to be the wrong version, believe it or not I was able to get it up and running and actually access it. i am going to pull out another SD card and Flash it and try that tomorrow.
Thank you

Maybe I am a little confused here. I downloaded Flashed and installed:

AM5729 Debian 10.3 2020-04-06 4GB SD IoT
(The second image down on the “ latest firmware images” page.) The downloaded saved image is on the Windows hard drive as:

I cranked up the BBB, updated and upgraded all, changed the PW entered a simple Analog read script and ran it receiving the following error:

debian@beaglebone:~$ python
Traceback (most recent call last):
File “”, line 1, in
import Adafruit_BBIO.ADC as ADC
ImportError: No module named Adafruit_BBIO.ADC

I thought that the Adafruit_BBIO.ADC was part of the BBB flash? I went to Adafruit and went through the process of installing,but got the same error.

Of all the differnt images on that page which one would be the one I a looking for?

To give you an idea as to what the BBB is being set up to accomplish is to monitor my “Remotely located RV”. It wil monitor the RV’s main battery and SOLAR output voltage, various temperatures (DS18B20 sensors), humidity, and a motion sensor. The BBB will send an alert if one of the trigger points is met via text message. It will also update a Pi database at my home. Which image should I load?

import Adafruit_BBIO.ADC as ADC
from time import sleep
print "The Pin33 Voltage is: ",analogpin33Volts


If you are using the BBB and not the BBAI, please use the correct image. AM5729 is the chip on the BBAI.

Also, if you are using Python3, print statements are not the same in Python3.


P.S. Python3 script:

import Adafruit_BBIO.ADC as ADC
from time import sleep


analogPin33 = "P9_33"

while True:
    centertap =
    voltage = centertap * 1.8
    print("Voltage...: ", voltage)

That is for starters. Python3 for some reason, from what I have seen, keeps changing their formatted print functions and options/arguments within the print function.

Anyway, long story short…

Here is the correct image:

And I know this is boring but before running some simple source in Python3 for analog voltage or temperature or whatever, please sudo apt update && sudo apt upgrade your machine. OH! And…

The board will do a nightrider pattern, show all LEDs lit, and then power down. Once the board, w/ only the eMMC/Flasher version of the image, shuts down, you can then unplug and take the SD Card out. That should give you a fresh image on your eMMC storage. Um, if you need any other things answered, I will do my best to describe things to you but if it gets too complicated, I might have to allow for you to have some other sort answer. There are a ton of smarties around the globe that know about Linux,, and the computations available from the SiP and SoC (am335x) and other variants like the am5729 on the BBAI.

It will make fun easier. If you just want the flasher image, the image w/out SD Card capabilities, use this image and it will burn the contents of the SD Card onto your eMMC on the BBB: .


P.S. If you are using an analog device, like the TMP36 temperature sensor, RESISTORS! There should be no reason for your analog pin to go above 1.8 volts.

Also…some datasheets will show you what exact specs. you are working w/ currently w/ that specific sensor. Oh!

I just found my book w/ a TMP36 example:

// from "Programming the BeagleBone Black, (Monk 2014)."
// thermometer.js

var b = require('bonescript');

function readTemp() {
    b.analogRead("P9_39", displayTemp);

function displayTemp(reading) {
    var millivolts = reading.value * 1800;
    var tempC = (millivolts - 500) / 10;
    var tempF = (tempC * 9/5) + 32;
    console.log("Temp C = " + tempC + "\tTemp F = " + tempf);

setInterval(readTemp, 750);

That, when converted to Python3, should give some sort of calculations that are for Fahrenheit and Celsius every so often printed to the console.

Thanks Seth,

Last night I downloaded your suggested image. This morning I flashed the SD, installed it and booted the BBB. The chip on the BBB is the am33588ZCZ00.
Updated and upgraded.

During the Upgrade process I received the following:

136 upgraded, 1 newly installed, 0 to remove and 1 not upgraded.
Need to get 287 MB of archives.
After this operation, 99.1 MB of additional disk space will be used.
Do you want to continue? [Y/n] ^Y
debian@beaglebone:~$ ^C

I shutdown the BBB and rebooted

Ran the script (forgot the changes in 3, updated script to Python 3) and this is what I received (again). I have worked with the regular Pi and have one that has been running 24/7/365 for the last 2 years at home. in this case, “Don’t fix/upgrade something that is not broken”). So, no real issues when using the regular Pi, but this BBB is giving me a run for my money

debian@beaglebone:~$ python
Traceback (most recent call last):
  File "", line 1, in <module>
    import Adafruit_BBIO.ADC as ADC
ImportError: No module named Adafruit_BBIO.ADC

debian@beaglebone:~$ pip3 --version
pip 18.1 from /usr/lib/python3/dist-packages/pip (python 3.7)

i went to Adafruit and followed the BBIO directions with no change.

I just need to get past this " ```
No module named Adafruit_BBIO.ADC

 error, and I should be on my way

Thanks again,


Use python3. So, instead of python, use python3


P.S. Also, if you are using the SD Card image, there is a script to handle the inflating of the SD Card to its normal size in /opt/scripts/tools/ called

If you want, please share your /boot/uEnv.txt file and/or other logs.

Oh! Python3 and not Python. Python is python2 while Python3 is python3. Phew. Oh and this is a good source for software and other related ideas: GitHub - adafruit/adafruit-beaglebone-io-python: Adafruit's BeagleBone IO Python Library .

Hello @ElectronicsNut ,

Seth here. When you have time, please give the output of sudo /opt/scripts/tools/ .


P.S. I just tested my board w/ python3 w/ these items of interest:

uname -a: Linux beaglebone 4.19.94-ti-r64

cat /etc/dogtag: Debian Buster IoT Image 2020-04-06

And when I typed python3 in my console, I then received 3.7.3 and imported an Adafruit lib. into the interactive console for Python3. It worked! So, I think it is b/c you are using python instead of python3.

Hello @silver2row,

It is AMAZING, if you use the correct commands how things start to work properly. I am including the things you asked for, hope I got them all. It is kind of long. Thanks again.

Having issues with </>, does not always work. I will get it figured out. Only one section took in this post.

I am using the SD Card image as I will be saving data to the card also.

I ran the script without connecting the reference voltage to pin 33, and I did get a response. I will be using a voltage divider on each of the analog inputs to adjust the max input voltage to 1.8VDC.
Voltage…: 0.8259340703487397
Voltage…: 0.8457142889499665
Voltage…: 0.8580219805240631

debian@beaglebone:~$ uname -a
Linux beaglebone 4.19.94-ti-r42 #1buster SMP PREEMPT Tue Mar 31 19:38:29 UTC 2020 armv7l GNU/Linux

    debian@beaglebone:~$ cat /etc/dogtag Debian Buster IoT Image 2020-04-06

debian@beaglebone:~$ sudo /opt/scripts/tools/
[sudo] password for debian:
dogtag:[ Debian Buster IoT Image 2020-04-06]
bootloader:[microSD-(push-button)]:[/dev/mmcblk0]:[U-Boot 2019.04-00002-g07d5700e21]:[location: dd MBR]
bootloader:[eMMC-(default)]:[/dev/mmcblk1]:[U-Boot 2018.09-00002-g0b54a51eee]:[location: dd MBR]
UBOOT: Booted Device-Tree:[am335x-boneblack-uboot-univ.dts]
UBOOT: Loaded Overlay:[AM335X-PRU-RPROC-4-19-TI-00A0]
UBOOT: Loaded Overlay:[BB-ADC-00A0]
UBOOT: Loaded Overlay:[BB-BONE-eMMC1-01-00A0]
UBOOT: Loaded Overlay:[BB-HDMI-TDA998x-00A0]
/boot/uEnv.txt Settings:
pkg check: to individually upgrade run: [sudo apt install --only-upgrade ]
groups:[debian : debian adm kmem dialout cdrom floppy audio dip video plugdev users systemd-journal bluetooth netdev i2c gpio pwm eqep remoteproc admin spi iio docker tisdk weston-launch xenomai cloud9ide]
cmdline:[console=ttyO0,115200n8 bone_capemgr.uboot_capemgr_enabled=1 root=/dev/mmcblk0p1 ro rootfstype=ext4 rootwait coherent_pool=1M net.ifnames=0 lpj=1990656 rng_core.default_quality=100 quiet]
dmesg | grep remote
[ 56.975290] remoteproc remoteproc0: wkup_m3 is available
[ 57.029762] remoteproc remoteproc0: powering up wkup_m3
[ 57.029795] remoteproc remoteproc0: Booting fw image am335x-pm-firmware.elf, size 217168
[ 57.030080] remoteproc remoteproc0: remote processor wkup_m3 is now up
[ 59.310218] remoteproc remoteproc1: is available
[ 59.323750] remoteproc remoteproc2: is available
dmesg | grep pru
[ 59.310218] remoteproc remoteproc1: is available
[ 59.310414] pru-rproc PRU rproc node pru@4a334000 probed successfully
[ 59.323750] remoteproc remoteproc2: is available
[ 59.323911] pru-rproc PRU rproc node pru@4a338000 probed successfully
dmesg | grep pinctrl-single
[ 0.921432] pinctrl-single 44e10800.pinmux: 142 pins, size 568
dmesg | grep gpio-of-helper
[ 0.934649] gpio-of-helper ocp:cape-universal: ready
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

debian@beaglebone:~$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 215M 0 215M 0% /dev
tmpfs 49M 1.6M 47M 4% /run
/dev/mmcblk0p1 3.4G 1.9G 1.4G 60% /
tmpfs 242M 0 242M 0% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 242M 0 242M 0% /sys/fs/cgroup
tmpfs 49M 0 49M 0% /run/user/1000

debian@beaglebone:~$ nano /boot/uEnv.txt
###U-Boot fdt tweaks... (60000 = 384KB)
###U-Boot Overlays###

cmdline=coherent_pool=1M net.ifnames=0 lpj=1990656 rng_core.default_quality=100$

#In the event of edid real failures, uncomment this next line:
#cmdline=coherent_pool=1M net.ifnames=0 lpj=1990656 rng_core.default_quality=10$

##enable Generic eMMC Flasher:
##make sure, these tools are installed: dosfstools rsync

debian@beaglebone:~$ cat /proc/partitions
major minor  #blocks  name

 179        0   31166976 mmcblk0
 179        1    3682304 mmcblk0p1
 179        8    3735552 mmcblk1
 179        9    3731456 mmcblk1p1

Hello @ElectronicsNut ,

I found a fellow on the #beagle channel. he passed some good words to me once upon a time. Anyway…

You are going to maybe have trouble currently w/ your set up.

You have a partition on your eMMC still and one on your SD Card. Using the SD Cards are fine and dandy here but the eMMC bootloader, uboot?, takes the cake in which order two of the one are performed or something. Anyway…

You may want to update your eMMC to show the current bootloader for the current kernels and images.

You see in your ./ script output:

bootloader:[microSD-(push-button)]:[/dev/mmcblk0]:[U-Boot 2019.04-00002-g07d5700e21]:[location: dd MBR]
bootloader:[eMMC-(default)]:[/dev/mmcblk1]:[U-Boot 2018.09-00002-g0b54a51eee]:[location: dd MBR]

Well, microSD in this fashion is the correct one to use. The eMMC holds an older version that is taking control of which of the two to use (if that makes any sense).


P.S. Find a script to use either to erase the partition on the eMMC, a script for updating the bootloader on the eMMC, or install the same image on your eMMC.

Oh boy, this is going to be interesting. Wish I could just type in “Format C”, wait “Factory RESET” would be better, wishful thinking! I researched a few of the options and I am going to have to reread them about 10 times before they make any sense. I thought that I saw an option where I could edit a file and it would look at the SD card first and not go to eMMC. Tomorrow morning I will continue researching, along with a gallon of coffee.

Good morning @silver2row

Here it is… a rainy Monday morning. I did more research and came up with the following suggestion to disable eMMC on the BBB. Will read it a bunch more times before attempting the suggested changes. Saw that I need to boot from the SD or some major issues can pop up, like being unable to boot the BBB again. Time for more coffee

## Disabling the eMMC Memory

WARNING: Before you proceed ensure you have booted your Beaglebone Black off of the operating system on the microSD card. If you make the changes below (which disable the eMMC memory) to an operating system that is actually using the eMMC memory as its boot source, then very odd things will happen and the Beaglebone Black will eventually lock-up and become unbootable.

The process of disabling the eMMC memory is quite simple on later versions of the Beaglebone Black operating systems. All you need to do is edit the `uEnv.txt` file (use the command `nano /boot/uEnv.txt` as root). In this file you will see a line which states ...

... just uncomment this line ...
... and reboot the Beaglebone Black.

After the Beaglebone Black reboots (off the microSD card) the I/O lines used by the eMMC memory will be unused and you can then configure them to interface with OCP Devices.

Hello @ElectronicsNut ,

If you do not mind losing the info. on your eMMC, you can use the blkdiscard command.


u-boot will still boot of the eMMC, that command only disables the eMMC for the Linux Kernel…

Just install the latest version of u-boot to both the microSD and eMMC:

sudo apt update
sudo apt install bb-u-boot-am335x-evm
cd /opt/u-boot/bb-u-boot-am335x-evm/
sudo ./

The script will update both the eMMC and microsd. So make sure the eMMC is not disabled.


1 Like

Thanks @RobertCNelson ,
OK, I gave the following a try:

    sudo apt update
    sudo apt install bb-u-boot-am335x-evm
    cd /opt/u-boot/bb-u-boot-am335x-evm/
    sudo ./

After rebooting this is what I received (looks like it is still going to eMMC):

bootloader:[microSD-(push-button)]:[/dev/mmcblk0]:[U-Boot 2019.04-g72e2ec7]:[loc                                                                             ation: dd MBR]
bootloader:[eMMC-(default)]:[/dev/mmcblk1]:[U-Boot 2019.04-g72e2ec7]:[location:                                                                              dd MBR]

debian@beaglebone:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            214M     0  214M   0% /dev
tmpfs            49M  2.2M   47M   5% /run
/dev/mmcblk0p1  3.4G  2.1G  1.2G  65% /
tmpfs           242M     0  242M   0% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           242M     0  242M   0% /sys/fs/cgroup
tmpfs            49M     0   49M   0% /run/user/1000

Do i now need to disable UBOOT somewhere now? The good news is that the BBB rebooted and did not die like some of the other research I did.

Why? the version of u-boot between the microSD and eMMC is now the same… It is currently running off of the microSD based on your df-h print…


@RobertCNelson you are correct. I misread the df-h.
Thank you