Jump to content

philetaylor

Frequent Writer
  • Posts

    828
  • Joined

  • Last visited

Everything posted by philetaylor

  1. No it isn't case sensitive. You must quit and restart cmd.exe once you make any changes to the environment variables. You can verify whether you have the correct path by typing "path" in cmd.exe. Thanks Phil
  2. Take a look at http://svnmios.midibox.org/listing.php?repname=svn.mios32&path=%2Ftrunk%2Fapps%2Ftutorials%2F022_glcd_touchpanel%2F for the touchpanel driver.
  3. philetaylor

    DOG LCDs

    Yes that is exactly what you need. Some of the backlights work better with some displays and the STN pos reflective display doesn't work with a backlight at all. This website has a table showing which backlight is recommended with which display (from the UK distributor) http://www.mmselectr...o.uk/lcddog.htm Cheers Phil
  4. If you don't have a "User" PATH, then you can just create one. Alternatively, you can just add to the "System" PATH. What error do you get when you type "MAKE"? This should work as long as the directory that contains make.exe is in one of the PATH variables above. Cheers Phil
  5. philetaylor

    DOG LCDs

    Hi. Not sure about mouser product codes as usually you buy the display and then select one of the backlights, this is the manufacturers website: http://www.lcd-module.com/products/dog.html Yes there are MIOS32 drivers for the DOGXL displays (UC1610) based. It also supports the 4 greyscale mode of the UC1610. Cheers Phil
  6. Close, it is the EA DOGM128-6 (128x64). The DOGXL160-7 (160x104) is quite a bit bigger. Both are fully supported by MIOS32 :) Cheers Phil
  7. I've got loads of those old baystack switches, never though of reusing the cases though :) Phil
  8. Hi. Yes sorry I haven't updated the wiki for quite a while.... Using a CORE32, I have created a software module that sends DMX using the built-in UART's of the CORE32 so yes it replaces at least one of the physical MIDI ports on the CORE32. Thanks Phil
  9. Yes you can safely wire as many LCD's together as you want (within reason I suppose....) The LCD will not respond until it's particular Enable line goes low. The beauty of this is if you wanted to display the same thing on every display (for example to clear them all) you just set each displays enable line to low and the command works on all of them! To achieve more than 2 LCD's the LCD driver would need some (small) modifications. The way that the DOG GLCD drivers work for example is that they are seen as a large matrix to MIOS: * +--------------+ +--------------+ * | | | | * | X = 0..127 | | X = 128..255 | * | Y = 0.. 7 | | Y = 0.. 7 | * | | | | * +--------------+ +--------------+ * * +--------------+ +--------------+ * | | | | * | X = 0..127 | | X = 128..255 | * | Y = 8.. 15 | | Y = 8.. 15 | * | | | | * +--------------+ +--------------+ * * +--------------+ +--------------+ * | | | | * | X = 0..127 | | X = 128..255 | * | Y = 16.. 23 | | Y = 16.. 23 | * | | | | * +--------------+ +--------------+ * * +--------------+ +--------------+ * | | | | * | X = 0..127 | | X = 128..255 | * | Y = 24.. 31 | | Y = 24.. 31 | * | | | | * +--------------+ +--------------+ You could do something similar for a large number of smaller CLCD's. With regard to the viewing angle of DOG displays, the CLCD ones are quite bright (although I have never used the 1x8 or 2x8 ones) there are various different types and backlights available although I usually buy the cheapest so i'm not sure which would be the brightest? Cheers Phil Phil
  10. Actually thinking about it, you should cast decValue to float 'first'. This ensures that the whole calculation uses floating point arithmetic and not integer. float totalValue = (float)decValue / 1000; Cheers Phil EDIT: TK beat me to it (again!)
  11. I think you have to 'cast' the result of the calculation as otherwise the result will be considered int: float totalValue = (float)(decValue / 1000); Cheers Phil
  12. The 2x8 CLCD from lcd-module.de ( http://www.lcd-module.de/eng/pdf/doma/dips082e.pdf ) is already supported as it is HD44780 compatible. Obviously though with the current driver you are limited to the number of these LCD's you could use. It would be possible to add more of these displays but I would imagine that the latency would become a problem with (say) 24 of them... You could do it by connecting the "E" input of each display to an output of a DOUTx4 module, the driver would be fairly easy to change..... The only really small GLCD'd that I have seen are "screenkeys" http://www.screenkeys.com/ they are 32x16 or 36x24 GLCD's built into a switch cap. They use a SPI style serial data so it wouldn't be too difficult to write a driver for them. I have not quite got round to buying any so I haven't written it (yet!) Cheers Phil
  13. Hi. That code is for CORE32 only and could be added to the standard app_skeleton. The CORE32 can talk DMX32 with the simple circuit on the wiki page. No MBHP_IIC_MIDI module is required. I am not developing the CORE8+IIC version anymore as the CORE32 works so much better. Cheers Phil EDIT: I haven't done anything with ARTNET support although it wouln't be 'that' difficult to add....
  14. Hi. Yes the current DMX module can handle a full DMX universe at full resolution (256 values). This code snippet would basically achieve what you want to do at 8 bit resolution: I haven't tested this but this should give you an idea. You will need to know some C programming to complete this. int lastchn=-1; int lastnote=-1; int lastvelocity=-1; void APP_MIDI_NotifyPackage(mios32_midi_port_t port, mios32_midi_package_t midi_package) { if (midi_package.chan>7) return; if (midi_package.chan==lastchan && midi_package.note==lastnote+1) { DMX_SetChannel(((lastchn<<6)+(lastnote>>1),lastvelocity+midi_package.velocity); lastnote=-1; lastchn=-1; lastvelocity=-1; } else { lastnote=midi_package.note; lastchn=midi_package.chn; lastvelocity=midi_package.velocity; } }
  15. Generally you need 12mm spacers for the "main" mounting holes of the PCB (as the mounting 'blinds' are 2mm deep) and 10mm for any additional surface mounted spacers that you use (although I found that I didn't need any) I then glued 10mm spacers into the blinds for the LCD but that depends on what LCD you are using. Cheers Phil
  16. Yes it is certainly possible to achieve this. I would use a CORE32 rather than a CORE8, it has much more power and can happilly send a DMX universe in the background without any real noticeable load. Cheers Phil
  17. Hi. J16 is (by default) also an SPI interface like J8/9 so technically there is no reason why it couldn't be used for a DIN/DOUT chain and achieve the same performance as with J8/9. J19 is a different case as it doesn't have a hardware SPI port behind it, SPI is achieved in software so the performance isn't as good as with the ports with hardware SPI (J8/9 and J16). The code for DIN/DOUT (handled in mios32_srio.c) currently only supports a single port for this so it would be pretty easy to change "which" port the DIN/DOUT chains were connected to by redefining MIOS32_SRIO_SPI* but it would be a much more complex task to allow multiple DIN/DOUT chains and would likely involve rewriting mios32_srio.c. Cheers Phil
  18. Hi. You only need to burn "bootloader_v1_2b_pic18f4685.hex" using the PIC programmer. Once this is burned then you can upload "mios_v1_9g_pic18f4685.hex" and the SID application using MIOS Studio 2 over MIDI. Thanks Phil
  19. I'm pretty sure that J23 won't work. You could always short the RW pin of either of the J15 ports to ground (that is all J27 does!) Phil
  20. What operating system are you using? There is a known issue with Windows 7 x64 where the 4 virtual USB midi ports that MB Seq v4 uses don't work! I found that changing #define MIOS32_USB_MIDI_NUM_PORTS 1 in mios32_config.h fixes the problem (but you only get 1 USB MIDI port!) If you do this then you will need to close the bootloader jumper on the CORE32 to be able to upload over USB. When we tested this, the problem only appeared to effect Windows 7 x64 but it may effect other versions of windows? This is mentioned in "known issues" section of http://www.ucapps.de/mios_studio.html Phil
  21. I wrote the drivers for the DOG and DOGXL graphical displays and they still use the CORE32 LCD connectors by bit-banging SPI on them. Interestingly when I first tested the original DOG CLCD display (which had both parallel and SPI option) using a core8 The parallel was slower (using TK's LCD benchmark) than the SPI version! As an aside, There is also a simple window environment called UCWindows that I have adapted for MIOS32 which has windows/buttons/faders/pots etc. It is still a work-in-progress but available as a module on svn. EDIT: Also, if you use one of the hardware SPI interfaces with DMA, it would be more efficient than any other option but you would lose either DIN/DOUT chain or ETHernet/SDCard. Cheers Phil
  22. That was going to be my last word on the subject but after a quick perusal of Robert's website, I discovered his music section which states that the works are licensed under a Creative Commons Attribution-Non-Commercial-Share Alike 2.0 UK: England & Wales License. So he seems quite happy to take other people's creations and sell them (presumably) for a profit, but for some peculiar reason doesn't wish for other people to take his works and profit from them. How odd Phil
  23. With people like Robert around, it makes me proud to be British, with our unerring sense of fair play.... yeah right! I know that I shouldn't respond to what is so obviously "flame bait" but why is the concept of "non-commercial" so difficult for some people to understand. When I first joined this community, one of the first threads I stumbled on was the rah/jamram one and I was astounded at their arrogance, having just re-read it all again it has annoyed me all over again. As somebody that has contributed quite a bit of time to this community now, I would certainly not be happy with the thought that somebody else is profiting from MY work and what I have done pales into insignificance when compared to the time and effort put in by TK, nILS, Wilba, SmashTV et al. Oh well, back to playing with memory management on CORE32 :) Phil
  24. Hi. If it works using USB power then I would check the 7805 regulator (IC6) and the bridge rectifier (X1). These are the most likely culprits as they are really the only components that are not used when powered by USB :) (although C8 and C9 are also worth checking) If you have a DVM, check that you have 5v between IC6:Pin3 and Vs as this proves the above. Cheers Phil
  25. Hi Julian. Did you happen to do a couple of spare windows ??? :) Cheers Phil
×
×
  • Create New...