Go Down

Topic: [GSoC 2020] Arduino to MicroPython Transcompiler (Read 4251 times) previous topic - next topic

ashutosh_pandey

#15
Jun 23, 2020, 04:33 pm Last Edit: Jun 23, 2020, 04:38 pm by ashutosh_pandey Reason: Added links
Weekly Update #5

1.) Building Makefile for Arduino Preprocessor.

2.) Learning how to use LibClang.

3.) Working on Micropython Symbol table.

4.) Studying the Arduino Core API

Miscellaneous:

My project mentors asked me to open an issue or make a PR if I saw any discrepancy in the documentation/code in the course of my project work. Keeping that in mind, I opened the following issues and made a few PR's.

1.) Arduino- AVR core Readme: Unlike the Arduino SAMD core, the AVR core did not have a readme file with some basic details about the content. So I opened an issue: Issue #349 and made the following PR: PR #350

2.) Fixed a small typo in Arduino SAMD readme: https://github.com/arduino/ArduinoCore-samd/pull/533

3.) Arduino Language Reference: The 'Bits and Bytes' section did not have code examples and notes, and in one case the return value was incorrect. I opened the issue: https://github.com/arduino/reference-en/issues/748

and made the following PR's:

bit()
https://github.com/arduino/reference-en/pull/749

bitClear()
https://github.com/arduino/reference-en/pull/750

bitRead()
https://github.com/arduino/reference-en/pull/751

I will surely be doing more of this alongside my project work if the PRs meet Arduino's standards.

ashutosh_pandey

Weekly Update #6

Tasks accomplished:

1.) Built basic program to parse Clang textual output. Identifies various programming constructs like punctuators, variables, literals etc.

2) Program compiled with Arduino Core (Hardware Independent version). Stuff like LED_BUILTIN is still broken. Have to come up with replacements for arduino specific keywords that Clang can parse, then translate to micropython.

Tasks ongoing:

1.) Building program that contains references to arduino specific keywords, to get a proper parse tree.

2.) Building a simple preprocessor tool that removes #include directives, because that is giving me problems.

Blockers:

None

Go Up