t-oster / VisiCut

A userfriendly tool to prepare, save and send Jobs to Lasercutters
https://visicut.org
Other
226 stars 114 forks source link

Case-sensitivity in settings causes collisions on Windows #178

Open charlyoleg opened 10 years ago

charlyoleg commented 10 years ago

After selecting the material and the material thickness, the settings for cut (3rd tab) are not updated to the imported values. It behaves like no settings would have be imported. In other words, changing the material thickness doesn't any impact on the power, speed, focus and frequency fields. I see this bug with the Ubuntu version 1.7-61-gdb30c9a

t-oster commented 10 years ago

Did you try changing the laser profile away and back to 'cut'?

charlyoleg commented 10 years ago

I have tried: TopMenu > Edit > Settings > Manage LaserProfiles ... Select cut and then Ok Then on the left panel, mapping tab, I select cut everything, check the Laser Settings tab. Move back to the mapping setting, select engrave everything. In the Laser Settings tab, I still get the values: power 20, speed 100 focus 0, frequency 5000. I just manage to change this four values by editing them directly. I do not manage to change those four values by selecting a material, a thickness and a mapping.

t-oster commented 10 years ago

Do you have any preconfigured settings? VisiCut can not guess the values, it just can save them for your profile,lasercutter,depth combination. You see the little save button next to the settings? This should save them for the current combination. Try saving one set for a specific material-thickness, switch to another thickness, enter a different value and save again. Does it jump back if you change back the thickness?

t-oster commented 10 years ago

what do you mean by imported settings? Where did you import them from?

charlyoleg commented 10 years ago

I have tried your suggested manipulation (saving settings and changing settings) and visicut works correctly :) I thought I have preconfigured settings but this is maybe the issue. I have tried three settings files (the Aachen-fablab (.vcsettings), the Berlin-fablab (.zip) and a coworker settings using windows (.vcsettings)). I have imported those three files with TopMenu > Settings > Import settings ...

t-oster commented 10 years ago

the settings only work, if you also use the lasercutters and profiles used in the settings. It may also be, that you have an old version of the settings, which is not compatible with the visicut version. If you have more than one lasercutter after importing the settings, something went wrong

charlyoleg commented 10 years ago

A coworker, running visicut on windows and with the same visicut version as mine, has exported his settings for me. I still see the issue with this new generated settings. I select the lasercutter and the profile (= cut everything?) and still don't get the speed, power, etc not updated. The import works partially as the list of material/thickness is updated after the import operation. After importing the settings of my coworker, I have two lasercutters; which is also the case by my colleagues.

peteruithoven commented 10 years ago

The facts that your material list and lasercutters are updated is good news.

Could you check the version your coworker is using? Maybe compare the settings behind a specific lasercutter, material and material thickness? Preferably one your coworker changed.

charlyoleg commented 10 years ago

I have check again with a coworker. We both have the version VisiCut-1.7-61-gdb30c9a. He has a Mac, I have Ubunu 12.04. My coworker has changed some settings, then has exported his settings, I have imported these settings and it sets settings to power=100 and speed=20 for all material and all thickness. Even the settings I had entered manually and saved have been reset to (power=100 and speed=20). Then I have checked the version Visicut_1.7-62-g752be8d. Same phenomena. I use the platform independant package and launch the script VisiCut.Linux

t-oster commented 10 years ago

Hi,

can you upload the settings somewhere?

charlyoleg commented 10 years ago

The settings I have tried to import: https://cubehero.com/physibles/charlyoleg/Epicyclic_gearing_with_laser_cutter/files/048e1cc68113197d998ae059c729c57db5456362/2013-09-09-epilog-zing-fablab-berlin.zip https://cubehero.com/physibles/charlyoleg/Epicyclic_gearing_with_laser_cutter/files/1721be93141fd81c7f1a220ca88cd0e413558215/from_my_coworker.vcsettings

After making the experiment, the export from my host: https://cubehero.com/physibles/charlyoleg/Epicyclic_gearing_with_laser_cutter/files/7a096b982d70bb7ec637f51407fcde45e1f2bf87/my_export.vcsettings

charlyoleg commented 10 years ago

The tree files are available on this page: https://cubehero.com/physibles/charlyoleg/Epicyclic_gearing_with_laser_cutter/trees/e77b71ee2103d6255549e1df4ff91624b47df3f5

charlyoleg commented 10 years ago

As complementary information, notice that the import operation works correctly with the settings I have exported myself. "export my settings, modify some settings, import my settings": I get the expected values. Could the issue come from the windows/linux "end-of-line" encoding difference?

t-oster commented 10 years ago

I think I got the problem: it's the ignorance of filename case-sensitivity of windows. Go to your ".visicut" folder and check the cases of the folders under "laserprofiles..."

charlyoleg commented 10 years ago

You are right!

I had this: ls .visicut/laserprofiles Epilog_32_Helix Epilog_32_Zing "Epilog Zing" zing Zing

I renamed zing to zing_foo and then I rename Zing to zing

Now I get all the settings of my colleagues.

Thanks

On 11/07/2013 11:45 AM, Thomas Oster wrote:

I think I got the problem: it's the ignorance of filename case-sensitivity of windows. Go to your ".visicut" folder and check the cases of the folders under "laserprofiles..."

— Reply to this email directly or view it on GitHub https://github.com/t-oster/VisiCut/issues/178#issuecomment-27952975.

peteruithoven commented 10 years ago

So the conclusion is to not export settings from a Windows computer for now? Or if you do, watch out for cases?

If the problem is around machine names, (instead of the names users see) we could translate them to lowercase automatically?

t-oster commented 10 years ago

Well... we can convert to lowercase in the "Helper.toPathName" function, but it may break existing settings on all machines where any upper-case character was used up to now...so I am still thinking about a better solution.

rti commented 8 years ago

I think I got the problem: it's the ignorance of filename case-sensitivity of windows.

I just ran into the same issue on an ext4 case sensitive file system. Thank a lot for discussing this here. I fixed my problem by changing the case of the folder name.

I am still thinking about a better solution

I do not see any other way but transforming those existing malicious settings, e.g. automatically on startup / after import.

rti commented 8 years ago

Or... what about just reporting an error to the user in case of some part of the config was not loadable (due to the incorrect path name).

This should:

mgmax commented 8 years ago

@rti not being able to load such a config is only a part of the problem. The other part is that you can create such configs at all, which also needs to be prevented.