Cloning Beaglebone

Hi everyone

I am currently making my own clone of BeagleBone in order to run the default image.
Looking more closely to the design I would like to ask some questions:

  1. Lets say that I have the PCB board ready and it is time to solder the components,
    Do I need the 24C256 eeprom in order to boot the new custom beaglebone with the default image?

  2. Do I need to program devices before soldering them on the board? For example, do I need to program the EEPROM and then solder it?

  3. Does the AM3359 is ready from the factory for soldering or I have to do smt first?

Thanks in advance

See below.

Gerald

Hi everyone

I am currently making my own clone of BeagleBone in order to run the default image.
Looking more closely to the design I would like to ask some questions:

  1. Lets say that I have the PCB board ready and it is time to solder the components,
    Do I need the 24C256 eeprom in order to boot the new custom beaglebone with the default image?

Yes.

  1. Do I need to program devices before soldering them on the board? For example, do I need to program the EEPROM and then solder it?

I don’t know. Depends on how you designed your clone. If WP is disabled or can be disabled, then no. We program it on the board using UBoot.

  1. Does the AM3359 is ready from the factory for soldering or I have to do smt first?

I am not sure what you are saying. It is a SMT device and has to be mounted using a pick and place machine after you have applied the solder paste to the pads using the stencil you had made.

hi Gerald and thanks

what exactly do you mean that you are programming via u-boot?
i know that the u-boot has the enviromental variables for booting and gives the control to the kernel (uImage)

Here is my version:

1) 24C256 eeprom - you don't need it unless you use some fancy
Angsrtom features. The CPU itself does not need it

2) Preprogram devices before soldering - NO, you don't need it! All
software is booted from a SD card

3) No need for SMT. The CPU comes with solder balls on it. You just
need a stencil and a oven.

You boot to UBoot over the uSD card. Then you send commands over the serial port to write to the EEPROM by address with the data you want programmed into the EEPROM. You do I2C write commands.

Gerald

If the so called 'linux kernel' is fancy, then yes, you need the eeprom. Technically you need it for mlo/uboot as well since it will do some voltage setting based on the eeprom.

To Gerald:

So you are saying that the default image of Angstrom in the sd card will do the job…?
So i dont have to program smt

thanks again

To Maxim:

Hi maxim and thank you, as i said I am planning to make a basic copy of the beaglebone, only with the memory, sd card, power management and the UART0_TX & UART0_RX to communicate with the processor, just to see that everything is running…
So my concern is if everything will boot up just from the image on the default image without any previous programming of the devices (basically the eeprom)…

I do not get this :

If the so called ‘linux kernel’ is fancy, then yes, you need the eeprom. Technically you need it for mlo/uboot as well >since it will do some voltage setting based on the eeprom.

Why the drivers of the power management wont be sufficient?

Basically the objective is to run ubuntu and android, but in the first face i would like to run the default image of angstrom.

I do not get this :

If the so called ‘linux kernel’ is fancy, then yes, you need the eeprom. Technically you need it for mlo/uboot as well >since it will do some voltage setting based on the eeprom.

Why the drivers of the power management wont be sufficient?

Basically the objective is to run ubuntu and android, but as a first step i would like to run the default image of angstrom.

Run whatever you like. But, if you are going to do a clone, that means everything is the same as the board being cloned. Otherwise it is just a board with some level of compatibility, how much is up to you.

What I am saying is solder it on he board and talk to it via the serial port. No need to program it before you solder it on the board.

Gerald

Ok i got it

thanks again

Card detect pin?

i used sd card connector without Card Detect, but in my design i pullup pin EMU4/GPIO0_6 with 10k resistor… (default card allway connect). it is same beagglebone schematic,

i attach logfile of putty follow this post,…

2012/7/6 Maxim Podbereznyy <lisarden@gmail.com>

putty.log (16.5 KB)

Hi!

I’m also sort of replicating the BB.
When connecting the board to the PC through the miniUSB i get two interfaces:

/dev/ttyUSB0
/dev/ttyUSB1

The board console seems to be /dev/ttyUSB1.

If I use an SD card with the last Angstrom image:

U-Boot SPL 2013.04-dirty (Jul 10 2013 - 14:02:53)
Incorrect magic number (0xffffffff) in EEPROM
Could not get board ID.
Unknown board, assuming Beaglebone LT/Black.

and it gets stuck there.

I thought it might be a hardware issue so I checked the test point voltages and all but TP3 seem to be fine. TP3 is about -15mV (when it should be around 500 mV in the original BB).

Any idea/suggestion/comment?
Thanks!

DDR3 is dead

Is your board with DDR3 or DDR2?

Beaglebone LT/Black has DDR3, so if your board is with DDR2 then “Unknown board, assuming Beaglebone LT/Black” means that AM335x DRAM controller is configured for DDR3 memory.

You can use the Flasher because it does not care what’s written to the EEPROM. However all others has to be functional. I guess your DDR3 is dead because SPL is loaded into the SRAM while u-boot is loaded into DDR3

Your answer is right ^^^^

So you 'cloned' a BB, did you also set the internal eeprom id?
Probally not.. So rebuild u-boot and bypass this check, for what
you've actually installed on the board for memory.

http://git.denx.de/?p=u-boot.git;a=blob;f=board/ti/am335x/board.c;hb=HEAD#l307

Regards,

Robert,

the official flasher image from CCO takes care of an empty EEPROM

Yeap it does.. Well assuming you have ddr3 and cloned the bbb...
However if he cloned the older BB, (he just mentions the BB) that
script with ddr2 is probably not a good idea..

Regards,

Thanks for your answers guys.

It’s actually DDR2. It’s a BeagleBone (white) copy.