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 : (DM) Firmware wishlist
Page 1 of 2 | |||||
Author | Message | ||||
Olimex Senior Member Joined: 02/10/2011 Location: BulgariaPosts: 226 |
DuinoMite have lot of hardware capabilities which are not covered completely in the current firmware. I would like to hear your opinion and priorities for what to implement next. Ken is working now on the low power as this is great advantage to allow DuinoMite users to implement handheld and battery powered devices with DM. Another I think important feature is to use the real SPI on UEXT. As you all know MM-BASIC implements the SPI the same way as Serial ports with bit-banging and SPI is limited to only 100 KHz. The real SPI on UEXT port could work if I remember correctly up to 20Mhz, which is extremly useful, Olimex have LED addressable strip where each LED could be individually addressed with 24 bit color, this means we can make LARGE LED VGA monitor (10x10 meters for instance) driven by DuinoMite with same BASIC commands like the VGA monitor on the connector (hence we will have COLOR DuinoMite display) if we only enable this fast SPI port. we would like to hear your thoughs about what do you think is important to implement soon in DM firmware as the posibilities are lot. And let's not forget DuinoMite is completely open source you can download always the latest firmware and if you have capability you can implement your own features which later Ken to integrate in the stock package. |
||||
DuinoMiteMegaAn Senior Member Joined: 17/11/2011 Location: AustraliaPosts: 231 |
Just a start to keep Ken busy ... 1. CAN - Drivers -->CAN is not supported currently in MM-BASIC (Mega only)
2. Video screen saver - blanker (if possible - just like on the PC) 3. Back-up & restore of flash drive A and SD drive B with error checking (xmodem). 4. USB On-The-Go (OTG) host/device mode and drivers. Note: USB host PIC32 can interface USB mouse, USB keyboard, USB camera, USB printers, USB Bluetooth, WiFi modules, USB memory stick etc. Of course all of these devices need proper drivers to be implemented. |
||||
rhamer Senior Member Joined: 06/06/2011 Location: AustraliaPosts: 174 |
LCD commands like the Basic Stamp 2 has. These commands are passed the pins that the LCD is connected to and handles the low level stuff for you. LCDCMD LCDIN LCDOUT Cheers Rohan Rohan Hamer HAMFIELD Software & Hardware Solutions Makers of the Maximite Expander. http://www.hamfield.com.au |
||||
bigmik Guru Joined: 20/06/2011 Location: AustraliaPosts: 2914 |
Yes that would be nice. What does LCDOUT do? Is that to read the ready pin? If so it can probably be ignored. We would either have to define the pins that the LCD was On (Suggest as Per te LCD shield inc. modifications for DM) or using the SETUP command define them there (best option) I like the way this is starting to Flow... I hope Ken likes hard work and no sleep (apart from the SLEEP Command) Regards, Mick Mick's uMite Stuff can be found >>> HERE (Kindly hosted by Dontronics) <<< |
||||
ksdesigns Senior Member Joined: 25/06/2011 Location: United StatesPosts: 143 |
1. have a ways to go on that one 2. Added screen saver to setup 5-60 in 5 minute increments see menu below 3. Should not be to hard could do a crc of it to make sure its good 4. i have a version with usb keyboard but most of my usb keyboards have hubs in them and the microchip stack does not like hubs ken DuinoMite Setup Menu - V1.4 Dec 15 2011 ----------------------------------------- Hardware Platform - DuinoMite V) Video Mode - NTSC - 480 R) RTC On Boot - PCF8563 D) Date Format - MM/DD/YY T) Show Time Date - Enabled N) Screen Saver - 15 Minutes S) SD Card - Enabled U) Usb Console - Disabled C) Serial Console - Com3: B) Baud Rate - 115200 M) Custom Video Mode P) Print Custom Video Mode ----------------------------------------- Q) Quit Dont Save Settings X) Exit Save Settings |
||||
DuinoMiteMegaAn Senior Member Joined: 17/11/2011 Location: AustraliaPosts: 231 |
@Ken Another firmware request for Ken. An extremely simple OTG USB driver that does the following: 1. Supply +5 VDC power to the USB port eg for RF dongle. 2. Console keyboard commands are serially echoed to the dongle. 3. Received serial data from the dongle are displayed on the console screen. Note: The dongle acts like a serial rf modem.(Has a FTDI FT232RL USB interface chip) Note: If need be, I will send you this RF modem dongle for test. |
||||
djuqa Guru Joined: 23/11/2011 Location: AustraliaPosts: 447 |
Sometimes when your programs start getting a little LONG it would be good to use the Keywords HIDE & UNHIDE to selectively list the section heading and endings only and leave the already debugged bracketed section content unlisted. I realise that list can accept parameters, but it would be excellent to be able to have all that standard initialisation code, Subroutines and other code to be excluded from a standard list. i.e. Standard list (lines between HIDE and UNHIDE not shown) >List 10 CLS 20 For x = 1 to 100 30 'Some excellent code but still under development . 120 next 200 ' Subroutine to display Numbers and letters in meaningful arrangements 210 HIDE . The routine is not shown 280 UNHIDE 290 return 1000 ' Interrupt Routine 1010 HIDE . The Service routine details not shown 1090 UNHIDE 1100 Ireturn Full listing (lines between HIDE and UNHIDE shown) >List FULL 10 CLS 20 For x = 1 to 100 30 'Some excellent code but still under development . 120 next 200 ' Subroutine to display Numbers and letters in meaningful arrangements 210 HIDE 220 Prints Letters$; Numbers$ ' The routine is shown 280 UNHIDE 290 return 1000 ' Interrupt Routine 1010 HIDE 1020 . The Service routine details shown 1030 setpin(1)=asc(letter$) 1090 UNHIDE 1100 Ireturn Maybe the state of the list command could be set using SETUP or LIST ON / LIST OFF Commands VK4MU MicroController Units |
||||
Pr0f Newbie Joined: 09/12/2011 Location: United KingdomPosts: 10 |
9th bit Coms on COM3/COM4 I suspect that the pic32 can do the same as lesser pics and provide the ability to do addressable COM's - it would be nice if the Duinomite could make use of that so that the posibility of using things like the LIN bus could be easily imlemented - at least from a hardware perspective. It's a great 1 wire bus for robust environments like the car (for which it was intended). |
||||
janbrogger Newbie Joined: 31/12/2011 Location: NorwayPosts: 2 |
Dear Olimex guys. I'd really love more pixels, more bits per pixel. I took a look at the code in Video.c and if the chips are able to do it on the Duinomite, then go for it. A robust "no updates", "always works", "low latency", "no viruses" computer with a keyboard and a reasonable screen display and at a rock bottom price should have lots of different uses. |
||||
JohnS Guru Joined: 18/11/2011 Location: United KingdomPosts: 3800 |
janbrogger - I wonder if that would be worth a separate thread, and ask for help as to whether the hardware can do it (bit timings, waveforms, heck I don't know what!) and help changing the code if so? You'll have seen that Geoff basically used the code from that PIC32 book (*) It'll need plenty more RAM is my understanding. John (*) this one: "Programming 32-bit Microcontrollers in C - Exploring the PIC32" Lucio Di Jasio ISBN 978-0-7506-8709-6 |
||||
Olimex Senior Member Joined: 02/10/2011 Location: BulgariaPosts: 226 |
Hi Janbrogger it's not good to rise resolution etc as this eats PIC32 internal resources and memory. what we are headed is 800x600 pixel 256 color add-on shield, but it will be separate UEXT / Arduino platform module. It also add 64 voice polyphonic audio / sound. |
||||
janbrogger Newbie Joined: 31/12/2011 Location: NorwayPosts: 2 |
Olimex: how about just addding color then? Even 4 colors would be very useful. |
||||
Olimex Senior Member Joined: 02/10/2011 Location: BulgariaPosts: 226 |
video takes lot of RAM adding 2 bit color will require x2 times more memory use than now, even now MM-BASIC have only 30 K free RAM i.e. if color is add no space to write code :) |
||||
YT2095 Newbie Joined: 07/02/2012 Location: United KingdomPosts: 22 |
a couple of things I wouldn`t mind changing/adding; 1) a /W for the Files command, like DIR/W in Dos, with a few Gb of storage, having it list as Wide, would reduce the time taken to locate a file by half. 2) the Sound command, what`s wrong with it? seems I have to add a Pause on the next line to get a peep out of it, the Duration only works if the following pause statement is just as long, for instance: 10 sound rnd(1)*2000+20,100 20 pause 100 30 goto 10 will work, but remove line 20 and you`ll not get a peep out of it! incidently the above prog is a variant of the example given for the Sound command in the help files, so the help file needs changing too as the prog doesn`t work. Please don`t take any of this as a complaint or criticism it is Not, it`s more of Wish-list thingy and a bug report. All the best! |
||||
Gizmo Admin Group Joined: 05/06/2004 Location: AustraliaPosts: 5078 |
Hi YT The sound command caught me out the first time I used it too. Unlike computers of old, the MMBasic's sound command runs in the background. As soon as the sound command is started, MMBasic moves on to the next command, while the sound is processed in the background. Normally this is a cool feature, but in the example shown, its constantly been restarted just as it gets going. The sound command uses the inbuilt PWM, and can run contantly in the background if needed. Glenn The best time to plant a tree was twenty years ago, the second best time is right now. JAQ |
||||
Juri74 Senior Member Joined: 06/02/2012 Location: ItalyPosts: 162 |
absolutely CAN driver, i bought a duinomite mega because the can capability.. but can is useless at this time.. what a mess!!! CAN CAN CAN CAN!!! even a really basic acces for start.. please! Juri |
||||
Olimex Senior Member Joined: 02/10/2011 Location: BulgariaPosts: 226 |
Hi Juri DuinoMite is open source project and the firmware is done mostly in the spare time. The real firmware development started few months ago so the CAN is still not implemented. If you want to use the CAN - it's there but you have to handle this in C and to add yourself the supporting BASIC commands as I described HERE you will see that this is real fun. The other option is to wait it to be implemented As neither of current DM development team has worked with CAN before and as this is very specific interface I spoke last week with somebody who already did several open sources projects with CAN. He works mostly with ARMs but was interested to check PIC32 and because DM is open source decided to join the development and contribute. He asked me to send him DuinoMite which I did, so we may have full CAN support in near future, but do not ask me for release dates |
||||
YT2095 Newbie Joined: 07/02/2012 Location: United KingdomPosts: 22 |
One little thing I would like to see change/added (at least I Hope it`s a simple thing to change/add), would be the Pixel command. in particular the =0 or =1 parts at the end. I`d like to see and Invert option, just like the TV-Out library for the Arduino. in effect if you have a black screen and put random pixels on there in a loop, eventually you end up with a White screen. with the Invert option you can keep the screen randomised forever, and constantly changing. so basically it`s NOT function of the address of an existing pixel in screen RAM. any chance we can have a PIXEL(x,y)=2 at all? Cheers! :) |
||||
Olimex Senior Member Joined: 02/10/2011 Location: BulgariaPosts: 226 |
YT2095 this is very easy to implement I check the sources and this could be done with just two lines of code |
||||
Juri74 Senior Member Joined: 06/02/2012 Location: ItalyPosts: 162 |
Hello again, speaking for the "n" time about a color output (i see that a lot of people wants color) however thinking about memory consumption "twice" is a large memory size.. only for 2 bit color! but hey! i think almost nobody wants a 3 bytes palette per pixel... there is gameduino for that purpose, however suppose this: if we use 2 bit per color and we group those bits in a byte (in this form: 00RRGGBB where first 2 bits are ignored or reserved for future use) with 2 bits x color we can have about 64 colors...... and if instead to have color per pixel, we could have colour x char, the size of the color map should be reduced and in the composite out should be even smaller! to further reduce the color map memory size could be used the size of font#2 setting for color cells.. i think with about 3k colour output could be achieved (of course losig TWO MORE pins, 3 pins are needed to generate RGB colors) this is my idea, this is only an idea, probably the best solution is to wait gameduino.. |
||||
Page 1 of 2 |
Print this page |