Pepper Pad 2

From eLinux.org
Revision as of 19:06, 3 June 2021 by Vrehorst (talk | contribs) (initial outline for Pepper Pad 2)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

The Pepper Pad 2 was an ARM Linux-based Internet tablet computer which was released in 2005. By 2007, it had been replaced by the Pepper Pad 3, and the entire platform replaced with a new design with an AMD Geode LX x86 CPU.

The original Pepper Pad only existed as a prototype and was never sold to the public. In contrast to the Pad 2, the original Pad had a portrait-mode screen. Few photos of the prototypes exist.

The Pad 2 hardware uses many of the same chips as the Intel "Mainstone" and "Mainstone II" XScale development boards.

The main user interface was called the Pepper Keeper, and was written in Java. Pepper Keeper embedded Firefox 1.5 for its web browser and some of its applications. Keeper applications were written in JavaScript and XUL. External programs were used for some functionality - for example, an mplayer binary was used for video playback.

The underlying Linux distribution was based mostly on MontaVista Linux CEE and Pro version 3.1.1. The original kernel version used was 2.4.20. This was later updated to a kernel based on 2.6.13.4. Pepper released patches to GPL-licenced code which they modified, and distributed their custom RPMs and software updates using a service named "pup".

Pepper Pad 2 Features

  • Rugged exterior, with rubber end caps and built-in folding stand
  • 3600mAh internal lithium-ion battery providing multiple hours of run time
  • Large touch-sensitive screen with split thumb-pads on either side for keyboard entry and scroll wheel
  • WiFi (802.11b) and Bluetooth 2.0 wireless support
  • IR receiver and blaster
  • SD/SDIO Card slot and USB 1.1 port
  • Mic input and headphone output
  • Composite video output via TRRS connector

Technical Specifications

Pad 2 with the back cover removed.
  • CPU: 624MHz Intel XScale PXA270 ("Bulverde")
    • ARMv5te architecture with wireless MMX instructions
  • GPU: Intel 2700G5
    • 704KB built-in memory
    • 2D and 3D (OpenGL 1.0 ES) acceleration
    • MPEG-4 video playback acceleration
  • Memory: 256MB SDRAM, soldered to motherboard
  • Onboard storage: 20GB 1.8" Toshiba MK2004GAL hard disk drive
  • Flash storeage: 16MB Intel StrataFlash
    • Contains the bootloader, Linux kernel image, backup kernel, serial number, and diagnostic initial root disk
  • Wi-Fi: GemTek WL-672 802.11b CompactFlash WiFi card
  • Bluetooth; Bluetooth 2.0 connected via the XScale BTUART pins

Notable features

All programs on the Pad 2 run as the root user. Once the Pad has started, pressing Ctrl-Shift-1 would launch an xterm window with a root shell.

The keypad does not require the user to hold down modifier keys, merely to press them in sequence. Typing a second-level key character is accomplished by pressing and releasing the Blue button, and then pressing the desired key.

Along with the Linux OS and Pepper Keeper, the Pad 2 also had all of the MontaVista Linux Pro 3.1.1 RPMs on-disk.

The Pad 2 motherboard has many developer and debugging friendly features. Whether these ports were required as part of the manufacturing process is unclear. They include:

  • JTAG connectors for the XScale CPU and its companion CPLD
  • A full serial port connected to the XScale FFUART. The U-boot bootloader and the Linux console can be reached via this port.
  • A port labelled JDEBUG, usage unknown
  • Eight red LEDs mounted along the edge of the motherboard, normally completely obscured by the case. These likely perform the same function as the debug LEDs on the Intel Mainstone development board.
  • Two momentary micro-switches in the middle of the motherboard, also normally completely covered by the case.

Linux Kernel Patches

A number of kernel patches are needed to build a Linux kernel that functions on the Pad 2.

Besides patches for the platform's specific quirks, Pepper wrote a number of new Linux kernel drivers for the specific hardware in the Pad 2:

  • Gasgauge, for controlling battery charging and the bq2023 battery monitor chip
  • An IDE interface with support for DMA transfers
  • Keyboard driver for the split-keypad
  • LIRC-compatible driver for the Pad 2's TVIR hardware