Activity for FlashForth: for PIC and Atmega

  • Pere font vilanova Pere font vilanova posted a comment on discussion Open Discussion

    it works well. Good idea for some quick test.

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    Added words to temporarily compile code and execute it. Handy for timing tests or for compile-only words. Look in ARCH/forth/compile-execute.fs. [[ 10 for r@ . next ]] 9 8 7 6 5 4 3 2 1 0 ok<$,ram>

  • FlashForth: for PIC and Atmega FlashForth: for PIC and Atmega updated /ff5.0.zip

  • Mikael Nordman Mikael Nordman committed [47b16c] on Code

    ALL: [[ ]]

  • Pere font vilanova Pere font vilanova modified a comment on discussion Open Discussion

    thank you for the information. my idea was to have two buffer, a buffer 256 bytes and then a buffer of 64 bytes and a handle system. but now i'm thinking to have only one of 64 bytes and fill it reading the text until cr, evaluate and do the same until the end of file. i will check and try this idea and I will inform you. last : why buf c@+ evaluate buf2 c@+ evaluate doesn't work? and : test2 buf c@+ evaluate buf2 c@+ evaluate ; works.?

  • Pere font vilanova Pere font vilanova modified a comment on discussion Open Discussion

    thank you for the information. my idea was to have two buffer, a buffer 256 bytes and then a buffer of 64 bytes and a handle system. but now i'm thinking to have only one of 64 bytes and fill it reading the text until cr, evaluate and do the same until the end of file. i will check and try this idea and I will inform you.

  • Pere font vilanova Pere font vilanova posted a comment on discussion Open Discussion

    thank you for the information. my idea was to have two buffer, a buffer 256 bytes and then a buffer of 64 bytes and a handle system. but now i'm thinking to have only one of 64 bytes and fill it reading the text until cr, evaluate and do the same until the end of file. i will check and try this idea and I inform you.

  • Mikael Nordman Mikael Nordman modified a comment on discussion Open Discussion

    When I was writing the block words I found that FF should be restructured to accept input from a large buffer using REFILL. But I never did that restructuring. Anyway it is easiest to have a line buffer that can accept a whole line, and evaluate one line at a time. If you take in only part of a line you may cut off some words in the middle which again a more difficult thing to handle. So LOAD has the restriction that one line is always 64 bytes and a word is not allowed to be split across a 64 byte...

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    When I was writing the block words I found that FF should be restructured to accept input from a large buffer using REFILL. But I never did that restructuring. Anyway it is easiest to have a line buffer that can accept a whole line, and evaluate one line at a time. If you take in only part of a line you may cut of some words in the middle which again a more difficult thing to handle. So LOAD has the restriction that one line is always 64 bytes and a word is not allowed to be split across a 64 byte...

  • Pere font vilanova Pere font vilanova modified a comment on discussion Open Discussion

    what i really need: with loops and more accurate 1 ram create buf 20 allot 2 : test buf 20 evaluate ; 3 s" test3 1 2" buf swap cmove 4 test 5 buffer 20 erase 6 s" + . ;" buf swap cmove 7 test test3---->3 if this possible? my goal is evaluate a complet file of 4 K with a buffer of 256 bytes.

  • Pere font vilanova Pere font vilanova modified a comment on discussion Open Discussion

    what i really need: with loops and more accurate ram create buf 20 allot test buf 20 evaluate ; s" test3 1 2" buf swap cmove test buffer 20 erase s" + . ;" buf swap cmove test test3---->3 if this possible? my goal is evaluate a complet file of 4 K with a buffer of 256 bytes.

  • Pere font vilanova Pere font vilanova modified a comment on discussion Open Discussion

    what i really need: with loops and more accurate ram create buf 20 allot test buf 20 evaluate ; s" test3 1 2" buf swap cmove test buffer 20 erase s" + . ;" buf 8 + swap cmove test test3---->3 if this possible? my goal is evaluate a complet file of 4 K with a buffer of 256 bytes.

  • Pere font vilanova Pere font vilanova posted a comment on discussion Open Discussion

    what i really need: with loops and more accurate ram create buf 20 allot test buf c@+ evaluate ; s" test3 1 2" buf swap cmove test buffer 20 erase s" + . ;" buf 8 + swap cmove test test3---->3 if this possible? my goal is evaluate a complet file of 4 K with a buffer of 256 bytes.

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    Using evaluate like this does not work. ram create buf 20 allot ram create buf2 20 allot s" test 1 2" buf place s" + . ;" buf2 place buf c@+ evaluate buf2 c@+ evaluate

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    Having CR LF inside the buffer also works. All control bytes ( <32) are interpreted as white space.

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    This works for me ram create buf 20 allot ram create buf2 20 allot : test2 buf c@+ evaluate buf2 c@+ evaluate ; s" test 1 2" buf place s" + . ;" buf2 place test2 test 3

  • Pere font vilanova Pere font vilanova modified a comment on discussion Open Discussion

    Hello Mikael is there a way to use interpret in a buffer? i mean, i have a buffer with some forth words, and some definitions. if i need several buffers to interpret, i cannot use evaluate, because some of them finish in the midle of a definition, ande aluate doesnt work. but maybe if i change the source and use interpret i can use it and following reading the newbuffer until the end... exMple: create buffer 10 allot buffer ------> ( : test 1 cr 1 + . ; )definition in two lines. twice the buffer...

  • Pere font vilanova Pere font vilanova modified a comment on discussion Open Discussion

    Hello Mikael is there a way to use interpret in a buffer? i mean, i have a buffer with some forth words, and some definitions. if i need several buffers to interpret, i cannot use evaluate, because some of them finish in the midle of a definition, ande aluate doesnt work. but maybe if i change the source and use interpret i can use it and following reading the newbuffer until the end... exMple: create buffer 10 allot buffer ------> ( : test 1 cr 1 + . ; )definition in two lines. buffer evaluate doesnt...

  • Pere font vilanova Pere font vilanova posted a comment on discussion Open Discussion

    Hello Mikael is there a way to use interpret in a buffer? i mean, i have a buffer with some forth words, and some definitions. if i need several buffers to interpret, i cannot use evaluate, because some of them finish in the midle of a definition, ande aluate doesnt work. but maybe if i change the source and use interpret i can use it and following reasing the newbuffer until the end... exMple: create buffer 10 allot buffer ------> ( : test 1 cr 1 + . ; )definition in two lines. buffer evaluate doesnt...

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    WHAT ?

  • Fred Zelders Fred Zelders posted a comment on discussion Open Discussion

    Well we'll wait and see :-) Thank you Mikael. You do a great job with FF!

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    Yes, no P register is FF6, but I don't know if it will ever go further than alpha state.

  • Fred Zelders Fred Zelders modified a comment on discussion Open Discussion

    OK Mikael. Thank you for your explanation. Does your remark about FF6 mean that there will be no P register and associated words available for all of us?

  • Fred Zelders Fred Zelders posted a comment on discussion Open Discussion

    OK Mikael. Thank you for your explanation. Your does your remark about FF6 mean that there will be no P register and associated words available for all of us?

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    The advantage comes from the associated words, and by having a kind of consistency. Advantages compared to a variable is that the P register is multitasking safe and also re-entrant, and the associated words are more efficient than if you define them yourself. Myself I have had very little use of those P words, so in FF6 I removed them. They are mostly cute and an attempt to mimic pointers in C.

  • Fred Zelders Fred Zelders posted a comment on discussion Open Discussion

    What is the advantage of using the P register instead of using a variable I can define myself? Is it because of the P register associated words or are there other advantages?

  • Pere font vilanova Pere font vilanova posted a comment on discussion Open Discussion

    I always thought that when there were two nested loops, the index value of each loop had to be requested using I and J. But in the last example, I see that I can get the value of each index (inner and outer) using only index I, without needing to use J. I suppose they should only be used if both indices are requested within the same loop. sorry for a lot of questions, but i'm beginner forth user....

  • Mikael Nordman Mikael Nordman modified a comment on discussion Open Discussion

    Your code does not match the result in FF. Maybe in gforth ? This is correct. What do you think it was supposed to do ? : tt 10 for i . 10 for i . next cr next ; ok tt 9 9 8 7 6 5 4 3 2 1 0 8 9 8 7 6 5 4 3 2 1 0 7 9 8 7 6 5 4 3 2 1 0 6 9 8 7 6 5 4 3 2 1 0 5 9 8 7 6 5 4 3 2 1 0 4 9 8 7 6 5 4 3 2 1 0 3 9 8 7 6 5 4 3 2 1 0 2 9 8 7 6 5 4 3 2 1 0 1 9 8 7 6 5 4 3 2 1 0 0 9 8 7 6 5 4 3 2 1 0 ok

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    Your code does not match the result. This is correct. What do you think it was supposed to do ? : tt 10 for i . 10 for i . next cr next ; ok tt 9 9 8 7 6 5 4 3 2 1 0 8 9 8 7 6 5 4 3 2 1 0 7 9 8 7 6 5 4 3 2 1 0 6 9 8 7 6 5 4 3 2 1 0 5 9 8 7 6 5 4 3 2 1 0 4 9 8 7 6 5 4 3 2 1 0 3 9 8 7 6 5 4 3 2 1 0 2 9 8 7 6 5 4 3 2 1 0 1 9 8 7 6 5 4 3 2 1 0 0 9 8 7 6 5 4 3 2 1 0 ok

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    You need J when you in the inner loop want to use the index of the outer loop. : test3 10 0 do 10 0 do ." i" ii . ." j" j . loop cr loop ; ok test3 i0 j0 i1 j0 i2 j0 i3 j0 i4 j0 i5 j0 i6 j0 i7 j0 i8 j0 i9 j0 i0 j1 i1 j1 i2 j1 i3 j1 i4 j1 i5 j1 i6 j1 i7 j1 i8 j1 i9 j1 i0 j2 i1 j2 i2 j2 i3 j2 i4 j2 i5 j2 i6 j2 i7 j2 i8 j2 i9 j2 i0 j3 i1 j3 i2 j3 i3 j3 i4 j3 i5 j3 i6 j3 i7 j3 i8 j3 i9 j3 i0 j4 i1 j4 i2 j4 i3 j4 i4 j4 i5 j4 i6 j4 i7 j4 i8 j4 i9 j4 i0 j5 i1 j5 i2 j5 i3 j5 i4 j5 i5 j5 i6 j5 i7 j5 i8 j5...

  • Pere font vilanova Pere font vilanova posted a comment on discussion Open Discussion

    also : tt 10 for i . 10 for i . next cr next ; ok tt 10 10 9 8 7 6 5 4 3 2 1 0 9 10 9 8 7 6 5 4 3 2 1 0 8 10 9 8 7 6 5 4 3 2 1 0 7 10 9 8 7 6 5 4 3 2 1 0 6 10 9 8 7 6 5 4 3 2 1 0 5 10 9 8 7 6 5 4 3 2 1 0 4 10 9 8 7 6 5 4 3 2 1 0 3 10 9 8 7 6 5 4 3 2 1 0 2 10 9 8 7 6 5 4 3 2 1 0 1 10 9 8 7 6 5 4 3 2 1 0 0 10 9 8 7 6 5 4 3 2 1 0 ok

  • Pere font vilanova Pere font vilanova modified a comment on discussion Open Discussion

    yes but normally in nested loop i used: qq 10 0 do Jx . 10 0 do I x . loop cr loop ; that is working well but if i make ww 10 0 do Ix . 10 0 do Ix . loop cr loop ; also it works... then why you need Jx? qq 10 0 do i . 10 0 do i . loop cr loop ; \ tested on my ipad swiftforth \ but also checked in my scamp ok qq 0 0 1 2 3 4 5 6 7 8 9 1 0 1 2 3 4 5 6 7 8 9 2 0 1 2 3 4 5 6 7 8 9 3 0 1 2 3 4 5 6 7 8 9 4 0 1 2 3 4 5 6 7 8 9 5 0 1 2 3 4 5 6 7 8 9 6 0 1 2 3 4 5 6 7 8 9 7 0 1 2 3 4 5 6 7 8 9 8 0 1 2 3 4...

  • Pere font vilanova Pere font vilanova modified a comment on discussion Open Discussion

    yes but normally in nested loop i used: qq 10 0 do Jx . 10 0 do I x . loop cr loop ; that is working well but if i make ww 10 0 do Ix . 10 0 do Ix . loop cr loop ; also it works... then why you need Jx? qq 10 0 do i . 10 0 do i . loop cr loop ; \ tested on my ipad swiftforth \ but also checked in my scamp ok qq 0 0 1 2 3 4 5 6 7 8 9 1 0 1 2 3 4 5 6 7 8 9 2 0 1 2 3 4 5 6 7 8 9 3 0 1 2 3 4 5 6 7 8 9 4 0 1 2 3 4 5 6 7 8 9 5 0 1 2 3 4 5 6 7 8 9 6 0 1 2 3 4 5 6 7 8 9 7 0 1 2 3 4 5 6 7 8 9 8 0 1 2 3 4...

  • Pere font vilanova Pere font vilanova posted a comment on discussion Open Discussion

    yes but normally in nested loop i used: qq 10 0 do Jx . 10 0 do I x . loop cr loop ; that is working well but if i make ww 10 0 do Ix . 10 0 do Ix . loop cr loop ; also it works... then why you need Jx? qq 10 0 do i . 10 0 do i . loop cr loop ; ok qq 0 0 1 2 3 4 5 6 7 8 9 1 0 1 2 3 4 5 6 7 8 9 2 0 1 2 3 4 5 6 7 8 9 3 0 1 2 3 4 5 6 7 8 9 4 0 1 2 3 4 5 6 7 8 9 5 0 1 2 3 4 5 6 7 8 9 6 0 1 2 3 4 5 6 7 8 9 7 0 1 2 3 4 5 6 7 8 9 8 0 1 2 3 4 5 6 7 8 9 9 0 1 2 3 4 5 6 7 8 9 ok

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    curiously if i use only i . the nested loop runs ok........ Why ? That is normal. I accesses the current loop index, J the outer loop index, K 2 levels up.

  • Pere font vilanova Pere font vilanova posted a comment on discussion Open Discussion

    curiously if i use only i . the nested loop runs ok........

  • Pere font vilanova Pere font vilanova posted a comment on discussion Open Discussion

    oh oh totally true, i had a wrong idea. really i is inner loop and j is outer loop. thank you again.....

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    gforth Gforth 0.7.9_20250321 Authors: Anton Ertl, Bernd Paysan, Jens Wilke et al., for more type `authors' Copyright © 2025 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html> Gforth comes with ABSOLUTELY NO WARRANTY; for details type `license' Type `help' for basic help : test1 10 0 do ." i" i . 10 0 do ." j" j . loop cr loop ; ok test1 i0 j0 j0 j0 j0 j0 j0 j0 j0 j0 j0 i1 j1 j1 j1 j1 j1 j1 j1 j1 j1 j1 i2 j2 j2 j2 j2 j2 j2 j2 j2 j2 j2 i3 j3...

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    (a) is correct. You need to think about what the function of the word J is. J gets you the value of the index of the outer loop.

  • Pere font vilanova Pere font vilanova modified a comment on discussion Open Discussion

    hello , i use i and jin the for next loop and ix and jx in the do loop: I checked these words: test1 10 0 do ." i " ix . 10 0 do ."j" jx . loop loop ; and doesnt work but (a) test1 10 0 do ." i" ix . 10 0 do ." j" ix. loop loop ; it works! (b) (a) : i0 j0 j0 j0 j0 j0 j0 j0 j0 j0 j0 i1 j1 j1 j1 j1 j1 j1 j1 j1 j1 j1 i2 j2 j2 j2 j2 j2 j2 j2 j2 j2 j2 i3 j3 j3 j3 j3 j3 j3 j3 j3 j3 j3 i4 j4 j4 j4 j4 j4 j4 j4 j4 j4 j4 i5 j5 j5 j5 j5 j5 j5 j5 j5 j5 j5 i6 j6 j6 j6 j6 j6 j6 j6 j6 j6 j6 i7 j7 j7 j7 j7 j7 j7...

  • Pere font vilanova Pere font vilanova posted a comment on discussion Open Discussion

    hello , i use i and jin the for next loop and ix and jx in the do loop: I checked these words: test1 10 0 do ." i " ix . 10 0 do ."j" jx . loop loop ; and doesnt work but (a) test1 10 0 do ." i" ix . 10 0 do ." j" ix. loop loop ; it works! (b) (a) : i0 j0 j0 j0 j0 j0 j0 j0 j0 j0 j0 i1 j1 j1 j1 j1 j1 j1 j1 j1 j1 j1 i2 j2 j2 j2 j2 j2 j2 j2 j2 j2 j2 i3 j3 j3 j3 j3 j3 j3 j3 j3 j3 j3 i4 j4 j4 j4 j4 j4 j4 j4 j4 j4 j4 i5 j5 j5 j5 j5 j5 j5 j5 j5 j5 j5 i6 j6 j6 j6 j6 j6 j6 j6 j6 j6 j6 i7 j7 j7 j7 j7 j7 j7...

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    How did you define J for the FOR NEXT? You cannot use J defined for DO LOOP in the FOR NEXT LOOP.

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    It is difficult to answer a question if you do not show the real code that you are using. If you use Ix then write it in the code. For me the do loop works just fine on the scamp 3e. : test1 10 0 do ." i" ii . 10 0 do ." j" j . loop cr loop ; ok i0 j0 j0 j0 j0 j0 j0 j0 j0 j0 j0 i1 j1 j1 j1 j1 j1 j1 j1 j1 j1 j1 i2 j2 j2 j2 j2 j2 j2 j2 j2 j2 j2 i3 j3 j3 j3 j3 j3 j3 j3 j3 j3 j3 i4 j4 j4 j4 j4 j4 j4 j4 j4 j4 j4 i5 j5 j5 j5 j5 j5 j5 j5 j5 j5 j5 i6 j6 j6 j6 j6 j6 j6 j6 j6 j6 j6 i7 j7 j7 j7 j7 j7 j7 j7...

  • Pere font vilanova Pere font vilanova posted a comment on discussion Open Discussion

    in the rest of forths the firts way is the correct, using i and j, not using always i. the question is why when i use i and j, the double loop doesnt work well?

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    So what was your problem ?

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    It does not work because the Scamp has used I for the FOR NEXT. Defining I again for DO LOOP is not allowed in FlashForth. So, in Scamp I can only be used by FOR NEXT, there I is just an alias for R@. I asked John not to do that, but he did, so now there is this mess with I and DO LOOP.

  • Pere font vilanova Pere font vilanova posted a comment on discussion Open Discussion

    really in the loop do loop i use the index Ix and Jx , in this way ther is no interference with the i and j of the for next......

  • Pere font vilanova Pere font vilanova posted a comment on discussion Open Discussion

    I checked these words: test1 10 0 do ." i " i . 10 0 do ."j" j . loop loop ; and doesnt work but test1 10 0 do ." i" i . 10 0 do ." j" i . loop loop ; it works! also test2 10 for ." i" i . 10 for ." j"j . next next ; doesnt works but test2 10 for ." i" i . 10 for ." j" i . next next ; it works that is not standard at all... is it normal?

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    There is a small trick to get 1536 ($600) bytes of extra ram on the Scamp. You can use the flash buffer in ram to store data as long as you do not attempt to write anything to flash. Just be sure to empty the flash buffer with IFLUSH before using the buffer. With the latest Scamp version the buffer starts at $84a.

  • Mikael Nordman Mikael Nordman modified a comment on discussion Open Discussion

    That kind of use looks fine to me. Mileage may vary. Do you mean that "array buffer u cmove" does not keep the data in flash after a power cycle ?

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    That kind of use looks fine to me. Mileage may vary. Do you mean that "array buffer u cmove" keep the data in flash after a power cycle ?

  • Pere font vilanova Pere font vilanova modified a comment on discussion Open Discussion

    yes, i know. mi idea was flash create buffer 4096 allot ram create array 1024 allot array buffer u cmove \ maybe to much wear? i only use it time by time. i want to use for saving data to external memory system. but maybe is not good idea. what do you think about: buffer r| variable x : test 1 1 + . ; : test2 2 2 * . ; | ; \ r| parse multiline and have my data in text file. \ r| ( text -- addr u ) then i have my data in the flash word buffer. buffer array place \ my data in ram or buffer ext-memory...

  • Pere font vilanova Pere font vilanova modified a comment on discussion Open Discussion

    yes, i know. mi idea was flash create buffer 4096 allot ram create array 1024 allot array buffer u cmove \ maybe to much wear? i only use it time by time. i want to use for saving data to external memory system. but maybe is not good idea. what do you think about: buffer r| variable x : test 1 1 + . ; : test2 2 2 * . ; | ; \ r| parse multiline and have my data in text file. r| ( text -- addr u ) then i have my data in the flash word buffer. buffer array place \ my data in ram or buffer ext-memory...

  • Pere font vilanova Pere font vilanova posted a comment on discussion Open Discussion

    yes, i know. mi idea was flash create buffer 4096 allot ram create array 1024 allot array buffer u cmove \ maybe to much wear? i only use it time by time. i want to use for saving data to external memory system. but maybe is not good idea. what do you think about: buffer r| variable x : test 1 1 + . ; : test2 2 2 * . ; | ; \ r| parse multiline and have my data in text file then i have my data in the flash word buffer. buffer array place \ my data in ram or buffer ext-memory save! \ save! is a user...

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    By the way. If you write your code so that the ram buffer will flush to flash for each cell or byte, it will quickly wear out the flash, since for each char/cell the whole 1 kbyte block is erased and rewritten.. A buffer in flash sounds suspect to me. Flash data should really contain just static or almost static data.

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    When writing data to flash, the data is gathered in a aligned 1 Kbyte ram buffer (Scamp). That buffer is written to flash if it gets full, or if 300 milliseconds has passed after the last write to flash. The timeout is handled inside PAUSE by calling IFLUSH. So if you call PAUSE often like the normal interpreter does, the data should find it's way into flash. Just now I tried it on a Scamp2e and it works just fine. flash create array 100 allot ram 1234 array ! \ Wait for 300 ms before disconnecting...

  • Pere font vilanova Pere font vilanova posted a comment on discussion Open Discussion

    i want to create an array in flash flash create buffer 1024 allot ram then i want to insert data inside, with cmove, accept etc.. it works well in my code but, after a reset, the data is lost. what is the way to do it and don't lost the data?

  • Pere font vilanova Pere font vilanova modified a comment on discussion Open Discussion

    i have the version 1.7.4 for AT commands. and also the esp-link for the serial bridge and bluetooth managements. i have not tried yet the connections https with this one. now i'm working with a file system manager for scamp3e. if you want to check, the url for esp-link is: https://aceindy.github.io/esp-link/ the link doesn't works on safari browser.

  • Pere font vilanova Pere font vilanova posted a comment on discussion Open Discussion

    i have the version 1.7.4 for AT commands. and also the esp-link for the serial bridge and bluetooth managements. i have not tried yet the connections https with this one. now i'm working with a file system manager for scamp3e. if you want to check, the url for esp-link is: https://aceindy.github.io/esp-link/

  • Jan Kromhout Jan Kromhout posted a comment on discussion Open Discussion

    Pere, Have you ever updated the ESP01's firmware to the latest version? If so, could you give me the URL where I can download it? I'll try to establish a secure connection. Cheers, Jan

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    It should work using the debugger USB port (unless you cut some connections on the board). Did you check the instructions in the board User Guide about the serial CDC connection.

  • Chan Siu Fung John Chan Siu Fung John posted a comment on discussion Open Discussion

    @oh2aun Hi Mikael, thank you for your advice. I have modified p18fxxk42.inc as suggested. But I still cannot get the OK prompt using the following combination connecting a PC. 1. debugger USB port 2. RC2 / RC3 connected to a USB FT232 (RX/TX/GND); power from the debugger USB 3. RB0 / RB3 connected to a USB FT232 (RX/TX/GND); power from the debugger USB 4. RD0 / RD1 connected to a USB FT232 (RX/TX/GND); power from the debugger USB

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    These config changes could work. I do not have the board. // Define if USB or which UART is used for the operator task // 0=USB 1=UART1 2=UART2 3=UART3 #define OPERATOR_UART 2 #define WANT_UART2 ENABLE // ENABLE or DISABLE CONFIG FEXTOSC = OFF CONFIG RSTOSC = HFINTOSC_64MHZ CONFIG BOREN = ON CONFIG BORV = VBOR_2P85 ; Define UART2 TX pin #if WANT_UART2 == ENABLE #define TX2_TRIS TRISD #define TX2_ANSEL ANSELD #define TX2_BIT 0 #define TX2_PPS RD0PPS #define TX2_LAT LATD #define TX2_CODE 0x16 ; Define...

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    Do you have a problem ? At least the UART pins have to be configured to match the nano board design. Have you done that ?

  • Chan Siu Fung John Chan Siu Fung John posted a comment on discussion Open Discussion

    Had anybody compiled and run successfully using the curiosity nano PIC18F47K42 board ?

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    John has made a small copy-paste error in the USB descriptor. I asked him to fix it.

  • Stefan James Stefan James posted a comment on discussion Open Discussion

    Hi Mikael, John has updated the scamp firmware and I've just tried it, but unfortunately the USB problem on windows persists. Regards, Stefan.

  • Stefan James Stefan James posted a comment on discussion Open Discussion

    Great, thanks Mikael.

  • FlashForth: for PIC and Atmega FlashForth: for PIC and Atmega updated /ff5.0.zip

  • Mikael Nordman Mikael Nordman committed [8988a7] on Code

    PIC24: In endpoint size 8 for Windows

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    Yes, there seems to be a problem with windows. It refuses to handle different sizes of in(16) and out(8) end points. Works fine on Linux and I suppose on OSX since John is an Apple guy. I will update the end points to be the same size.

  • Stefan James Stefan James modified a comment on discussion Open Discussion

    Hi, I've updated my scamp boards with the latest Udamonic firmware, but Windows 10/11 is unable to detect the USB-CDC and returns Unknown USB Device (Invalid configuration descriptor). Rolling back to the previous Scamp3 release works fine. I have no trouble running the latest version firmware on Linux. Could this be a windows-only issue with the latest FlashForth release?

  • Stefan James Stefan James posted a comment on discussion Open Discussion

    Hi, I've updated my scamp boards with the latest Udamonic firmware, but Windows 10/11 is unable to detect the USB-CDC and returns Unknown USB Device (Invalid configuration descriptor). Rolling back to the previous Scamp3 release works fine. I have no trouble running the previous version firmware on Windows. Could this be an issue with the latest FlashForth release?

  • Jan Kromhout Jan Kromhout posted a comment on discussion Open Discussion

    I have checked every word en the stack behavior is as it should. In my test program the stack is in balance!

  • Jan Kromhout Jan Kromhout posted a comment on discussion Open Discussion

    I have checked every word en the stack behavior is as it should. In my test program the stack is in balance!

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    Is your data stack balanced? Does it grow or shrink?

  • Jan Kromhout Jan Kromhout posted a comment on discussion Open Discussion

    Using the code below, I'm trying to connect an MCU6050 to the Scamp3. At first, the code seems to work. The I2C clock speed is reduced. But after reading the sensor a few times, the program hangs, or the I2C is broken. With the test program, I call the MCU, delete the result, and print a dot. But after calling the program about 15 times, the program stops. I've also written test code for the Arduino Uno, and it runs perfectly, without the system hanging. Include also the basic procedure arduino to...

  • FlashForth: for PIC and Atmega FlashForth: for PIC and Atmega updated /ff5.0.zip

  • Mikael Nordman Mikael Nordman committed [bd4e88] on Code

    PIC18: terminal in background task

  • Pere font vilanova Pere font vilanova posted a comment on discussion Open Discussion

    i tried yesterday but not communication with METAR. NEITHER inmanual mode. i think that firmware 1.7.4 doesnt allow the https protocol.next week i will check if the esp-link firmware allow me the protocol. another solution is to flash a personal software via arduino ide, to setup the wifi and send the data to serial,port. But you need C code. and im not sure is it works.

  • Jan Kromhout Jan Kromhout posted a comment on discussion Open Discussion

    I have a 1 MB version AT+GMR AT version:1.7.4.0(Jul 8 2020 15:53:04) SDK version:3.0.5-dev(52383f9) compile time:Aug 28 2020 14:37:33 But after testing some commands I dont have the posiblity to connect with fftps. Do you have wordked woth fftps, or upgrading the firmware? An other solution is to flash a simple arduino code into it, and when it receiveices a "1" it gives back the data of the ISS, and for example if it receive a "2" it gives back the METAR data. On this moment I stock in the further...

  • Pere font vilanova Pere font vilanova posted a comment on discussion Open Discussion

    ohh I will try soon. its a kind of forget for testing words....

  • FlashForth: for PIC and Atmega FlashForth: for PIC and Atmega updated /ff5.0.zip

  • Mikael Nordman Mikael Nordman committed [692d2e] on Code

    PIC24: transient workaround

  • Mikael Nordman Mikael Nordman modified a comment on discussion Open Discussion

    I though about a solution to make older versions of FF to work with the transient feature. Here the transient words are located below the $8000 flash real address. : transient ( size -- ) flash latest @ align here >r >r ( size ) aligned $8000 pfl + swap - dp ! latest @ , here $2081 , latest ! r> , r> , ram ;

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    I though about a solution to make older version of FF to work with the transient feature. There the transient words are located below the $8000 flash real address. : transient ( size -- ) flash latest @ align here >r >r ( size ) aligned $8000 pfl + swap - dp ! latest @ , here $2081 , latest ! r> , r> , ram ;

  • Pere font vilanova Pere font vilanova posted a comment on discussion Open Discussion

    after some investigation it seems that esp01 doesnt support https. you will need a model with at less 1 or 2 MB. maybe you can chaeck with the firmware esp-link.

  • Pere font vilanova Pere font vilanova modified a comment on discussion Open Discussion

    these days im on relax days , south of France, until next wednesday. then i will check your code. regarding esp01 firmware there are differents versions. I use version 1.74, uploaded with esptools , also the esp-link is available and programmable as ap sta or both.

  • Pere font vilanova Pere font vilanova posted a comment on discussion Open Discussion

    these days im on relax days , south of France, until next wednesday. then i will check your code. regarding esp01 firmware there are differents versions. I use version 1.74, uploaded with arduino IDE , also the esp-link is available and programmable as ap sta or both.

  • Jan Kromhout Jan Kromhout posted a comment on discussion Open Discussion

    Hello Pere, I found out that my ESP01 is not able to handle https, a lot of things I have planned are not working, when calling, for example for METAR data the http connection is redirected to https. Is there a way to flash other software on the esp01 to get it working, or should I switch to the ESP32? This is my METAR call: : metar ( --- ) s' AT+CIPSTART="TCP","aviationweather.gov",80' sendcommand 3000 ms s' AT+CIPSEND=99' sendcommand 500 ms s' GET /api/data/metar?ids=EHRD&format=json HTTP/1.1'...

  • Pere font vilanova Pere font vilanova modified a comment on discussion Open Discussion

    I have got time to try but, not working. but yor solution 1 day ago with abort is good option for me. i checked and is going quit well, even you can send messages from one to another. thank you a lot for all your help.. the echo in putty terminal is because i forgot remove the echo in setup

  • Pere font vilanova Pere font vilanova posted a comment on discussion Open Discussion

    I have got time to try but, not working. but yor solution 1 day ago with abort is good option for me. i checked and is going quit well, even you can send messages from one to another. thank you a lot for all your help..

  • Pere font vilanova Pere font vilanova posted a comment on discussion Open Discussion

    i tried in a very similar way and also not working. i find a code that if a i write code in term and enter nothing but when i write code in wifi and enter then execute the term and when do enter in term then execute in wifi.......? after that in becomes little crazy. i have some new idea, but i can't try until tomorrow.....maybe not possible....

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    I tried a few hours to get the background io-switch to work, but it did not want to. Giving the >terminal or >wifi from the currently active port works. Giving a command to the BG task to make switch using a global variable works. But not with rx1? and rxu? . -wifi marker -wifi : to-wifi ['] rx1 operator 'key his ! ['] rx1? operator 'key? his ! ['] tx1 operator 'emit his ! ; : to-term ['] rxu operator 'key his ! ['] rxu? operator 'key? his ! ['] txu operator 'emit his ! ; 0 40 40 0 task: io-switch-task...

  • Mikael Nordman Mikael Nordman posted a comment on discussion Open Discussion

    I tested a bit the background interpreter that uses ABORT. It seems to work quite well, except for the multitasking words which are hard coded to only run from the operator task. These are TASK: TINIT SINGLE END RUN TASKS. Hopefully all other words can be executed in the background and operator tasks in the interpretation state. When compiling new definitions or appending data to the dictionary only one of the terminal at a time can be used. There is only one dictionary so if two tasks write to it...

  • Pere font vilanova Pere font vilanova modified a comment on discussion Open Discussion

    In my projects, I use the ESP01 in two different modes: 1. Transparent mode. Basically, I use the ESP-Link firmware and use the ESP01 without AT commands, as if it were any UART. I explain this in the Udamonic group. 2. AT mode. With AT firmware, as is the case with the ISS. To preprogram it, I use the TERM program (see attached photo). You can find it in Udamonic, in the serial communications section. Once TERM is running, I enter the commands: AT --> OK AT+CIPMODE=1 --> OK AT+CIPMUX=0 --> OK AT+CWJAP="router","pasw"...

  • Pere font vilanova Pere font vilanova posted a comment on discussion Open Discussion

    In my projects, I use the ESP01 in two different modes: 1. Transparent mode. Basically, I use the ESP-Link firmware and use the ESP01 without AT commands, as if it were any UART. I explain this in the Udamonic group. 2. AT mode. With AT firmware, as is the case with the ISS. To preprogram it, I use the TERM program (see attached photo). You can find it in Udamonic, in the serial communications section. Once TERM is running, I enter the commands: AT --> OK AT+CIPMODE=1 --> OK AT+CIPMUX=0 --> OK AT+CWJAP="router","pasw"...

  • Jan Kromhout Jan Kromhout posted a comment on discussion Open Discussion

    Hello Pere, What is this "I have the esp01 already preprogrammed to connect to my router" I'm very curious to know what and how you did that! Maybe I can learn something from that. And why is it important to set the baud rate to 9600 baud? Cheers Jab

1 >