Skip to content
This repository has been archived by the owner on Mar 20, 2023. It is now read-only.

Latest commit

 

History

History
76 lines (55 loc) · 3.27 KB

README.md

File metadata and controls

76 lines (55 loc) · 3.27 KB

NOTE: This project does not work on a modern firmware. The whole HP Prime communication protocol changed and I have no plans to update anything.

PrimeComm

Small application/library suite to send and receive HP Prime Calculator files. Built reverse engineering the device.

PrimeComm


Windows application to send, receive, convert programs and do other operations with the HP Prime Calculator. Is able to do some code refactoring, convert formats like images to something the HP Prime can display, etc:


PrimeCmd


Provides commandline access for PrimeComm operations.

PrimeSkin


Utility to edit Virtual Prime/39gII emulator skins.

PrimeLib

Library to include HP Prime calculator functions from PrimeComm on your application. Documentation available here: http://services.ried.cl/primecomm/Help/?topic=html/4c2db46f-2e91-7461-ee2e-68962685662e.htm

Example: Small example showing how to send and convert files:

using PrimeLib;

class Program
{
    static void Main(string[] args)
    {
         // Instantiate the first connected calculator
         var myCalculator = new PrimeCalculator();
         
         // This checks for hardware changes, there are events available too, 
         // to stay notified from Insertions and Removals as PrimeComm main app uses
         calculator.CheckForChanges();
         
         // Creates a ready to send data object, with a new name for the script, reading an existent program backup
         var myProgram = new PrimeUsbData("my program", new PrimeProgramFile(@"d:\my_program.hpprgm", false).Data, 
             myCalculator.OutputChunkSize);
         
         // Check if my calculator is connected, and send the program
         if(myCalculator.IsConnected)
             mycalculator.Send(myProgram);
         
         // Save and convert the program to plain text
         myProgram.Save(@"d:\my_program_backup.txt"); 
    }
}

Note: The current version 0.7 don't implement yet the Command Server mode arguments and since this was a major change to a library based applications, there are some small glitches yet when Receiving and then doing something else.

Demos

Version 0.1: https://www.youtube.com/watch?v=4QGBjOD3LHo (Send and receive)
Version 0.5: https://www.youtube.com/watch?v=FxG-R0QZ-qI (Conversion to plain text)
Version 0.7: https://www.youtube.com/watch?v=UVALe40TPkc (Command server mode)

Related

HID/USB Library: https://github.com/mikeobrien/HidLibrary
USB Library: https://bitbucket.org/adamfettig/usb (early version)
Source: https://github.com/eried/PrimeComm
Download last version: http://servicios.ried.cl/primecomm/
Details: http://ried.cl/proyecto/utilidad-para-intercambiar-archivos-con-la-hp-prime-primecomm/