![]() ![]() At the end of this procedure you'll be able to run the classical Python interactive console (also know as read–eval–print loop (REPL)) and start having fun with it. You have successfully compiled OpenOCD (I suggest the latest 0.9.0 version) and properly installed it in ~/STM32Toolchain/openocd.īefore I describe the changes to the main μPython source, I'll show a really quick guide that allows you to flash your Nucleo board with μPython in less than 5 minutes.if you need to install a complete GCC/Toolchain, you can follow this guide.you are free to use a different path, but arrange my instructions accordingly.You have a fully working GCC toolchain installed in ~/STM32Toolchain/gcc-toolchain.You have a UNIX like based PC (both Linux and MacOS are welcome - It should be not too difficult to arrange my instructions to a Windows PC).In this post I'll assume the following hardware and system requirements: You can download it from my github account. Since there is no official support for this board, I've forked the github repo and done all the necessary modifications. In this post I'll show you how to successfully compile μPython for the Nucleo-F401RE board, the one I've already used in my past tutorials. The μPython project has also successfully raised for founds on kickstarter for two electronic boards: the PyBoard, a really simple prototyping board based on the STM32F4 family, and WiPy based on the CC3200 Wi-Fi chip from TI.īeing the PyBoard based on the STM32F4 family of MCU, and the HAL provided by ST, it's quite simple to adapt μPython to other boards with the same MCU, even to custom designed board. μPython is not a simple one-to-one port of Python, but it's a complex effort to adapt the official CPython to hardware architectures with really low physical resources (especially RAM). Micropython is a really impressive effort from Damien George (and the community) to port Python 3.x to low cost MCU. ![]() For example, the STM32 platform is a really cost effective family of MCU considering the feature it implements.īut things are changing. Due to its nature of high level and interpreted programming language, Python is still not present on true embedded microcontrollers, even if they are becoming always more powerful. I wrote hundreds of thousands lines of code in Python, ranging from web apps to software running on embedded single board computers like the Raspberry PI. Some additional info of when i connect the stlink in my PC with the prototye connected.Everyone who knows me is also aware of the fact that my favorite programming language is Python. The only change i made to this version of the software and an older variant was to change return uwTick to return HW_RTC_GetTimerValue() in the HAL_gettick() function. On the plus side the boards are still running but have some inconsistent readings. Created a "fresh" CubeMX project and tried to load the program on to the prototypes without succesĭoes anyone know a way to do a factory reset or has a sollution for this problem? My internship is almost finished and i dont really have the time to wait +- 4 weeks to wait on new prototypes.tried to load the program onto a Discovery board (It seems to work but i did stop the programming halfway through the procces because i am afraid to brick the disco board too).pulled the boot0 pin to '1' and tried to program it (normally pulled down).What i have tried to solve the problem is: It was a terrible idea to let all of my prototypes run the same software because keil uvision 5 cant program any of the boards anymore. I loaded the same software as the other boards onto the board and did some measurements. The last prototype board i wanted to use for an energy consumption test. The idea was to let the code run on the four prototypes and let it run the whole weekend as a stability check. As a refference i picked another prototype board and let it run the same software version as the other three prototypes but in a different mode. The proccesor in this module is a Stm32l0 which i was able to program for the past couple of months.Īs i had a problem with the stability of the program (chrashed randomly after sometimes running perfectly for a couple of hours) i decided to let 3 of my 5 prototype boards run a program in a mode that uses one paticular sensor which seemed to cause problems. What i am allowed to share is that the board uses a Murata cmwx1zzabz module as proccesor and for lora communication. Due to a non disclosure agreement i am not allowed to share the schematics, PCB layout or software of the board. For the past couple of months I have been developing software for a custom build board. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |