Arduboy FX Arduino plugin

Awesome. I have used the namespace feature already in my LeWord.

I would say so. It is nice to have qualified names though as it just makes the code easier to read.

Nah, like most programmers I just steal ideas.

3 Likes

I am not having much luck getting this to work under MacOS.

I have installed Python and copied the contents of the application directory to the /tools/python3 directory as shown below.

When I run the command from the IDE I get …

Arduino: 1.8.13 (Mac OS X), Board: "Arduboy (FX), Arduboy optimized core, Cathy3K (starts with menu)"

Arduino plugin v1.03 by Mr.Blinky Jan 2022 - May 2022Python3 is missing.
Make sure Python3 is located at \Users\simonholmes\Documents\Arduino\tools\python3\

What file is it looking for exactly? The mac does funny things with ‘packages’ that sometimes obscures the code from working properly.

I don’t see a python3 executable there. Try this portable python3 version

https://github.com/earlephilhower/esp-quick-toolchain/releases/download/2.5.0-4/python3-macosx-portable.tar.gz

1 Like

No … that was my point.

I looked on the Python site and could not find a ‘portable’ version. Thanks for this!

1 Like

Updated the plugin. there are now three FX options added to the tools menu (Legacy Arduino IDE only)

Also fixed some bugs that stopt it from working on MacOS and added an option enter the path of an (already) installed python version (No need to clutter your drive when python is installed already)

Any MacOS users want to test it works for them too?

2 Likes

OK, so I updated the library and I can see that the Arduino IDE is picking it up.

… of course when I run it, it comes up with this error as I have yet to specify the Python directory.

I have then found out where my Python is installed:

I add this path to the python3path.txt but I still get the same error in the IDE :frowning:

But if I look into that directory, I cannot even see a Python3 !

I change my path to /usr/local/bin/python3.10, but still no go.

If I view the information for this file, I can see it is an alias and actually pointing to:
/usr/local/Cellar/python@3.10/3.10.9/Frameworks/Python.framework/Versions/3.10/bin/python3.10

I change my path to this but still no fun.

Not sure what to do next.

I ran into the same problems as you. I didn’t expect it to be that difficult to locate the real path to the python executable.

I changed the tools just now to just fetch the python command from a text file for some flexibility and that works much better and more importantly works on MacOS as well (At least at my test Mac mini).
Will update the repo when I’m back home.

Updated the plugin to version 1.0.5

when not making use of the included portable Python version (Windows) :

  • delete the folders PIL, Python3 and serial.
  • edit pythoncmd.txt and enter python.exe for windows or python3 for MacOS
1 Like

Is that the symlink file in /usr/bin/local? Or is it the one from the $PATH (/Library/Frameworks/Python.framework/Versions/3.10)? I know they’re technically the same but which one is preferred?

you just enter ‘python3’ without the quotes. the shell should figure it out. It did with Catalina so I’m expecting it will work with newer versions too (until one of you proves otherwise :slight_smile: )

3 Likes

I now get:

Arduino: 1.8.13 (Mac OS X), Board: "Arduboy FX, Arduboy optimized core, Cathy3K (starts with menu)"

Arduboy FX Arduino plugin v1.05 by Mr.Blinky Jan 2022 - Jan 2023

Executing python3 /Users/me/Documents/Arduino/tools/fxdata-build.py /var/folders/k7/r7tkw3n15ql14qt3pwvjrvmm0000gn/T/untitled1231204694.tmp/sketch_jan25a/fxdata/fxdata.txt 
FX data build tool version 1.13 by Mr.Blinky May 2021 - Jan 2023
PILlow python module not found or wrong version.
Make sure the correct module is installed or placed at /Users/simonholmes/Documents/Arduino/tools
FX data build failed!

But I seem to have Pillow installed correctly!

Did you do this?

If you did try this:
python3 -m pip install -U pip
python3 -m pip install -U Pillow

Sure did delete those folders.

I ran the updates:

Simons-iMac2-2:fxdata simonholmes$ python3 -m pip install -U pip
Requirement already satisfied: pip in /usr/local/lib/python3.10/site-packages (22.3.1)
Simons-iMac2-2:fxdata simonholmes$ python3 -m pip install -U Pillow
Requirement already satisfied: Pillow in /usr/local/lib/python3.10/site-packages (9.3.0)
Collecting Pillow
  Downloading Pillow-9.4.0-2-cp310-cp310-macosx_10_10_x86_64.whl (3.3 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.3/3.3 MB 5.8 MB/s eta 0:00:00
Installing collected packages: Pillow
  Attempting uninstall: Pillow
    Found existing installation: Pillow 9.3.0
    Uninstalling Pillow-9.3.0:
      Successfully uninstalled Pillow-9.3.0
Successfully installed Pillow-9.4.0
Simons-iMac2-2:fxdata simonholmes$ 

But I get the same error in Arduino (after shutting it down and reopening):

Arduino: 1.8.13 (Mac OS X), Board: "Arduboy FX, Arduboy optimized core, Cathy3K (starts with menu)"

Arduboy FX Arduino plugin v1.05 by Mr.Blinky Jan 2022 - Jan 2023

Executing python3 /Users/simonholmes/Documents/Arduino/tools/fxdata-build.py /var/folders/k7/r7tkw3n15ql14qt3pwvjrvmm0000gn/T/untitled524300027.tmp/sketch_jan25a/fxdata/fxdata.txt 
FX data build tool version 1.13 by Mr.Blinky May 2021 - Jan 2023
PILlow python module not found or wrong version.
Make sure the correct module is installed or placed at /Users/simonholmes/Documents/Arduino/tools
FX data build failed!

I feel my Mac is a basket case when it comes to Python!

Well at least it finds python now. I wonder if there are multiple version of python3 on your mac.

in terminal type where python3 and copy and paste that in pythoncmd.txt in my case it was

/usr/bin/python3

I’ve also updated the fxdata-build.py version 1.14 in the repo that displays the python version and some more error info for trouble shooting.


You can also try install the Pillow module with sudo (as that is what I did)

sudo -H python3 -m pip install -U Pillow
1 Like

To preserve my sanity, I’m not beta testing this… yet!.. my last tango with Python broke stuff…

Thanks @Mr.Blinky and @filmote for continuing this quest! :crossed_swords:

1 Like

Quite possible. I cannot work it out on MacOS.

Changing pythoncmd.txt to /usr/local/bin/python3 fixed the build problems!

Arduboy FX Arduino plugin v1.05 by Mr.Blinky Jan 2022 - Jan 2023

Executing /usr/local/bin/python3 /Users/simonholmes/Documents/Arduino/tools/fxdata-build.py /Users/simonholmes/projects/PrinceOfPersia/fxdata/fxdata.txt 
FX data build tool version 1.13 by Mr.Blinky May 2021 - Jan 2023
Building FX data using /Users/simonholmes/projects/PrinceOfPersia/fxdata/fxdata.txt
Including file /Users/simonholmes/projects/PrinceOfPersia/fxdata/Level1.txt
Including file /Users/simonholmes/projects/PrinceOfPersia/fxdata/../levels/Level1_FG.csv
...
Including file /Users/simonholmes/projects/PrinceOfPersia/fxdata/Title_IntroGame_1B_Frame.txt
Saving FX data header file /Users/simonholmes/projects/PrinceOfPersia/fxdata/fxdata.h
Saving 623910 bytes FX data to /Users/simonholmes/projects/PrinceOfPersia/fxdata/fxdata-data.bin
Saving 2 bytes FX savedata to /Users/simonholmes/projects/PrinceOfPersia/fxdata/fxdata-save.bin
Saving FX development data to /Users/simonholmes/projects/PrinceOfPersia/fxdata/fxdata.bin
1 Like

it’s dogged that does it!

I’d better put that in the readme.

I’m not @filmote 's Mac but on my Mac there is the normal Python installation, with a symlink folder which takes you to the latest installation, and then there is a bunch of symlinks to various python versions (ex: “python3”, “python3.10” etc.) in /usr/local/bin so I think that’s probably the same for every Mac.

PyCharm uses the “python3.10” symlink from /usr/local/bin so I would assume you would have to access those symlinks rather than go to the root installation of Python.

1 Like

Hello, new here!

So, I followed the instructions, installed Python, deleted the folders that we added to tools (the three I was instructed to delete), and edited the pythoncmd.txt to just say python.exe. I also installed pyserial and Pillow as instructed. I even restarted my computer. But alas, the three new tools didn’t show up.

Any idea what could have gone wrong? I’m running Python 3.11. I can give you more info if you’d like.

Thank you for any and all help!

-Dolorre