Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 20:30 11 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 : User Manual for the Picomite (draft)

     Page 3 of 5    
Author Message
lizby
Guru

Joined: 17/05/2016
Location: United States
Posts: 3311
Posted: 04:53pm 23 Sep 2021
Copy link to clipboard 
Print this post

  Mixtel90 said  The PicoMite isn't intended as a computer anyway so video and keyboard support isn't important


The PIC32MX170 also isn't intended as a computer, but MMBasic for this much less powerful chip includes keyboard support. I think this was an important feature in all previous versions of MMBasic, and think its omission for the PicoMite was unfortunate.

But the decision was not mine to make, and for us as users, it is what it is.
PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 7512
Posted: 07:14pm 23 Sep 2021
Copy link to clipboard 
Print this post

I remember the PIC32MX170 having the KEYPAD command, so does the PicoMite, but no keyboard support...  I'll dig my book out. :)

The Micromite Plus to F4 had PS/2 keyboard support, not the Micromite. Without a quick parallel display there probably isn't much point in an external keyboard though. You'd be far better using an F4 than a PicoMite if you want something like that.
Edited 2021-09-24 05:46 by Mixtel90
Mick

Zilog Inside! nascom.info for Nascom & Gemini
Preliminary MMBasic docs & my PCB designs
 
Poppy

Guru

Joined: 25/07/2019
Location: Germany
Posts: 486
Posted: 07:58pm 23 Sep 2021
Copy link to clipboard 
Print this post

  Mixtel90 said  You'd be far better using an F4 than a PicoMite if you want something like that.


I for myself am just pointing on VGA or something for a larger display, something like a 7" one.

Of course the Pico and smaller clones are quite cute and specially a tiny display fits in very well ...

What was still a F4?
Andre ... such a GURU?
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 7512
Posted: 08:07pm 23 Sep 2021
Copy link to clipboard 
Print this post

One of these:
https://www.ebay.co.uk/itm/322268845458?hash=item4b08b85592:g:duYAAOSw5WNa2GeB

No VGA though, but it can handle large parallel-driven displays.
Mick

Zilog Inside! nascom.info for Nascom & Gemini
Preliminary MMBasic docs & my PCB designs
 
lizby
Guru

Joined: 17/05/2016
Location: United States
Posts: 3311
Posted: 09:21pm 23 Sep 2021
Copy link to clipboard 
Print this post

  Mixtel90 said  I remember the PIC32MX170 having the KEYPAD command, so does the PicoMite, but no keyboard support...


My mistake, sorry--MM+ has keyboard.
PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed
 
lizby
Guru

Joined: 17/05/2016
Location: United States
Posts: 3311
Posted: 09:23pm 23 Sep 2021
Copy link to clipboard 
Print this post

  Poppy said  What was still a F4?


Check out Armmite F4 on Fruit of the shed

Up to 9" displays that I know of.

~
Edited 2021-09-24 07:25 by lizby
PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed
 
Poppy

Guru

Joined: 25/07/2019
Location: Germany
Posts: 486
Posted: 04:37am 24 Sep 2021
Copy link to clipboard 
Print this post

  lizby said  
  Poppy said  What was still a F4?


Check out Armmite F4 on Fruit of the shed

Up to 9" displays that I know of.

~


Thanks.
Also this issue is completely new for me being just concentrated on PICs as yet.

Andre ... such a GURU?
 
Geoffg

Guru

Joined: 06/06/2011
Location: Australia
Posts: 3269
Posted: 05:43am 24 Sep 2021
Copy link to clipboard 
Print this post

Thanks for the input guys.  All the fixes have been applied and the manual updated to match the latest beta.  
You can download it from:  https://geoffg.net/Downloads/PicoMite/PicoMite_User_Manual.pdf

Let me know if you find any more bugs/typos/omissions/etc.

Thanks,
Geoff
Edited 2021-09-24 15:56 by Geoffg
Geoff Graham - http://geoffg.net
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 7512
Posted: 06:53am 24 Sep 2021
Copy link to clipboard 
Print this post

Thanks Geoff.
Yet another excellently edifying opus!  :)

Page 8
The 120R resistor is limiting the current to approx. 12.5mA through the (assuming red Vf=1.8v and that the pin can reach 3.3v, which it may not be able to do) LED. That should probably be fine, but is right at the top limit for the pin. Modern LEDs shouldn't need anything like that to light brightly, and the apparent difference in brilliance as you reduce LED current is slight until you get a long way down. I would have preferred to have seen 150R (or even 330R) here to give a maximum red current of 10mA. That would keep below the 12mA max for the pin and still allow 8mA into a Vf=2.1v LED, which should be plenty even for stubborn LEDs.

I read the note on driving LEDs on page 10, but personally I'm not happy about allowing the output voltage to sag too much under load as that will increase heat dissipation on the chip. It may be "within spec", but it still seems to be unnecessary.

Incidentally, I got a box of assorted colour LEDs from China and all colours are plenty bright enough indoors and on axis (or just off) with 1k series resistors. That's only 1.3mA through a 2v LED. There's no reason to attempt to run modern LEDs at more than about 2mA, even 5mA is high.
Edited 2021-09-24 18:14 by Mixtel90
Mick

Zilog Inside! nascom.info for Nascom & Gemini
Preliminary MMBasic docs & my PCB designs
 
Geoffg

Guru

Joined: 06/06/2011
Location: Australia
Posts: 3269
Posted: 08:43am 24 Sep 2021
Copy link to clipboard 
Print this post

Actually 120R gives a current of 7.3mA due to the output of the Raspberry Pi Pico sagging,

I normally aim for 5mA through a red LED so 220R is a better choice (4.9mA) while 680R (2mA) is hard to see in daylight.

I am sure that there are LEDs that will be bright enough with less than 5mA but most LEDs that people have in their parts bin work well with that current.  I will edit the manual to reflect that.

Geoff

Edit:  I remember the days when 20mA was required!!
Edited 2021-09-24 18:46 by Geoffg
Geoff Graham - http://geoffg.net
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 7512
Posted: 08:58am 24 Sep 2021
Copy link to clipboard 
Print this post

lol - I still have some red LEDs that are so insensitive that 20mA is pushing it for them to be usable at all! I really should chuck them out...  I know, I'll send them to you...  ;)
Mick

Zilog Inside! nascom.info for Nascom & Gemini
Preliminary MMBasic docs & my PCB designs
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 4854
Posted: 08:03pm 24 Sep 2021
Copy link to clipboard 
Print this post

I have blue leds in 0603 package here that need 10k otherwise they are too bright for the eye, at 3.3v
PicomiteVGA PETSCII ROBOTS
 
led-bloon

Senior Member

Joined: 21/12/2014
Location: Australia
Posts: 207
Posted: 08:53pm 24 Sep 2021
Copy link to clipboard 
Print this post

Geoff
Page 133 of Manual: PIO IRQ Flags

The RP2040 datasheet section 3.2.6 is poorly worded. In fact what it is supposed to convey is:
Each PIO block has 8 IRQ flags which are only available to the state machines of that block etc etc etc.
Seems a bit of a waste.
The simplest way to "signal" between blocks is to use a GPIO pin.  Works ok.
The hard way:
Create a physical interrupt and get the core servicing that interrupt to send data to the other PIO block via FIFO.
led
Miss you George
 
Geoffg

Guru

Joined: 06/06/2011
Location: Australia
Posts: 3269
Posted: 09:29pm 24 Sep 2021
Copy link to clipboard 
Print this post

Thanks led.  Mixtel90 is doing the PIO part and I will thankfully leave him to figure that out.

Geoff
Geoff Graham - http://geoffg.net
 
scruss
Regular Member

Joined: 20/09/2021
Location: Canada
Posts: 88
Posted: 03:40am 25 Sep 2021
Copy link to clipboard 
Print this post

  Mixtel90 said  Because it doesn't comply with our requirements. :)


But it's also correct, Seems there's been some issues with the homebrew diagram of the Raspberry Pi Pico. Overlay some mmbasic-specific labels and you're done. You'll also help people familiar with the Pico to understand mmbasic pin name mapping

Some of the Pico VGA applications aren't toys: there are a couple of full computer emulations and a VTxxx terminal that use it. The BBC BASIC for Raspberry Pi Pico team are trying to provide the option of VGA output and leave some RAM free for the interpreter.
 
Geoffg

Guru

Joined: 06/06/2011
Location: Australia
Posts: 3269
Posted: 07:04am 25 Sep 2021
Copy link to clipboard 
Print this post

  scruss said  [But it's also correct, Seems there's been some issues with the homebrew diagram of the Raspberry Pi Pico. Overlay some mmbasic-specific labels and you're done. You'll also help people familiar with the Pico to understand mmbasic pin name mapping

So, is our diagram incorrect now?  You were looking at an earlier (beta) version.

The reason for our own diagram is so that a BASIC programmer can find the pins using the naming conventions of the BASIC language.  The intention is not to educate a purist who is familiar with the pin names used in other languages.

Geoff
Geoff Graham - http://geoffg.net
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 7512
Posted: 07:39am 25 Sep 2021
Copy link to clipboard 
Print this post

  led-bloon said  Geoff
Page 133 of Manual: PIO IRQ Flags

The RP2040 datasheet section 3.2.6 is poorly worded. In fact what it is supposed to convey is:
Each PIO block has 8 IRQ flags which are only available to the state machines of that block etc etc etc.
Seems a bit of a waste.
The simplest way to "signal" between blocks is to use a GPIO pin.  Works ok.
The hard way:
Create a physical interrupt and get the core servicing that interrupt to send data to the other PIO block via FIFO.
led



It certainly is confusing. And wrong! lol
When I look at the list of registers it says that there are two base addresses, one for each PIO. They are PIO0_BASE and PIO1_BASE. The registers are then listed with an offset from those base addresses. According to that, the IRQ flags are at offset 0x030 so there has to be an IRQ register (8 flags) for each PIO, not one shared between PIOs.

Please could you change the first sentence on page 133, Geoff?
"The four state machines of a PIO have shared access to its block of 8 interrupt flags."
Mick

Zilog Inside! nascom.info for Nascom & Gemini
Preliminary MMBasic docs & my PCB designs
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 7512
Posted: 07:48am 25 Sep 2021
Copy link to clipboard 
Print this post

As far as I can see our pinout diagram is correct now.

It isn't intended to tie in with the Raspberry Pi diagram because MMBasic can't use the Raspberry Pi signal names - we want MMBasic compatibility where possible. Overlaying RPi names would only cause confusion. I'm afraid that Python programmers will have to realize that they are programming in MMBasic. :)

The RPi diagram also doesn't allow for the fact that we give the capability of redefining additional pins that that shows as dedicated.
Mick

Zilog Inside! nascom.info for Nascom & Gemini
Preliminary MMBasic docs & my PCB designs
 
led-bloon

Senior Member

Joined: 21/12/2014
Location: Australia
Posts: 207
Posted: 11:00am 28 Sep 2021
Copy link to clipboard 
Print this post

Geoff or Mick
In case you missed it:
Manual correction to pinctrl helper function

  Quote  PIO (PINCTRL num_side_set_pins[,num_set_pins] [,num_out_pins] [,IN base] [,side_set_base] [,set_base] [,out_base])

led
Edited 2021-09-30 18:53 by led-bloon
Miss you George
 
led-bloon

Senior Member

Joined: 21/12/2014
Location: Australia
Posts: 207
Posted: 09:17am 30 Sep 2021
Copy link to clipboard 
Print this post

Got a Sparkfun pico pro micro: An interesting spin-off with extra flash, fewer accessible pins and an onboard WS2812 LED device. No great benefits, as far as the PicoMite software is concerned, apart from size of the board, probably enough pins to do the job that you want it to do.  USB C connector, single-side components, castellated edge connections etc etc.
An interesting device. Which leads me to...

Updates to the manual.
WS2812 support page 34:
Spelling: "...BITBANG WS8212..."
Bitbang function:
 Bitbang WS2812 Type, pin, count, colours%()
                                             ^^^^^^
(missing - count, num_LEDs, num_devices...whatever)
led
PS: No kickbacks from Sparkfun (obviously)
Edited 2021-09-30 19:24 by led-bloon
Miss you George
 
     Page 3 of 5    
Print this page
The Back Shed's forum code is written, and hosted, in Australia.
© JAQ Software 2025