Jump to content

SIMPL - A Tiny Language for MSP430

Recommended Posts

Earlier this week I stated that the ChipStick module would be the first of a series of MSP430 FRAM based modules - with external SRAM or FRAM.


After some thought and experimentation with different pcb layouts and concepts I would like to propose the following:




Nanode - a compact 0.4" x 0.5"  (10.24 x 12.7mm) MSP430FR2433 module with 2 external SPI memory footprints.  23K256 (32Kbytes) or 23C1024 (128Kbytes) SRAM in SSOP package on board underside with  up to 256Kbytes FRAM in 8 pin SOIC on board topside. 


For breadboard/stripboard compatibility I have laid out  two sizes of module, 




ChipStick - a 20 pin 0.3" DIL based on the MSP430FR2433/25xx/26xx for G2 LaunchPad experimentation




FramStick - A 40 Pin 0.6" DIL module that accepts the 38 pin TSSOP packages of the MSP430FR57xx and '59xx series.  The DIL 40 version will support either 16K or 64K of FRAM processor variants - plus up to two external RAM devices. FramStick has a pinout compatible with the ATmega1284 - for Arduino/Goldilocks cross compatibility.


N 2016      20 pin, 1.27mm (haf-pitch) nano-size module    "Nanode"

F 2016      20 pin, 16K FRAM   - uses MSP430FR2433  (or FR25xx, FR26xx)  "ChipStick"

F 4016      40 pin, 16K FRAM  - Uses MSP430FR5739 or equiv.    "FramStick"

F 4064      40 pin, 64K FRAM  - Uses MSP430FR57xx or FR59xx.


All modules have an 8 pin SPI memory footprint. This allows either a 23K256 (32Kx8) or 23LC1024  (128Kx8) SRAM  or any of the Cypress or Fujitsu FRAM parts up to the 256Kx8 to be fitted - depending on budget.


The F20 is intended to plug in as a replacement for the G2553. The F40 is designed to have the same pin out as an ATmega1284 - this is so it can be plugged into various ATmega boards - for an immediate x4 boost in performance.


You can follow progress on these devices on my blog.  








Link to post
Share on other sites



Very interesting.

When I go to https://simplex1.wik...uction-Set.html I have to log in...

Uh, help please...


Henk Siewert



Sorry about the delay.


I have now moved the SIMPL Wiki to my GitHub space


You can view it here




There have been some formatting issues when I transferred the files over which I still need to sort out.



Also the project files are slowly being added to the repository










Link to post
Share on other sites



Thanks for finding this. Very interesting


Clearly they share a common ancestor.


The language is more Forthlike than mine, and more structured - possibly not a bad thing.  I'm not really a programmer!


I'll need to check out in full later.






I suspect he hasn't got 20 of these in his armoury though.....







Link to post
Share on other sites

No, LOL.  As I said in your other thread, nice work.  The Arduino-Shell is pretty general, and could easily be adapted to other chips.  I am hoping that I might include it in some of my OpenLCB nodes to give them user programmability.  I am waiting for the dust to settle.  

Link to post
Share on other sites



There are so many good ideas here, I don't know quite where to start.


I don't have my development machine working as it is in the middle of an upgrade, but I did download the MSP430G2553 flavor of SIMPL and flash it to a spare Launchpad. Do you have some example sessions of talking to it anywhere, I assume it's running at 9600 baud on the LP? I would like to gets some hands on experience.


I can help with the port to the 16F1XXX, actually the 16F1455 might be an elegant, minimal fit.





Link to post
Share on other sites

Thanks Rando 


I am trying to get some documentation together - that is more easily followed.


Start off with Ward Cunningham's Txtzyme website - which explains the basics. It should be a fairly simple port to the 16Fxxxx





 I just built on his foundations.  His <100 line interpreter code is still at the heart of my implementation.


My interest started 3 years ago   - http://sustburbia.blogspot.co.uk/2013/05/simpl-simple-programming-language-based.html






BTW  I now have it running on 4 different MSP430 chips  (G2533, FR4133, FR2433, i2041)  , and all the ARM Cortex M3, M4, M7  I work with . It's the first thing I try to implement on a new mcu - it's like having an old friend along for the ride.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...