Home
JAQForum Ver 20.06
Log In or Join  
Active Topics
Local Time 00:39 10 Jul 2020 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 : MicroMite Explore 100 with 5" LCD - Additional Flash Memory "U1"

Author Message
MustardMan
Regular Member

Joined: 30/08/2019
Location: Australia
Posts: 59
Posted: 01:04am 25 May 2020
Copy link to clipboard 
Print this post

I am fairly certain I saw a thread on this forum (although it may have been elsewhere) regarding the 'empty' spot on the 5" SSD1963 based LCD panel PCB. I didn't pay much attention at the time other than 'mmm, interesting'.

Now some while down the track I've discovered that I do need the extra memory and a removable SD card is not really going to cut it. The Explore 100 has insufficent memory for storing bitmaps larger than a couple of dozen by a couple of dozen pixels (at 3 bytes per pixel, bitmaps are pretty hungry) - and it is volatile anyway.

On the 5" SSD1963 based LCD panel PCB there is a footprint marked 'U1'. This is for an SPI based flash memory device (eg: SST25VF016). The Explore 100 has the CS of this chip connected through CON9, and it uses the same SPI bus as the touch controller and the SD card slot. I did see an eBay seller that offered panels with this chip installed.

My intention was to use this as either a large block of raw memory, or copy a SD card file system over to it, to load/save full screen bitmaps. The largest chip I found in SO8 is 32Mbits (4Mbytes) which is enough for three full screens of 800x480 at 3BPP. I have some on order, and soldering an SO8 is easier than soldering a DIP!

Question I have is how to access the thing... the explore 100 MMbasic version has support for SD card filesystems (files, open, save, etc), and 'OPTION SDCARD 58' should enable me to just access it with no problems (I haven't done it yet, the order is still a week away).

However, it will be completely blank when it arrives. If I am able to configure it as a filesystem, I'm not sure how I'm going to format it or copy stuff from a 'real' SD card over to it. And I've even less of an idea of how I would use it as a block of raw memory - has anyone written a CFuntion for doing something like this?

I intend on using this to store images, config files, program backups, etc rather than relying on there being an SD card in the SD slot all the time - which if removed by the user will cripple the system (I can bypass filesystem read errors, but there will be no graphics and limited config save/restore).

I read the thread on MM2 SD routines with interest, which is the only thing of any relevance that a search turns up (the search functionality of this forum leaves a lot to be desired! I've searched for threads I *know* exist only to have it come back with nothing, or I often run other searches that return hits under different topics entirely - eg: solar).

Cheers,

 
disco4now

Guru

Joined: 18/12/2014
Location: Australia
Posts: 407
Posted: 01:55am 25 May 2020
Copy link to clipboard 
Print this post

I think this is the thread. Also some further stuff on the Fruit of the Shed.

This post for original thread and CFunctions



MMBasic version here that works when CFunctions not available

Regards
Gerry
 
bigmik

Guru

Joined: 20/06/2011
Location: Australia
Posts: 2270
Posted: 03:59am 25 May 2020
Copy link to clipboard 
Print this post

Hi Mustard Man,

That module on the TFT whilst theoretically is usable it cannot be used if the TFT is configured..

As I found out when I designed my >>> BackPack-64X <<<

The SPI channel must be different than the SPI that is used for the TFT..

Have a look through my manual at the above link and if it is of interest to you I am happy to send you a set of PCBs for $5 including post (in AUS).

The BackPack-64X supports upto a 7" TFT with touch and has on-board DS3231/32 RTC and Winbond chip.

PM me if interested

Kind Regards

Mick
Mick's uMite Stuff can be found >>> HERE (Kindly hosted by Dontronics) <<<
 
MustardMan
Regular Member

Joined: 30/08/2019
Location: Australia
Posts: 59
Posted: 05:07am 25 May 2020
Copy link to clipboard 
Print this post

@disco4now
One of those links you pointed to is exactly the one! I distinctly remember the image that had the flash soldered to the board. Now I just have to read it carefully (as I just skim read it the first time).
I know the first rule of forums is to use the search, but the back shed search really isn't that good, and I hate having to rely on other members' memories!
No pun intended.

@bigmik
Hi Mick, are you sure that applies to the Explore 100? It's driving the display parallel, and I am currently using both the touch and a full size SD card over the SPI... so I should be able to get away with an extra flash...?
And I like your documentation! (I'm a fan of good documentation)
 
disco4now

Guru

Joined: 18/12/2014
Location: Australia
Posts: 407
Posted: 05:23am 25 May 2020
Copy link to clipboard 
Print this post

On page 4 of the original post the code has this comment.I think its correct if you are using the CFunction versions available for MM+ E64 and E100. The selection of various SPI devices is handle OK by the Cfunction so mounting the memory on the LCD is OK.

The sharing of the touch SPI when using the MMBasic version is an issue as the touch SPI is not available to MMBasic. This would apply to the MMX and ARM versions, which don't have a CFunction version. For these the memory chip would need to be off the LCD so a different SPI could be used.

  Quote  '
' Example program to demonstrate page mode access to a serial flash chip mounted on a SSD1963
' Compatible with 64 and 100 pin MM+ processors
'


Regards
Gerry
 
bigmik

Guru

Joined: 20/06/2011
Location: Australia
Posts: 2270
Posted: 05:38am 25 May 2020
Copy link to clipboard 
Print this post

Hi Mustard Man,

I cannot be certain that it does pertain to the e100, not having had one to play with, (I jumped from the 28 pin straight to the 64pin extreme) but in the extreme you can talk to the chip fine but if you configure the display and then try to read/write the chip you get an error something like (SPI in use) I tried every trick to get around this (as confirmed by Peter Mather) but in the end I had to redesign BackPack-64X to use a different SPI port..

Maybe there is a difference as Peter used CFunctions, which are not available on the EXTREME family, to read and write..

Andrew Henderson wrote some really good, and fast, routines entirely in MMBASIC that work on the MX170 and the Extreme-64 so you might like to play with them.


WinbondFlash_V0.20.zip


Kind Regards

Mick


EDIT***

I see Gerry got in whilst I was typing.

     

Mik
Edited 2020-05-25 15:40 by bigmik
Mick's uMite Stuff can be found >>> HERE (Kindly hosted by Dontronics) <<<
 
MustardMan
Regular Member

Joined: 30/08/2019
Location: Australia
Posts: 59
Posted: 06:24am 25 May 2020
Copy link to clipboard 
Print this post

Thankyou for the tips and pointers. I have very quickly skimmed some bits of the original post and it was mentioned about Peters code and simultaneous MMbasic touch access. From what I saw skimming, Peters code accesses the memory as raw memory (in pages), and due to the way SPI1 is used for touch, it can't also be used to access a flash device?

I have no problems using touch and SD together... but then again an SD has a micro inside it to handle the flash, and without that... perhaps a flash memory would work as a read only "SD" if it was 'pre-formatted'?

Mind you without any chips (as yet) to try, this is all just shooting the breeze - I'm imagining solutions to my problem that wouldn't ever work, and equally imagining problems when there might not be any.

Cheers!

PS: The chips are cheap so there is no loss there (what, a dollar each!). It's just the wait that gets you!
Edited 2020-05-25 16:27 by MustardMan
 
bigmik

Guru

Joined: 20/06/2011
Location: Australia
Posts: 2270
Posted: 06:39am 25 May 2020
Copy link to clipboard 
Print this post

Hi Mustard Man, All,

  MustardMan said  
Mind you without any chips (as yet) to try, this is all just shooting the breeze -


Let me know if you want a chip or two.. I have several 64Mb versions.
I can easily pop one or two in an envelope.

Kind Regards

Mick
Mick's uMite Stuff can be found >>> HERE (Kindly hosted by Dontronics) <<<
 
disco4now

Guru

Joined: 18/12/2014
Location: Australia
Posts: 407
Posted: 06:42am 25 May 2020
Copy link to clipboard 
Print this post

Definitely works with touch configured on an E100. I have read from the Windbond chip  in the PenDown event and its OK. I would normally set a flag in the PenDown event and action in the main loop.

Gerry
 
MustardMan
Regular Member

Joined: 30/08/2019
Location: Australia
Posts: 59
Posted: 09:30am 25 May 2020
Copy link to clipboard 
Print this post

@bigmik
I've got some 128Mbit chips (Winbond) on the way, due this Friday hopefully. I've got so much other stuff to get done this week I don't see myself getting to them before the weekend anyway, but thankyou *very* much for the offer.

@disco4now
Would you be willing to share or PM that code?
 
Print this page


To reply to this topic, you need to log in.

© JAQ Software 2020