Difference between revisions of "Ångström"

From Pandora Wiki
Jump to: navigation, search
(merged running linux from sd card)
m (Done Manually: a few words)
 
(79 intermediate revisions by 7 users not shown)
Line 1: Line 1:
== The following is the firmware page ==
+
'''Super Zaxxon''' is currently the official operating system for the Pandora based on [http://www.angstrom-distribution.org/ Ångström] Linux|Gnu. Super Zaxxon is a version upgrade system with frequent system-wide small releases. Compatibility is ensured as a basis of Super Zaxxon. Packages, often relying on their own environment, are self-contained within the [[Introduction_to_PNDs|PND]] format and available on [http://repo.openpandora.org/ a PND repo] separate from the system packages.
  
== Official firmware ==
+
== Offline full installation ==
  
=== General Notes ===
+
* For either method, you need a Pandora and an SD card.
 
 
* '''When the firmware is reinstalled, all personal files and settings stored on internal flash are DELETED (your PND applications and all data on your SD cards will not be touched). <br> Your Pandora will revert to it's default settings and show the first boot wizard on bootup.'''
 
 
* Remember that your Pandora will turn on as soon as a charger is connected. It's also not possible to completely power down a Pandora that's connected to an external power supply.
 
* Remember that your Pandora will turn on as soon as a charger is connected. It's also not possible to completely power down a Pandora that's connected to an external power supply.
 
* Even while charging, a Pandora can be rebooted, either by software (for example, during the installation process below), or with the reboot hotkey: Hold the Pandora button on the keyboard, and flick the power switch to the right.
 
* Even while charging, a Pandora can be rebooted, either by software (for example, during the installation process below), or with the reboot hotkey: Hold the Pandora button on the keyboard, and flick the power switch to the right.
 
* Do not connect an external power supply while the battery is removed.
 
* Do not connect an external power supply while the battery is removed.
  
=== Firmware Download ===
+
=== To '''[[NAND]]''' - internal storage ===
  
You can download the latest version of the official firmware here:
+
This replaces the original Super Zaxxon installation which came with your Pandora.
  
'''[http://openpandora.org/firmware/fullflash/SuperZaxxon155.zip Download firmware image of SuperZaxxon 1.55 (2013-07)]'''
+
'''When the operating system is (re-)installed, all personal files and settings stored on internal flash are DELETED (your PND applications and all data on your SD cards will not be touched). Your Pandora will revert to its default settings and show the first boot wizard on bootup.'''
  
In case you need them, you can download older firmware relases [http://openpandora.org/firmware/fullflash/ here].
+
Reflashing CAN solve some problems, but it's not the magical tool that can fix everything. You should always try to find another solution. Before reflashing, try the upgrade path below. You can get help at the [http://boards.openpandora.org/index.php?/forum/8-support/ Support Section at the boards].
  
This package includes all the files required for a full reflash. Please only use it if you really need to. Reflashing CAN solve some problems, but it's not the magical tool that can fix everything. Before reflashing, you should always try to find another solution. You can get help at the [http://boards.openpandora.org/index.php?/forum/8-support/ Support Section at the boards].
+
# You will need an SD card formatted with the FAT32 filesystem (default on Windows).
 
+
# Download the latest [http://openpandora.org/firmware/fullflash/ full-flash operating system zip].
=== Flash Process ===
+
# Extract the contents of the operating system zip file to the root (top level) directory of the SD card.
 
 
If you ever need to reflash the firmware: it's not a hard thing to do. Just be sure to follow the instructions carefully.
 
 
 
# You need an SD card formatted with the FAT32 filesystem (default on Windows). Extract the contents of the firmware .zip file to the root (top level) directory of that card.
 
 
# Make sure your Pandora is turned off (remove the battery in case it crashes or doesn't turn off by using normal means).
 
# Make sure your Pandora is turned off (remove the battery in case it crashes or doesn't turn off by using normal means).
# Insert the SD card into your Pandora's first slot (the one on the left, closer to headphone jack).
+
# Insert the SD card into your Pandora's first slot (the one on the left, which is closer to the headphone jack).
 
# Press and hold the right shoulder button ('R'), then turn the power on (if you removed the battery, insert it while holding 'R').
 
# Press and hold the right shoulder button ('R'), then turn the power on (if you removed the battery, insert it while holding 'R').
# A text menu should appear on screen. Switch to "boot from SD1" using the d-pad, and select this entry with either the 'B' or 'X' controller button.
+
# A text menu should appear on screen. Switch to "boot from SD1" using the D-pad, and select this entry with either the 'B' or 'X' controller button.
# Wait for the flash process to finish. Connect a charger to be sure the battery doesn't run out while flashing. Press enter when asked to do so.
+
# Wait for the flash process to finish. Connect a charger to be sure the battery doesn't run out while flashing. Press enter when asked to do so. This might take up to 15 minutes, so be sure to wait for it to finish.
# If you use an external power supply, the device will reboot. Othwerwise, it should turn off - in this case press power (without holding 'R') to turn it back on.
+
# If you use an external power supply, the device will reboot. Otherwise, it should turn off - in this case press power (without holding 'R') to turn it back on.
# It should then start it's first boot process which might take up to 15 minutes. Be sure to wait for it to finish, otherwise firmware corruption might happen. The installation process will show some warnings, which can be safely ignored.  
+
# The Pandora should then start its first boot process which might take up to 15 minutes. Be sure to wait for it to finish, otherwise firmware corruption might happen. The installation process will show some warnings, which can be safely ignored.  
 
# When everything is set up, you will be guided through the first boot wizard.
 
# When everything is set up, you will be guided through the first boot wizard.
  
All the firmwares can be found [http://openpandora.org/firmware/fullflash/ here].
+
=== To '''SD-card''' - external storage ===
  
Advanced users can get raw firmware images and rootfs (for SD Card bootup) as well as older versions [http://www.openpandora.org/firmware/ here].
+
It is also possible to boot Super Zaxxon from an SD card without modifying the NAND installation. This option offers more space than is available in the NAND, and you can test changes to the OS without risking breaking the internal installation. You will need an SD card that works correctly with Linux file systems on the Pandora (see [[SD compatibility list]]).
 +
 
 +
This option uses the [http://openpandora.org/firmware/pandora-rootfs.tar.bz2 tar.bz2] version of the OS.
  
=== Updating SuperZaxxon ===
+
==== With '''GUI-tool''' ====
  
For an overview of new features since the previous "final" SuperZaxxon 1.50 (2012-06), have a look at the [http://boards.openpandora.org/index.php/topic/10374-superzaxxon-v152-released/ SuperZaxxon 1.52 release announcement thread].
+
If you have an existing installation of Super Zaxxon you can use the GUI-driven tool [http://repo.openpandora.org/?page=detail&app=sd-install-2011-03-10 sd_installer.pnd] by David Boucher to install to an SD card. You need the downloaded Super Zaxxon tarball, the sd_installer.pnd and a suitable SD card.
  
SuperZaxxon 1.50 can be upgraded to 1.52 without reinstallation by downloading and running the [http://repo.openpandora.org/?page=detail&app=szupdater1.openpandora.org Pandora SuperZaxxon updater PND].
+
==== Done Manually ====
  
Versions after SuperZaxxon 1.52 come with an online firmware update utility: Just select ''System'' -> ''Upgrade Pandora OS'' from the Pandora menu to download the latest system packages (needs working internet connection).
+
You can extract the tar.bz2 version of the Pandora image onto an SD card and boot off it directly. The simplest layout is to format the card with a single EXT2 partition. Create a boot.txt / autoboot.txt in the root of the SD card to pass parameters to u-boot. An example for the boot.txt / autoboot.txt to boot from /boot/uImage-3 on the (EXT2) first partition of your SD Card would be:
  
== Community Codec Package - for Pandora OS, Release 2010-05 ==
+
setenv bootargs root=/dev/mmcblk0p1 rw rootwait vram=6272K omapfb.vram=0:3000K mmc_core.removable=0
 +
ext2load mmc 0 0x80300000 /boot/uImage-3
 +
bootm 0x80300000
  
Due to licensing issues, the Pandora does not have any licensed codecs like MP3 or MPEG-Video installed on the default OS. You can install them using this Codec Package.
+
Do not use the 2.6 kernel - the first boot will fail and corrupt the OS.
This package will install Gnome-MPlayer as well as a lot of audio / video-plugins and enables NTFS-support.
 
To install it, simply download the .PND-Package and place it into either the /pandora/menu or /pandora/desktop - Folder on your SD-Card.
 
Simply start it and follow the on-screen instructions. You can remove the .PND-Package from the card once it has been installed.
 
  
; Legal Notice:
+
For advanced options, such as using other file systems or more than one partition, see [[Boot setup]].
Patent and copyright laws operate differently depending on which country you are in. Please obtain legal advice if you are unsure whether a particular patent or restriction applies to a media format you wish to use in your country.
 
  
'''[http://openpandora.org/downloads/CodecPack.pnd Click here to download Community Codec Pack]'''
+
The card must be inserted in the left slot to boot from it. If boot.txt is used, hold down the R-trigger when powering on the Pandora and select the SD card from the boot menu. If autoboot.txt is used, the SD will be booted automatically when the Pandora is powered on.
  
; The Codec Package enables NTFS-Support and installs the following packages:
+
Be sure to edit /etc/fstab on the SD card and delete the reference to the /boot partition on the NAND. Otherwise, running an OS update on the SD card might overwrite the kernel on the NAND with the wrong version. It originally looks like this:
boost-date-time_1.41.0-r8.1.5, boost-thread_1.41.0-r8.1.5, directfb_1.4.2-r0.5, gnash_0.8.5-r6.5, gnome-mplayer_0.9.9.2-r10.0.5, gst-plugin-alaw_0.10.13-r1.1, gst-plugin-alpha_0.10.13-r1.1, gst-plugin-alphacolor_0.10.13-r1.1, gst-plugin-alsaspdif_0.10.6-r2.1, gst-plugin-annodex_0.10.13-r1.1, gst-plugin-apetag_0.10.13-r1.1, gst-plugin-audiofx_0.10.13-r1.1, gst-plugin-auparse_0.10.13-r1.1, gst-plugin-autodetect_0.10.13-r1.1, gst-plugin-avi_0.10.13-r1.1, gst-plugin-bayer_0.10.6-r2.1, gst-plugin-bz2_0.10.6-r2.1, gst-plugin-cairo_0.10.13-r1.1, gst-plugin-cdxaparse_0.10.6-r2.1, gst-plugin-cutter_0.10.13-r1.1, gst-plugin-debug_0.10.13-r1.1, gst-plugin-deinterlace_0.10.6-r2.1, gst-plugin-dfbvideosink_0.10.6-r2.1, gst-plugin-dvb_0.10.6-r2.1, gst-plugin-dvdspu_0.10.6-r2.1, gst-plugin-efence_0.10.13-r1.1, gst-plugin-effectv_0.10.13-r1.1, gst-plugin-equalizer_0.10.13-r1.1, gst-plugin-esd_0.10.13-r1.1, gst-plugin-faac_0.10.6-r2.1, gst-plugin-faad_0.10.6-r2.1, gst-plugin-festival_0.10.6-r2.1, gst-plugin-filter_0.10.6-r2.1, gst-plugin-flvdemux_0.10.6-r2.1, gst-plugin-flxdec_0.10.13-r1.1, gst-plugin-freeze_0.10.6-r2.1, gst-plugin-gamma_0.10.13-r1.1, gst-plugin-gdkpixbuf_0.10.13-r1.1, gst-plugin-goom_0.10.13-r1.1, gst-plugin-goom2k1_0.10.13-r1.1, gst-plugin-gsm_0.10.6-r2.1, gst-plugin-h264parse_0.10.6-r2.1, gst-plugin-halelements_0.10.13-r1.1, gst-plugin-icydemux_0.10.13-r1.1, gst-plugin-id3demux_0.10.13-r1.1, gst-plugin-interleave_0.10.13-r1.1, gst-plugin-ivorbis_0.10.6-r2.1, gst-plugin-jack_0.10.6-r2.1, gst-plugin-jpeg_0.10.13-r1.1, gst-plugin-level_0.10.13-r1.1, gst-plugin-matroska_0.10.13-r1.1, gst-plugin-metadata_0.10.6-r2.1, gst-plugin-modplug_0.10.6-r2.1, gst-plugin-monoscope_0.10.13-r1.1, gst-plugin-mpeg4videoparse_0.10.6-r2.1, gst-plugin-mpegtsparse_0.10.6-r2.1, gst-plugin-mpegvideoparse_0.10.6-r2.1, gst-plugin-mulaw_0.10.13-r1.1, gst-plugin-multifile_0.10.13-r1.1, gst-plugin-multipart_0.10.13-r1.1, gst-plugin-mve_0.10.6-r2.1, gst-plugin-navigationtest_0.10.13-r1.1, gst-plugin-nsf_0.10.6-r2.1, gst-plugin-nuvdemux_0.10.6-r2.1, gst-plugin-ossaudio_0.10.13-r1.1, gst-plugin-png_0.10.13-r1.1, gst-plugin-pulse_0.10.13-r1.1, gst-plugin-qtdemux_0.10.13-r1.1, gst-plugin-rawparse_0.10.6-r2.1, gst-plugin-replaygain_0.10.13-r1.1, gst-plugin-rfbsrc_0.10.6-r2.1, gst-plugin-rtp_0.10.13-r1.1, gst-plugin-rtpmanager_0.10.6-r2.1, gst-plugin-rtsp_0.10.13-r1.1, gst-plugins-bad_0.10.6-r2.1, gst-plugins-bad-apps_0.10.6-r2.1, gst-plugins-bad-meta_0.10.6-r2.1, gst-plugin-sdpelem_0.10.6-r2.1, gst-plugin-selector_0.10.6-r2.1, gst-plugins-good_0.10.13-r1.1, gst-plugins-good-apps_0.10.13-r1.1, gst-plugins-good-meta_0.10.13-r1.1, gst-plugin-smpte_0.10.13-r1.1, gst-plugin-sndfile_0.10.6-r2.1, gst-plugin-souphttpsrc_0.10.13-r1.1, gst-plugin-spectrum_0.10.13-r1.1, gst-plugin-speed_0.10.6-r2.1, gst-plugin-speexresample_0.10.6-r2.1, gst-plugin-stereo_0.10.6-r2.1, gst-plugin-tta_0.10.6-r2.1, gst-plugin-udp_0.10.13-r1.1, gst-plugin-vcdsrc_0.10.6-r2.1, gst-plugin-video4linux2_0.10.13-r1.1, gst-plugin-videobalance_0.10.13-r1.1, gst-plugin-videobox_0.10.13-r1.1, gst-plugin-videocrop_0.10.13-r1.1, gst-plugin-videoflip_0.10.13-r1.1, gst-plugin-videomixer_0.10.13-r1.1, gst-plugin-videosignal_0.10.6-r2.1, gst-plugin-vmnc_0.10.6-r2.1, gst-plugin-wavenc_0.10.13-r1.1, gst-plugin-wavparse_0.10.13-r1.1, gst-plugin-y4menc_0.10.6-r2.1, libaudiofile0_0.2.6-r8.5, libdiscid0_0.2.2-r0.5, libdvdcss2_1.2.10-r1.5, libdvdread3_0.9.7-r1.5, libesd0_0.2.36-r3.5, libfaad0_2.0-r2.5, libgdbm3_1.8.3-r3.5, libgif4_4.1.6-r2.5, libgnashamf_0.8.5-r6.5, libgnashbase_0.8.5-r6.5, libgpod_0.7.92-r0.5, libldap-2.4-2_2.4.21-r0.5, libmusicbrainz3-6_3.0.2-r1.5, libneon25_0.25.5-r4.5, libpulse0_0.9.15-r9.6.5, libpulsecommon_0.9.15-r9.6.5, libsamplerate0_0.1.7-r1.5, libxss1_1.2.0-r1.5, mplayer_0.0+1.0rc3+svnr30165-r20.5, mplayer-common_0.0.1-r1.5.
 
  
 +
# The /boot kernel volume on the OpenPandora NAND.
 +
ubi1:boot            /boot                ubifs      defaults              0  0
  
== The Following is the old angstrom page ==
+
== '''Upgrade''' - distribution upgrade ==
 +
Only upgrade the parts that need upgrading.
 +
Versions after Super Zaxxon 1.52 come with an online operating system update utility: Just select ''System'' -> ''Upgrade Pandora OS'' from the Pandora menu to download the latest system packages (needs working internet connection).
  
{{FIXME|How do I know what hotfix I have? (spiralofhope has notes somewhere)}}
+
== '''Online''' - install from a system in use to a drive that isnt ==
= Note =
 
  
In general it's possible to apply hotfixes to any lower firmware versions without installing all previous hotfixes.
+
The UBIFS-Version can be used to flash the whole firmware to the Pandora.
  
For the easy and up-to-date firmware install, go to the [http://www.open-pandora.org OpenPandora website]
+
http://openpandora.org/firmware/images/Angstrom-pandora-xfce-image-glibc-ipk-2010.4-test-20140430-omap3-pandora.ubifs.img
under Community and Support, and choose Official Updates and Firmware.
 
[http://www.open-pandora.org/index.php?option=com_content&view=article&id=199&Itemid=40&lang=en Here's a link as of Oct 2012.]
 
  
= SuperZaxxon Final =
+
It is also possible to do an install while the system is running.
 +
Grab the ubifs image and install that from nand to SD-card or vice versa. This is an advanced option.
  
[http://boards.openpandora.org/index.php?/topic/9002-superzaxxon-final-released/ Jun 28 2012 SuperZaxxon final released]
+
The sourcecode for the programs included in the images can be found in the sources-directory, including licenses for each single one of them. The kernel and u-boot sourcecode as well as some other Pandora specific sourcecode can be found on http://git.openpandora.org/
CHECK ON BOARDS FOR LATEST
+
Advanced users can get raw firmware images and rootfs (for SD Card bootup) as well as older versions [http://www.openpandora.org/firmware/ here].
== Repositories ==
 
  
== FIRMWARE BUILD INSTRUCTIONS ==
+
== Compile build from source code ==
  
=== openembedded.git ===
+
''openembedded.git''
  
 
This the the OpenEmbedded repository containing recipes for all kinds of stuff.
 
This the the OpenEmbedded repository containing recipes for all kinds of stuff.
Line 103: Line 97:
 
|}
 
|}
  
=== openpandora.oe.git ===
+
''openpandora.oe.git''
  
 
This is a Pandora specific OpenEmbedded overlay containing recipes only used on the Pandora.
 
This is a Pandora specific OpenEmbedded overlay containing recipes only used on the Pandora.
Line 119: Line 113:
 
|}
 
|}
  
=== pandora-oe-environment.git ===
+
''pandora-oe-environment.git''
  
 
This contains scripts to set up bitbake, and the above OpenEmbedded repositories.
 
This contains scripts to set up bitbake, and the above OpenEmbedded repositories.
  
 
+
''Environment setup''
== Setting up environment ==
 
  
 
<source lang="bash">
 
<source lang="bash">
Line 133: Line 126:
 
</source>
 
</source>
  
== Building Yars' Revenge W.I.P. ==
+
''Building Yars' Revenge W.I.P.'' (Also called .next).  Query aTc or DJWillis until you get a response.
  
Query aTc or DJWillis until you get a response.
+
The following instructions will allow you to build the current .next image.
  
The following instructions will allow you to build the current .next image.
+
Remember that your building the tip of the experimental tree and not everything even remotely works. Best for people who want to hack and help get it into shape. Do not expect anything remotely good enough to run on your Pandora for real
remember that your building the tip of the expermental tree and not everything even remotely works. Best for people who want to hack and help get it into shape. Do not expect anything remotely good enough to run on your Pandora for real
+
 
 +
It is suggested that you use Debian or a Debian chroot.
 +
 
 +
In addition to the base Debian install you will need:
  
It is suggested that you use debian or a debian chroot.
 
In addidtion to the base debian install you will need
 
 
autoconf
 
autoconf
 
automake
 
automake
Line 179: Line 173:
 
</source>
 
</source>
  
This will install a number of git reposiries containing the build tools and recipes
+
This will install a number of git repositories containing the build tools and recipes:
bitbake
+
 
openembedded-core
+
* bitbake
meta-openembedded
+
* openembedded-core
meta-angstrom
+
* meta-openembedded
meta-texasinstruments
+
* meta-angstrom
meta-openpandora
+
* meta-texasinstruments
* the basic hardware layer that works with OpenEmbedded and can be used in most OpenEmbedded distributions (Angstrom, Yocto, SHR etc.). That hardware layer also needs meta-texasinstruments (the scripts will bring that in, the Angstrom ones or ours).
+
* meta-openpandora
 +
 
 +
* The basic hardware layer that works with OpenEmbedded and can be used in most OpenEmbedded distributions (Angstrom, Yocto, SHR etc.). That hardware layer also needs meta-texasinstruments (the scripts will bring that in, the Angstrom ones or ours).
 
meta-openpandora-vendor
 
meta-openpandora-vendor
* the vendor (i.e. openpandora) specific stuff, scripts, tweaks, image files, task files (i.e. what to install and order) and some recipes for things like libpnd.
+
* The vendor (i.e. openpandora) specific stuff, scripts, tweaks, image files, task files (i.e. what to install and order) and some recipes for things like libpnd.
  
 
From time to time you will want to update and fetch the changes to the base and openpandora recipes. e.g. those report on #openpandora by CIA-57
 
From time to time you will want to update and fetch the changes to the base and openpandora recipes. e.g. those report on #openpandora by CIA-57
 +
 
<source lang="bash">
 
<source lang="bash">
 
. ~/.oe/environment-openpandora
 
. ~/.oe/environment-openpandora
Line 197: Line 194:
 
</source>
 
</source>
  
There are a number of recipes for build images in openpandora-oe-environment/metadata/meta-openpandora-vendor/recipes-core/images
+
There are a number of recipes for build images in openpandora-oe-environment/metadata/meta-openpandora-vendor/recipes-core/images :
pandora-core-image no desktop or X11
+
 
pandora-xfce-image XFCE desktop environment
+
* pandora-core-image no desktop or X11
systemd-pndwip-image
+
* pandora-xfce-image XFCE desktop environment
 +
* systemd-pndwip-image
 +
 
 
<source lang="bash">
 
<source lang="bash">
 
. ~/.oe/environment-openpandora
 
. ~/.oe/environment-openpandora
Line 209: Line 208:
 
This will download required sources and package dependancies, depending on the state of updatesm, build packages and produc an image.
 
This will download required sources and package dependancies, depending on the state of updatesm, build packages and produc an image.
  
The preferred method for sending patches for meta-openpandora and meta-openpandora-vendor is to create a fork in github apply you changes and send pull requests to OpenPandora Firmware mailing list: firmware-dev@openpandora.org
+
The preferred method for sending patches for meta-openpandora and meta-openpandora-vendor is to create a fork in github apply you changes and send pull requests to OpenPandora Firmware mailing list: firmware-dev@openpandora.org ([http://openpandora.org/cgi-bin/mailman/listinfo/firmware-dev subscribe])
Subscribe at: http://openpandora.org/cgi-bin/mailman/listinfo/firmware-dev
+
 
 +
= Kernel status =
  
 +
The first [[firmware]] release was based on a heavily patched linux-2.6.27-omap1 kernel. linux-omap used to be OMAP community kernel fork, nowadays its code was either merged to mainline or dropped. Further OMAP development continues on mainline kernels, linux-omap tree is mainly used to queue developed code to mainline.
  
= Zaxxon Hotfixes =
+
Current firmware releases are based on 3.x kernel series.
  
The original [[Zaxxon]] firmware has been updated with a number of Hotfixes. Since then, a newer firmware called SuperZaxxon has been released.
+
Driver support in 3.x series is more or less complete, however not all parts are merged to mainline kernel due to various reasons.
  
'''Warning:'''  If you do not have Zaxxon installed (boot screen says SuperZaxxon or something else), do not attempt to install any of these hofixes, doing so will break the system.
+
== Merged code (already in mainline as of 3.4) ==
 +
* board support (enables UART, I2C, SPI, RTC, MMC{1,2,3}, NAND, OTG, EHCI, gpio-keys, leds-gpio, keypad, touchscreen, regulators)
 +
* sound: ALSA ASoC machine driver
 +
* bq27500 fuel gauge
 +
* LCD panel driver
 +
* wl1251 [[WiFi]] driver glue (portions only in 2.6.37)
 +
* charging (partial only, 2.6.37)
 +
* wl1251 complete powerdown/suspend using runtime_pm (2.6.38).
 +
* backlight driver (3.4)
  
== Hotfix 6 ==
+
This doesn't list various bugfix patches to get above working :)
  
* [http://boards.openpandora.org/index.php?/topic/5652-hotfix-6-final-released/ Information and discussion] (2011-10-10)
+
== Not merged ==
* [http://www.openpandora.org/downloads/Zaxxon-HF6.zip Full flash update] (will delete all prior user settings; useful if you've screwed something up and are not sure of how to fix it)
+
now in openpandora.org GIT (mainline merge status in brackets)
 +
* nubs (aka vsense, needs rework for mainline)
 +
* keypad fn handling (not allowed in mainline)
 +
* PWM LEDs (needs rework)
 +
* Overclocking support
 +
* some charging bits (too many hacks)
 +
* various random hacks that benefit pandora but may harm other devices, hence mainline incompatible
  
=== Bugs and solutions ===
+
= OpenPandora.org git structure =
 +
Support for various kernels is available in pandora-XX branches or tags, XX corresponds to last part of kernel version number. 2.6.27 is an exception, it's in pandora-27-omap1 branch.
  
In general, the latest information about bugs will be on the official [http://bugs.openpandora.org/ bugtracker]; that is also the best place to go report a bug.
+
Branches based on pre-release -rc kernels will be often rebased. This means you can't do 'git pull' on them, use 'git fetch; git reset --hard origin/pandora-XX' instead. '''Warning''': this will destroy all your changes (even if they are commited), backup them first!
  
==== PNDs won't run ====
+
= Configuring newer kernels =
  
So you can start Xfce, but you can no longer run any programs or switch to Minimenu since you upgraded to HF6?
+
When compiling mainline kernel, use
 +
<source lang="bash">make omap2plus_defconfig</source>
 +
for openpandora.org kernels you can use omap3_pandora_defconfig
 +
<source lang="bash">make omap3_pandora_defconfig</source>
 +
after either of those are run, you can tune the configuration for your needs:
 +
<source lang="bash">make menuconfig</source>
 +
Now you should be able to build a working kernel. More info available at [[Kernel build instructions]].
  
This can easily be solved without a reflash.
 
  
: [http://boards.openpandora.org/index.php?app=forums&module=forums&section=findpost&pid=98627 valhalla] This problem is because of version 1.0-r58.5 of the pandora-scripts package that includes some files that it should not have included and conflicts with the new version of pandora-libpnd. That version is installed at least in HF5rc2.
 
  
# Open a terminal in the location where you put your HF6 update PND. In the default file browser, you can do this by right-clicking in the folder where the PND is, and selecting "open terminal here". For example, if you put it on your desktop (<code>/pandora/desktop</code>), the text in the terminal to the left of your cursor should look something like <code>username-openpandora:/media/pandora/mmcblk0p1/pandora/desktop$</code>
+
==Pandora Firmware Governance==
# Type in <code>sudo mkdir /mnt/pnd</code> and press "enter". If it asks you for your password, type in what you use to log in to your Pandora, then press "enter".
 
# Type in <code>sudo mount -o loop HF6-Updater.pnd /mnt/pnd</code> and press "enter"
 
# Now we'll go to the packages directory in the PND and reinstall a couple of packages. Type in <code>cd /mnt/pnd/packages/other/</code> and press "enter"
 
# Type in <code>sudo opkg install pandora-libpnd_1.0-r56.5_armv7a.ipk</code> and press "enter"
 
# Type in <code>sudo opkg install pandora-skel_1.0-r9.5_omap3-pandora.ipk</code> and press "enter"
 
# To unmount the PND, type in <code>sudo umount /mnt/pnd</code> and press "enter". If it says it can't unmount it, just restart your Pandora.
 
# That's it, your Pandora should work again!
 
  
===Beta versions===
+
The Pandora device is an open ecology --
  
* [http://boards.openpandora.org/index.php?/topic/5616-hotfix-6-rc-released/ RC] (2011-10-07)
+
The official [[firmware]] is open source and open to patches from the public; to maintain high quality firmware releases a process needs to exist -- audit trails need to be kept to ensure licensing is clear, testing has to be ensured to keep quality high, and our standard practice for submission made clear so it is easy and swift to submit your work.
* [http://boards.openpandora.org/index.php?/topic/5320-zaxxon-hotfix-6-beta-1-released/ Beta 1] (2011-09-14)
 
* [http://boards.openpandora.org/index.php?/topic/4118-hotfix-6-alpha-4-released/ Alpha 4] (2011-06-21)
 
* [http://boards.openpandora.org/index.php?/topic/4065-hotfix-6-alpha-3-out/ Alpha 3] (2011-06-17)
 
* [http://boards.openpandora.org/index.php?/topic/4056-hotfix-6-alpha-2-is-out/ Alpha 2] (2011-06-16)
 
* [http://boards.openpandora.org/index.php?/topic/3955-hotfix-6-alpha-1-released/ Alpha 1] (2011-06-09)
 
  
== Hotfix 5 ==
+
Help us sort it out :) This process itself is open source -- as the ecosystem expands our model will change with it; if you are seeing problems, then contact one of the maintainers, mailing list, or the community at large and
 +
All of which are part of the [[Team]]
  
* Information and discussion: [http://boards.openpandora.org/index.php?/topic/2080-hotfix-5-released/ OP] [http://www.gp32x.com/board/index.php?/topic/58867-hotfix-5-released/ GP32X] (2011-03-04)
+
The firmware is all of the software that is supplied with a device, so does include the applications which are provided as standard. It is all open source (meaning that OpenPandora provides the source code, often as a requirement of the [http://www.gnu.org/licenses/gpl.html GNU GPL]). A small quantity of the firmware is provided as binary files, which OpenPandora may not be at liberty to disclose the full details of. An example of closed source firmware is for the analogue nubs, which are shipped with small micro-controllers pre-programmed by the nub manufacturer. Only some of the hardware designs and occasional binary blobs like the [[WiFi]] driver are currently not open source; the rest of the firmware stack is open source (predominantly GPL with some LGPL).
  
===Beta versions===
+
== Replacing the Firmware (Un-bricking) ==
  
* RC2: [http://boards.openpandora.org/index.php?/topic/1877-hotfix-5-rc2-last-one-before-going-final/ OP] [http://www.gp32x.com/board/index.php?/topic/58779-hotfix-5-rc2-last-one-before-going-final/ GP32X] (2011-02-22)
+
Rather than patch the firmware, the firmware may be replaced wholesale with a freshly downloaded firmware. This ought to be regarded as a last resort in the case of problems, there is almost certainly a simpler way to fix most problems.
* RC1: [http://boards.openpandora.org/index.php?/topic/1572-hotfix-5-rc-1-ready-for-testing/ OP] [http://www.gp32x.com/board/index.php?/topic/58598-hotfix-5-rc-1-ready-for-testing/ GP32X] (2011-02-09)
 
* [http://boards.openpandora.org/index.php?/topic/1418-beta-test-upcoming-hf5-firmware-image-beta-4/ Beta 4] (2011-02-01)
 
* [http://boards.openpandora.org/index.php?/topic/1316-beta-test-upcoming-hf5-firmware-image-beta-3/ Beta 3] (2011-01-28)
 
* [http://boards.openpandora.org/index.php?/topic/1209-beta-test-upcoming-hf5-firmware-image-beta-2/ Beta 2] (2011-01-23)
 
* [http://boards.openpandora.org/index.php?/topic/1115-beta-test-upcoming-hf5-firmware-image/ Beta 1] (2011-01-17)
 
  
== Hotfix 4 ==
+
The process for reinstalling the firmware is as follows: [http://www.gp32x.com/board/index.php?/topic/53637-first-boot-its-asking-for-a-login-and-password/page__view__findpost__p__858053]
 +
, otherwise firmware corruption might happen again.
  
* Information and discussion: [http://boards.openpandora.org/index.php?/topic/90-pandora-hotfix-4-final-released-2010-08-31/ OP] [http://www.gp32x.com/board/index.php?/topic/56385-hotfix-4-final-released/ GP32X] (2010-08-31)
+
In case of emergency, there is an older version
 +
[http://notaz.gp2x.de/releases/pandora/pandora-firmware-2010-05-01-Zaxxon.zip here] (Version: 2010-05-01-Zaxxon)
  
=== Beta versions ===
+
== Debugging broken firmware ==
  
* Beta 4: [http://boards.openpandora.org/index.php?/topic/69-hotfix-4-beta-4-released/ OP] [http://www.gp32x.com/board/index.php?/topic/56361-hotfix-4-beta-4-pre-final/ GP32X] (2010-08-29)
+
[http://pandorawiki.org/Boot_setup#Rescue_console_boot] will help you in case booting normally breaks. That way you can provide debugging info to source what went wrong instead of just re-installing.
* Beta 3: [http://boards.openpandora.org/index.php?/topic/17-hotfix-4-beta-3-released/ OP] [http://www.gp32x.com/board/index.php?/topic/56266-hotfix-4-beta-3-released/ GP32X] (2010-08-27)
 
* [http://www.gp32x.com/board/index.php?/topic/55965-hotfix-4-beta-2/ Beta 2] (2010-08-15)
 
* [http://www.gp32x.com/board/index.php?/topic/55788-hotfix-4-very-first-beta/ Beta 1] (2010-08-07)
 
  
== Hotfix 3 ==
+
== Reporting bugs ==
  
* [http://www.gp32x.com/board/index.php?/topic/54933-hotfix-3-released/ Information and discussion] (2010-07-01)
+
Please do make sure that you are using the latest official firmware and hotfix. You can find it in the [http://www.open-pandora.org/index.php?option=com_content&view=article&id=178&Itemid=32&lang=en official support section of the website]. Reports made against older versions might be invalid since the issues were already fixed.
  
=== Beta versions ===
+
If the bug does still exist in the latest released version, please follow these steps when reporting it in the [http://bugs.openpandora.org official bug tracker]. You will need to register an account in the tracker. Once you are logged into the account, just click on ''Add new task'' to see a form where you can provide the information required to assign and solve the bugs. Below is an explanation of what you should enter where.
  
* [http://www.gp32x.com/board/index.php?/topic/54852-pandora-hotfix-3-beta-2/ Beta 2] (2010-06-29)
+
=== Stuff that belongs there ===
* [http://www.gp32x.com/board/index.php?/topic/54724-pandora-hotfix-3-beta-test/ Beta 1] (2010-06-25)
 
  
== Hotfix 2 ==
+
* Bugs that happen with the default operating system on the Pandora.
 +
* Things missing in the default operating system on the Pandora.
 +
* Bugs and issues with the codec pack.
  
* [http://www.gp32x.com/board/index.php?/topic/54171-hotfix-2-for-zaxxon-released/ Information and discussion] (2010-06-08)
+
=== What does not belong in the official tracker ===
  
=== Beta versions ===
+
* Bugs with other .pnd files like eg [[emulators]], [[games]] or other applications that are not part of the main OS.
 +
* Features missing in other progs.
  
* [http://www.gp32x.com/board/index.php?/topic/54137-pandora-hotfix-pack-2-for-zaxxon/ Beta 1] (2010-06-08)
+
=== Issue attributes explained ===
  
== Hotfix 1 ==
+
Here is the list of things you should keep in mind and mention in your bug report or feature request to make sure that it can be solved. Please do also make sure to react on comments that are left in the report, since the people that feel responsible for solving the issues might need more information that only you can provide.
  
* [http://www.gp32x.com/board/index.php?/topic/53580-hotfix-pack-1-and-community-codec-pack-released/ Information and discussion] (2010-05-24)
+
;Summary: This should be a really short summary of the issue at hand, as clean as possible. Something like eg ''ABC does not work'' is not good, better write ''ABC crashes when sounds are played''.
  
== Original firmware ==
+
;Drop Down Boxes: This area on the left side is used to provide some general information that makes it easier for devs to assign the reports to the correct people for fixing things. They are often useful in fixing the report in the end, too.
  
* You can download the very first release of the Pandora's [[Zaxxon]] firmware from [http://notaz.gp2x.de/releases/pandora/pandora-firmware-2010-05-01-Zaxxon.zip here] (2010-05-01)
+
;Task Type: Just select it from the drop down box. If you want to report a bug, make it ''Bug Report'', if it is a missing feature, select ''Feature Request''. You should only select ''To Do (Reminder)'' if you are one of the devs to leave a note for yourself.
  
== THE FOLLOWING IS THE RUNNING LINUX FROM SD CARD PAGE ==
+
;Category Core: Everything that belongs to the basic systems like the kernel and the drivers. The real core that lies beneath.
  
==Introduction==
+
;Category Application:  Meant for all the programs on top of the basis core. This eg. includes problems in minimenu, Pandora specific XFCE, pidgin, ... Basically you should ask yourself if your issue might be kernel/driver related, if it is not, select this one.
  
As described in the [[Introduction to firmware]] page, the Pandora is able to boot from an [[SD card]].
+
;Status: Can only be changed by bug tracker admins (aka "official pandora devs").
This tutorial explains the steps necessary to create an SD card with a copy of the Angstrom operating system which you can boot.
 
If you do not want to run these steps manually, there also exists a utility (as a standard [[PND]] package) which can guide you through that process: [http://www.pandorabits.org/?page=sd-installer Pandora SD installer]
 
  
{{hint
+
;Operating System: Select the "series" of the operating system on the pandora here. The first firmware series is called Zaxxon.
|Note: This tutorial assumes you are using Linux, and gives examples which should run on your Pandora.
 
}}
 
  
==Get a copy of the firmware==
+
;Severity: How important do you estimate this bug/issue? It should only be marked ''critical'' if it is a real security breach or something breaking *everything*. Often the default ''low'' is fine, since the values can be adjusted later on by bug tracker admins.
  
There are methods you can use to get the data off your Pandora's [[NAND]], [http://www.gp32x.com/board/index.php?/topic/54290-up-to-date-firmware-tarball this topic] discusses them. It is easier, however, to just extract a tar file.
+
;Priority: Can only be changed by bug tracker admins (aka "official pandora devs").
  
*Take a look [http://openpandora.org/firmware/ here] (pandora-rootfs.tar.bz2 is what you want) and get the latest version from the official Open Pandora site. Note that this firmware version may be unstable and comes untested!
+
;Reported Version: Please select which version state your pandora has in the release that you selected under ''Operating System''. Basically list the latest hotfix that you installed.
  
*Download [http://pandora.digital52.com/downloads/Angstrom-pandora-xfce-image-glibc-ipk-2010.4-test-20100614-omap3-pandora.rootfs.tar.bz2 this old reference image] if you are having trouble with the first link.
+
;Due in Version: Can only be changed by bug tracker admins (aka "official pandora devs").
  
*If the two above don't work, you can download an [http://www.codejedi.com/pandora/libpnd/pandora-xfce-image-omap3-pandora-20101705-image-for-checking-fixes.tar.bz2 even older image].
+
;Details: A neat, large field with lots of space for all the details that you can provide. Yes, in general a case of "the more, the better" applies here. Here is a list of things that you should mention in the report:
  
*You can also copy your running firmware on the NAND to the SD partition. This is shown in its own section below.
+
;Problem: Detailed description of the *exact* problem you see. Please do include some log output, if you have it available.
  
 +
;Reproducibility: How often does the issue occur? Is it reproducible? If it is, please provide detailed steps to do so.
  
==Option 1: Use the GUI-driven SD installer tool==
+
;Actual Results: What happened after you performed the steps you listed under "Reproducibility"?
  
Instead of installing the firmware manually on the SD card (as described further below under "Option 2"), you may use the '''GUI-driven tool sd_installer.pnd by David Boucher''', which automates the entire process.
+
;Expected Results: What should have happened?
http://repo.openpandora.org/?page=detail&app=sd-install-2011-03-10
 
  
You only need the downloaded firmware tarball, the sd_installer.pnd and a suitable SD card.
+
;Additional Information: Please do list any additional information, like for example the *exact* version of your OS (or the application). This is especially important if you were not able to select the exact version in the '''Reported Version''' drop down field. If you have any log output or patches, please do attach those as files to the report. If the file size would be too big, just compress them.
  
 +
== Syntax in the Flyspray issue tracker ==
  
==Option 2: Manually install the OS on the SD card==
+
=== Internal reference to other issues ===
  
===Partition your SD card===
+
To refer to another issue use the syntax FS#N where N is the issue number you want to refer to, i.e. FS#123.
 +
The parser then automatically renders this as a link to the other issue (HTML href attribute), and shows the issue's title in the mouseover info (HTML title attribute).
  
This is an optional step.
+
== Submission Workflow ==
  
If you want to slice your SD card into several partitions (see [[#Setting_up_mutliple-partition_SD_cards_for_booting|Setting up mutliple-partition SD cards]]), you can use the ''cfdisk'' command-line tool on the Pandora to create a partition table. Note that - as of Zaxxon HF5 - the Pandora firmware doesn't have a command to format FAT partitions, so if you want to use the FAT/ext2/swap - scheme, you'll have to format the first partition on another system later on (under Windows, use the Disk Management tool).
+
The general workflow for submitting a patch is something like this:
  
Assuming your card is in the left slot:
+
# Clone the appropriate section of the GIT repository - GIT is http://git.openpandora.org/cgi-bin/gitweb.cgi
 +
# Apply changes and have fun
 +
# Document and pass test cases
 +
# Contact the maintainer of the subdomain the patch falls within - by mailing list above, or perhaps by PM in the forums, or email; for example, post first to the mailing list. In a pinch for libpnd submissions talk to skeezix, or notaz regarding kernel changes. But talk to the mailing list first, to keep discussion logged and centralized; if a backup neds to step up, the post history will already be there, right?
 +
# If the maintainer is unavailable, contact the backups as listed above; they will know how to contact the champion, or can make the submission call themselves.
 +
# If the maintainer and backups are not available, contact EvilDragon as release maintainer
  
<source lang="bash">sudo cfdisk -z /dev/mmcblk0</source>
+
== Submission Standards ==
  
'''WARNING: mmcblk0 will [http://bugs.openpandora.org/index.php?do=details&task_id=237 not necessarily be the left slot]. It's the first card that the system recognizes, which is ''usually'' the left slot (but not if you inserted an SD into the left slot after you had one in the right slot, for example). Please make sure before you do anything dangerous.'''
+
Submission are welcome! Historically the firmware has been built by a very small team, but that [[team]] size limits the number of changes that can be managed and developed simultaneously. If you've the skills and motivation to help, feel free to join the fray!
  
cfdisk -z starts off with a clean partition table - if you want to see what's set up currently, use ''cfdisk /dev/mmcblk0''.
+
Patches have a few requirements; failing these requirements will cause your patch to be overlooked!
  
Use only primary partitions (so you're limited to four slices).
+
* '''Clearly documented''' -- what is this patch for?
 +
* '''Clearly tested''' -- a list of test cases and test results -- the onus is on the submitter to test and prove testing; the committers have limited time and many people talking to them
 +
* '''Proper format''' -- unix line ending, not dos line endings :)
  
===Format SD card to ext2===
+
== Submitting patches ==
  
You need to format your SD card to have a single ext2 partition; [[ext3]] also works<sup>[http://www.gp32x.com/board/index.php?/topic/54928-64gb-sdxc-cards/]</sup> and is more reliable<sup>[http://www.gp32x.com/board/index.php?/topic/54928-64gb-sdxc-cards/page__view__findpost__p__901072]</sup>. You can have a second, swap partition, as well if you like. There are command line tools you can use as well as GUI tools.  
+
It's best to send formal GIT-generated patch so that you get proper credit for your work and to make applying the patch easier. You can also add 'Signed-off-by' line ('-s' on 'git commit' will do it for you), which has [http://elinux.org/Developer_Certificate_Of_Origin the same meaning as for mainline Linux].
  
====Using the command line====
+
So basic workflow would be:
Take care with using these command line tools, to be certain you are accessing the correct device. They will not ask you and will DESTROY any data on the device. This command will replace an existing partition with an empty EXT2 formatted filesystem (this includes the single FAT partition most SD cards come shipped with). Assuming ''/dev/mmcblk0p1'' for your SD device (left slot, first partition), ''LABELNAME'' for the partition:
 
 
<source lang="bash">
 
<source lang="bash">
mkfs.ext2 -L LABELNAME /dev/mmcblk0p1
+
<make changes>
</source>
+
git config --global user.name "My Name"
If you run into problems with formatting the SD card, try unmounting it first:
+
git config --global user.email "myname@domain.com"
<source lang="bash">
+
git add <changed files>
sudo umount /media/[LABELNAME of SD card]
+
git commit
 +
git format-patch -o /somewhere/ -1
 
</source>
 
</source>
 +
Then create a new feature request in bugtracker and attach the generated file(s), or send them to the [[Firmware_governance#Mailing_list|mailing list]], or post them on the forums, whatever is more convenient to you.
  
====Using a GUI tool====
+
== Updating Super Zaxxon ==
The GUI tools are simple enough that you shouldn't need someone to tell you how to use them. For now this is left as an exercise left for the reader (until someone wants to write up how to do it).
 
  
===Copy and boot===
+
=== Updating graphics drivers ===
  
====Copy the files to your SD card====
+
[http://pandoralive.info/?p=2303 guided tour de blog by eki]
Navigate (cd) to the directory with the .tar.bz2 file you just downloaded (or made) and do:
 
  
<source lang="bash">
+
== Community Codec Package - for Pandora OS, Release 2010-05 ==
sudo tar -xvjf <tarfile>.tar.bz2 -C <SD card>
 
</source>
 
  
If you're doing this on your Pandora, <SD card> is something like /media/mmcblk0p1 (first SD card slot on Pandora). On Ubuntu it would be something like /media/disk if it has no label. You can also try using GUI tools for this, but I didn't have very good luck with them.
+
Installation of non-free codecs is highly discouraged. Consider instead free counterparts like opus, ogg vorbis and Flac for audio. webM, ogg theora for video or equivalent.
  
====OR copy your firmware from the NAND to the SD card====
+
Due to licensing issues, licensed codecs like MP3 or MPEG-Video can not be distributed freely. They are optionally available in the Codec Package.
 +
The package will install Gnome-MPlayer as well as a lot of audio / video-plugins and enables NTFS-support.
 +
To install it, simply download the .PND-Package and place it into either the /pandora/menu or /pandora/desktop - Folder on your SD-Card.
 +
Simply start it and follow the on-screen instructions. You can remove the .PND-Package from the card once it has been installed.
  
The following will ask for your password. All the operations need root permissions so I thought it would be wasteful to sprinkle sudo to everything.
+
; Legal Notice:
We will bind mount the root fs to an alternative location ("/mp"), under which other filesystems mounted under root (like the kernel virtual filesystems /proc and /sys, and your SD card.) wont be visible. This allows us to take a live copy of the NAND contents to the SD filesystem.
+
Patent and copyright laws operate differently depending on which country you are in. Please obtain legal advice if you are unsure whether a particular patent or restriction applies to a media format you wish to use in your country.
  
<source lang="bash">
+
'''[http://openpandora.org/downloads/CodecPack.pnd Click here to download Community Codec Pack]'''
sudo su
 
mkdir /mp
 
mount --bind / /mp
 
cp -va /mp/* /media/<SD card>
 
umount /mp
 
rmdir /mp
 
exit
 
</source>
 
  
====Set up your boot.txt====
+
The Codec Package enables NTFS-Support and installs [http://pastebin.com/TyzWBi0X|these packages]
  
Create a new file called [[boot.txt]] (or autoboot.txt if you want to boot automatically) and copy and paste the text below. Copy that file to the root of the root of the SD card.
+
== Older versions of Ångstrom ==
  
{{warning
+
In case you need them, you can download older firmware relases [http://openpandora.org/firmware/fullflash/ here].
|If you edit the file on Windows, use an advanced text editor like [http://notepad-plus-plus.org/ Notepad++] and be sure to convert to UNIX format (in NP++: Edit -> EOL Conversion -> UNIX format). If you have DOS linebreaks, ext2load will fail with an error like "file not found" as it appends an hidden character to the uImage file name.
+
*http://openpandora.org/firmware/fullflash/SuperZaxxon171.zip
}}
+
*[http://openpandora.org/firmware/fullflash/SuperZaxxon170RC.zip Super Zaxxon 1.70RC (18-Oct-2014)]''' [http://boards.openpandora.org/topic/17320-superzaxxon-v170rc-released/ forum thread]
 +
*http://boards.openpandora.org/topic/17176-superzaxxon-v162rc-released [http://openpandora.org/firmware/fullflash/SuperZaxxon162RC.zip (18-Oct-2014)]
 +
*http://boards.openpandora.org/topic/16218-superzaxxon-v161-released
 +
*http://boards.openpandora.org/topic/15198-superzaxxon-v160-released
 +
*http://boards.openpandora.org/topic/13854-superzaxxon-v155-released
 +
*http://boards.openpandora.org/index.php/topic/12490-superzaxxon-v54-final-has-been-released/
 +
*http://boards.openpandora.org/index.php/topic/10374-superzaxxon-v152-released/ <br />
  
boot.txt (from the [http://openpandora.org/firmware/README.txt official firmware site])
+
SuperZaxxon1.50 can be upgraded to 1.52 without reinstallation by downloading and running the [http://repo.openpandora.org/?page=detail&app=szupdater1.openpandora.org Pandora SuperZaxxon updater PND].  
<source lang="bash">
 
setenv bootargs root=/dev/mmcblk0p1 rw rootwait vram=6272K omapfb.vram=0:3000K mmc_core.removable=0
 
ext2load mmc 0 0x80300000 /boot/uImage-3
 
bootm 0x80300000
 
</source>
 
Note: depending on firmware version kernels might be at several, sometimes multiple locations, so you have to choose one:
 
* /boot/uImage-3 - the default 3.2 kernel (recommended)
 
* /lib/boot/uImage - alternative location of 3.2 kernel on certain older firmwares
 
* /boot/uImage - the old 2.6 kernel
 
  
Be aware though that this boot.txt assumes you have formatted your card with ext2 and loads the kernel off the SD card. It is possible to boot the kernel from NAND with following boot.txt
+
=== Zaxxon (Old version) ===
<source lang="bash">
 
setenv bootargs root=/dev/mmcblk0p1 rw rootwait vram=6272K omapfb.vram=0:3000K mmc_core.removable=0
 
ubi part boot && ubifsmount boot && ubifsload ${loadaddr} uImage && bootm ${loadaddr} && boot
 
</source>
 
However this is not recommended because kernel modules on SD card will likely be not compatible with kernel on NAND.
 
  
Both boot.txt's assume you are booting from the left SD card slot, first partition. You can change "mmcblk0p1" to "mmcblk1p1" if you want to boot from the right slot (but boot.txt must still be on a card on the left slot).
+
The original Zaxxon firmware has been updated with a number of Hotfixes. Since then, a newer firmware called Super Zaxxon has been released.
Note: If you chose ext3 instead of ext2, the second line still starts with ext2load. There is no ext3load.
 
  
====Setting up mutliple-partition SD cards for booting====
+
'''Warning:'''  If you do not have Zaxxon installed (boot screen says SuperZaxxon or something else), do not attempt to install any of these hotfixes, doing so will break the system.
  
It is possible to have several partitions on the SD card and boot from one of them.
+
In general it's possible to apply hotfixes to any lower firmware versions without installing all previous hotfixes.
E.g. if you have three partitions on the card like this:
 
*Partition 1: FAT
 
*Partition 2: ext2 (where the rootfs should be placed)
 
*Partition 3: swap
 
  
 +
Hotfix 6
 +
* [http://boards.openpandora.org/index.php?/topic/5652-hotfix-6-final-released/ Information and discussion] (2011-10-10)
 +
* [http://www.openpandora.org/downloads/Zaxxon-HF6.zip Full flash update] (will delete all prior user settings; useful if you've screwed something up and are not sure of how to fix it)
  
How it's done:
+
=== Bugs and solutions ===
  
1. Put uBoot's boot control files "boot.txt" and/or "autoboot.txt" into the root of the '''first partition''' of the card (FAT partition in this example)
+
In general, the latest information about bugs will be on the official [http://bugs.openpandora.org/ bugtracker]; that is also the best place to go report a bug.
  
2. Make "boot.txt" and "autoboot.txt" point U-Boot to the '''partition, which holds the root file system''' of your Linux system. This would be parition 2 in this example (ext2 FS).
+
==== PNDs won't run ====
This is done '''using the "root" parameter of setenv'''.
 
  
3. Make "boot.txt" and "autoboot.txt" point U-Boot to the correct '''location to boot your kernel from'''.
+
So you can start Xfce, but you can no longer run any programs or switch to Minimenu since you upgraded to HF6?
This kernel location can be any FAT or ext2/3/4 partition on the SD card.
 
The uBoot commands '''"fatload" and "ext2load" with their parameter "mmc x:y"''' are repsonsible for loading the kernel. Choose the command, which addresses the file system the kernel is located on and make sure to correctly adapt the values x and y.
 
  
This common example boots the kernel from the FAT partition (then this is a "boot partition"), and uses the ext2 file system as root FS:
+
This can easily be solved without a reflash.
  
<source lang="bash">
+
: [http://boards.openpandora.org/index.php?app=forums&module=forums&section=findpost&pid=98627 valhalla] This problem is because of version 1.0-r58.5 of the pandora-scripts package that includes some files that it should not have included and conflicts with the new version of pandora-libpnd. That version is installed at least in HF5rc2.
setenv bootargs root=/dev/mmcblk0p2 rw rootwait vram=6272K omapfb.vram=0:3000K mmc_core.removable=0
 
fatload mmc 0:1 0x80300000 uimage
 
bootm 0x80300000
 
</source>
 
  
If you put the kernel into the root file system's /boot directory, the second line would be different:
+
# Open a terminal in the location where you put your HF6 update PND. In the default file browser, you can do this by right-clicking in the folder where the PND is, and selecting "open terminal here". For example, if you put it on your desktop (<code>/pandora/desktop</code>), the text in the terminal to the left of your cursor should look something like <code>username-openpandora:/media/pandora/mmcblk0p1/pandora/desktop$</code>
 +
# Type in <code>sudo mkdir /mnt/pnd</code> and press "enter". If it asks you for your password, type in what you use to log in to your Pandora, then press "enter".
 +
# Type in <code>sudo mount -o loop HF6-Updater.pnd /mnt/pnd</code> and press "enter"
 +
# Now we'll go to the packages directory in the PND and reinstall a couple of packages. Type in <code>cd /mnt/pnd/packages/other/</code> and press "enter"
 +
# Type in <code>sudo opkg install pandora-libpnd_1.0-r56.5_armv7a.ipk</code> and press "enter"
 +
# Type in <code>sudo opkg install pandora-skel_1.0-r9.5_omap3-pandora.ipk</code> and press "enter"
 +
# To unmount the PND, type in <code>sudo umount /mnt/pnd</code> and press "enter". If it says it can't unmount it, just restart your Pandora.
 +
# That's it, your Pandora should work again!
  
<source lang="bash">
+
Beta versions
setenv bootargs root=/dev/mmcblk0p2 rw rootwait vram=6272K omapfb.vram=0:3000K mmc_core.removable=0
 
ext2load mmc 0:2 0x80300000 /boot/uImage
 
bootm 0x80300000
 
</source>
 
  
'''Note: '''
+
* [http://boards.openpandora.org/index.php?/topic/5616-hotfix-6-rc-released/ RC] (2011-10-07)
 +
* [http://boards.openpandora.org/index.php?/topic/5320-zaxxon-hotfix-6-beta-1-released/ Beta 1] (2011-09-14)
 +
* [http://boards.openpandora.org/index.php?/topic/4118-hotfix-6-alpha-4-released/ Alpha 4] (2011-06-21)
 +
* [http://boards.openpandora.org/index.php?/topic/4065-hotfix-6-alpha-3-out/ Alpha 3] (2011-06-17)
 +
* [http://boards.openpandora.org/index.php?/topic/4056-hotfix-6-alpha-2-is-out/ Alpha 2] (2011-06-16)
 +
* [http://boards.openpandora.org/index.php?/topic/3955-hotfix-6-alpha-1-released/ Alpha 1] (2011-06-09)
  
For "root=" kernel argument, slot numbering begins at 0 (0 is left SD slot, 1 is right SD slot) and partition numbering begins at 1!
+
Hotfix 5
 +
* Information and discussion: [http://boards.openpandora.org/index.php?/topic/2080-hotfix-5-released/ OP] [http://www.gp32x.com/board/index.php?/topic/58867-hotfix-5-released/ GP32X] (2011-03-04)
  
For "mmc x:y" agrument of the fatload/ext2load commands, x is the card number (0 is left slot, 1 is right slot), y is the partition number, beginning at 1(!).
+
Beta versions
 +
* RC2: [http://boards.openpandora.org/index.php?/topic/1877-hotfix-5-rc2-last-one-before-going-final/ OP] [http://www.gp32x.com/board/index.php?/topic/58779-hotfix-5-rc2-last-one-before-going-final/ GP32X] (2011-02-22)
 +
* RC1: [http://boards.openpandora.org/index.php?/topic/1572-hotfix-5-rc-1-ready-for-testing/ OP] [http://www.gp32x.com/board/index.php?/topic/58598-hotfix-5-rc-1-ready-for-testing/ GP32X] (2011-02-09)
 +
* [http://boards.openpandora.org/index.php?/topic/1418-beta-test-upcoming-hf5-firmware-image-beta-4/ Beta 4] (2011-02-01)
 +
* [http://boards.openpandora.org/index.php?/topic/1316-beta-test-upcoming-hf5-firmware-image-beta-3/ Beta 3] (2011-01-28)
 +
* [http://boards.openpandora.org/index.php?/topic/1209-beta-test-upcoming-hf5-firmware-image-beta-2/ Beta 2] (2011-01-23)
 +
* [http://boards.openpandora.org/index.php?/topic/1115-beta-test-upcoming-hf5-firmware-image/ Beta 1] (2011-01-17)
  
 +
Hotfix 4
 +
* Information and discussion: [http://boards.openpandora.org/index.php?/topic/90-pandora-hotfix-4-final-released-2010-08-31/ OP] [http://www.gp32x.com/board/index.php?/topic/56385-hotfix-4-final-released/ GP32X] (2010-08-31)
  
'''Recommendation:'''
+
Beta versions
 +
* Beta 4: [http://boards.openpandora.org/index.php?/topic/69-hotfix-4-beta-4-released/ OP] [http://www.gp32x.com/board/index.php?/topic/56361-hotfix-4-beta-4-pre-final/ GP32X] (2010-08-29)
 +
* Beta 3: [http://boards.openpandora.org/index.php?/topic/17-hotfix-4-beta-3-released/ OP] [http://www.gp32x.com/board/index.php?/topic/56266-hotfix-4-beta-3-released/ GP32X] (2010-08-27)
 +
* [http://www.gp32x.com/board/index.php?/topic/55965-hotfix-4-beta-2/ Beta 2] (2010-08-15)
 +
* [http://www.gp32x.com/board/index.php?/topic/55788-hotfix-4-very-first-beta/ Beta 1] (2010-08-07)
  
Put the kernel into another partition than the root FS is located.
+
Hotfix 3
Reason: In case the root FS partition is flagged "inconsistent" after a system crash or sudden SD card removal, uBoot won't be able to boot from that partition anymore. But the file system cleanup routines can only be run, once the kernel has been booted. Hence it's safer to put the kernel on a different partition.
+
* [http://www.gp32x.com/board/index.php?/topic/54933-hotfix-3-released/ Information and discussion] (2010-07-01)
  
 +
Beta versions
  
==Boot the system==
+
* [http://www.gp32x.com/board/index.php?/topic/54852-pandora-hotfix-3-beta-2/ Beta 2] (2010-06-29)
 +
* [http://www.gp32x.com/board/index.php?/topic/54724-pandora-hotfix-3-beta-test/ Beta 1] (2010-06-25)
  
As you power up the Pandora, hold the shoulder button R. A menu should appear, allowing you to boot from the SD card. (this step isn't necessary if you chose to create an autoboot.txt instead of boot.txt). Remember that this will be an un-configured image, taking a little while longer to boot, and giving the first-run dialogue.
+
Hotfix 2
 +
* [http://www.gp32x.com/board/index.php?/topic/54171-hotfix-2-for-zaxxon-released/ Information and discussion] (2010-06-08)
  
==Access the NAND==
+
Beta version
Once you're booted into the system from SD, you may want access to the NAND rootfs. The following will let you do that.
+
* [http://www.gp32x.com/board/index.php?/topic/54137-pandora-hotfix-pack-2-for-zaxxon/ Beta 1] (2010-06-08)
<source lang="bash">
 
sudo mkdir /mnt/nand
 
sudo ubiattach /dev/ubi_ctrl -m 4
 
sudo mount -t ubifs ubi0:rootfs /mnt/nand
 
</source>
 
  
==Other information==
+
Hotfix 1
An alternative approach to using an SD card to increase the space accessible to the system is [[Extend_Utils#OS_Extends | OS Extend]]. This allows the root filesystem to exist on more than one physical device.
+
* [http://www.gp32x.com/board/index.php?/topic/53580-hotfix-pack-1-and-community-codec-pack-released/Information and discussion] (2010-05-24)
  
==References==
+
Original OS
*[http://www.rjmitchell.ca/~jeff/blog2009/2010/06/07/pandora-running-firmware-from-sd-card-instead-of-nand-flash/ Skeezix's blog]
+
* You can download the very first release of the Pandora's Zaxxon OS from [http://notaz.gp2x.de/releases/pandora/pandora-firmware-2010-05-01-Zaxxon.zip here] (2010-05-01)
*[http://www.gp32x.com/board/index.php?/topic/54290-up-to-date-firmware-tarball GP32x Forum Topic, "Up to date firmware tarball"]
 
*[http://openpandora.org/firmware/ Official firmware page]
 
*[http://repo.openpandora.org/?page=detail&app=sd-install-2011-03-10 The GUI-driven SD installer by David Boucher]
 
  
[[Category:Tutorials]]
+
[[Category:Documentation]]
[[Category:Booting]]
 
[[Category:Storage card]]
 
 
[[Category:Operating system]]
 
[[Category:Operating system]]
 
 
 
 
[[Category:Software]]
 
[[Category:Software]]

Latest revision as of 19:55, 16 March 2016

Super Zaxxon is currently the official operating system for the Pandora based on Ångström Linux|Gnu. Super Zaxxon is a version upgrade system with frequent system-wide small releases. Compatibility is ensured as a basis of Super Zaxxon. Packages, often relying on their own environment, are self-contained within the PND format and available on a PND repo separate from the system packages.

Offline full installation

  • For either method, you need a Pandora and an SD card.
  • Remember that your Pandora will turn on as soon as a charger is connected. It's also not possible to completely power down a Pandora that's connected to an external power supply.
  • Even while charging, a Pandora can be rebooted, either by software (for example, during the installation process below), or with the reboot hotkey: Hold the Pandora button on the keyboard, and flick the power switch to the right.
  • Do not connect an external power supply while the battery is removed.

To NAND - internal storage

This replaces the original Super Zaxxon installation which came with your Pandora.

When the operating system is (re-)installed, all personal files and settings stored on internal flash are DELETED (your PND applications and all data on your SD cards will not be touched). Your Pandora will revert to its default settings and show the first boot wizard on bootup.

Reflashing CAN solve some problems, but it's not the magical tool that can fix everything. You should always try to find another solution. Before reflashing, try the upgrade path below. You can get help at the Support Section at the boards.

  1. You will need an SD card formatted with the FAT32 filesystem (default on Windows).
  2. Download the latest full-flash operating system zip.
  3. Extract the contents of the operating system zip file to the root (top level) directory of the SD card.
  4. Make sure your Pandora is turned off (remove the battery in case it crashes or doesn't turn off by using normal means).
  5. Insert the SD card into your Pandora's first slot (the one on the left, which is closer to the headphone jack).
  6. Press and hold the right shoulder button ('R'), then turn the power on (if you removed the battery, insert it while holding 'R').
  7. A text menu should appear on screen. Switch to "boot from SD1" using the D-pad, and select this entry with either the 'B' or 'X' controller button.
  8. Wait for the flash process to finish. Connect a charger to be sure the battery doesn't run out while flashing. Press enter when asked to do so. This might take up to 15 minutes, so be sure to wait for it to finish.
  9. If you use an external power supply, the device will reboot. Otherwise, it should turn off - in this case press power (without holding 'R') to turn it back on.
  10. The Pandora should then start its first boot process which might take up to 15 minutes. Be sure to wait for it to finish, otherwise firmware corruption might happen. The installation process will show some warnings, which can be safely ignored.
  11. When everything is set up, you will be guided through the first boot wizard.

To SD-card - external storage

It is also possible to boot Super Zaxxon from an SD card without modifying the NAND installation. This option offers more space than is available in the NAND, and you can test changes to the OS without risking breaking the internal installation. You will need an SD card that works correctly with Linux file systems on the Pandora (see SD compatibility list).

This option uses the tar.bz2 version of the OS.

With GUI-tool

If you have an existing installation of Super Zaxxon you can use the GUI-driven tool sd_installer.pnd by David Boucher to install to an SD card. You need the downloaded Super Zaxxon tarball, the sd_installer.pnd and a suitable SD card.

Done Manually

You can extract the tar.bz2 version of the Pandora image onto an SD card and boot off it directly. The simplest layout is to format the card with a single EXT2 partition. Create a boot.txt / autoboot.txt in the root of the SD card to pass parameters to u-boot. An example for the boot.txt / autoboot.txt to boot from /boot/uImage-3 on the (EXT2) first partition of your SD Card would be:

setenv bootargs root=/dev/mmcblk0p1 rw rootwait vram=6272K omapfb.vram=0:3000K mmc_core.removable=0
ext2load mmc 0 0x80300000 /boot/uImage-3
bootm 0x80300000

Do not use the 2.6 kernel - the first boot will fail and corrupt the OS.

For advanced options, such as using other file systems or more than one partition, see Boot setup.

The card must be inserted in the left slot to boot from it. If boot.txt is used, hold down the R-trigger when powering on the Pandora and select the SD card from the boot menu. If autoboot.txt is used, the SD will be booted automatically when the Pandora is powered on.

Be sure to edit /etc/fstab on the SD card and delete the reference to the /boot partition on the NAND. Otherwise, running an OS update on the SD card might overwrite the kernel on the NAND with the wrong version. It originally looks like this:

# The /boot kernel volume on the OpenPandora NAND.
ubi1:boot            /boot                ubifs      defaults              0  0

Upgrade - distribution upgrade

Only upgrade the parts that need upgrading. Versions after Super Zaxxon 1.52 come with an online operating system update utility: Just select System -> Upgrade Pandora OS from the Pandora menu to download the latest system packages (needs working internet connection).

Online - install from a system in use to a drive that isnt

The UBIFS-Version can be used to flash the whole firmware to the Pandora.

http://openpandora.org/firmware/images/Angstrom-pandora-xfce-image-glibc-ipk-2010.4-test-20140430-omap3-pandora.ubifs.img

It is also possible to do an install while the system is running. Grab the ubifs image and install that from nand to SD-card or vice versa. This is an advanced option.

The sourcecode for the programs included in the images can be found in the sources-directory, including licenses for each single one of them. The kernel and u-boot sourcecode as well as some other Pandora specific sourcecode can be found on http://git.openpandora.org/ Advanced users can get raw firmware images and rootfs (for SD Card bootup) as well as older versions here.

Compile build from source code

openembedded.git

This the the OpenEmbedded repository containing recipes for all kinds of stuff.

Head Content
op.openembedded.next .next with Pandora specific changes
org.openembedded.dev .dev without any changes
op.openembedded.dev .dev with Pandora specific changes
op_unstable Something unstable I'm guessing

openpandora.oe.git

This is a Pandora specific OpenEmbedded overlay containing recipes only used on the Pandora.

Head Content
master
overlay.next
overlay.stable

pandora-oe-environment.git

This contains scripts to set up bitbake, and the above OpenEmbedded repositories.

Environment setup

git clone git://git.openpandora.org/pandora-oe-environment.git pandora-firmware
cd pandora-firmware
source ./op-env-oe.sh
./initial-setup.sh

Building Yars' Revenge W.I.P. (Also called .next). Query aTc or DJWillis until you get a response.

The following instructions will allow you to build the current .next image.

Remember that your building the tip of the experimental tree and not everything even remotely works. Best for people who want to hack and help get it into shape. Do not expect anything remotely good enough to run on your Pandora for real

It is suggested that you use Debian or a Debian chroot.

In addition to the base Debian install you will need:

autoconf automake build-essential coreutils diffstat diffstat texi2html gawk chrpath docbook-utils fdisk gawk gcc git git-core gnome-doc-utils groff help2man libc6-dev-i386 libsdl1.2-dev liburi-perl make mercurial python-pysqlite2 qemu-arm-static scrollkeeper subversion texi2html texinfo unzip util-linux x11-xserver-utils

cd <INSTALLDIR>
git clone git://github.com/openpandora/openpandora-oe-environment.git
cd openpandora-oe-environment
./openpandora-setup.sh config

This will install a number of git repositories containing the build tools and recipes:

  • bitbake
  • openembedded-core
  • meta-openembedded
  • meta-angstrom
  • meta-texasinstruments
  • meta-openpandora
  • The basic hardware layer that works with OpenEmbedded and can be used in most OpenEmbedded distributions (Angstrom, Yocto, SHR etc.). That hardware layer also needs meta-texasinstruments (the scripts will bring that in, the Angstrom ones or ours).

meta-openpandora-vendor

  • The vendor (i.e. openpandora) specific stuff, scripts, tweaks, image files, task files (i.e. what to install and order) and some recipes for things like libpnd.

From time to time you will want to update and fetch the changes to the base and openpandora recipes. e.g. those report on #openpandora by CIA-57

. ~/.oe/environment-openpandora
cd <INSTALLDIR>/openpandora-oe-environment
./openpandora-setup.sh update

There are a number of recipes for build images in openpandora-oe-environment/metadata/meta-openpandora-vendor/recipes-core/images :

  • pandora-core-image no desktop or X11
  • pandora-xfce-image XFCE desktop environment
  • systemd-pndwip-image
. ~/.oe/environment-openpandora
cd <INSTALLDIR>/openpandora-oe-environment/build
bitbake systemd-core-image

This will download required sources and package dependancies, depending on the state of updatesm, build packages and produc an image.

The preferred method for sending patches for meta-openpandora and meta-openpandora-vendor is to create a fork in github apply you changes and send pull requests to OpenPandora Firmware mailing list: firmware-dev@openpandora.org (subscribe)

Kernel status

The first firmware release was based on a heavily patched linux-2.6.27-omap1 kernel. linux-omap used to be OMAP community kernel fork, nowadays its code was either merged to mainline or dropped. Further OMAP development continues on mainline kernels, linux-omap tree is mainly used to queue developed code to mainline.

Current firmware releases are based on 3.x kernel series.

Driver support in 3.x series is more or less complete, however not all parts are merged to mainline kernel due to various reasons.

Merged code (already in mainline as of 3.4)

  • board support (enables UART, I2C, SPI, RTC, MMC{1,2,3}, NAND, OTG, EHCI, gpio-keys, leds-gpio, keypad, touchscreen, regulators)
  • sound: ALSA ASoC machine driver
  • bq27500 fuel gauge
  • LCD panel driver
  • wl1251 WiFi driver glue (portions only in 2.6.37)
  • charging (partial only, 2.6.37)
  • wl1251 complete powerdown/suspend using runtime_pm (2.6.38).
  • backlight driver (3.4)

This doesn't list various bugfix patches to get above working :)

Not merged

now in openpandora.org GIT (mainline merge status in brackets)

  • nubs (aka vsense, needs rework for mainline)
  • keypad fn handling (not allowed in mainline)
  • PWM LEDs (needs rework)
  • Overclocking support
  • some charging bits (too many hacks)
  • various random hacks that benefit pandora but may harm other devices, hence mainline incompatible

OpenPandora.org git structure

Support for various kernels is available in pandora-XX branches or tags, XX corresponds to last part of kernel version number. 2.6.27 is an exception, it's in pandora-27-omap1 branch.

Branches based on pre-release -rc kernels will be often rebased. This means you can't do 'git pull' on them, use 'git fetch; git reset --hard origin/pandora-XX' instead. Warning: this will destroy all your changes (even if they are commited), backup them first!

Configuring newer kernels

When compiling mainline kernel, use

make omap2plus_defconfig

for openpandora.org kernels you can use omap3_pandora_defconfig

make omap3_pandora_defconfig

after either of those are run, you can tune the configuration for your needs:

make menuconfig

Now you should be able to build a working kernel. More info available at Kernel build instructions.


Pandora Firmware Governance

The Pandora device is an open ecology --

The official firmware is open source and open to patches from the public; to maintain high quality firmware releases a process needs to exist -- audit trails need to be kept to ensure licensing is clear, testing has to be ensured to keep quality high, and our standard practice for submission made clear so it is easy and swift to submit your work.

Help us sort it out :) This process itself is open source -- as the ecosystem expands our model will change with it; if you are seeing problems, then contact one of the maintainers, mailing list, or the community at large and All of which are part of the Team

The firmware is all of the software that is supplied with a device, so does include the applications which are provided as standard. It is all open source (meaning that OpenPandora provides the source code, often as a requirement of the GNU GPL). A small quantity of the firmware is provided as binary files, which OpenPandora may not be at liberty to disclose the full details of. An example of closed source firmware is for the analogue nubs, which are shipped with small micro-controllers pre-programmed by the nub manufacturer. Only some of the hardware designs and occasional binary blobs like the WiFi driver are currently not open source; the rest of the firmware stack is open source (predominantly GPL with some LGPL).

Replacing the Firmware (Un-bricking)

Rather than patch the firmware, the firmware may be replaced wholesale with a freshly downloaded firmware. This ought to be regarded as a last resort in the case of problems, there is almost certainly a simpler way to fix most problems.

The process for reinstalling the firmware is as follows: [1] , otherwise firmware corruption might happen again.

In case of emergency, there is an older version here (Version: 2010-05-01-Zaxxon)

Debugging broken firmware

[2] will help you in case booting normally breaks. That way you can provide debugging info to source what went wrong instead of just re-installing.

Reporting bugs

Please do make sure that you are using the latest official firmware and hotfix. You can find it in the official support section of the website. Reports made against older versions might be invalid since the issues were already fixed.

If the bug does still exist in the latest released version, please follow these steps when reporting it in the official bug tracker. You will need to register an account in the tracker. Once you are logged into the account, just click on Add new task to see a form where you can provide the information required to assign and solve the bugs. Below is an explanation of what you should enter where.

Stuff that belongs there

  • Bugs that happen with the default operating system on the Pandora.
  • Things missing in the default operating system on the Pandora.
  • Bugs and issues with the codec pack.

What does not belong in the official tracker

  • Bugs with other .pnd files like eg emulators, games or other applications that are not part of the main OS.
  • Features missing in other progs.

Issue attributes explained

Here is the list of things you should keep in mind and mention in your bug report or feature request to make sure that it can be solved. Please do also make sure to react on comments that are left in the report, since the people that feel responsible for solving the issues might need more information that only you can provide.

Summary
This should be a really short summary of the issue at hand, as clean as possible. Something like eg ABC does not work is not good, better write ABC crashes when sounds are played.
Drop Down Boxes
This area on the left side is used to provide some general information that makes it easier for devs to assign the reports to the correct people for fixing things. They are often useful in fixing the report in the end, too.
Task Type
Just select it from the drop down box. If you want to report a bug, make it Bug Report, if it is a missing feature, select Feature Request. You should only select To Do (Reminder) if you are one of the devs to leave a note for yourself.
Category Core
Everything that belongs to the basic systems like the kernel and the drivers. The real core that lies beneath.
Category Application
Meant for all the programs on top of the basis core. This eg. includes problems in minimenu, Pandora specific XFCE, pidgin, ... Basically you should ask yourself if your issue might be kernel/driver related, if it is not, select this one.
Status
Can only be changed by bug tracker admins (aka "official pandora devs").
Operating System
Select the "series" of the operating system on the pandora here. The first firmware series is called Zaxxon.
Severity
How important do you estimate this bug/issue? It should only be marked critical if it is a real security breach or something breaking *everything*. Often the default low is fine, since the values can be adjusted later on by bug tracker admins.
Priority
Can only be changed by bug tracker admins (aka "official pandora devs").
Reported Version
Please select which version state your pandora has in the release that you selected under Operating System. Basically list the latest hotfix that you installed.
Due in Version
Can only be changed by bug tracker admins (aka "official pandora devs").
Details
A neat, large field with lots of space for all the details that you can provide. Yes, in general a case of "the more, the better" applies here. Here is a list of things that you should mention in the report:
Problem
Detailed description of the *exact* problem you see. Please do include some log output, if you have it available.
Reproducibility
How often does the issue occur? Is it reproducible? If it is, please provide detailed steps to do so.
Actual Results
What happened after you performed the steps you listed under "Reproducibility"?
Expected Results
What should have happened?
Additional Information
Please do list any additional information, like for example the *exact* version of your OS (or the application). This is especially important if you were not able to select the exact version in the Reported Version drop down field. If you have any log output or patches, please do attach those as files to the report. If the file size would be too big, just compress them.

Syntax in the Flyspray issue tracker

Internal reference to other issues

To refer to another issue use the syntax FS#N where N is the issue number you want to refer to, i.e. FS#123. The parser then automatically renders this as a link to the other issue (HTML href attribute), and shows the issue's title in the mouseover info (HTML title attribute).

Submission Workflow

The general workflow for submitting a patch is something like this:

  1. Clone the appropriate section of the GIT repository - GIT is http://git.openpandora.org/cgi-bin/gitweb.cgi
  2. Apply changes and have fun
  3. Document and pass test cases
  4. Contact the maintainer of the subdomain the patch falls within - by mailing list above, or perhaps by PM in the forums, or email; for example, post first to the mailing list. In a pinch for libpnd submissions talk to skeezix, or notaz regarding kernel changes. But talk to the mailing list first, to keep discussion logged and centralized; if a backup neds to step up, the post history will already be there, right?
  5. If the maintainer is unavailable, contact the backups as listed above; they will know how to contact the champion, or can make the submission call themselves.
  6. If the maintainer and backups are not available, contact EvilDragon as release maintainer

Submission Standards

Submission are welcome! Historically the firmware has been built by a very small team, but that team size limits the number of changes that can be managed and developed simultaneously. If you've the skills and motivation to help, feel free to join the fray!

Patches have a few requirements; failing these requirements will cause your patch to be overlooked!

  • Clearly documented -- what is this patch for?
  • Clearly tested -- a list of test cases and test results -- the onus is on the submitter to test and prove testing; the committers have limited time and many people talking to them
  • Proper format -- unix line ending, not dos line endings :)

Submitting patches

It's best to send formal GIT-generated patch so that you get proper credit for your work and to make applying the patch easier. You can also add 'Signed-off-by' line ('-s' on 'git commit' will do it for you), which has the same meaning as for mainline Linux.

So basic workflow would be:

<make changes>
git config --global user.name "My Name"
git config --global user.email "myname@domain.com"
git add <changed files>
git commit
git format-patch -o /somewhere/ -1

Then create a new feature request in bugtracker and attach the generated file(s), or send them to the mailing list, or post them on the forums, whatever is more convenient to you.

Updating Super Zaxxon

Updating graphics drivers

guided tour de blog by eki

Community Codec Package - for Pandora OS, Release 2010-05

Installation of non-free codecs is highly discouraged. Consider instead free counterparts like opus, ogg vorbis and Flac for audio. webM, ogg theora for video or equivalent.

Due to licensing issues, licensed codecs like MP3 or MPEG-Video can not be distributed freely. They are optionally available in the Codec Package. The package will install Gnome-MPlayer as well as a lot of audio / video-plugins and enables NTFS-support. To install it, simply download the .PND-Package and place it into either the /pandora/menu or /pandora/desktop - Folder on your SD-Card. Simply start it and follow the on-screen instructions. You can remove the .PND-Package from the card once it has been installed.

Legal Notice

Patent and copyright laws operate differently depending on which country you are in. Please obtain legal advice if you are unsure whether a particular patent or restriction applies to a media format you wish to use in your country.

Click here to download Community Codec Pack

The Codec Package enables NTFS-Support and installs packages

Older versions of Ångstrom

In case you need them, you can download older firmware relases here.

SuperZaxxon1.50 can be upgraded to 1.52 without reinstallation by downloading and running the Pandora SuperZaxxon updater PND.

Zaxxon (Old version)

The original Zaxxon firmware has been updated with a number of Hotfixes. Since then, a newer firmware called Super Zaxxon has been released.

Warning: If you do not have Zaxxon installed (boot screen says SuperZaxxon or something else), do not attempt to install any of these hotfixes, doing so will break the system.

In general it's possible to apply hotfixes to any lower firmware versions without installing all previous hotfixes.

Hotfix 6

Bugs and solutions

In general, the latest information about bugs will be on the official bugtracker; that is also the best place to go report a bug.

PNDs won't run

So you can start Xfce, but you can no longer run any programs or switch to Minimenu since you upgraded to HF6?

This can easily be solved without a reflash.

valhalla This problem is because of version 1.0-r58.5 of the pandora-scripts package that includes some files that it should not have included and conflicts with the new version of pandora-libpnd. That version is installed at least in HF5rc2.
  1. Open a terminal in the location where you put your HF6 update PND. In the default file browser, you can do this by right-clicking in the folder where the PND is, and selecting "open terminal here". For example, if you put it on your desktop (/pandora/desktop), the text in the terminal to the left of your cursor should look something like username-openpandora:/media/pandora/mmcblk0p1/pandora/desktop$
  2. Type in sudo mkdir /mnt/pnd and press "enter". If it asks you for your password, type in what you use to log in to your Pandora, then press "enter".
  3. Type in sudo mount -o loop HF6-Updater.pnd /mnt/pnd and press "enter"
  4. Now we'll go to the packages directory in the PND and reinstall a couple of packages. Type in cd /mnt/pnd/packages/other/ and press "enter"
  5. Type in sudo opkg install pandora-libpnd_1.0-r56.5_armv7a.ipk and press "enter"
  6. Type in sudo opkg install pandora-skel_1.0-r9.5_omap3-pandora.ipk and press "enter"
  7. To unmount the PND, type in sudo umount /mnt/pnd and press "enter". If it says it can't unmount it, just restart your Pandora.
  8. That's it, your Pandora should work again!

Beta versions

Hotfix 5

  • Information and discussion: OP GP32X (2011-03-04)

Beta versions

Hotfix 4

  • Information and discussion: OP GP32X (2010-08-31)

Beta versions

Hotfix 3

Beta versions

Hotfix 2

Beta version

Hotfix 1

Original OS

  • You can download the very first release of the Pandora's Zaxxon OS from here (2010-05-01)