Difference between revisions of "HP Prime/Linking Protocol"

From TI-Planet's HP Calcs Wiki
Jump to navigation Jump to search
(Add section about Normal mode in lower-level USB behaviour)
(Reformulate and update section about libhpcalcs / hplp.)
Line 466: Line 466:
 
=== "Normal" mode ===
 
=== "Normal" mode ===
  
The protocol is being slowly decoded, and some early, rough code is being posted at https://github.com/debrouxl/hplp . When it has become a standalone project with an interactive interface in a terminal, it can be used by a wider audience...
+
The protocol is being decoded, and a toolkit for communicating with Prime calculators (six basic operations, more in progress) is available from at https://github.com/debrouxl/hplp . Since 2013/11/03, the program has an interactive terminal-based UI, which makes it usable by a wider audience, though lack of a GUI is still an obvious showstopper for many...
  
 
=== Reflashing mode ===
 
=== Reflashing mode ===

Revision as of 09:26, 5 November 2013

This page aims at providing information about the linking protocols of the HP Prime.

The TI-Nspire uses vendor-specific class and proprietary protocols which require specific drivers; the Casio Prizm uses MSD, and the HP Prime uses standard classes as well. Standard classes which do not require extra driver installs are a boon to users.

High-level USB behaviour

"Normal" mode

In normal mode, the Prime exposes itself as a Human Interaction Device (HID). That's a standard class, with built-in drivers in pretty much any USB-supporting OS, aimed primarily at mice, keyboards and joysticks; lots of manufacturers (ab)use that class for other purposes.

Click to see the USB descriptors dump : Details anzeigen


Reflashing mode

In reflashing mode, the Prime exposes itself as a Mass Storage Device (MSD), another standard-class with built-in drivers.

Click to see the USB descriptors dump : Details anzeigen


Lower-level USB behaviour

"Normal" mode

The protocol is being decoded, and a toolkit for communicating with Prime calculators (six basic operations, more in progress) is available from at https://github.com/debrouxl/hplp . Since 2013/11/03, the program has an interactive terminal-based UI, which makes it usable by a wider audience, though lack of a GUI is still an obvious showstopper for many...

Reflashing mode

Here is an analysis of the raw USB data for an upgrade to 0.30 firmware from 2013/08/09, captured by someone else.

Tools: USBpcap on Windows for capture; Wireshark and hte (or any other hex viewer/editor) on Linux for interpretation.

Additional information: SCSI_command‎ (Wikipedia) and pages linked from that one.

Details anzeigen