herr_prof

Speakjet - A PIC ready sound chip?

346 posts in this topic

Anyone know if the SpeakJet board will work with the STM32-based MIDIBox Core?

On ucapps.de it says about the STM32-based core: "I2C peripheral has conceptional flaws which requires the usage of high priority interrupts to prevent corrupted transfers" - so that you should keep in mind.

Looking at what is there, I would assume that you have to adapt the code from MIOS8 to MIOS32 in order to make it work. Whether this is an easy task or not will depend on your programming skills. In any case, it should be doable, I believe - but I did not look at the code and don't have a Speakjet chip to try :twitch: .

Share this post


Link to post
Share on other sites

Thanks for getting back to me ilmenator.

I have an old PIC-based Core anyway, so I'll just use that. I was just interested in the possibility of having a USB MIDI input. It's not a priority, particularly as I've never done any MIOS coding.

Cheers,

a|x

Share this post


Link to post
Share on other sites

I think the GM5 would be overkill for this, to be honest.

a|x

Share this post


Link to post
Share on other sites

why?

that's 10€ parts cost and you can simply hook it between your pc and the core.

i guess rewriting the app for STM32 (even just the hardware) would be a much greater task just to provide a USB input... no?

Share this post


Link to post
Share on other sites

why?

that's 10€ parts cost and you can simply hook it between your pc and the core.

i guess rewriting the app for STM32 (even just the hardware) would be a much greater task just to provide a USB input... no?

Hmm, I suppose so...

I'll get the thing working without it, then maybe add it later.

Incidentally, are you the same rosch as the rosch in the Mutable Instruments forum?

a|x

Share this post


Link to post
Share on other sites

yup, that's me!

Share this post


Link to post
Share on other sites

Hi again guys.

Sorry to keep resurrecting this ancient thread ;)

I just ordered the PIC for the kII board from Mike's MIDIShop, and asked him to burn the firmware onto it, as I don't have access to a PIC burner. Unfortunately, he's having problems burning the file onto the PIC, for some reason. He reckons there's a more recent version of the firmware that was produced to fix this issue, but I can't seem to find it. Can anyone point me in the right direction?

Thanks,

a|x

Share this post


Link to post
Share on other sites

Hi toneburst,

He reckons there's a more recent version of the firmware that was produced to fix this issue, but I can't seem to find it.

Not sure if you're (or he is) referring to the PIC Burner's firmware or the firmware of the IIC-SpeakJet-Module "MBHP_IIC_Speakjet":

I have written an inofficial update for the latter, but I only fixed a timer that might not work correct on startup in certain conditions (dunno if this was an improvement, but it fixed the problem I had). On the other hand I'm pretty sure it won't help solving problems that occur during burning the firmware.

This update is included in the SpeakJet MIOS Application package v0.2:

Overview: doku.php?id=midibox_speakjet#speakjet_application_software

and (direct Link) : doku.php?id=speakjet_application_software_v_0.2

(Most of the documentation of v0.1 is still valid)

Please note that v0.2 (MIOS Application, not the IIC-SJ-firmware) will not work with Rio's k64 keyboard extension, which has an adapted MIOS Application to make it fully compatible with k64. Also note, that the v0.2 MIOS Application update was configured for the HandTracker module. So you'll probably have to tweak some settings in the projects config header file to adapt it for your actual interface hardware.

Hope this helps,

Best

ac

Share this post


Link to post
Share on other sites

I think it was an actual problem burning the data onto the PIC 16F88- mike was getting a "Fehler in Bereichsprüfung" error (which I guess is just a generic burn error). He reckons TK did an updated version of the firmware hex file to fix the problem. I'll pvt-message TK and see if he can throw any light on the issue.

Thanks again,

a|x

Edited by toneburst

Share this post


Link to post
Share on other sites

Please note that v0.2 (MIOS Application, not the IIC-SJ-firmware) will not work with Rio's k64 keyboard extension, which has an adapted MIOS Application to make it fully compatible with k64. Also note, that the v0.2 MIOS Application update was configured for the HandTracker module. So you'll probably have to tweak some settings in the projects config header file to adapt it for your actual interface hardware.

But I can still upload the SpeakJet application to the Core PIC using MIOS Studio, presumably..?

I'm happy tweaking some constants etc. in the C code, if I know where to look (and assuming it is written in C, of course).

a|x

Share this post


Link to post
Share on other sites

But I can still upload the SpeakJet application to the Core PIC using MIOS Studio, presumably..?

I'm happy tweaking some constants etc. in the C code, if I know where to look (and assuming it is written in C, of course).

sure, just take a look in main.h. Maybe the default values (BUILDMODE_DEFAULT) are okay for you. I just seen that the AIN Matrix (HandTracker) is disabled by default, so it might even work without tweaking.

cheers,

ac

Share this post


Link to post
Share on other sites

I'd definitely like to make the hand-tracker too, someday (I remember being very impressed when I saw it at a gallery in London). For the moment though, I'm mainly concerned with getting the SpeakJet to work under MIDI control.

Incidentally, did anyone ever come up with a PCB layout for this one? I'm going to try and make up the circuit on matrix board as suggested, but it would be nice ultimately to implement a neater solution using a custom PCB. That way, I could put it in a nice transparent box like my Shruthi-1 ( http://mutable-instruments.net ), and not have to be so ashamed of my terrible-looking soldering ;)

a|x

Share this post


Link to post
Share on other sites

Also, may I ask what you used to paint the upper surface of the board audiocommander, and was that purely an aesthetic thing? I was thinking some nice shiny self-adhesive sheet might be nice..

a|x

Share this post


Link to post
Share on other sites

Hm, sorry, I don't know if there are any custom made PCBs out there... don't think so.

I did several matrix boards, one of them I painted green (though I don't know why, it was just a fun-thing; probably because there were some old marks on it or something like that). The board used for the machine in the Kinetica Gallery was the manual matrix board though :sorcerer:

Cheers,

ac

Share this post


Link to post
Share on other sites

Hm, sorry, I don't know if there are any custom made PCBs out there... don't think so.

I see. I might try and teach myself how to use Eagle any try and knock one up myself, or something. I work at a university, and it's possible there might be facilities here for making one-off PCBs. I'll have to look into it.

I did several matrix boards, one of them I painted green (though I don't know why, it was just a fun-thing; probably because there were some old marks on it or something like that). The board used for the machine in the Kinetica Gallery was the manual matrix board though

Ah, OK, so there's no particular reason to paint the boards, then. That's good to know.

a|x

Share this post


Link to post
Share on other sites

Hmm, does anyone happen to have a spare PIC16F88 with the KII firmware burnt onto it that I could buy from them?

a|x

Share this post


Link to post
Share on other sites

If nothing unexpected happens, I will port ACs application to LPCXPRESSO this weekend.

It will be fun and shouldn't take longer than 1 hour :)

Since the LPC1769 already contains multiple UARTs, a MBHP_IIC_SpeakJet module won't be required anymore, instead the SpeakJet can be directly connected to the LPCXPRESSO

And USB + OSC (Ethernet) will be supported "for free". :)

Best Regards, Thorsten.

Share this post


Link to post
Share on other sites

That's great news TK!

Since the MIDIBox companion board for the LCPXPRESSO isn't yet ready, is there any chance of also tweaking the app to work with the existing STM32 Core? You mentioned I think that the KII daughterboard would also not be required with this core.

a|x

Edited by toneburst

Share this post


Link to post
Share on other sites

Since the MIDIBox companion board for the LCPXPRESSO isn't yet ready

You don't need the complete board, just buy a LPCXPRESSO from Embedded Artists (for 20 EUR + shipping, delivery within two days), and solder it on a veroboard together with the SpeakJet, the 3.3V voltage regulator circuit and a USB socket (optionally also a MagJack and MIDI IN/OUT)

See also http://www.ucapps.de/mbhp/mbhp_core_lpc17.pdf for a "full featured" board, but as mentioned: you don't need the whole circuit to get it running. :)

is there any chance of also tweaking the app to work with the existing STM32 Core?

yes, it will also run on a STM32 core thanks to the MIOS32 hardware abstraction layer :)

But using the LPCXPRESSO is the best (and cheapest) solution.

Best Regards, Thorsten.

Share this post


Link to post
Share on other sites

Hi again TK,

That all sounds great! I was hoping to put the whole setup in quite a small enclosure, so it's good I may be able to do the whole thing on one board. With just audio out and USB MIDI in, it'll be nice and neat! Will you also translate the LCD driver part of the application? I guess having display support makes the host board for the LPC a bit more complicated.

This all sounds excellent. I think I'll wait until you've got it working before investing in an LPC board though ;)

Keep up the good work, TK,

a|x

Share this post


Link to post
Share on other sites

You don't need the complete board, just buy a LPCXPRESSO from Embedded Artists (for 20 EUR + shipping, delivery within two days), and solder it on a veroboard together with the SpeakJet, the 3.3V voltage regulator circuit and a USB socket (optionally also a MagJack and MIDI IN/OUT)

See also http://www.ucapps.de/mbhp/mbhp_core_lpc17.pdf for a "full featured" board, but as mentioned: you don't need the whole circuit to get it running. :)

Excellent! Will I be able to use USB buss power, or will I need a separate DC input? Sorry if this is a really stupid question- I'm a bit of a dunce when it comes to electronics, I'm afraid....

a|x

Edited by toneburst

Share this post


Link to post
Share on other sites

Will I be able to use USB buss power

yes, no problem.

I will post schematics which make possible (minimized) variants more clear once SpeakJet has been tested

Best Regards, Thorsten.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now