Lua, linux et TI
26 posts
• Page 2 of 3 • 1, 2, 3
Re: Lua, linux et TI
Ou sinon connaissez vous d'autres moyens/programmes pour envoyer un fichier sur la calculatrice à un emplacement bien précis ?
-
tobiasBora
Niveau 8: ER (Espèce Rare: nerd)- Posts: 45
- Joined: 18 Sep 2012, 22:34
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: MPSI
Re: Lua, linux et TI
Probablement un des titools, mais je ne suis pas sûr d'où est la dernière version. Celle de ticalc.org date un peu et nécessite des changements mineurs pour compiler.
Autre possibilité (moins sympa pour l'utilisateur
): modifier le programme de tests de libticalcs, "test_ticalcs_2", pour qu'il fasse ce que tu veux de manière non interactive. Au moins trois changements:
1) lancer l'opération Ready ou l'opération Dirlist automatiquement;
2) supprimer le menu pour lancer directement la fonction send_var();
3) modifier send_var() pour envoyer un par un les fichiers que tu veux envoyer.
Autre possibilité (moins sympa pour l'utilisateur

1) lancer l'opération Ready ou l'opération Dirlist automatiquement;
2) supprimer le menu pour lancer directement la fonction send_var();
3) modifier send_var() pour envoyer un par un les fichiers que tu veux envoyer.
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
-
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)- Posts: 6873
- Joined: 23 Dec 2009, 00:00
- Location: France
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: -
- GitHub: debrouxl
Re: Lua, linux et TI
Merci pour tes conseils.
Alors la version de ticalc semble compiler sans problème chez moi. Par contre, il n'y a toujours qu'une seule option : le fichier d'entrée, et non pas l'emplacement de destination... A ce demander si c'est possible !
Et c'est exactement pareil dans libticalcs : la fonction send_var_ns (on non ns) appelle celle ci :
avec h qui semble être un pointeur vers la calculatrice (façon de parler). Or filename est fourni par l'utilisateur, il semble donc que la destination ne soit pas configurable...
D'ailleurs quelle est la différence entre send_var et send_var_ns ?
Et je me demandais, est-ce que l'on ne peux pas envoyer un fichier "compressé" un peu comme un tar.gz qui décompressé à la racine se met automatiquement dans le bon dossier ? Ce n'est pas à ça que servent les ti group ?
Alors la version de ticalc semble compiler sans problème chez moi. Par contre, il n'y a toujours qu'une seule option : le fichier d'entrée, et non pas l'emplacement de destination... A ce demander si c'est possible !
Et c'est exactement pareil dans libticalcs : la fonction send_var_ns (on non ns) appelle celle ci :
- Code: Select all
TRYF(ticalcs_calc_send_var_ns2(h, MODE_NORMAL, filename));
avec h qui semble être un pointeur vers la calculatrice (façon de parler). Or filename est fourni par l'utilisateur, il semble donc que la destination ne soit pas configurable...
D'ailleurs quelle est la différence entre send_var et send_var_ns ?
Et je me demandais, est-ce que l'on ne peux pas envoyer un fichier "compressé" un peu comme un tar.gz qui décompressé à la racine se met automatiquement dans le bon dossier ? Ce n'est pas à ça que servent les ti group ?
-
tobiasBora
Niveau 8: ER (Espèce Rare: nerd)- Posts: 45
- Joined: 18 Sep 2012, 22:34
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: MPSI
Re: Lua, linux et TI
Sorry for the English, but I'm not feeling like writing French right now 
This code should send a file, play a bit with it:
Have fun

This code should send a file, play a bit with it:
- Code: Select all
CalcModel calc_model = CALC_NSPIRE;
CalcHandle* calc_handle;
... init of tilibs etc ...
const char *filename = "file_to_send.tns";
const char *foldername = "MyLib"; //folder
FileContent* content = tifiles_content_create_regular(calc_model);
tifiles_file_read_regular(filename, content);
VarEntry *entry = content->entries[0];
strcpy(entry->folder, foldername);
//tifiles_file_display_regular(content);
ticalcs_calc_send_var(calc_handle, MODE_NORMAL | MODE_SEND_LAST_VAR, content);
tifiles_content_delete_regular(content);
Have fun

TI-Nspire projects of me:
nCreator | PCspire | Klondike Lua | LogoMagic | EEPro for the TI-Nspire | Pegs | General math definitions
nCreator | PCspire | Klondike Lua | LogoMagic | EEPro for the TI-Nspire | Pegs | General math definitions
-
jimbauwensProgrammeur
Niveau 9: IC (Compteur Infatigable)- Posts: 54
- Joined: 13 May 2011, 00:00
- Location: Belgium
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: Computer Science @ VUB University Brussels
Re: Lua, linux et TI
Or filename est fourni par l'utilisateur, il semble donc que la destination ne soit pas configurable...
Elle l'est

D'ailleurs quelle est la différence entre send_var et send_var_ns ?
"ns" pour "non-silent". Les plus vieilles versions d'OS pour les plus vieilles machines n'ont pas le link silencieux, il faut les mettre manuellement dans un mode de réception avant de communiquer avec elles. La Nspire ne supporte que le link silencieux.
Et je me demandais, est-ce que l'on ne peux pas envoyer un fichier "compressé" un peu comme un tar.gz qui décompressé à la racine se met automatiquement dans le bon dossier ? Ce n'est pas à ça que servent les ti group ?
Les groupes n'existent pas sur Nspire

Pour les TI-Z80 et TI-68k, effectivement, ce sont en général des fichiers compressés, qui sont (suivant le modèle) envoyés et reçus morceau par morceau et/ou stockables tels quels sur la machine.
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
-
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)- Posts: 6873
- Joined: 23 Dec 2009, 00:00
- Location: France
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: -
- GitHub: debrouxl
Re: Lua, linux et TI
Thanks a lot for this code ! How did you find it ?
I've however a little problem :
When I run it, the only error message I've is :
but it doesn't apear every time. Do you know why it doesn't work ? My calculator becomes open when I run it, but there is no transfert.
Avec la technique proposée par jimbauwens ?
Parfait merci !
I've however a little problem :
- Code: Select all
int main(int argc, char **argv)
{
printf("#################################################\n");
printf("#### Don't forget to run this script as root ####\n");
printf("#################################################\n");
// Si le nombre d'argument est différent de 3
if(argc != 3)
{
printf("HELP :\n");
printf("ti_send_file file folder_output\n");
printf("Ex: ti_send_file myFile.tns MyLib");
}
else
{
// On vérifie que le fichier donné existe :
if (fopen(argv[1],"r") == NULL)
{
printf("ERREUR : Le fichier n'existe pas ou est illisible.\n");
return -1;
}
else
{
printf("Le fichier existe.\n");
}
CalcModel calc_model = CALC_NSPIRE;
CalcHandle* calc_handle;
CableHandle* cable;
int err, i;
int do_exit=0;
int choice;
// init libs
ticables_library_init();
ticalcs_library_init();
// set cable
cable = ticables_handle_new(CABLE_USB, PORT_1);
if(cable == NULL)
return -1;
// set calc
calc_handle = ticalcs_handle_new(calc_model);
if(calc_handle == NULL)
return -1;
// attach cable to calc (and open cable)
err = ticalcs_cable_attach(calc_handle, cable);
// On met l'argument 1 dans filename
const char *filename = argv[1];
// On met l'argument 2 dans le nom de dossier
const char *foldername = argv[2]; //folder
// On créé le contenu...
FileContent* content = tifiles_content_create_regular(calc_model);
// Et on le remplit
tifiles_file_read_regular(filename, content);
VarEntry *entry = content->entries[0];
strcpy(entry->folder, foldername);
tifiles_file_display_regular(content);
// On envoie le fichier :
ticalcs_calc_send_var(calc_handle, MODE_NORMAL | MODE_SEND_LAST_VAR, content);
// On supprime le contenu de la mémoire
tifiles_content_delete_regular(content);
// detach cable (made by handle_del, too)
err = ticalcs_cable_detach(calc_handle);
// remove calc & cable
ticalcs_handle_del(calc_handle);
ticables_handle_del(cable);
printf("Fin.\n");
}
return 0;
}
When I run it, the only error message I've is :
(process:21112): ticables-WARNING **: usb_bulk_read (No error).
but it doesn't apear every time. Do you know why it doesn't work ? My calculator becomes open when I run it, but there is no transfert.
Lionel Debroux wrote:Or filename est fourni par l'utilisateur, il semble donc que la destination ne soit pas configurable...
Elle l'est
Avec la technique proposée par jimbauwens ?
La Nspire ne supporte que le link silencieux.
Parfait merci !
-
tobiasBora
Niveau 8: ER (Espèce Rare: nerd)- Posts: 45
- Joined: 18 Sep 2012, 22:34
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: MPSI
Re: Lua, linux et TI
I think he adapted code from test_ticalcs_2 and/or titools.
You should trigger a "ready" or "dirlist" operation and see whether it helps.
You should trigger a "ready" or "dirlist" operation and see whether it helps.
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
-
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)- Posts: 6873
- Joined: 23 Dec 2009, 00:00
- Location: France
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: -
- GitHub: debrouxl
Re: Lua, linux et TI
Indeed, with a ready function in the beginning, it works great ! (but the transfert is quite long (about 5 sec), but I think it is normal. I'm going to publish the code (emacs file, .lua, .c, executables...) when I have the time. Is there a common place where ti codes are released where I could post it, or should I just put it on my git repo and post a link here ?
Thanks a lot !
Thanks a lot !
-
tobiasBora
Niveau 8: ER (Espèce Rare: nerd)- Posts: 45
- Joined: 18 Sep 2012, 22:34
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: MPSI
Re: Lua, linux et TI
I've created the code after delving a long time time through code of TiLP and the examples. I use it for my Lua <-> Computer linking program (allowing lua on calc to go on the internet). Glad it works now, and sorry for the late reply.
You could put in the archive here or on ticalc.org
You could put in the archive here or on ticalc.org

TI-Nspire projects of me:
nCreator | PCspire | Klondike Lua | LogoMagic | EEPro for the TI-Nspire | Pegs | General math definitions
nCreator | PCspire | Klondike Lua | LogoMagic | EEPro for the TI-Nspire | Pegs | General math definitions
-
jimbauwensProgrammeur
Niveau 9: IC (Compteur Infatigable)- Posts: 54
- Joined: 13 May 2011, 00:00
- Location: Belgium
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: Computer Science @ VUB University Brussels
Re: Lua, linux et TI
Ok, thanks a lot for your great work !
Are you jocking ????? You can go on the internet with your calculator ? And what do you do with it ? You have a browser ??? And the connexion is by USB cable ? And lua on calc can send data to the computer ?
--EDIT-- and a little question : what OS do you have ? If you have ndless, do you have the possibility to create 3D graph or is it specific to the OS 3.2 ? What are the difference between the OS 3.1 (with the possibility to use ndless) and the OS 3.2 ?
I use it for my Lua <-> Computer linking program (allowing lua on calc to go on the internet).
Are you jocking ????? You can go on the internet with your calculator ? And what do you do with it ? You have a browser ??? And the connexion is by USB cable ? And lua on calc can send data to the computer ?
--EDIT-- and a little question : what OS do you have ? If you have ndless, do you have the possibility to create 3D graph or is it specific to the OS 3.2 ? What are the difference between the OS 3.1 (with the possibility to use ndless) and the OS 3.2 ?
-
tobiasBora
Niveau 8: ER (Espèce Rare: nerd)- Posts: 45
- Joined: 18 Sep 2012, 22:34
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: MPSI
26 posts
• Page 2 of 3 • 1, 2, 3
Who is online
Users browsing this forum: ClaudeBot [spider] and 3 guests