Dangerous Prototypes

In development => Project logs => Topic started by: fcobcn on February 05, 2012, 08:44:52 pm

Title: Cygni free build
Post by: fcobcn on February 05, 2012, 08:44:52 pm
Today I finished populating my free Cygni PCB (only missing the smd pinheader)
Also managed to compile the complete tool chain on my mac machine.
At the moment I'm looking on how to burn the bootlader via UART.

[attachment=0]

Big thanks to Brian and Ian!
Title: Re: Cygni free build
Post by: ian on February 06, 2012, 08:54:28 am
Nice work, great looking board.
Title: Re: Cygni free build
Post by: brian on February 06, 2012, 02:28:39 pm
Nice! You will only get one shot without a JTAG to burn the bootloader. The bootloader is bl.bin ...

https://github.com/teholabs/cygniExampl ... bootloader (https://github.com/teholabs/cygniExamples/tree/master/extras/bootloader)

Let me know if you need any help.
Title: Re: Cygni free build
Post by: fcobcn on February 06, 2012, 04:16:38 pm
Thank you guys!
Brian, will give it try, otherwise I will have to see if I can use my Bus Pirate or wait until I finish populating a Bus Blaster V4.
Those pin headers have been difficult to find...
One important thing, the missing piece to get everything working easily on mac was this:
https://github.com/jsnyder/arm-eabi-toolchain (https://github.com/jsnyder/arm-eabi-toolchain)
Still need to do more tests but all seem to be working good.
The bigest trouble now are my poor programming skills!
Title: Re: Cygni free build
Post by: fcobcn on February 06, 2012, 06:13:43 pm
Managed to upload the bootlader via UART and compile blinky with no trouble.
[attachment=0]
[attachment=1]
Unfortunately make flash is not working at the moment, I'm getting error messages.
Will report back as soon as I have blinky loaded...
Title: Re: Cygni free build
Post by: brian on February 06, 2012, 10:08:49 pm
There is a page for MAC in the docs linked to under getting started:

http://teholabs.com/docs/eridani:userstart:mactoolchain (http://teholabs.com/docs/eridani:userstart:mactoolchain)

As for your errors, I don't see any in the terminal. You have to have programs linked to 0x1000 when you use the board with the bootloader. Other than that it should be no issue. If you flashed bl.bin alright then no flash after the fact will override it without a JTAG as it is self protected.

The bootloader that comes on chip is write once.

As far as pin headers just get 36 pin breakaway 0.1" headers and cut them. You may need to wiggle them into place as you have a Rev 1 board and the drill was a bit too small on that revision for headers in tolerance.
Title: Re: Cygni free build
Post by: fcobcn on February 06, 2012, 10:32:39 pm
Thanks Brian
I followed the mac guide on your site, in fact, yesterday I added two missing dependencies to it  : )
I'm stuck here at the moment:

Code: [Select]
B1:blinky fco$ make flash
arm-none-eabi-objcopy -Obinary blinky.elf blinky.bin
./do_flash.pl blinky.bin
problem connecting to "127.0.0.1", port 4444: Connection refused at ./do_flash.pl line 20
make: *** [flash] Error 61
 
Why does it try to open a telnet connection?
Title: Re: Cygni free build
Post by: brian on February 07, 2012, 02:12:02 am
It tried to open a telnet connection to OpenOCD because the toolchainsettings file is still setup for using a JTAG.

https://github.com/teholabs/cygniExampl ... insettings (https://github.com/teholabs/cygniExamples/blob/master/toolchainsettings)

Pretend you are linux probably. So set serialprog = 1; windows = 0;

You should have already edited that file with the path to stellarisware I would have thought.
Title: Re: Cygni free build
Post by: fcobcn on February 07, 2012, 02:37:51 pm
Thanks Brian,
Setting serialprog to 1 did the trick, unfortunately while trying previously, I screwed up the bootloader, so it gets stalled while running the sflash command.
Looks like I will have to wait until I get my Bus Blaster working to continue learning on the cygni board.
Title: Re: Cygni free build
Post by: brian on February 08, 2012, 02:30:07 am
The bootloader if you wrote the one I published cannot over ride itself. You do have to make sure you enter it by having the correct pin held to GND on reset. On Cygni the pin is B3.

Also the board has a JTAG wait state issue.

It is documented here:

http://teholabs.com/docs/cygni:errata (http://teholabs.com/docs/cygni:errata)

Since you haven't attached the JTAG header your easy bet is to power off the board and power it back on. You may only reset it 3 times before it will lock otherwise. I don't know the cause of this issue but it effects only LM3S3N26. On this PCB LM3S3651 is not affected, and the same bootloader works on other Tempest devices. This makes me think it is an silicon erratum for this stepping.

( ! ) Fatal error: Uncaught exception 'Elk_Exception' with message 'Please try again. If you come back to this error screen, report the error to an administrator.' in /var/www/dangerousprototypes/forum/sources/database/Db-mysql.class.php on line 696
( ! ) Elk_Exception: Please try again. If you come back to this error screen, report the error to an administrator. in /var/www/dangerousprototypes/forum/sources/database/Db-mysql.class.php on line 696
Call Stack
#TimeMemoryFunctionLocation
10.01102088008session_write_close ( )...(null):0
20.01132219600ElkArte\sources\subs\SessionHandler\DatabaseHandler->write( )...(null):0
30.01132220376Database_MySQL->query( ).../DatabaseHandler.php:119
40.05502359112Database_MySQL->error( ).../Db-mysql.class.php:273