Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

$30 reward: Lego Mindstorms EV3 software running on RPi #296

Closed
Botspot opened this issue Jan 3, 2021 · 27 comments
Closed

$30 reward: Lego Mindstorms EV3 software running on RPi #296

Botspot opened this issue Jan 3, 2021 · 27 comments

Comments

@Botspot
Copy link
Contributor

Botspot commented Jan 3, 2021

Just a friendly reminder that $30 is up for whoever can get Lego Mindstorms EV3 Home Edition running on RPi.

Download the EXE from: https://le-www-live-s.legocdn.com/downloads/LMS-EV3/LMS-EV3_Full-setup_1.4.5_en-US_WIN32.exe

Using box86 and x86 WINE, I got Mindstorms to partially install. But the installation failed right towards the end.
2020-12-26-170725_1920x1080_scrot

@Pythonic456
Copy link

@Botspot Do you know where I can get a x86 32 bit virtualbox? Thanks :)

@Botspot
Copy link
Contributor Author

Botspot commented Jan 4, 2021

@Botspot Do you know where I can get a x86 32 bit virtualbox? Thanks :)

Several people have tried doing so in the Pi Labs Discord Server that it doesn't work. :(

Download link: https://www.virtualbox.org/wiki/Download_Old_Builds_5_2

@SpacingBat3
Copy link
Contributor

@Botspot maybe try installing it on X86 PC first – many EXE installers on box86 + wine doesn't seem to work properly, but the applications themselves will do once they're installed.

After installation copy it's data to your Raspberry Pi – it should be installed somewhere in C:\Program Files, C:\Program Files (x86) or ~/.wine/drive_c/Program Files (x86) (if you've installed it on the amd64 Linux distro with wine).

You can also try to extract it with some archive software (most of the *.exe and *.msi installers are in reality archives) if you couldn't install it using the X86 PC – but I would rather avoid that method, especially for complex installers like this.

@Botspot
Copy link
Contributor Author

Botspot commented Jan 9, 2021

@Botspot maybe try installing it on X86 PC first – many EXE installers on box86 + wine doesn't seem to work properly, but the applications themselves will do once they're installed.

After installation copy it's data to your Raspberry Pi – it should be installed somewhere in C:\Program Files, C:\Program Files (x86) or ~/.wine/drive_c/Program Files (x86) (if you've installed it on the amd64 Linux distro with wine).

You can also try to extract it with some archive software (most of the *.exe and *.msi installers are in reality archives) if you couldn't install it using the X86 PC – but I would rather avoid that method, especially for complex installers like this.

@SpacingBat3 That is an interesting approach that I had not thought of before. Well, $30 up for grabs, who wants it? ;)

@Pythonic456
Copy link

The installation also fails on an X86 PC. Any ideas?
:)

@Pythonic456
Copy link

Screenshot from 2021-01-10 12-50-25
Is this what it should do?
:)

@SpacingBat3
Copy link
Contributor

Screenshot from 2021-01-10 12-50-25
Is this what it should do?
:)

You might need to use the Windows for the installation, as some applications fails to install on X86 Wine as well. Some might not be even runnable with it at all. Personally, I've never had an issue with wine under the Linux x86_64, but that doesn't mean it will work with every Windows executable (especially with these less known and popular).

You might also need to install the vcrun* and dotnet* software to use them instead of the wine-mono package with some applications. AFAIK they will fail to install on the newer (win7 and newer) Windows versions that are simulated on wine with the 64-bit enviroment (which is the default one on the Linux x86_64 distributions), so you might need to switch your Windows version to some as old as the winxp.

@chills340
Copy link

if you do BOX86_NOBANNER=1 winetricks --gui with the latest winetricks 20201206 there is an option in the install an application menu for EV3. It installed vcrun2005 with a workaround for wine, IE8 to replace gecko, and dotnet40. i should have installed aria2 first to make the download quicker for the ev3 full installer it is taking abit on my internet but when it finishes i'll report back.

@chills340
Copy link

well it was worth a shot the installer did its thing then crashed after it said it installed and winetricks gave the following error:


warning: ev3 install completed, but installed file /home/pi/.wine/dosdevices/c:/Program Files/LEGO Software/LEGO MINDSTORMS EV3 Home Edition/MindstormsEV3.exe not found

Screenshot_2021-01-13_12-24-35

the debug log from that screen is below:

Structured Exception number 0xC0000005

Exception Report:
Exception code: C0000005 (ACCESS_VIOLATION)
Fault address: 714526D2 0001:000516D2 C:\windows\system32\msi.dll

Registers:
EAX:00000000
EBX:00000000
ECX:00000050
EDX:FFFFFFFF
ESI:02B3C9B0
EDI:02B3D2E0
CS:EIP:007B714526D2
SS:ESP:007B02E4EC18 EBP:7FA0BDF0
DS:007B ES:007B FS:003B GS:0033
Flags:00000243

Stack Trace
Address Frame LogicalAddr Module SymbolName + Offset
714526D2 7FA0BDF0 0001:000516D2 C:\windows\system32\msi.dll MsiSequenceA + 1378
714170C1 02B3C9B0 0001:000160C1 C:\windows\system32\msi.dll QueryInstanceCount + 89409
7140BD20 02B3C9B0 0001:0000AD20 C:\windows\system32\msi.dll QueryInstanceCount + 43424
7141A49A 02E4F264 0001:0001949A C:\windows\system32\msi.dll QueryInstanceCount + 102682
7141A76C 02E4F264 0001:0001976C C:\windows\system32\msi.dll QueryInstanceCount + 103404
7146CB19 02E4F264 0001:0006BB19 C:\windows\system32\msi.dll MsiViewClose + 505
7141B061 02B3E9F0 0001:0001A061 C:\windows\system32\msi.dll QueryInstanceCount + 105697
7141B198 02B3C9B0 0001:0001A198 C:\windows\system32\msi.dll QueryInstanceCount + 106008
7140BD20 02B3C9B0 0001:0000AD20 C:\windows\system32\msi.dll QueryInstanceCount + 43424

@Pythonic456
Copy link

@Botspot has anyone ever got Lego Mindstorms EV3 to work with wine on anything?

@chills340
Copy link

@Pythonic456 an older version is silver in the winedb. https://appdb.winehq.org/objectManager.php?sClass=version&iId=33517 so it might be possible. I'll mess with the program some more later.

@Botspot
Copy link
Contributor Author

Botspot commented Jan 13, 2021

@Botspot has anyone ever got Lego Mindstorms EV3 to work with wine on anything?

It looks like it. https://appdb.winehq.org/objectManager.php?sClass=application&iId=15648

Maybe an older version of the software could work?

I've seen a couple people get Lego Mindstorms running on Linux using Virtualbox. Someone, @SkywalkerSW5, said he got x86 Virtualbox running on RPi under an emulated chroot called "Rpi686".

IDK how he did it, and he doesn't seem to remember either, but it's worth a shot.
Looks like he gave instructions for virtualbox here, but I haven't tried it: https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=251107&p=1532973&hilit=rpi686+virtualbox#p1532973

@ryanfortner
Copy link
Contributor

Here's an older version, https://le-www-live-s.legocdn.com/downloads/LMS-EV3/LMS-EV3_Full-setup_1.3.1_en-US_WIN32.exe#noUrlRewrite, i haven't tried it out yet though...

@Botspot
Copy link
Contributor Author

Botspot commented Feb 22, 2021

According to winehq, Lego Mindstorms 1.1.1 is "bronze", meaning it installed fine on Wine without difficulty.

I've not found download links for this old version, until today when I found the broken old download link was on archive.org.
This download is stupidly slow - about 600 Kb/s, but at least it's working at all.

@Itai-Nelken
Copy link
Contributor

This download is stupidly slow - about 600 Kb/s

@Botspot try using aria2c -x16 https://example.com/file, using this method files from archive.org download way faster.

@Botspot
Copy link
Contributor Author

Botspot commented Feb 22, 2021

This download is stupidly slow - about 600 Kb/s

@Botspot try using aria2c -x16 https://example.com/file, using this method files from archive.org download way faster.

Wow that's crazy fast!! It cuts download time in half for downloading images from the raspbian website!
This might be time for another killer app... ;)

@Pythonic456
Copy link

Pythonic456 commented Feb 22, 2021

I'm interested in how this works, how can it download it faster?

@ryanfortner
Copy link
Contributor

I think it might be by using multiple conenctions.

@Itai-Nelken
Copy link
Contributor

@Pythonic456 what @Chunky-Milk said: it uses multiple connections, so the server you are downloading from thinks 16 computers are downloading the file.

@NoozAbooz
Copy link
Contributor

well it was worth a shot the installer did its thing then crashed after it said it installed and winetricks gave the following error:

warning: ev3 install completed, but installed file /home/pi/.wine/dosdevices/c:/Program Files/LEGO Software/LEGO MINDSTORMS EV3 Home Edition/MindstormsEV3.exe not found

Screenshot_2021-01-13_12-24-35

Well no duh it didn't find it, the file path has spaces so you need to edit winetricks to somehow use /home/pi/.wine/dosdevices/c:/Program\ Files/LEGO\ Software/LEGO\ MINDSTORMS EV3\ Home Edition/MindstormsEV3.exe for the spaces to register I think.

@Botspot
Copy link
Contributor Author

Botspot commented May 7, 2021

@NoozAbooz
Copy link
Contributor

@Botspot
Copy link
Contributor Author

Botspot commented May 7, 2021

Looks like a later version of Wine is required.

warning: This package (dotnet40) is broken in wine-5.13. Broken since 5.12. Upgrade to >=5.18. See https://bugs.winehq.org/show_bug.cgi?id=49532 for more info. Use --force to try anyway.
------------------------------------------------------
pi@raspberrypi:~ $ 

@NoozAbooz
Copy link
Contributor

https://bugs.winehq.org/show_bug.cgi?id=49532

Ask WheezyE in Pi Labs, I think he knows how to do it.

@Botspot
Copy link
Contributor Author

Botspot commented May 7, 2021

https://bugs.winehq.org/show_bug.cgi?id=49532

Ask WheezyE in Pi Labs, I think he knows how to do it.

Speaking of that, why aren't you in Pi Labs anymore?

@Botspot
Copy link
Contributor Author

Botspot commented May 8, 2021

Update: I've discovered that winetricks has a built-in way to install Lego Mindstorms EV3! The download URL doesn't work though.
I made a modified version of winetricks with a fixed URL. https://github.com/Botspot/winetricks <-- install that first

Procedure I'm following on my RPi:

rm -rf ~/.wine
BOX86_NOBANNER=1 setarch linux32 -L bash -c 'BOX86_NOBANNER=1 winetricks ev3 --force'

Could someone with a X86 Linux PC try this?
For me, it successfully installs vcrun2005, IE8, and dotnet40, but while installing Lego Mindstorms EV3, a DOS shell stays open indefinitely running coregen.exe.
2021-05-08-180921_1920x1080_scrot
I left it open overnight but nothing changed. All that time it had high CPU usage.

@Pythonic456
Copy link

Try running strace? Or using something else to see what file it currently has open. I know strace doesn't work great with multi-threaded stuff like wine, worth a try though.

@Botspot Botspot closed this as completed Jan 25, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants