| Menu | JAQForum Ver 19.10.27 |
Forum Index : Microcontroller and PC projects : PicoMite V6.02.01 release candidates
Peter, This is a great improvement. Please explain how this is achieved. 1/ There is one bug I noticed. SETTICK seems roughly double fast. In below code, s should increment every second (8x120ms). Settick 120,docount do:loop sub docount static i=0 static s=0 inc i if i=8 then i=0:inc s:print s end sub I found this because the music in SNAKE ran double fast. 2/ A second bug: after OPTION RESET VGA DESIGN 2 the SYSTEM I2C is configured at GP14/15. When doing a RTC GETTIME I get an error: SYSTEM I2C not configured. Found this because error message for RTC AUTO after some time. Volhout Edited 2026-03-19 17:50 by Volhout |
||||||
Can't replicate either on a VGA DESIGN 2 rtc gettime option milliseconds on SetTick 120,docount timer=0 Do Loop Sub docount Print Time$,timer End Sub |
||||||
|
||||||
Peter, Quick check on rc8 on VGA 2040: all seems okay. Will do more thorough testing during the weekend. Impressive performance gain vs. rc7 Volhout Edited 2026-03-19 19:44 by Volhout |
||||||
Hello, is the lastest version working with Pimoroni Pico Plus 2 W? Can I use the PSRAM with setting the OPTION PSRAM PIN n? Thx! |
||||||
G'day Peter, Some further testing has shown a reversal, the message is no longer buffered but is possibly stuck in a loop: (Using PicoMiteRP2350V6.02.01rc8) While the E-Stop input is low we now get: Hardware E-STOP trip - emergency stop Clear E-STOP switch, re-home (G28), then STEPPER RUN Hardware E-STOP trip - emergency stop Clear E-STOP switch, re-home (G28), then STEPPER RUN Hardware E-STOP trip - emergency stop Clear E-STOP switch, re-home (G28), then STEPPER RUN Hardware E-STOP trip - emergency stop Clear E-STOP switch, re-home (G28), then STEPPER RUN Hardware E-STOP trip - emergency stop Loops until input pulled high again Can I also request an extension to the PEEK(Stepper Active) command? Is it possible to add the "E-Stop status" and "System Position Known status" as bits/flags? I would like to use the Stepper commands from within a program and these will keep the program and stepper system in sync (hopefully) Regards, Lyle. |
||||||
Lyle Please let me know if this fixes the estop issue - sorry can't test myself at the moment. PicoMite.zip |
||||||
Hi Peter, Great News that has fixed it.Now a single message with each E-Stop activation. Thanks once again. Regards, Lyle. |
||||||
|
||||||
I've run into a snag: Too many local variables From the manual: I know it's a big ask, but with the memory resources available with the RP2350, and chance for a further increase in the number of local variables? |
||||||
You can trade globals for locals using OPTION LOCAL VARIABLES |
||||||
OPTION LOCAL VARIABLES 500 Perfect. Thank you. |
||||||
Hi Peter, In RC8 I have started to get the USB problem again with a keyboard, what usually happens is that as I am using the cursor keys to scroll around in the editor, randomly all the USB lights, 'Active' and 'Portx' go out and whatever key I was pressing repeats forever, though it's not unique to the editor. This is using a HDMIUSBI2S board. Is it possible to incorporate some of your speed ups, from the 2040 in the 2350, as I have observed ~10% slowdown since 6.01. similar to Harm. Thanks Kevin. Edited 2026-03-20 04:12 by Bleep |
||||||
G'day Peter, Many thanks for the update, initial testing shows PEEK(Stepper Status) working well. With a bit of luck some more in depth testing will be done over the weekend. Regards, Lyle. |
||||||
Lyle, good news I will also add the ability to define what happens to the enable pins in case of estop to the INIT command as suggested. I'll also implement PEEK(STEPPER BUFFER) which will return the number of free slots in the gcode buffer Edited 2026-03-20 19:02 by matherp |
||||||
Peter, rc8 on 2350 Game*Mite runs fine. Volhout |
||||||
The performance tuning on the RP2040 was to replace the sub/fun lookup with a binary chop on a sorted (alphabetically) list of the functions that also derives a letter start index. So worst case you binary chop all the subroutines starting with the same letter. This replaces the old sequential search. The RP2350 already uses a hashed lookup which is slightly more performant but uses more memory. In addition I have inlined a couple of small functions which made a difference for the RP2040. Performance tuning on these chips is a black art. For example, for in RAM functions they seem to be fastest when compile with O2 (optimisation level 2) which makes sense. However, for functions that are in flash it seems that Os (smallest) is often faster. I assume this is because the time to read the smaller code from flash overwhelms any benefit of the more optimised code. Even more confusing is that sometimes putting a function into RAM from flash actually slows things down. These effects can be quite dramatic. The RP2040 runs the IF/ELSE code from flash. This gives the performance you are seeing in RC8 (c119mSec for LA_24_2). If I put IF/ELSE into RAM this slows down to 139mSec WTF? Edited 2026-03-20 22:33 by matherp |
||||||
I just found a text error when I ran MEMORY command. I have 5 embedded fonts and the word fonts is with double “s” letter on the screen (“fontss”). I use RC8. I can’t remember it was the same in earlier versions. |
||||||
Hi Peter, I have set up my HDMIUSBI2S board, as far as I can remember, the same as yesterday and can't reproduce the USB stopping, so please ignore this. Regards Kevin. |
||||||
| The Back Shed's forum code is written, and hosted, in Australia. |