This is something that perplexed me a few years ago with Flash Forth on a PIC18/PIC24/Arduino Uno. I was using the Python serial emulator S-Term because it is simple in the source code and worked. I really wanted a way to load more structured Words into the FF dictionary with bookmarks in a way that made sense structurally. That lead to a desire to execute code from the uC on the host system, but I never wrapped my head around how to do this in practice.
As a random simple example, let’s say I set up an interrupt based on the internal temperature sensor of the PIC18. Once triggered the uC must call a Python script on the host system and this script defines a new FF word on the uC by defining the Word in the interpreter.
How do you connect these dots to make this work at the simplest ‘hello world’ level? I tried modifying S-Term at one point, but I didn’t get anywhere useful with my efforts.
Yup, pretty much this. I have a small touchscreen Arduino device that I keep plugged into my PC. When I hit a button on the touchscreen it sends some text over serial (which is really a USB wire). I have a Python script on the PC that continuously reads from the serial port and parses the received data to figure out what to do. Specifically it tells my Discord bot to play a sound :)