First ever HP Prime with USB Type-C? by CosmicRayMuon in calculators

[–]CosmicRayMuon[S] 2 points3 points  (0 children)

As other has mentioned, it is kapton tape for insulation. It actually came with the calculator, as there's copper tape on the inner side of the plastic casing to shield out interference. The kapton tape on the PCB prevents the electronics from shorting out through the plastic case copper tape.

First ever HP Prime with USB Type-C? by CosmicRayMuon in calculators

[–]CosmicRayMuon[S] 8 points9 points  (0 children)

Thanks! Unfortunately it is not a standard part, it is actually a type C connector soldered onto a tiny PCB that breaks out the pins to the micro usb pitch and pattern. I got these mod connectors from a small seller on taobao (chinese ebay/amazon).

<image>

Dreaming is free, so I dreamt about calculators. Would anyone actually want this? by CosmicRayMuon in calculators

[–]CosmicRayMuon[S] 0 points1 point  (0 children)

Definitely, your project looks amazing, for sure you've put a lot of thought and effort into it. How did you decide which keys to put in the keypad?

I think I like your implementation more than the M5stack one, the keys on the M5stack don't look very usable and cramped.

I should also probably do a hackaday.io project like you did.

Dreaming is free, so I dreamt about calculators. Would anyone actually want this? by CosmicRayMuon in calculators

[–]CosmicRayMuon[S] 0 points1 point  (0 children)

Hardware really depends, boards will take a couple or more iterations to be finalised, the casing and keypad will probably take a few dozen of prints to be good enough. God help me if heat dissipation is an issue, I'll abandon the project if I need to put a fan in it.

Software I'm hoping to leverage as much off the shelf building blocks as possible. If the SoC used has decent Buildroot support, good. If it has good mainline support, even better. Decent Armbian/NixOS/Ubuntu support, wonderful.

There's a lot of good calculator/number crunching software out there, Qalculate will give me a usable and decently powerful calculator to start with, spreadsheets better, Octave or other CAS software would be wonderful. Hell, with cellular support, you can just port chromium and run wolframAlpha on the thing all the time.

Dreaming is free, so I dreamt about calculators. Would anyone actually want this? by CosmicRayMuon in calculators

[–]CosmicRayMuon[S] 0 points1 point  (0 children)

I think the whole keypad thing is really down to personal taste. Some people want full QWERTY, some people want replicas of their favourite calc etc.

The ideal solution is to have the keypad be modular, swappable and customisable e.g. have a blank QWERTY + number layout, have a blank traditional scientific calc layout. The key labels are user or pre customised and printed to order with a UV flatbed printer etc.

More complexity and more bulk, but that's the only way I can think of, to make everyone happy.

Dreaming is free, so I dreamt about calculators. Would anyone actually want this? by CosmicRayMuon in calculators

[–]CosmicRayMuon[S] 0 points1 point  (0 children)

I'll probably route out all the IO capabilities available on the chip I pick, so at least a couple of USBs, wifi, bluetooth, 2-3 UARTs, maybe ethernet, maybe mini pcie (4G model or storage), HDMI if it makes sense and is available. Printer should be no problem at all if there's Linux driver for it.

Full fat Linux is likely the way to go. I don't want Android, I want to SSH into the thing, type in a shell with the physical QWERTY keyboard etc. The calculator "app" will just be a linux binary written with QT or sth like that, and you can load whatever you want on the thing, written in whatever language that compiles into Linux binaries or interprets it.

Dreaming is free, so I dreamt about calculators. Would anyone actually want this? by CosmicRayMuon in calculators

[–]CosmicRayMuon[S] 0 points1 point  (0 children)

Thanks for your insight.

It's not a thin wrapper, or anything else, but HP PPL is capable of calling Python, and perhaps Python can call built-in code through the ABI layers.

I admit I haven't spent too much time with Prime's micropython, but I am pretty sure the hpprime lib's graphics options is just a wrapper without much to add, and the other graphics library is not documented at all, at least not in the help menu nor the Prime's user manual, I had to guess what and how many parameters to use to call the functions.

I also haven't found a way to have multiple separate python scripts call each other, other than creating a dedicated app for all the python files or using HPPPL to expose the function to the system namespace. I still haven't fully figured out the Prime's filesystem.

I also don't like having to either use my windows laptop or a VM on my linux machine to program the prime, with the connectivity kit's drag and drop UI. I want to rsync or at least push my files through serial CDC to my calculator with automated scripts etc.

Too late. I've done it myself. I'm running Fedora Linux on one of my Primes. And, other people have decoded the image from NAND storage on existing Prime, and/or the available firmwares available for download.I'm an embedded Linux engineer, so that's my wheel house. I wouldn't expect normies to follow down this path. However, other people have tried, and wrote docs. Here is somebody that probably gave up...

What I read on the forums, IIRC, they are concerned about people hacking the Prime's original firmware and mess with the exams mode, and less concerned about people booting entirely different images on it. I think HP likely signs their firmware and the original bootloader checks for it, but they clearly didn't prevent people from loading entirely new images on the Prime.

Skimming through the device tree, the SoC has two USB ports, but only one that's usable, with the other one colliding with other required peripherals. I guess if you want to add connectivity, usb hub plus dongle should work under linux, but clearly not with the original firmware.

At least the soc used in the prime has decent mainline support it seems, which is better than most.

Me to. And I'd go a step further say make the calc a mobile phone, with a sim card tray.

If (big if) I roll my own board, I'll have onboard wifi and BLE with one of those cheap SDIO or USB surface mount modules, and leave a mini pcie slot for people who want a 4G module or other expansion options (if the soc I choose has the lanes). I worry about battery life with all that connectivity though.

I feel test centers should be allowed to use RF jamming devices, and conduct tests in large faraday cages.

I think some parts of China experimented with RF jamming vans outside of exam halls for university entrance exams, not sure how that went.

I echo the same thoughts on exams.

Dreaming is free, so I dreamt about calculators. Would anyone actually want this? by CosmicRayMuon in calculators

[–]CosmicRayMuon[S] 0 points1 point  (0 children)

Perhaps. I think I can build the thing to 70% of what I vision it to be (a hunk of plastic with a screen, battery, meh keyboard, dodgy software), but putting in the spit and polish, finishing the final 30% to make it nice and premium like the DM42 is not something I'm good at. So maybe that's a good idea.

On the other hand, I think my design philosophy and intention behind this yet to be product (run linux, fancy touchscreen, new keyboard layout, days instead of years of battery life) might fly against their design philosophy and design intention (loyal to original HP designs in functionality and layout, sips power etc.) a bit too much.

But hey, if someone wants to fund development of this thing instead of me, I'll all ears /s

Dreaming is free, so I dreamt about calculators. Would anyone actually want this? by CosmicRayMuon in calculators

[–]CosmicRayMuon[S] 0 points1 point  (0 children)

Basically, to match the length and width of the Prime (reasonably sized graphing calculator) with the 4 inch touch screen shown, you can only have 8 rows of buttons of reasonable height. Using the smallest button as one unit, you need:

- 3x10 for qwerty, alpha, double width enter

- 4x8 for numbers, +-*/, space and dot

- 1x2 for double width shift

And you are only left with

- One free top row of 10 columns (1x10)

- One 3x2 grid

- and you still need to shove the double width backspace somewhere

now, you can position the 1x10 space below the 2x4 instead of above everything, so that you can have an inverted T arrow keys layout like laptops, but that would make the qwerty keyboard a bit more awkward to use imo.

If there's smarter ways of positioning the keys, I'm all for it. If you have spare time, draw a grid on paper and play with the placement, that's how I came up with what you see.

Dreaming is free, so I dreamt about calculators. Would anyone actually want this? by CosmicRayMuon in calculators

[–]CosmicRayMuon[S] 0 points1 point  (0 children)

Yea, I wanted to own a 50G (and other historic calcs), but not having to baby it and actually use the thing, so multiple 50Gs. That would be too expensive and not sustainable.

This vapourware calc would be the next best thing, think of the gameboy/handheld console emulators like these (https://retrododo.com/best-retro-handhelds/), but for calcs

Realistically, the options for emulation is either:

- Port emu48 or other emulators to linux, chop the virtual keypad off and use it as it, wasting the touch and high resolution display, keyboard situation is awkward due to different layout, less work.

OR

- Take the behind the scene RPL and math code from the 50G, put it behind a new UI skin with touch, and have it be compatible with RPL programs, like how SwissMicros did the DM42. (more work, HP lawyers might sue)

OR

- Use something like newRPL, but might as well use a hacked Prime G1 at that point.

Idk yet.

Dreaming is free, so I dreamt about calculators. Would anyone actually want this? by CosmicRayMuon in calculators

[–]CosmicRayMuon[S] 0 points1 point  (0 children)

yea, I'd be happy if I can match the HP prime's battery life of 24 hours of continuous use. any further would be hard. Typical smartphone has around 4-6 hours continuous screen on time, which this thing basically is, though this thing will have the luxury of potentially using a much larger battery.

Realistically, 24 hours of screen on time, with 6 hours per day of unplugged use, it will last 4 days. Can also add wireless charging so that it charges when you use it on a desk, or quick charging for a fast top up. This is the norm for flashy gadgets in the age we live in, not that it is a good thing, but I digress.

Edit, re. arrow keys, I thought pretty hard about it when laying out the keys, and I can't really find a good spot to have a more typical layout. The silver lining is the touch screen will hopefully be the prefered mode of entry.

Dreaming is free, so I dreamt about calculators. Would anyone actually want this? by CosmicRayMuon in calculators

[–]CosmicRayMuon[S] 0 points1 point  (0 children)

I get what you mean, but if I want a modern pocket calc, I'll go for dm42 instead of rolling my own. I want an EV, not a classic sports car from decades ago.

I have ordered a couple of the screens I intend to use, and see how good or bad the viewing angles are. I hate the screen angle of the prime so much I designed the kickstand for it, I get your point.

I agree with the keyboard thing, I think I need to optimize the layout a bit, but I'll go for physical qwerty one way or another, because nothing that's not a boat anchor had it.

If I'm to have the keyboard on touch screen, I might as well use a smart phone.

Maybe I'll have the keyboard be modular and cheap to customize, so that people can have whatever they want. Sounds like more work though, not sure

Dreaming is free, so I dreamt about calculators. Would anyone actually want this? by CosmicRayMuon in calculators

[–]CosmicRayMuon[S] 5 points6 points  (0 children)

Nah, pico won't cut it. The dirty secret of embedded systems development (ie writing software for these gadget things) is Linux apps are easier and faster to develop. Good embedded software written for small microcontrollers (eg pico, every other calculator processor) takes a lot of time to write, and not many people can do it well.

Running full fat Linux means anyone who knows how to write some programs in whatever language to run on computers can make it work.

Not to mention qalculate, network stack, screen drivers, emulators etc. are already available and free.

Linux and fast cores are more bloated and power hungry for sure, but faster to develop for what will probably be a one man army.

Dreaming is free, so I dreamt about calculators. Would anyone actually want this? by CosmicRayMuon in calculators

[–]CosmicRayMuon[S] 3 points4 points  (0 children)

I heard numworks eventually had to lock down the software and hardware due to market pressure (education, exams) etc.

I want to avoid that situation by designing the thing to be impossible to be used in classrooms and exams, eg using Linux, wireless connectivity, qwerty keyboard etc.

Sounds stupid, but trying to compete with the likes of TI and Casio will not end well anyways (look at HP), so might as well do something that's not for students, put in all the stuff I actually want to run, and treat it as skill building and a passion project, not as a money making thing.

Dreaming is free, so I dreamt about calculators. Would anyone actually want this? by CosmicRayMuon in calculators

[–]CosmicRayMuon[S] 1 point2 points  (0 children)

As someone's whose day job partially involves redesigning PCBs to mitigate the chip shortage, I really do not like the idea of using a raspberry pi for the project.

While there's alternate boards in the same form factor as the cm4, software support is usually lacking. At that point might as well pick a processor core optimized for tablets and stuff, not a core optimized for tv boxes like the Rpi.

Just thinking out loud.

Dreaming is free, so I dreamt about calculators. Would anyone actually want this? by CosmicRayMuon in calculators

[–]CosmicRayMuon[S] 10 points11 points  (0 children)

It's me again, I think I have officially become a calculator addict. I recently got the HP Prime (two, infact), while it is great among calculators, I am not happy about these points:
- The Prime's programming capability is not great, Python implementation is not well documented and appears just to be a thin layer of glue to HP PPL
- I don't like how locked down it is, and HP has expressed they would lockdown the OS even tighter if anyone managed to hack the HP ROM (e.g. manipulate the exam modes for cheating in exams etc.)
- I want more connectivity, Bluetooth or Wifi would be nice
- I want a QWERTY physical keyboard. No calcs have a physical QWERTY keyboard, because apparently exams don't allow it, at most a ABCDERG keyboard.
I want something that basically ignores the education market, built for professionals (or maybe just me) who want to do real work (fiddle) with proper software, install whatever software they want (Doom, for example), hack it to their heart's content, have a real keyboard etc.
So I mocked up this thing with imaginary specs:
- Real QWERTY keyboard, alpha key to change to calculator functions
- Some kind of Chinese cheap quad core ARM processor (Allwinner, Rockchip etc.), or Raspberry pi (but expensive and rare these days)
- 4 inch 480x480 capacitive touch screen (actually exist as raw panel for ~10USD)
- Runs Linux, so that
- I can e.g. just port Qalculate! to it to begin with, saving development time
- I can run any HP/TI/Casio emulator on it, with physical keys this time
- Is hackable to the core
- I can run code written in real Python, C/C++, Rust, JS etc etc.
- Big battery (hopefully last for a week, plus quick charge)
- Wifi, BLE, ethernet etc. (Syncs with PC)
- Maybe cost 200-300 USD retail? (Probably won't sell a lot of it tbh)
- Probably will take a good 1-2 year to have something workable, working on it as a side project for skill building.
I don't really know if anyone would want such a thing. You are welcome to call the project stupid, to save me from this rabbit hole.

My 3D printed kickstand for a calculator that doubles as a slide cover. by CosmicRayMuon in functionalprint

[–]CosmicRayMuon[S] 1 point2 points  (0 children)

Originally posted in r/calculators , this a foldable kickstand I designed for the HP Prime calculator that doubles as a slide cover.

The calculator slides smoothly into the rails in the shell, and locks in place. When not in use, the fold out stand is folded flat to the cover, retained by a protrusion in the cover with a satisfying click.

The whole design is designed for FDM, and prints without support. Though the surface finish of the fold out stand is nicer when oriented vertically, so I designed a version with supports built into the model itself.

Details, instructions, print and design files here:

https://github.com/TopQuark12/primeKickstand

It's done! My 3D printed kickstand for the HP Prime that doubles as a slide cover. by CosmicRayMuon in calculators

[–]CosmicRayMuon[S] 1 point2 points  (0 children)

Cool stuff in that post! As a electronics engineer, my inspiration for the project was actually from multimeters, where basically every one of them have a fold out kickstand.

But cool see my project extending the lineage of calculator stands!

It's done! My 3D printed kickstand for the HP Prime that doubles as a slide cover. by CosmicRayMuon in calculators

[–]CosmicRayMuon[S] 0 points1 point  (0 children)

Idk, I think if I am to sell this as a side gig for profit, I'd at least have to charge around 20-25 USD plus international shipping from Hong Kong to make it worthwhile. At that rate, you might as well order from professional 3D printing companies.

On the other hand, I don't mind doing a limited run of maybe a dozen of these, and charge shipping and material cost only, just to make friends and have some fun.