Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 08:38 12 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 : Armmite L4 battery miser, first beta

     Page 3 of 8    
Author Message
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10068
Posted: 11:41am 16 Nov 2018
Copy link to clipboard 
Print this post

  Quote  it says that the display is no longer produced;


I researched these displays and it seems the whole range is unobtainable except for any remaining stock. I suspect Sharp was having reliability or production issues and have stopped production.

  Quote  is-it a "private-joke"?


No, works perfectly for me.

from the STM FAQ

  Quote  Q: After I drag & drop my bin file in the Nucleo or Disco board disk on my Laptop, it disappears after the flashing is completed ?

A: The mass storage device of the STLink is a virtual disk. There is no storage memory beside the the one from the microcontroller. So it's normal that once programmed into the MCU the binary disappears from the virtual disk. MBED uses this trick to make drag an drop programming seamless on all platforms that support mass storage device.
Edited by matherp 2018-11-17
 
Frank N. Furter
Guru

Joined: 28/05/2012
Location: Germany
Posts: 936
Posted: 11:43am 16 Nov 2018
Copy link to clipboard 
Print this post

Hi WW,

I know Sharp annoyingly doesn't make these displays anymore. They're still available , and I have some of them at home.

I would like to install it in this MetaWatch case and unfortunately the other display does not fit there!

This MetaWatch originally contained a LS013B4DN04 (only with other connectors)...

FrankEdited by Frank N. Furter 2018-11-17
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10068
Posted: 11:46am 16 Nov 2018
Copy link to clipboard 
Print this post

More on mbed for those interested Edited by matherp 2018-11-17
 
goc30

Guru

Joined: 12/04/2017
Location: France
Posts: 435
Posted: 12:42pm 16 Nov 2018
Copy link to clipboard 
Print this post

  matherp said  
No, works perfectly for me.



  Quote  Q: After I drag & drop my bin file in the Nucleo or Disco board disk on my Laptop, it disappears after the flashing is completed ?


I confirm: I copy/paste bin file, and file disappear as describe, but after that, when I print "mm.ver", I have always "5.0434" and not "5.0435", and my program (loaded before with older versus) is alway present
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10068
Posted: 02:43pm 16 Nov 2018
Copy link to clipboard 
Print this post

Attached 5.04.36

2018-11-17_004152_ArmmiteL4.zip

This should support the 128x32 SSD1306, it also fixes a bug I introduced into the normal I2C ssd1306 while tidying up some code. Use:

OPTION LCDPANEL SSD1306I2C32, orientation

for the 128x32 version
 
lizby
Guru

Joined: 17/05/2016
Location: United States
Posts: 3313
Posted: 05:01pm 16 Nov 2018
Copy link to clipboard 
Print this post

>Just copy the .bin file to that disk and magically the STM32 is updated

Worked for me at 38400 baud--thanks. I had to press the button on the Nucleo board to get the "ARMmite L4 MMBasic Version 5.04.36" banner.


PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed
 
lizby
Guru

Joined: 17/05/2016
Location: United States
Posts: 3313
Posted: 06:53pm 16 Nov 2018
Copy link to clipboard 
Print this post

I ran the benchmarks posted by CircuitGizmos here:
https://www.thebackshed.com/forum/forum_posts.asp?TID=4685

[code]
BM1 BM2 BM3 BM4 BM5 BM6 BM7 BM8
Maximite 0.016 0.144 0.196 0.205 0.354 0.512 0.721 0.31

MicroMite 40MHz 0.028 0.18 0.285 0.289 0.644 0.892 1.346 0.376
MicroMite 48MHz 0.023 0.15 0.237 0.24 0.536 0.744 1.121 0.313

ARMmiteL4 0.023 0.226 0.389 0.427 0.759 1.016 1.516 0.846
[/code]

The ARMmiteL4 (at default speed) is slower than the MicroMite at either 48mHz or 40mHz (except for BM1), but it's still quite nice for an off-the-shelf module, even irrespective of the low-power features.
Edited by lizby 2018-11-18
PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10068
Posted: 07:32pm 16 Nov 2018
Copy link to clipboard 
Print this post

  Quote  The ARMmiteL4 (at default speed) is slower than the MicroMite at either 48mHz or 40mHz


Remember the default is 48MHz, full speed is at 80MHz (CPU 80)
 
lizby
Guru

Joined: 17/05/2016
Location: United States
Posts: 3313
Posted: 07:47pm 16 Nov 2018
Copy link to clipboard 
Print this post

Thanks. I didn't know what the default was, or how to change it. Here's the new table.

[code]

BM1 BM2 BM3 BM4 BM5 BM6 BM7 BM8
Maximite 0.016 0.144 0.196 0.205 0.354 0.512 0.721 0.31

MicroMite 40MHz 0.028 0.18 0.285 0.289 0.644 0.892 1.346 0.376
MicroMite 48MHz 0.023 0.15 0.237 0.24 0.536 0.744 1.121 0.313

ARMmiteL4 48MHz 0.023 0.226 0.389 0.427 0.759 1.016 1.516 0.846
ARMmiteL4 80MHz 0.016 0.15 0.261 0.285 0.49 .665 1.002 0.546

[/code]

So a little bit better, a little bit worse than the MicroMite at 48mHz.
Edited by lizby 2018-11-18
PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10068
Posted: 07:53pm 16 Nov 2018
Copy link to clipboard 
Print this post

  Quote  Thanks. I didn't know what the default was, or how to change it.


Valid speeds are 2, 4, 8, 16, 24, 32, 48, and 80

You can switch whenever you like in a program and the code automatically switches to 2 when paused and speeds up if necessary for DS18B20 and WS2812. UART and I2C are unaffected by changes, PWM and SPI are. RTC of course is unaffected as is TIMER
 
OA47

Guru

Joined: 11/04/2012
Location: Australia
Posts: 982
Posted: 09:02pm 16 Nov 2018
Copy link to clipboard 
Print this post

  Quote  I confirm: I copy/paste bin file, and file disappear as describe, but after that, when I print "mm.ver", I have always "5.0434" and not "5.0435", and my program (loaded before with older versus) is alway present


Same for me.
OA47

Windows 7 Ultimate SP1

 
disco4now

Guru

Joined: 18/12/2014
Location: Australia
Posts: 971
Posted: 10:35pm 16 Nov 2018
Copy link to clipboard 
Print this post

Hi Peter,
The new driver does not seem to work for me. The screen flashes like it initialises, but no updates.
I noticed MM.VRES returns 21. Should be 32 I think so maybe a clue.



option lcdpanel disable
> option lcdpanel ssd1306i2c32,RL
> ? mm.ver
5.0436
> ? mm.hres
128
> ? mm.vres
21



Regards
Gerry
Latest F4 Latest H7 FotS
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10068
Posted: 10:50pm 16 Nov 2018
Copy link to clipboard 
Print this post

  Quote  Option.DISPLAY_TYPE==SSD1306I2C


That was a typo. I don't have one of these displays so nothing to test with but try this:
2018-11-17_084937_ArmmiteL4.zip

Note to all: if the mbed upload isn't working for you just use the .bin file with ST-LINK
 
lizby
Guru

Joined: 17/05/2016
Location: United States
Posts: 3313
Posted: 01:13am 17 Nov 2018
Copy link to clipboard 
Print this post

How do you set the date and time in the RTC? Is there an onboard or on-chip capacitor or something which keeps the RTC going when power is disconnected?

PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed
 
OA47

Guru

Joined: 11/04/2012
Location: Australia
Posts: 982
Posted: 03:20am 17 Nov 2018
Copy link to clipboard 
Print this post

Lizby from Peters first post.
  Quote  Different:
TIME$ command sets the value from the RTC
TIME$ function returns the value in the RTC
DATE$ command sets the value from the RTC
DATE$ function returns the value in the RTC


In answer to your second question, as far as I understand these units are designed for battery, the supply to the chip is the supply to the RTC.

OA47
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6220
Posted: 03:25am 17 Nov 2018
Copy link to clipboard 
Print this post

The RTC is internally connected to the main 3.3V rail so it will keep running when the CPU is in sleep but does need some power.

VK7JH
MMedit
 
lizby
Guru

Joined: 17/05/2016
Location: United States
Posts: 3313
Posted: 03:51am 17 Nov 2018
Copy link to clipboard 
Print this post

  OA47 said   Lizby from Peters first post.
  Quote  Different:
TIME$ command sets the value from the RTC
TIME$ function returns the value in the RTC
DATE$ command sets the value from the RTC
DATE$ function returns the value in the RTC


In answer to your second question, as far as I understand these units are designed for battery, the supply to the chip is the supply to the RTC.

OA47

I saw that, but I don't know what it means in practice, or what the proper syntax is. What sets the value of the RTC?


PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6220
Posted: 04:05am 17 Nov 2018
Copy link to clipboard 
Print this post

DATE$="17/11/2018"
TIME$="15:03:40"


From the command line or within a program.
It uses Australian date format dd/mm/yyyy

JimEdited by TassyJim 2018-11-18
VK7JH
MMedit
 
disco4now

Guru

Joined: 18/12/2014
Location: Australia
Posts: 971
Posted: 04:47am 17 Nov 2018
Copy link to clipboard 
Print this post

OPTION LCDPANEL SSD3306I2C32

Hi Peter,
Its nearly there. I used the included driver but need to send one more initialisation instruction as seen in the fixme sub below. Once fixme is run it behaves pretty well.

There is one way to break it and I saw this with the Basic driver as well. Probably in the other SSD1306 drivers as well.
If you scale a font and are printing Centre or Right aligned and the text is calculated to start before the x=0 point i.e. negative the whole thing freezes and you need a hard reset. If you are not scaling its seems to be pretty much OK.(maybe prints not quite where expected but nothing serious). If left aligned text then it seems to handle all cases.
e.g. text below when scaled should be trimmed to fit, but freezes the whole thing.

text mm.hres/2,mm.vres/2,"Hello1234",CM,1,2



  Quote  

'https://www.banggood.com/0_91-Inch-128x32-IIC-I2C-Blue-OLED-LCD-Display-DIY-Oled-Module-SSD1306-Driver-IC-D C-3_3V-5V-p-1140506.html?cur_warehouse=CN

'on error skip 'if OPTION is already set then ignore the error
'OPTION LCDPANEL SSD1306I2C,orientation


fixme
line 0,0,mm.hres-1,mm.vres-1
line mm.hres-1,0,0,mm.vres-1
box 0,0,mm.hres,mm.vres
text mm.hres/2,mm.vres/2,"Hello World",CM,1,1
end

sub fixme
on error skip ' if I2C already open ignore the error
i2c open 400,1000
' send additional intialisation instruction to the display
OLED.SCmd(&HDA)'COMPINS '02 for 128*32
OLED.SCmd(&H02)
'OLED.SCmd(&H12)'12 for 128*64
end sub
' Send a command to the display
sub OLED.SCmd(Comnd%)
i2c WRITE &H3C,0,2,&H00,Comnd% 'address must be hardcoded to use at command line
end sub



Regards
Gerry
Edited by disco4now 2018-11-18
Latest F4 Latest H7 FotS
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6220
Posted: 05:21am 17 Nov 2018
Copy link to clipboard 
Print this post

I have been running my L4 of an external 5V supply.
I have to have SB9 open so that it doesn't get reset every time you unplug the USB cable.
This has worked well until a recent update.
I am not sure which version started playing up but my L4 runs OK unplugged with the firmware from 9th November (V...34)

With any newer version the L4 will not run when the USB is unplugged.

A reset doesn't start it. Plugging the USB in and reset works.
I have checked the reset pin voltage and it is OK. Going back to the earlier firmware and it runs unplugged again.

Sophisticated test program:
  Quote   ' armite L4
OPTION AUTORUN ON
SETPIN D13, DOUT

SETTICK 1000, flick
DO

LOOP

SUB flick
PULSE D13, 100
END SUB


Jim


VK7JH
MMedit
 
     Page 3 of 8    
Print this page
The Back Shed's forum code is written, and hosted, in Australia.
© JAQ Software 2025