I really like your presentation style, because it really descibes all the thinking process in order and has lots of humor and good information packed into it. Thank you very much!
Thank you for this tutorial Julian. I may be a long way behind the curve on this (ill health has confined me to a wheelchair so I needed a sedentary hobby to occupy the mind). I decided on the Arduino and its mny possibilities after stumbling upon your YT channel. I too have just got (from Banggood) the 7 segment module above and until I watched this tutorial again I was getting nowhere fast - I couldn't even get the display to light up !! Thanks again and I don't know if you will ever read this comment but I felt I had to pass on my thanks.
"Pressure" is likely to be a direct translation from Chinese, an analogy between water flow and electrical current. Usually we would say 'potential', or in this particular case just 'power'.
It looks like you can define binary constants on the Arduino with B00000000 to B11111111 - when using AVR-GCC you can certainly use 0b00000000 to 0b11111111 - which might save a bit of time converting to and from hex. Interesting looking gizmo and I always find half of the fun is trying to make sense of the datasheet!
I got this running with an ESP8266... on 3v3. The input switches fail to trigger apart from switch 1, but the display segments works along with the red upper LED's.
Solar BMS will be on Kickstarter in two hours but I'm here watching this video :) To much stress. Julian if you have the time in the next few days maybe you can announce the Solar BMS in one of your video that will be helpful. Dacian.
Julian Ilett Thanks Julian for the support the project is now live at www.kickstarter.com/projects/electrodacus/120a-solar-bms-charger-lifepo4li-ion-offgridrv-wit
***** Hi Jeff, Thanks for the suggestion. There are quite a few vendors and also a few brand of batteries. I got mine 3 years ago so things changed a bit since then. I recommend Winston branded batteries normally but I do not have direct experience with them (even the GBS that I have experience with them I can not say much about just that it has a bit higher internal resistance than others 1.8mohm measured by me for the 100Ah cells) Winston has about 4x less that bu for the cycle life claim is harder to test. My GBS is 3 years old and 2 years of full OffGrid but I can not see any capacity loss. I will try to replicate the exact test I did 2 years ago and documented on video in the spring.
Hi Julian I know this is a long time ago but.... do you have a link to where I can get the double headers version of an uno. I have scoured ebay and aliexpress but to no avail. thanx. great vid btw
Tremendous presentation, sir! Thank you so much for sharing, I have the only question - does it support the common 7 segment LED codes to encode digits and letters? I mean will it display zero if send 0xBF to a certain segment and trigger the clock pulse?
@julian pls tell how to light up individual segment? In My pcb seent 1 connected with grid 3 and like so. So i want to light up segment one. Pls tell anyone
I bought 3 of the TM1638s and they all seem to be defective. What are the odds of that? Nothing but the LED next to the VCC line comes on. It does blink. Nothing else happens so I added an LED to the across the clk, stb, and D I/O lines. They all blink at different rates so data is going to the TM1608 with nothing happening on the 7 segment displays. What am I missing?
The chances that all three are defective are small I reckon. You probably haven't configured something correctly. However, I bought a bunch of these, and one of them gets fairly warm, and then LEDs start turning on without command, and the unit then shuts down (loses power completely) soon afterward. The rest of the modules (same ones) are directly substituted in .... and they're all fine. Put this one back in....and same issue after a while. Faulty.
Is there any reason you use a constant integer, instead of using a "#define" statement to give the pins a name? To my knowledge the integer uses some ram in the controller to store those constants while the define statement gets resolved by the compiler so in theory it doesent use up ram to store that value... But it wouldn't really matter for 3 integers :)
***** Only because arduino.cc/en/Reference/Define says "In general, the const keyword is preferred for defining constants and should be used instead of #define." But I'm happy to break the rules if there's a good reason :)
IIRC, using 'const' is equivalent to doing a #define in this case - it's no different to 'hard coding' the numbers. It isn't treated as a variable as such as the compiler knows the value will never change.
Thanks for nice and helpful tutorial. Can someone help me make a 3D model for a nice case for it? Are there CAD files of this avilable from manufacture of the board?
I bought 2 of them and they seem to work fine, but after some time the intensity of the LEDs go down and then the thing stops to work. Couldn't find anyone having the same issue so far. I connect directly to an Arduino micro, and also tried with a separate power source. After a reset of the Arduino, it works again and same is happening again. Anyone had the same experience and knows how to fix this? Or are they both defective?
Why am i getting this message if i copied just as yours is? LED___KEY:14 error : expected constructor,destructor, or type conversion before '(' token pinMode (clk, OUTPUT0;
***** I think I figured out. TM1638 is a shift register. And yep, they are driven just like SPI. Just register, probably, were well before SPI. This makes me thinking that SPI can be implemented with registers.
Alexandre Kandalintsev SPI (according to Wikipedia) is a 4-wire interface with SCLK, MISO, MOSI and SS signals. However, Wikipedia also points out that SPI is not a formal standard, so the mnemonic gets used to describe all manner of subtly different serial interface types.
Julian Ilett , SS=GND, SCK=CLK, MOSI=DIO and MISO is just not in use (SPI is bi-directional, but you can use it one way, no need to connect MISO in this case).
Julian Ilett SPI has some variations, that's true. But most MCU support all practical variations. And,in practice, most of the time "it just works" without any tunning.
10 ปีที่แล้ว
I agree. Actually, the arduino ShiftOut documentation mentions spi, I think it's a bit-banging implementation.
I really like your presentation style, because it really descibes all the thinking process in order and has lots of humor and good information packed into it. Thank you very much!
Thank you for this tutorial Julian. I may be a long way behind the curve on this (ill health has confined me to a wheelchair so I needed a sedentary hobby to occupy the mind). I decided on the Arduino and its mny possibilities after stumbling upon your YT channel. I too have just got (from Banggood) the 7 segment module above and until I watched this tutorial again I was getting nowhere fast - I couldn't even get the display to light up !!
Thanks again and I don't know if you will ever read this comment but I felt I had to pass on my thanks.
I'm so happy you have done something with this board. I got the version with 16 buttons and started to sweat just by reading the datasheet.
"The data sheet is a complete mess!" Thanks for that. I thought it was just me. :)
Titan Micro Electronics now has a new data sheet that is considerably less confusing.
"Pressure" is likely to be a direct translation from Chinese, an analogy between water flow and electrical current. Usually we would say 'potential', or in this particular case just 'power'.
***** High current LED drivers - is what they're trying to say I guess
Real nice instructional video Julian. Thank you!
It looks like you can define binary constants on the Arduino with B00000000 to B11111111 - when using AVR-GCC you can certainly use 0b00000000 to 0b11111111 - which might save a bit of time converting to and from hex. Interesting looking gizmo and I always find half of the fun is trying to make sense of the datasheet!
I got this running with an ESP8266... on 3v3. The input switches fail to trigger apart from switch 1, but the display segments works along with the red upper LED's.
Solar BMS will be on Kickstarter in two hours but I'm here watching this video :) To much stress.
Julian if you have the time in the next few days maybe you can announce the Solar BMS in one of your video that will be helpful.
Dacian.
***** If I put the unit you sent me in my next postbag video, I can mention the new SBMS then :)
Julian Ilett
Thanks Julian for the support the project is now live at www.kickstarter.com/projects/electrodacus/120a-solar-bms-charger-lifepo4li-ion-offgridrv-wit
This looks like a great product. Looks good too. Best of luck!
Sergio Orjuela
Thanks.
*****
Hi Jeff, Thanks for the suggestion. There are quite a few vendors and also a few brand of batteries. I got mine 3 years ago so things changed a bit since then. I recommend Winston branded batteries normally but I do not have direct experience with them (even the GBS that I have experience with them I can not say much about just that it has a bit higher internal resistance than others 1.8mohm measured by me for the 100Ah cells) Winston has about 4x less that bu for the cycle life claim is harder to test. My GBS is 3 years old and 2 years of full OffGrid but I can not see any capacity loss. I will try to replicate the exact test I did 2 years ago and documented on video in the spring.
Hi Julian I know this is a long time ago but.... do you have a link to where I can get the double headers version of an uno. I have scoured ebay and aliexpress but to no avail. thanx. great vid btw
Tremendous presentation, sir! Thank you so much for sharing, I have the only question - does it support the common 7 segment LED codes to encode digits and letters? I mean will it display zero if send 0xBF to a certain segment and trigger the clock pulse?
I love you, My display is working now, it is an TM1623 ic,
Nice presentation ! Thank you
Clear as a bell thanks Julian
Will you do more like show how to use buttons and light up led and show hellow world of 1 to 8 on display?
Wayne Johnson I'm uploading part #2 now - that shows how to put data onto the LEDs
Thanks Man, You are Great
It seems, that DIO presents content and STB is Holy Diver...
this is good stuff, i need to use this as a dehumidifier. any ideas??
tesekkur. Siz TM1723 programlaya bilersiniz? Men inanmiram gucunuz catar.
@julian pls tell how to light up individual segment? In My pcb seent 1 connected with grid 3 and like so. So i want to light up segment one. Pls tell anyone
I bought 3 of the TM1638s and they all seem to be defective. What are the odds of that? Nothing but the LED next to the VCC line comes on. It does blink. Nothing else happens so I added an LED to the across the clk, stb, and D I/O lines. They all blink at different rates so data is going to the TM1608 with nothing happening on the 7 segment displays.
What am I missing?
The chances that all three are defective are small I reckon. You probably haven't configured something correctly. However, I bought a bunch of these, and one of them gets fairly warm, and then LEDs start turning on without command, and the unit then shuts down (loses power completely) soon afterward. The rest of the modules (same ones) are directly substituted in .... and they're all fine. Put this one back in....and same issue after a while. Faulty.
Is there any reason you use a constant integer, instead of using a "#define" statement to give the pins a name? To my knowledge the integer uses some ram in the controller to store those constants while the define statement gets resolved by the compiler so in theory it doesent use up ram to store that value... But it wouldn't really matter for 3 integers :)
***** Only because arduino.cc/en/Reference/Define says "In general, the const keyword is preferred for defining constants and should be used instead of #define." But I'm happy to break the rules if there's a good reason :)
IIRC, using 'const' is equivalent to doing a #define in this case - it's no different to 'hard coding' the numbers. It isn't treated as a variable as such as the compiler knows the value will never change.
Bearing failed on mine as soon as I plugged it in, did not even reach 100rpm...
Thanks for nice and helpful tutorial.
Can someone help me make a 3D model for a nice case for it?
Are there CAD files of this avilable from manufacture of the board?
Also pls tell about chart 2 "display register adress"
I bought 2 of them and they seem to work fine, but after some time the intensity of the LEDs go down and then the thing stops to work. Couldn't find anyone having the same issue so far. I connect directly to an Arduino micro, and also tried with a separate power source. After a reset of the Arduino, it works again and same is happening again. Anyone had the same experience and knows how to fix this? Or are they both defective?
Why am i getting this message if i copied just as yours is? LED___KEY:14 error : expected constructor,destructor, or type conversion before '(' token pinMode (clk, OUTPUT0;
Isn't it an SPI interface?
***** I think I figured out. TM1638 is a shift register. And yep, they are driven just like SPI. Just register, probably, were well before SPI. This makes me thinking that SPI can be implemented with registers.
Alexandre Kandalintsev SPI (according to Wikipedia) is a 4-wire interface with SCLK, MISO, MOSI and SS signals. However, Wikipedia also points out that SPI is not a formal standard, so the mnemonic gets used to describe all manner of subtly different serial interface types.
Julian Ilett , SS=GND, SCK=CLK, MOSI=DIO and MISO is just not in use (SPI is bi-directional, but you can use it one way, no need to connect MISO in this case).
Julian Ilett
SPI has some variations, that's true. But most MCU support all practical variations. And,in practice, most of the time "it just works" without any tunning.
I agree. Actually, the arduino ShiftOut documentation mentions spi, I think it's a bit-banging implementation.
here is a better translation of the datasheet
docs.google.com/file/d/0B4JhBWQiFENbNnpEVTAtUFZzdHM/edit
hahaha...... Ebay item descriptions is a real joke of the day.