Asked — Edited
Resolved Resolved by Herr Ball!

Can The Iotiny Be Made Into An Openai Chatbot Connected To ARC?

Can the IoTiny be made into an OpenAI Chatbot connected to ARC? My thought is yes based on everything I have seen on this site so far but I still have a few questions I hope can be answered.

Goal is the following: Make a Robot head using the IoTiny connected to ARC over wifi with a EZ Robot camera attached to it and a speaker for audio out. Two 3V LED’s connected to the ADC ports to make the eyes light up and some type of LED/RGB setup for the mouth to to come on this.

User-inserted image

I want to use the following skills

  1. Openai Chatbot robot skill with audio out going to the speaker on the IoTiny.
  2. Bing Speech recognition robot skills taking audio commands from a headset to the ARC PC.
  3. Camera Cognitive skills

Here are a few of the questions I have

  1. Does the IoTiny speaker out need to have and audio Amp added to it like stated by Jeremie "There is no DAC breakout on the IoTiny but you can solder to the left side of C11 if you'd like to run the audio to your own amplified circuit. Or can your just add a TDA2030A Audio Amplifier Module to the existing speaker pins?

  2. For the mouth I want to be able to do something like the following on the IoTiny also.

Check out the following video: https://www.youtube.com/shorts/M9N4cfYbx5A

This is a project Derek Levesque and what he used was MAX7219 Dot Matrix Module 32x8 4 in 1 LED Display Modules for Arduino Raspberry Pi Microcontroller with 5Pin Wires and then created some nodejs/raspberry pi (ubuntu) code like the following. It looks like I would need to EZ-Robot I2c 8x8 RGB module the question I have is there a way of programming it to do the same type of thing based on the OpenAI’s Response?

So DJ/Jeremie or anyone else, I would love to hear your comments.


Related Hardware EZ-B IoTiny

ARC Pro

Upgrade to ARC Pro

ARC Pro is more than a tool; it's a creative playground for robot enthusiasts, where you can turn your wildest ideas into reality.

#1  

Yo! When I go to the above link Question 2. It states the video inst available anymore.  Would like to see what you wanted to do? I did have a LED array setup, that was years ago though?

PRO
Synthiam
#2  
  1. load arc

  2. connect to iotiny

  3. add open ai chat robot skill (configure it as per instructions with an open ai account) (https://synthiam.com/Support/Skills/Artificial-Intelligence/OpenAI-Chatbot?id=20207)

  4. add bing speech recognition robot skill (https://synthiam.com/Support/Skills/Audio/Bing-Speech-Recognition?id=16209) - edit the robot skill and use the ControlCommand() to send the $BingSpeechResponse variable to the AI Chat Bot robot skill

  5. If you want a mouth to move, then add the Talk servo robot skill (https://synthiam.com/Support/Skills/Audio/Talk-Servo-v2?id=19940)

Done. It should be about 14-16 clicks of the mouse

#3   — Edited

I have updated the video showing how I want the mouth to work.  So DJ no extra amp is needed for the IoTiny with a larger 2" speaker on it?  Also DJ the mouth does not move I want it to work like the video I attached.  Can you provide more input on doing that type of thing in ARC?

PRO
Synthiam
#4   — Edited

Probably use adc on an arduino from a servo port run by talk servo to turn on and off leds by the value

I don’t know if you need an amp. You’d have to check and see.

#5   — Edited

Quote:

So DJ no extra amp is needed for the IoTiny with a larger 2" speaker on it
If you are looking for a good full sound you will not like the quality of the sound coming out of the Iotiny (or and EZB for that matter) with any kind of speaker attached to the speaker output pins. Just my opinion if you're looking for a nice robot voice.

I'm not a speaker guy and have not tried to attach any larger speakers to the Iotiny other then the very small one that it comes with it. I do know you need to match your impedance between the speakers and amp or you could have problems. I have read that you can have problems even if your impedance is matched with the wrong speaker. You can burn out the speaker coil and the output. Here are some things I found:

Quote:

But let us assume you already have a sound system with speakers with the correct impedance. There is another way speakers can damage the amplifier. And it usually starts between the listener's chair and the amplifier. It works like this: The listener pumps up the volume way up. The amplifier does not like it. It starts to peak and distort (clipping). While this is happening, the listener is just enjoying the loud noise coming out of the speakers. The loudspeaker drivers coils start to heat up. They heat up to the point they start to melt. This brings their impedance down to dangerous levels until it shorts the output of the amp. When this happens, suddenly there is pandemonium on the output stage of the amp. The components do not like it very much and become uncooperative. They decide to heat up and crack. And there you are. You have some blown speakers and by osmosis a blown output stage.
More specific to your question, having an underpowered amp connect to a big speaker:

Quote:

Interestingly, it's more common for speakers to be damaged when they are used with an amplifier that is underpowered, rather than being overly powerful. The reason for this is quite simple. If an amplifier is underpowered, you're more likely to crank up the volume to high levels to increase the loudness.
Here's a good easy read article for you to help make your decision: Can Speakers Damage an Amplifier? Here are the Facts! Here is the big take away for me in the above article: 

Quote:

For speakers to damage an amplifier, the speaker’s impedance must be lower than the amplifier’s impedance. Most power amplifiers are designed to drive speakers with an impedance between 4 to 16 ohms. However, several factors can cause a speaker or a set of speakers’ impedance to fall below the amp’s acceptable impedance range.
I don't know the specs of the Iotiny onboard amp and how high you would have to raise the volume of the speaker to get a good sound but once you match the impedance I think it would be safe to experiment.

If you just want to keep it clean and fast and take all guessing out of this, solder a breakout circuit for a stand alone amp to C11 and a ground like Jeremie mentions. If you connect an amp to the output pins you will be connecting to the sound output "after" the onboard amp. Connecting to C11 should connect before the onboard amp. At least that's the way it is on the full sized EZB v4.

#6  

@Dave, thank you for your post I kind of think I am going to need do the solder connection to get the quality and volume needed.

@DJ,  The other issue I have is I need a way to connect the Mega to ARC using Wifi which was another question I posted here.  What I was trying to do is provide everything with the IoTiny.  If I connect and LED to the talk servo port would it flash/flicker based on what is being said?  What I am looking for is also kind of like how the B9 chest light flashes when it speaks.

#7  

Hey smiller29

You mentioned above about a LED and Talk Servo. Just wanted to show you something that might interest you?

Link: I made this years ago and it turned out good. By that I mean it worked good. There is a video at the bottom of the page. That will show you if it would work for your needs. I ran it off a Arduino Pro. The problem is I don't know if it ran off a mic next to my speaker like in this article or if it was connected to my EZB? It seems like it should not be that hard to connect to the EZB. Having a Brain Fart here ... lol. I will dig back into the past on my PC (lol) and look for the circuit. Go down the page to the mouth assembly. Just throwing it out there. Good Luck!