Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 00:18 02 May 2025 Privacy Policy
Jump to

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 : ArmmiteF4 firmware: V5.06.00

     Page 1 of 3    
Author Message
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 9998
Posted: 06:51pm 09 Feb 2021
Copy link to clipboard 
Print this post

Please find attached new firmware for the ArmmiteF4. This includes various bug fixes that Geoff has included in recent MMBasic releases, some minor optimisations from the CMM2 and a bug fix for a memory corruption using sprite close.


ArmmiteF407.zip

Like all STM32 you can program the firmware directly over the USB connection see here and here for lots more information about programming and the ArmmiteF4 in general

For those that don't know about the ArmmiteF4, it is my favourite MMbasic port. A single board that has everything you need - USB serial port, RTC with battery, SDcard slot, TFT header. It runs faster than the MM+ and is much cheaper as a complete system. Lots of projects like Geoff's Super Clock, DDS signal generator, and boat computer are easy to port to the ArmmiteF4 with display and run superbly.

The matching display is 16-bit parallel and very fast

Buy the pair from here and many other vendors





Note there are lots of variants of STM32F407 development boards. You must buy the one pictured for the firmware to work.

The only downside is that there isn't currently a dedicated manual for the ArmmiteF4. To create one is just a cut and paste exercise so if anyone wants to volunteer I would be happy to provide word files and guidance.
Edited 2021-02-10 04:58 by matherp
 
lizby
Guru

Joined: 17/05/2016
Location: United States
Posts: 3298
Posted: 09:25pm 09 Feb 2021
Copy link to clipboard 
Print this post

Thanks for the update. That works. After programming firmware on F4 with 4.3" 480x272 LCD:

OPTION LCDPANEL DISABLE
OPTION LCDPANEL SSD1963_4_16,L   [Power cycle]
OPTION TOUCH PB12, PC5
gui calibrate
F10 [AUTOSAVE] (after selecting my code on the PC)
Ctrl-Z [save program]
F2 [run]
Ctrl-C [quit]
F2 [run again]


(As ever, the LCD is crisp, though photo from my phone is mangled.)

Perhaps it is greedy to look for a path forward after this very welcome update, but here goes. (First, this is also my favorite micromite--great price, great functionality.)

The Armmite F4 is a good candidate for a standalone "MMBasic computer" with a keyboard added and an LCD. Unfortunately, the 320x240 LCD which is readily available to order with the STM32F407VET6 allows lines only 53 characters wide with OPTION KEYBOARD and OPTION LCDPANEL CONSOLE 7 (the smallest available font, 6x8). The 4.3-inch SSD1963 (which requires an adapter board), is fine, with 480x272 pixels, which works out to an edit screen of 80x25 characters.



But that LCD and the even better 5" & 7" 800x600 are quite expensive for the 20-pin versions--$34 U.S. with shipping at a minimum (and require an adaptor).

To me, a much better fit would be the 480x320 SPI ILI9488, which would give an 80x40ish edit screen with font 7. Of course, it would also require a backpack to bring out the interface pins.  I would propose to design one which would also include a PS/2 keyboard connector, socket for RTC & ESP-01, mini-stereo socket, IR capability, and a 20x2 pi-type connector like that on the CMM2. The 3.5" ILI9488 can be had for $10US including shipping. There is apparently a 'loadable' driver for this LCDI think for the MM+ (and perhaps MMX). This would make a very capable "MMBasic computer").

On the firmware side, if space is available, JSON$ and FIELD$ would be helpful. Perhaps BLIT WRITE could be modified so that it could be used either without height and width specified (CMM2 style), or with those (for compatibility). If SPRITE could be accepted as an alias for BLIT, that would help in porting certain programs from and to the CMM2.

With regard to hardware, support for the STM32 "black pill" (which  almost works ) would be valuable. If the "blue pill" is an example, the black pill will be around for a long time. With an appropriate backpack PCB, that could provide much of what the STM32F407VET6 PCB does except for the high-speed LCD.

I understand that the CMM2 is a much hotter game if there is more on the burner there.

As always, thanks very much for your great work on MMBasic.

~
Edited 2021-02-10 07:28 by lizby
PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed
 
hitsware2

Guru

Joined: 03/08/2019
Location: United States
Posts: 715
Posted: 09:35pm 09 Feb 2021
Copy link to clipboard 
Print this post

  matherp said  
The matching display is 16-bit parallel and very fast

Does that display plug directly onto the board ?
my site
 
Quazee137

Guru

Joined: 07/08/2016
Location: United States
Posts: 585
Posted: 09:58pm 09 Feb 2021
Copy link to clipboard 
Print this post

Yes

 
hitsware2

Guru

Joined: 03/08/2019
Location: United States
Posts: 715
Posted: 11:26pm 09 Feb 2021
Copy link to clipboard 
Print this post

Neato .... Thank You ....

> You must buy the one pictured for the firmware to work.

Is that a certain ' brand ' or ?
Edited 2021-02-10 09:29 by hitsware2
my site
 
lizby
Guru

Joined: 17/05/2016
Location: United States
Posts: 3298
Posted: 12:06am 10 Feb 2021
Copy link to clipboard 
Print this post

  hitsware2 said  Neato .... Thank You ....

> You must buy the one pictured for the firmware to work.

Is that a certain ' brand ' or ?

Not the "black pill", not other STM32F4 varieties. Search aliexpress for "STM32F407VET6". If you want the LCD, pick, a site which shows it in addition to the F4 board.

Like this. Matherp's site has a better price.
Edited 2021-02-10 10:08 by lizby
PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed
 
lew247

Guru

Joined: 23/12/2015
Location: United Kingdom
Posts: 1702
Posted: 08:22am 10 Feb 2021
Copy link to clipboard 
Print this post

Amazon link to the board
 
Chopperp

Guru

Joined: 03/01/2018
Location: Australia
Posts: 1088
Posted: 08:57am 10 Feb 2021
Copy link to clipboard 
Print this post

Hi Peter

Probably a bit much to ask but can the Serial only version be updated.
I now have 2 boards with the USB interface U/S.

You did email me an updated version at the time which worked. (25/09/2019)

No dramas if you can't.

  Quote  One last try: This version slows down flash access and disables cacheing. It is about 20% slower but does it work?
2019-05-25_213711_ArmmiteF4.zip

Original post

Brian
ChopperP
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 9998
Posted: 01:04pm 10 Feb 2021
Copy link to clipboard 
Print this post

  Quote  Probably a bit much to ask but can the Serial only version be updated.


This version (V5.06.01) should be switchable. Program the firmware as usual. Then hold down KEY0 while you reset the board and it should switch it into serial console mode


ArmmiteF407.zip


NB: I've also tested this version on a "black pill" and it works fine. HOWEVER, the black pill is missing a 1.5K resistor from D+ to 3.3V. In the picture I've used a 1206 1.5K resistor between the top of R3 and 3.3V. With this mod W10 sees the USB CDC and I can connect with teraterm. The SDcard works fine. I haven't tried the display header as the pinout is non-standard but it should work suitably wired with a ILI9341. Do note that the standard of production of the black pill seems to be extremely poor. The usb connector fell off on mine the first time I pugged a cable in so I re-flowed all the components


 
Chopperp

Guru

Joined: 03/01/2018
Location: Australia
Posts: 1088
Posted: 01:20pm 10 Feb 2021
Copy link to clipboard 
Print this post

  Quote  This version (V5.06.01) should be switchable. Program the firmware as usual. Then hold down KEY0 while you reset the board and it should switch it into serial console mode


OK, will try in a day or two. Thanks
ChopperP
 
robert.rozee
Guru

Joined: 31/12/2012
Location: New Zealand
Posts: 2396
Posted: 02:09pm 10 Feb 2021
Copy link to clipboard 
Print this post

am not sure if this has been discussed before, but has anyone looked at a port to the STM32F411:

https://www.ebay.com/itm/264823841719
https://www.st.com/en/microcontrollers-microprocessors/stm32f411ce.html

512k flash, 128k RAM, available on a 40-pin DIP PCB with USB-C connector for less than $10. this would be a nice alternative to a micromite E64. no onboard SD card, but a small daughterboard is cheap:
https://www.ebay.com/itm/312526713209


cheers,
rob   :-)
 
IanT
Regular Member

Joined: 29/11/2016
Location: United Kingdom
Posts: 97
Posted: 10:57am 11 Feb 2021
Copy link to clipboard 
Print this post

I haven't been able to find that version of the Black Pill Peter. Can you provide a pointer please?

Rgards,

IanT
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 9998
Posted: 11:15am 11 Feb 2021
Copy link to clipboard 
Print this post

  Quote  I haven't been able to find that version of the Black Pill Peter. Can you provide a pointer please?


here but you can find much cheaper elsewhere

But I do not recommend it. The target board is better in every respect
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4812
Posted: 11:31am 11 Feb 2021
Copy link to clipboard 
Print this post

Not sure about the name of the board. If you google at STM32 black pill the things that show up are boards that have the shape of the "blue pill"
They typically have STM32F401/F411 chips on them.
That is why you might have been confused.

here

here

here
PicomiteVGA PETSCII ROBOTS
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 9998
Posted: 11:39am 11 Feb 2021
Copy link to clipboard 
Print this post

  Quote  To me, a much better fit would be the 480x320 SPI ILI9488, which would give an 80x40ish edit screen with font 7. Of course, it would also require a backpack to bring out the interface pins.  I would propose to design one which would also include a PS/2 keyboard connector, socket for RTC & ESP-01, mini-stereo socket, IR capability, and a 20x2 pi-type connector like that on the CMM2. The 3.5" ILI9488 can be had for $10US including shipping. There is apparently a 'loadable' driver for this LCDI think for the MM+ (and perhaps MMX). This would make a very capable "MMBasic computer").


If you design a backpack I'll commit to getting the ILI9488 working. Be aware though that the display is slow: 480x320 16-bit is a lot of data over SPI

Better would be something like this
 
IanT
Regular Member

Joined: 29/11/2016
Location: United Kingdom
Posts: 97
Posted: 11:51am 11 Feb 2021
Copy link to clipboard 
Print this post

  matherp said  
  Quote  I haven't been able to find that version of the Black Pill Peter. Can you provide a pointer please?


here but you can find much cheaper elsewhere

But I do not recommend it. The target board is better in every respect


OK, thanks Peter - noted.

Regards,

IanT
 
lizby
Guru

Joined: 17/05/2016
Location: United States
Posts: 3298
Posted: 03:13pm 11 Feb 2021
Copy link to clipboard 
Print this post

  matherp said  
  lizby said  To me, a much better fit would be the 480x320 SPI ILI9488, which would give an 80x40ish edit screen with font 7. . . . This would make a very capable "MMBasic computer").


If you design a backpack I'll commit to getting the ILI9488 working. Be aware though that the display is slow: 480x320 16-bit is a lot of data over SPI

Better would be something like this


Excellent. I've ordered one of the "3.5" inch 480x320 TFT LCD Touch Screen Display Board For Arduino UNO R3 Mega2560" LCDs from here



Is the connection from the F4 LDC header straightforward?
PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed
 
disco4now

Guru

Joined: 18/12/2014
Location: Australia
Posts: 964
Posted: 11:40pm 11 Feb 2021
Copy link to clipboard 
Print this post

I have two  candidates for higher resolution 16bit parallel screens. They both have the XPT2046 touch. I don't think the one you link to has touch.

One is 3.5"  320*480  ILI9486  (I have not tried it yet)
Other is 3.97" 800*480 OTM8009A/NT35510 IPS Display  (I have this working)

They are 34 pin connectors , so you need a 32pin to 34 pin adaptor with wiring lined up correctly.

The 800*480 has a transistor driver on the BL pin so can be driven from the BACKLIGHT command. I think the 320*480 is the same.



320*480

800*480

I only have the OTM8009A 800*480 version which now seems to come with a later NT35510 driver chip which I have not tried.

The 800*600 OTM8009A I have working on the ARMMite F4 with touch.
I checked OPTION LCDPANEL CONSOLE and seems to work.
Although small in size for 800*480 is very crisp as its IPS.

I compiled it into the recently released ArmmiteF4 source, it added about 3K.

I was intending to ask Peter to consider adding to the code, but wanted to verify with the later NT35510 chip first.

There is probably not much room for too many displays so just want to put my bid in for the 800*480 to be included.

Regards
Gerry
Edited 2021-02-12 10:19 by disco4now
Latest F4 Latest H7 FotS
 
morgs67
Regular Member

Joined: 10/07/2019
Location: Australia
Posts: 77
Posted: 12:48am 12 Feb 2021
Copy link to clipboard 
Print this post

  disco4now said  I have two  candidates for higher resolution 16bit parallel screens. They both have the XPT2046 touch. I don't think the one you link to has touch.

Other is 3.97" 800*480 OTM8009A/NT35510 IPS Display  (I have this working)

There is probably not much room for too many displays so just want to put my bid in for the 800*480 to be included.

Regards
Gerry


+1

Following with interest as I have several F4s and a larger screen at a reasonable price would be great.

Tony
 
lizby
Guru

Joined: 17/05/2016
Location: United States
Posts: 3298
Posted: 01:44am 12 Feb 2021
Copy link to clipboard 
Print this post

  disco4now said  I have two  candidates for higher resolution 16bit parallel screens. They both have the XPT2046 touch. . . .
One is 3.5"  320*480  ILI9486  (I have not tried it yet)
Other is 3.97" 800*480 OTM8009A/NT35510 IPS Display  (I have this working)

They are 34 pin connectors , so you need a 32pin to 34 pin adaptor with wiring lined up correctly.

Those look quite nice. The 3.5" one has the ILI9486 controller. The 32 pin to 34 pin adaptor would be similar to the 32 pin to 40 pin which Peter made previously for the larger (and more expensive) 16-bit displays for the F4.

To me, 480x320 is adequate for running the editor with OPTION LCDPANEL CONSOLE--but if only one could be implemented, the 800x480 would be better, I guess--especially if you already have a driver working.

Can you post a picture of the editor on the 800x480 screen in CONSOLE mode?
PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed
 
     Page 1 of 3    
Print this page
© JAQ Software 2025