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

Forth for ESP32 #39

Open
quozl opened this issue Jan 6, 2017 · 8 comments
Open

Forth for ESP32 #39

quozl opened this issue Jan 6, 2017 · 8 comments

Comments

@quozl
Copy link

@quozl quozl commented Jan 6, 2017

Mitch Bradley has ported C Forth to ESP32.

I have begun testing. My build steps on Ubuntu;

Hardware so far is;

Any other Forth implementations for ESP32 yet?

@jamesbowman
Copy link
Member

@jamesbowman jamesbowman commented Jan 6, 2017

Yes, swapforth has a port:

https://github.com/jamesbowman/swapforth/tree/master/esp8266

It's a bare-metal subroutine-theaded Forth. It currently passes the ANS compliance tests.
The difficult part (for me, at least) is providing a Forth interface to the various APIs that are in the SDK. They're gnarly.

@MitchBradley
Copy link

@MitchBradley MitchBradley commented Jan 6, 2017

@MitchBradley
Copy link

@MitchBradley MitchBradley commented Jan 6, 2017

@MitchBradley
Copy link

@MitchBradley MitchBradley commented Jan 6, 2017

@quozl
Copy link
Author

@quozl quozl commented Jan 6, 2017

@jamesbowman, thanks for the link to swapforth. I've looked through the esp8266 directory but can't find anything to build on esp32. I did find the esp8266 bootrom disassembly interesting.

@anse1
Copy link

@anse1 anse1 commented Jul 5, 2019

These chips are intriguing… some of those boards are actually cheaper than hooking the cheapest bluetooth uart to a msp430 for a wireless forth experience. Did some new ports happen since 2017?

@MitchBradley
Copy link

@MitchBradley MitchBradley commented Jul 5, 2019

cforth (https://github.com/MitchBradley/cforth) runs pretty well on ESP32. It has interfaces to the SDK socket layer and I2C. It should be easy enough to add bluetooth interfaces via cforth's C-to-Forth gateway mechanism, assuming you understand bluetooth. cforth has some bluetooth app code that runs on top of other cforth ports that could be used as examples. It's not comprehensive; I didn't try to handle every possible bluetooth device, but focused on the task at hand at the time, which was talking to a BLE IoT gadget.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
5 participants
You can’t perform that action at this time.