Skip to main content

[LEGO nxt] Install the Enhanced NXT firmware and Upload the OSEK excutable file with Ubuntu 64bits 14.04 in 2015

This tutorial is referred from Install the Enhanced NXT firmware on NXT.
I think this is the critical part to capture the idea from the tutorial for Windows.

I have tried many ways to conquer the problem of libnxt3.0, however, I still have some problems on the compilation of fwflash or something else.
Though the tutorial for Windows is doable, my preference is to build up everything with Linux environment.
Fortunately, I notice that NxTTool in the tutorial for Windows is really powerful. We can handle the firmware updating by using NxTTool in Linux as well!

I also refer to this Japanese Blog, which inspire me a lot.
As usual, install the required packages:
sudo apt-get install libusb-dev:i386 libusb-0.1-4 subversion fpc 
Please note, here is the case for 64bits user that I change libusb-dev to libusb-dev:i386 comparing to the original tutorial.

Instead of using libnxt to do the uploading, here I follow that JP Blog to get the latest version of bricxcc: (The url in blog is not available any more.)
$svn co https://bricxcc.svn.sourceforge.net/svnroot/bricxcc/ bricxcc_new
or download from here (1.0.1.0):
http://sourceforge.net/projects/bricxcc/files/bricxcc_source/bricxcc%203.3.7.19/bricxcc_src_33719.zip/download
$cd bricxcc_new
$make -f ./NeXTTool.mak  
And go to /usr/bin to make an alias. 
sudo ln -s ~/development/nxtOSEK/bricxcc-code/nexttool nextool
If you miss ppc386, please download it:
wget http://freefr.dl.sourceforge.net/project/freepascal/Linux/2.6.4/fpc-2.6.4.i386-linux.tar

To test your NxTTool, please use the following command:
sudo nextool /COM=usb -getname
NXT01

Then download the enhanced version of NxT firmware and store with NxTTool:
$wget http://bricxcc.sourceforge.net/lms_arm_jch.zip

To install the firmware, type the command below, where “lms_arm_nbcnxc_1xx.rfw” is the filename that you downloaded previously.
For example:
sudo nextool /COM=usb -firmware=lms_arm_nbcnxc_128.rfw 
(This tool should be built in bricxcc-code.)
sudo nextool /COM=usb -versions

Protocol version = 1.124
Firmware version = 1.xx

Then now you can go back to the OSEK build tree which is mentioned in the previous article:
sudo nextool /COM=usb -download=helloworld/helloworld_OSEK.rxe
After all, you can compile a specific OSEK example and execute:
sudo nextool /COM=usb -download=RMS.rxe
Then you can use NxT standard operations to open the file and see the LOGO and example as following figures:




Comments

Popular posts from this blog

RSB+RTEMS 5/6 with QEMU-SMP (ARM realview_pbx_a9_qemu as example)

Since I got a request regarding this blog  written in 2016, summarizing again the complete flow with the latest version of RTEMS could be a good idea. Prepare a suitable workspace according to the adopted operating system on your host ( https://docs.rtems.org/branches/master/user/hosts/index.html ):  sudo apt-get build-dep build-essential gcc-defaults g++ gdb git unzip pax bison flex texinfo unzip python3-dev libpython-dev libncurses5-dev zlib1g-dev Checkout RSB and build: git clone git://git.rtems.org/rtems-source-builder.git rsb change directory to rsb/rtems/ and type ../source-builder/sb-set-builder --prefix=<the path you like to store the built toolchains> <the name of bsp> For example, to use QEMU, I need toolchains for ARM, so: ../source-builder/sb-set-builder --prefix=/home/kh.chen/respository/build/. 6/rtems-arm This will take a while. Please ensure your connection is reliable. Add the built folder into your PATH. For example, you can add one line in ~/.bas...

[ubuntu] Removing the instance/package which is not fully installed from apt-get

When I'm installing g77-3.4 for pgplot, I trivially use dkpg to install it. However, g77-3.4-doc is not able to fully installed. And I stuck for this kind of error due to the broken packages (refer to here ): dpkg: error processing realplayer (--configure/--purge/--remove): (Whatever messages) Errors were encountered while processing: g77-3.4-doc cd /var/lib/dpkg/info sudo rm g77-3.4-doc* sudo dpkg --remove --force-remove-reinstreq g77-3.4-doc Hmm, now apt-get works well again. https://www.youtube.com/watch?v=S9HJ-iAzf3k

[RASP] VirtualBox Raspberry Pi debuging

This article is for the perspective that planning to debug Raspberry Pi connected to (Guest) Ubuntu Virtualbox with USBtoUART and Screen/terminal. There are two important issues that you may face: You cannot detect USB devices: You probably have a permission issue on your Virtual box. Add your user ID to group vboxusers with this command: sudo usermod -a -G vboxusers $USER , log off, log on and try again. http://askubuntu.com/questions/481693/virtualbox-usb-add-device-filter-does-not-work-under-14-04 You cannot listen the ttyUSB0: Your permission of (guest) account should be feasible to the ttyUSB0: sudo gedit /etc/group goto line... dialout:x:20: add your "username" dialout:x:20:username http://askubuntu.com/questions/40959/how-do-i-connect-to-tty-com-dev-ttyusb0 After that, then you can detect the plug-in usb on-the-fly or before open the virtual machine. Then, screen /dev/ttyUSB0 115200 (DON"T FORGET TO INSTALL VIRTUALBOX GUEST ADDITION PAC...