init
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| init [2011/12/26 14:41] – dag | init [2013/07/31 21:28] (current) – Change according to Sven Neuhaus sec | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ====== **This page is contains the current release of our 28C3 firmware. Feel free to try it and give us feedback if you discover bugs in the firmware or these instructions** ====== | + | ====== ** This page contains the current release of our r0ket firmware |
| - | ====== How flash your roket? ====== | + | ====== How to flash your r0ket? ====== |
| - | <note tip> | + | |
| - | <note tip>We will bring a device to the 28C3 that will do the steps below for you. If you can, please try to flash it your self. This helps to reduce the waiting time on congress :)</ | + | <note tip> |
| This procedure also brings your r0ket back into shape in case you " | This procedure also brings your r0ket back into shape in case you " | ||
| Line 14: | Line 14: | ||
| | 3 | Improved r_player l0dable | | | 3 | Improved r_player l0dable | | ||
| | 4 | Improved fahrplan, mesh, fonts | | | 4 | Improved fahrplan, mesh, fonts | | ||
| + | | 5 | Fixed mesh | | ||
| + | | 6 | Actually pushed the mesh changes, improved game l0dable | | ||
| + | | 15 | numerous small bugfixes | | ||
| + | ===== Linux ===== | ||
| - | + | | |
| - | + | ||
| - | ===== Linux ===== | + | |
| - | | + | |
| - Unpack the archive with your favourite tool. | - Unpack the archive with your favourite tool. | ||
| - Turn r0ket off (switch position up). | - Turn r0ket off (switch position up). | ||
| Line 29: | Line 30: | ||
| - The r0ket will pose as a thumb drive. Check that you have a new volume with a ' | - The r0ket will pose as a thumb drive. Check that you have a new volume with a ' | ||
| - As a normal user run the following command in a command window: | - As a normal user run the following command in a command window: | ||
| - | - cd r0ket-firmware-28c3-r4 && ./ | + | - cd r0ket-firmware-28c3-r6 && ./ |
| - The script should tell you, that everything went fine. | - The script should tell you, that everything went fine. | ||
| - Turn r0ket off. | - Turn r0ket off. | ||
| Line 57: | Line 58: | ||
| ===== Windows ===== | ===== Windows ===== | ||
| - | - Download the firmware here: {{: | + | - Download the firmware here: {{: |
| - Turn r0ket off (switch position up) | - Turn r0ket off (switch position up) | ||
| - Plug micro-USB cable into r0ket and Computer | - Plug micro-USB cable into r0ket and Computer | ||
| Line 80: | Line 81: | ||
| ===== Mac ===== | ===== Mac ===== | ||
| - | (preview) | ||
| - | ===== Linux ===== | ||
| - | - Download the firmware pack here: {{: | ||
| - | - Unpack the archive with your favourite tool. | ||
| - | - Turn r0ket off (switch position up). | ||
| - | - Plug micro-USB cable into r0ket and Computer. | ||
| - | - Hold joystick to the left. | ||
| - | - Turn r0ket on (switch position down). | ||
| - | - Release joystick. | ||
| - | - Wait about 30 seconds. | ||
| - | - The r0ket will pose as a thumb drive. Check that you have a new volume with a ' | ||
| - | - As a normal user run the following command in a command window: | ||
| - | - cd < | ||
| - | - cp firmware.bin $(diskutil info $(system_profiler SPUSBDataType | grep -A10 "NXP LPC13XX IFLASH" | ||
| - | - Turn r0ket off. | ||
| - | - Hold joystick down towards the battery connector. | ||
| - | - Turn r0ket on. | ||
| - | - As above look for a new volume on your system. Mount the r0ket if you don't get one. | ||
| - | - <note important> | ||
| - | - Make a copy of the following files to your computer: R0KET.CFG, NICK.CFG, L0NICK.CFG, FONT.CFG, pubx.key, puby.key and priv.key | ||
| - | - Don't worry if some of these files are missing. Your r0ket will still work. | ||
| - | - Now unmount the r0ket. In a terminal run the following commands: | ||
| - | - myroket=$(system_profiler SPUSBDataType | grep -A10 " | ||
| - | - sudo umount $myroket | ||
| - | - sudo dd if=dataflash.img of=$myroket | ||
| - | - make absolutely sure that you enter the correct device in the line above, or you can damage your computer. | ||
| - | - Example: < | ||
| - | - < | ||
| - | - This command may take a minute or two. | ||
| - | - Turn off r0ket and back on, while pressing the joystick towards the battery connector. | ||
| - | - Copy the files from step 16 back to the r0ket. | ||
| + | - Download the firmware pack here: {{: | ||
| + | - Download and compile keys.c from https:// | ||
| + | - Write the following script to a file. Extract the firmware. Execute the script with the directory containing the new firmware as parameter. The script will guide you through the process. | ||
| + | - Example | ||
| + | - < | ||
| + | FlashScript UNSAFE (user errors might cause loss of data and corruption) | ||
| + | |||
| + | < | ||
| + | #!/bin/bash | ||
| + | |||
| + | myTmpdir=/ | ||
| + | myCalled=" | ||
| + | |||
| + | function ERROR { | ||
| + | echo ERROR $@ | ||
| + | } | ||
| + | |||
| + | function DEBUG { | ||
| + | echo DEBUG $@ | ||
| + | } | ||
| + | |||
| + | function PRINT { | ||
| + | echo $@ | ||
| + | } | ||
| + | |||
| + | function DIE { | ||
| + | echo DIED $@ | ||
| + | exit 1 | ||
| + | } | ||
| + | |||
| + | function flashFirmware { | ||
| + | myMount=" | ||
| + | if [ -z " | ||
| + | DIE "Could not flash firmware. Could not find mountpoint $myMount" | ||
| + | fi | ||
| + | cp -v " | ||
| + | sleep 2 | ||
| + | sync | ||
| + | sleep 2 | ||
| + | myroket="/ | ||
| + | PRINT Unmounting the rocket $myroket. Please enter your password: | ||
| + | sudo umount " | ||
| + | return | ||
| - | We don't have instructions for Mac yet, so for now we recommend another option: Installing Ubuntu Linux in a VirtualBox: | + | } |
| - | * [[http://www.tuaw.com/2009/09/07/how-to-set-up-ubuntu-linux-on-a-mac-its-easy-and-free/|Article: How to set up Ubuntu Linux on a Mac -- it's easy and free]] | + | |
| + | function flashDataflash { | ||
| + | myMount=" | ||
| + | if [ -z " | ||
| + | DIE "Could not flash dataflash. Could not find mount $myMount" | ||
| + | fi | ||
| + | cd " | ||
| + | pwd | ||
| + | cp -v R0KET.CFG NICK.CFG L0NICK.CFG FONT.CFG pubx.key puby.key priv.key $myTmpdir/backup/ | ||
| + | cd $myTmpdir | ||
| + | sleep 5 | ||
| + | #PRINT " | ||
| + | #read | ||
| + | myroket=" | ||
| + | PRINT Unmounting the rocket $myroket. Please enter your password: | ||
| + | sudo umount $myroket | ||
| + | PRINT Flashing the rocket. Please enter your password: | ||
| + | cd " | ||
| + | echo sudo dd if=$FIRMWARE/ | ||
| + | sudo dd if=$FIRMWARE/ | ||
| + | sync | ||
| + | sleep 3 | ||
| + | sudo mount -t msdos $myroket $myTmpdir/ | ||
| + | cd $myTmpdir/ | ||
| + | cp -v * $myTmpdir/ | ||
| + | ls pubx.key puby.key priv.key || ( echo " | ||
| + | cd /tmp | ||
| + | PRINT Unmounting the rocket $myroket. Please enter your password: | ||
| + | sudo umount $myroket | ||
| + | |||
| + | } | ||
| + | |||
| + | function cleanUp { | ||
| + | sudo rm -rf / | ||
| + | } | ||
| + | |||
| + | |||
| + | function init { | ||
| + | mkdir | ||
| + | mkdir | ||
| + | mkdir | ||
| + | |||
| + | } | ||
| + | |||
| + | function main { | ||
| + | init | ||
| + | if [ -n " | ||
| + | if [ -e "$@/firmware.bin" | ||
| + | FIRMWARE=$@ | ||
| + | FIRMWAREBIN=$@/ | ||
| + | else | ||
| + | DIE $@/ | ||
| + | fi | ||
| + | else | ||
| + | DIE expected the path to the directory with the new firmware as parameter | ||
| + | fi | ||
| + | PRINT " | ||
| + | PRINT " | ||
| + | read | ||
| + | sleep 10 | ||
| + | flashFirmware | ||
| + | #PRINT " | ||
| + | #read | ||
| + | PRINT " | ||
| + | PRINT " | ||
| + | read | ||
| + | flashDataflash | ||
| + | |||
| + | cleanUp | ||
| + | |||
| + | |||
| + | } | ||
| + | |||
| + | main $@ | ||
| + | </ | ||
| ===== Updating ===== | ===== Updating ===== | ||
| + | |||
| If completed the steps above once, you can update your dataflash by copying the files from the ' | If completed the steps above once, you can update your dataflash by copying the files from the ' | ||
init.1324906884.txt.gz · Last modified: by dag
