Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.
|
Forum Index : Microcontroller and PC projects : PicoMite/VGA/WEB V5.07.08 release candidates
Page 16 of 18 | |||||
Author | Message | ||||
Bleep Guru Joined: 09/01/2022 Location: United KingdomPosts: 509 |
Hi Peter, or anyone else who might know. The Wii Classic controller that you have now added to the firmware, is it 3.3V compatible, i.e. can directly connect to Pico, or are level shifters required? Regards, Kevin. |
||||
Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 6798 |
Officially it's a 3V3 device, I believe. No level shifters needed. Edited 2023-11-22 02:00 by Mixtel90 Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 9122 |
Certainly I'm not using any works fine with 3.3V as the power. You do need pullups on the I2C lines |
||||
Bleep Guru Joined: 09/01/2022 Location: United KingdomPosts: 509 |
Thanks for your answers, I've ordered one on Ebay. :-) See what turns up! |
||||
karlelch Senior Member Joined: 30/10/2014 Location: GermanyPosts: 172 |
MATH AND inarray1%(), inarray2%(), outarray%() MATH OR inarray1%(), inarray2%(), outarray%() These commands may be a good addition to MATH SHIFT (Rather than complex numbers, IMHO) Cheers Thomas |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 9122 |
Tom and/or anyone else: Do you have a test suite for the PicoMite? I'm in the middle of a massive edit to both improve some of the error checking in parsing and remove huge quantities of duplicate code (MATHS.C reduced by c800 lines of code). This should also increase the amount of flash available for the A: drive. It is highly likely that there will be some cut-and-paste errors which would be good to find before releasing more widely. Let me know and I'll post or send some test firmware Edited 2023-11-24 04:53 by matherp |
||||
thwill Guru Joined: 16/09/2019 Location: United KingdomPosts: 4042 |
Yes. I have an automated test suite but it is far from comprehensive and MATH is certainly one of the areas poorly covered. However I can't commit to running tests until Sun/Mon and it's all driven from MMB4L so difficult for you to run for yourself. Best wishes, Tom Edited 2023-11-24 05:07 by thwill Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 9122 |
Thanks Tom, No probs on the timing. I'll post when all done. This is one of a set of routines that will save the space. Its been on my to-do list forever to get round to this. Gerry: these changes should also free up a lot of flash on the ArmmiteF4. int parsefloatrarray(unsigned char *tp, MMFLOAT **a1float, int argno, int dimensions, short *dims, bool ConstantNotAllowed){ void *ptr1 = NULL; int i,j; ptr1 = findvar(tp, V_FIND | V_EMPTY_OK | V_NOFIND_ERR); if((vartbl[VarIndex].type & T_CONST) && ConstantNotAllowed) error("Cannot change a constant"); if(dims==NULL)dims=vartbl[VarIndex].dims; if(vartbl[VarIndex].type & T_NBR) { memcpy(dims,vartbl[VarIndex].dims, MAXDIM * sizeof(short)); *a1float = (MMFLOAT *)ptr1; if((uint32_t)ptr1!=(uint32_t)vartbl[VarIndex].val.s)error("Syntax"); } else error("Argument % must be a floating point array",argno); int card=1; if(dimensions==1 && (dims[0]<=0 || dims[1]>0))error("Argument % must be a 1D floating point array",argno); if(dimensions==2 && (dims[0]<=0 || dims[1]<=0 || dims[2]>0))error("Argument % must be a 2D floating point array",argno); for(i=0;i<MAXDIM;i++){ j=(dims[i] - OptionBase + 1); if(j)card *= j; } return card; } Edited 2023-11-24 05:17 by matherp |
||||
disco4now Guru Joined: 18/12/2014 Location: AustraliaPosts: 896 |
I will keep and eye on this. thanks Gerry Latest F4 Latest H7 |
||||
Volhout Guru Joined: 05/03/2018 Location: NetherlandsPosts: 4243 |
Peter, Is there any reason to run the audio pwm at 32 kHz when playing MOD files. I assume it should be a multiple of 8kHz? Why not 40kHz or 48kHz. The audio filter is not performing optimal for 32kHz. 40kHz or 48 would be beter. Volhout Edited 2023-11-26 21:54 by Volhout PicomiteVGA PETSCII ROBOTS |
||||
thwill Guru Joined: 16/09/2019 Location: United KingdomPosts: 4042 |
Peter, I have been dusting off my unit-tests in anticipation of your refactoring work and found this wrinkle which is invalid on the PicoMite (but valid on MMB4L): > Dim sys.VERSION As Integer= 123456 Error : Variable type > Dim sys.VERSION AS Integer = 123456 > IMO it should be able to handle the "missing" space. Best wishes, Tom Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
homa Guru Joined: 05/11/2021 Location: GermanyPosts: 351 |
Hello Peter, the new version with support for the VS1053 is awesome!!! Thanks for that. I have noticed that the version WebMite 5.07.08RC21 > option list WebMite MMBasic Version 5.07.08RC21 OPTION SYSTEM SPI GP10,GP11,GP12 OPTION COLOURCODE ON OPTION LCDPANEL ILI9488W, RLANDSCAPE,GP8,GP15,GP9,GP13 OPTION TOUCH GP16,GP17 GUI CALIBRATE 0, 281, 3950, 1305, -885 OPTION SDCARD GP22 has a bug with the command "backlight n". It is actually supposed to be dimmed to the percentage value n. But at <100 the light goes off and at backlight 100 it goes on again. But with an old version without WebMite (PicoMite 5.07.01?!?, I can look it up again if necessary) it works. Can you please check this? Matthias |
||||
vegipete Guru Joined: 29/01/2013 Location: CanadaPosts: 1109 |
Is there a possibility of AUTOSAVE (and optionally APPEND) getting an optional filename$ parameter? Yes, this closely matches XMODEM SEND, but it would allow chucking a (non-MMBasic) file out the serial port at the PicoMite without actually typing anything. I do my writing/editing mostly on a PC. The first line of my program code is "autosave". I just copy-all from the editor (Notepad++) and paste to the terminal emulator (Teraterm). The ability to autosave to a file would make text file transfers simpler. Now, a text file replaces the active MMBasic program, and needs a manual save. Then the basic program must be reloaded. Visit Vegipete's *Mite Library for cool programs. |
||||
TassyJim Guru Joined: 07/08/2011 Location: AustraliaPosts: 6099 |
Different displays are wired differently. Somme will work as expected (like mine) and some will be inverted. Even the same driver chip will have versions that differ with the backlight. Jim VK7JH MMedit MMBasic Help |
||||
homa Guru Joined: 05/11/2021 Location: GermanyPosts: 351 |
BUT it is the same display! And the old firmware works: PicoMite MMBasic Version 5.07.01 > gui test lcdpanel > backlight 10 > backlight 20 > backlight 30 > backlight 40 > backlight 100 > option list OPTION COLOURCODE ON OPTION SDCARD GP22 OPTION SYSTEM SPI GP10,GP11,GP12 OPTION SYSTEM I2C GP26,GP27 OPTION LCDPANEL ILI9488W, RLANDSCAPE,GP8,GP15,GP9,GP13 OPTION RTC AUTO ENABLED OPTION TOUCH GP16,GP17 GUI CALIBRATE 0, 251, 3862, 1278, -854 PicoMite MMBasic Version 5.07.01 Copyright 2011-2021 Geoff Graham Copyright 2016-2021 Peter Mather > |
||||
phil99 Guru Joined: 11/02/2018 Location: AustraliaPosts: 2135 |
Two tests to see what is going on. 1) Set an AIN pin and wire it to the Pico BL pin, via an RC filter and see what the output is as you change the Backlight setting. Or monitor it with a voltmeter, via an RC filter. 2) Test the display by re-routing its BL pin to a PWM pin and see what happens as you vary that. Edit Loaded your settings on a WebMite RC21 and got 50kHz on GP13 with duty-cycle varying in proportion to Backlight setting. Tested from 5% to 95%. Except Backlight 0 no PWM just 0V and Backlight 100 no PWM just 3.3V If you only get On and Off from GP13 perhaps PWM is not making it to that pin. Change Backlight to another pin and setup GP13 with PWM to see if that works. Edited 2023-11-28 13:12 by phil99 |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 9122 |
Phil Thanks for confirming it is all working - saves me breaking out the scope. I did make a change recently to increase the PWM frequency from 1KHz to 50KHz to take it out of the audio range as it was introducing interference on audio. Why this should have an impact on homa's display I don't know. |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 9122 |
Tom Are you using the inverted mono audio capability? If not I'll remove it as it uses quite of lot of RAM in the interrupt routine |
||||
thwill Guru Joined: 16/09/2019 Location: United KingdomPosts: 4042 |
Are you using the inverted mono audio capability? If not I'll remove it as it uses quite of lot of RAM in the interrupt routine No, I am not using it and IMO it can be removed. I appreciate you having added it and I did play with it for some time before deciding it was unsuitable for the Game*Mite because it made porting programs that used PLAY functions other than PLAY SOUND unnecessarily difficult. It also helped that I had in the meantime discovered that I could get adequate sound by just wiring up "half" of the PAM8302A. Thanks, Tom Edited 2023-11-28 21:52 by thwill Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
phil99 Guru Joined: 11/02/2018 Location: AustraliaPosts: 2135 |
Edit Ignore the rubbish below. Just a Seniors Moment. Copy'n'paste error. I don't know if this is related to Homa's Backlight issue but there seems to be a little quirk. When setting the backlight to gp17 (lowercase) it came out on GP7 instead. Both in Option List and the actual pin. If uppercase GP17 is used backlight is on GP17. Standard PicoMite. > OPTION LCDPANEL ILI9488, RLANDSCAPE,GP15,GP14,GP13,GP7,gp17 PicoMite MMBasic Version 5.07.08RC21 Copyright 2011-2023 Geoff Graham Copyright 2016-2023 Peter Mather > option list PicoMite MMBasic Version 5.07.08RC21 OPTION SYSTEM SPI GP18,GP19,GP16 OPTION SYSTEM I2C GP8,GP9 OPTION DISPLAY 60, 128 OPTION LCDPANEL ILI9488, RLANDSCAPE,GP15,GP14,GP13,GP7 OPTION TOUCH GP12,GP11 GUI CALIBRATE 0, 3820, 408, -1306, 946 OPTION SDCARD GP22 > OPTION LCDPANEL disable PicoMite MMBasic Version 5.07.08RC21 Copyright 2011-2023 Geoff Graham Copyright 2016-2023 Peter Mather > OPTION LCDPANEL ILI9488, RLANDSCAPE,GP15,GP14,GP13,GP17 PicoMite MMBasic Version 5.07.08RC21 Copyright 2011-2023 Geoff Graham Copyright 2016-2023 Peter Mather > option list PicoMite MMBasic Version 5.07.08RC21 OPTION SYSTEM SPI GP18,GP19,GP16 OPTION SYSTEM I2C GP8,GP9 OPTION DISPLAY 60, 128 OPTION LCDPANEL ILI9488, RLANDSCAPE,GP15,GP14,GP13,GP17 OPTION TOUCH GP12,GP11 GUI CALIBRATE 0, 3820, 408, -1306, 946 OPTION SDCARD GP22 > This is repeatable. Edited 2023-11-28 23:03 by phil99 |
||||
Page 16 of 18 |
Print this page |