Forum Replies Created
-
AuthorPosts
-
MichaelKeymaster
Yes, you can clear the screen with
tv.fill(0);
MichaelKeymasterDo you have your order number so I can work with you on a replacement? I can’t figure out which order based on your email address.
MichaelKeymasterHi Perry,
It an be difficult to do serial communication when using the Video Experimenter due to the need to keep the video timing correct. The shield uses pin 2, so that explains why it interferes with the video when using that pin for your motors.
Can you use hardware serial for the motor controller? Pins 0/1. There is a serial implementation that comes with the TVout library called “pollserial”. It does hardware serial by polling the serial line during the horizontal blanking interval. See example called NTSCserialTerm which implements a serial terminal using pollserial.
You could write the motor commands with pserial.write().
Sorry that the need to keep the video working causes problems with serial comms. This is a common problem.
MichaelKeymasterSure, I put the .hex files I use to preload the chips here:
https://nootropicdesign.com/downloads/hackvision/games/Hackvision.ino.hex
https://nootropicdesign.com/downloads/hackvision/games/Asteroids.ino.hex
I’m not sure why you are having compilation problems. I’ll look into it.
- This reply was modified 5 years, 4 months ago by Michael. Reason: edited path to downloads due to restructuring my site
May 27, 2019 at 5:47 pm in reply to: 32×32 panel doing nothing unless I touch a given header pin #11250MichaelKeymasterHi Tiry,
Hmm, this is strange. I seems like there is a bad connection between the backpack board and the matrix. Sometimes the male and female headers don’t make good contact, and a very light touch may help. It may be the ground pin that has a bad contact, too.
I would try this: remove the backpack from the panel. Then carefully bend the panel’s 5V and ground pins a small amount. This way when you connect the backpack it may make better contact. Sometimes a very small adjustment to the position of pins will help.
That’s my suggestion. It sounds like you soldered it fine, and if it is showing animations (even the wrong size for the display), then that means that the backpack board is running correctly. I think you have a small connection problem. Let me know if you get it working.
MichaelKeymasterYes, it is the ATMEGA328-AU.
MichaelKeymasterIt’s not a CPU, it’s a microcontroller. ATmega328
The pads next to the buttons are breakout pads for those buttons. So you can connect external buttons.
MichaelKeymasterThis problem is due to the polling nature of the serial communication. It’s probably not going to be perfectly reliable. I haven’t seen this myself, though. Maybe try a lower speed?
MichaelKeymasterWith a lot of experience, I have learned that when the behavior of an Arduino program doesn’t make sense, the problem is almost always a lack of memory!
MichaelKeymasterHmm. Are the strings in the array still correct? That is, do strings[0] etc. contain the right values still?
You might be running out of memory for the String objects. Try reducing your resolution and remove these lines:TV.println("Serial Terminal"); TV.println("-- Version 0.1 --");
These string literals in the println() statements take up memory. Your video buffer is using 1656 bytes ((184/8) * 72). Try 128×72 and see if it works.
MichaelKeymasterThe Arduino String object has methods to create integer and float types.
First create a String object from char array:String longString = String(strings[0]); String intString = String(strings[1]); String floatString = String(strings[2]);
Then use methods on String object to get primitive data types.
long int dist = longString.toInt(); // returns long int var = (int)intString.toInt(); // returns long, so cast to int float rad = floatString.toFloat();
That should work.
- This reply was modified 5 years, 7 months ago by Michael.
MichaelKeymasterThat’s a really interesting idea! I think it would be difficult in practice. The Lumazoid takes 128 samples and then performs FFT on them before updating the display. I think you’d need to fit the “signal” into the 128 sample FFT, which means it would be very very short. The sample rate is around 9000 samples per second, so we are talking about a tiny fraction of a second.
Also, the Lumazoid is not always “listening”. It listens, then analyzes, then updates the display. That’s why you miss some beats in the music occasionally.
Very interesting idea, though. Now I’m thinking….MichaelKeymasterYes, but the very cheap versions of usb-serial adapters have all kinds of problems. I personally use only adapters that I know have genuine FTDI chips on them. I resell the Adafruit FTDI Friend adapter. More expensive, but no problems, either.
https://www.adafruit.com/product/284
I’d love to see your project when you are done!
MichaelKeymasterOk, I’m glad you found the problem! I didn’t have a good answer for what to try next.
MichaelKeymasterNo, the Lumazoid cannot control more than 3 meters with a unique pattern. You can run multiple strips in parallel showing the same pattern, but 30-40m would require an incredible amount of current.
-
AuthorPosts