Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Projets de programmation


Index du Forum » Projets de programmation » fxKeyboard, Use fx-9860 series calculator as a keyboard for your computer!
Myth Hors ligne Membre Points: 7 Défis: 0 Message

fxKeyboard, Use fx-9860 series calculator as a keyboard for your computer!

Posté le 17/04/2021 18:23

Just need a USB cable!

Warning: This tool may damage your calculator or computer. Always follow the doc and I will not be responsible for any damage.

Github Link here


Usage
+ Use FA-124 software to copy the Add-in to your calculator.
+ Use the LINK app in calcutor menu to connect the calculator to your computer.
+ READ NOTICE BEFORE THIS STEP! Download Zadig from here. Open Zadig, click Options - List All Device, select CESG502, and replace the original driver with WinUSB.
+ Open the Add-in in your calculator. It will automatically connect to your computer. If you didn't plug the USB cable, it will exit after a short time.
+ Open the fxKeyboardLink software in your computer. Now you can use your calculator as a keyboard for your computer.
Some special keyboard mapping:
Calculator Key -> Computer
OPTN -> Switch between arrow mode and cursor mode
Arrow keys -> Arrow keys in arrow mode and cursor controller in cursor mode
θ -> Text: theta
EXIT -> ESC
QUIT -> ESC
∠ -> <
sin-1 -> Text: arcsin
ab/c -> /
CAPTURE -> PrintScreen
CLIP -> Ctrl + C
PASTE -> Ctrl + V
DEL -> Backspace
INS -> Insert
÷ -> /
π -> pi
EXE -> Enter in arrow mode and click in cursor mode
EXE with SHIFT -> Enter with Shift pressed. This is convenient for using Mathmetica

Notice
+ This tool will automatically open the NumLock in your computer.
+ Once your use Zadig to replace the original driver, you can't use FA-124 to link your calculater. If you want to get back to the original driver, follow Zadig's FAQ here carefully. You need to know that the USB device is CESG502.
+ If you can't connect your calculator to your computer in any way, try to restart your calculator by the button behind.

Known Issue
+ Press the calculator key down continously will not work like that in your computer. The reason is that I only used GetKey function in this Add-in.
+ In cursor mode, the cursor moved slowly in a constant speed.
+ I would be glad if someone can fix the issues above.

Thanks
Thanks Simon Lothar for his great work in syscall.




Fichier joint


Loieducode Hors ligne Membre Points: 191 Défis: 6 Message

Citer : Posté le 17/04/2021 19:03 | #


Neat-o!
I was about to send a message like "Im gonna make a musical calculator add-in for the fx-cg50(with gint)" in the "hs" part of the shoutbox
Trickswriting(sort le 1er avril):
   100%
Lephenixnoir En ligne Administrateur Points: 24234 Défis: 170 Message

Citer : Posté le 17/04/2021 21:35 | #


You certainly come up with interesting ideas! A few days ago I was considering trying the opposite, where you would control the calculator from the PC while projecting the screen at the same time, for hands-free testing.

Do you know what kind of protocol the calculator uses in the Comm syscalls? I believed the CESG502 thing was too specific to work with normal drivers.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Myth Hors ligne Membre Points: 7 Défis: 0 Message

Citer : Posté le 18/04/2021 04:14 | #


Lephenixnoir a écrit :
You certainly come up with interesting ideas! A few days ago I was considering trying the opposite, where you would control the calculator from the PC while projecting the screen at the same time, for hands-free testing.

Do you know what kind of protocol the calculator uses in the Comm syscalls? I believed the CESG502 thing was too specific to work with normal drivers.

Actually I didn't use any protocol provided by CASIO in this program. Just use Comm syscalls to create a connection, and you can transmit bytes and design your own protocol. I guess the FA-124 use protocol 7.00, but I think that's for file and screen transfer.

I used libusb-1.0 in this program, and I found that if I don't use Zadig to replace the driver, the libusb_open function will fail. So I had to replace the driver.

By the way, press the calculator key down continously will not work like that in computer. The reason is that I only used GetKey function in this Add-in. Maybe there is a good way to solve that problem. Should I use the IsKeyDown function to redesign that part?
Lephenixnoir En ligne Administrateur Points: 24234 Défis: 170 Message

Citer : Posté le 18/04/2021 08:23 | #


I had read the code but missed the libusb types, oops. I see how it is. xD

I previously believed that Comm syscalls implemented a custom protocol, but apparently not. From your headers I assume it simply presents a two-endpoint bulk interface (maybe with an interrupt channel somewhere)?

Yatis and me have been looking at a custom USB driver these past weeks, and now have a working prototype. No standard device classes yet, but that could happen. At first I thought you had implemented a Human-Interface Device class.

By the way, press the calculator key down continously will not work like that in computer. The reason is that I only used GetKey function in this Add-in. Maybe there is a good way to solve that problem. Should I use the IsKeyDown function to redesign that part?

You can also use GetKeyWait() (the syscall, since the library function itself is broken).
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 79 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd