# BigjBehr

12
6Instructables19,859Views22CommentsJoined April 15th, 2015

Tell us about yourself!

## Achievements

10K+ Views Earned a bronze medal
• BigjBehr commented on FlawedDesign's instructable Magnetic LED Hexagons12 days ago

You did a fine job of explaining how to calculate the currentrequired for each hexagon. Then you displayed a lack of understandingof how PWM driving of LEDs works. If you measure the current drawwith an ammeter you are getting the average current, not the peakcurrent. When an LED is driven by PWM the LED will draw the full 20mAfor as long as it is powered on. PWM allows you to set how long theLED is on for in a fixed window of time. The longer the LED is on,the brighter it appears to the human eye. If you were to use opticalequipment to measure the brightness, you would see that the LED has aconstant brightness, no matter the PWM on time. PWM is a trick usedto fool the human eye into thinking that the LED is dimming.My main point hereis that no matter the perceived brightness, the LEDs...

see more »

You did a fine job of explaining how to calculate the currentrequired for each hexagon. Then you displayed a lack of understandingof how PWM driving of LEDs works. If you measure the current drawwith an ammeter you are getting the average current, not the peakcurrent. When an LED is driven by PWM the LED will draw the full 20mAfor as long as it is powered on. PWM allows you to set how long theLED is on for in a fixed window of time. The longer the LED is on,the brighter it appears to the human eye. If you were to use opticalequipment to measure the brightness, you would see that the LED has aconstant brightness, no matter the PWM on time. PWM is a trick usedto fool the human eye into thinking that the LED is dimming.My main point hereis that no matter the perceived brightness, the LEDs always draw thesame amount of current, just for a variable amount of time. Thereforeyour power supply should always be capable of supplying thecalculated current for all of the LEDs that you are using. If you donot then the 5V line will drop when the maximum current of the power supply is exceeded.This could cause random momentary errors.If you insist onusing an under powered power supply then add large bypass capacitorsto each hexagon. Something on the order of 500uf 10V electrolytic capor a 5V supercap should do it. Then the capacitors can supply theextra current when needed and charge when the PWM turns the LEDs off.You need to use anoscilloscope with a current probe to see the peak current draw whenthe PWM lights up the LEDs. Bottom line here is that your power supply and wiring should be capable of supplying the full calculated current or suffer the consequences.

• BigjBehr commented on BigjBehr's instructable Raspberry Pi Scrolling Sign14 days ago

You are welcome.I am glad to hear that you made a similar device and that you were able to figure out how to make the changes that you wanted to make.

• BigjBehr commented on BigjBehr's instructable ESP32 Bluetooth BLE Remote Control14 days ago

You can comment out the line: #include controller.h.This project will no longer compile. The latest release of the Expressif SDK for the Arduino IDE no longer has the Bluetooth support files for this program.There is a new BLE_client example that uses Neil Kolban's class based Bluetooth library (which is built-in to the SDK). You will have to modifiy it to change the UUIDs of the service to connect to and the characteristic to use. This can be made to work. However, there is a bug in the Expressif Bluetooth stack that will crash the stack if you try to use more than one characteristic with a service. I have code somewhere that sort of works, only the joystick and trigger buttons work. Let me know if you would like this and I will look for it.

• BigjBehr commented on BigjBehr's instructable ESP32 Bluetooth BLE Remote Control6 weeks ago

Your device looks a lot like mine. Are you sure that it is a Bluetooth BLE device ?Did you turn it on before trying yo scan for it ?Are you using a fresh battery ?On my device you press the power button and the blue LED starts blinking. Does yours do the same ?Some issues with my code have come up in the past few months. It seems that somewhere between when I wrote the code and posted it on Instructables, a new Arduino SDK for the ESP32 came out. The new SDK broke a few things and has a bug in it that prevents you from using more than one characteristic with a service. I have posted updated code that fixes some of the broken parts, but I cannot fix the issue with one characteristic per service. None of this matters if you cannot find your device and none of the issues had to do with fin...

see more »

• More information please, what micro-controller are you planing on using ?What is the approximate interval between sound bursts, microseconds, milliseconds, seconds, days ?What are you offering for compensation ?I am a retired embedded systems engineer with over forty years experience designing with micro-controllers, designing software and coding micro-controllers.

• BigjBehr's instructable ESP32 Dual H Bridge Breakout Board's weekly stats: 4 months ago
• 214 views
2 favorites
• BigjBehr commented on BigjBehr's instructable ESP32 Bluetooth BLE Remote Control4 months ago

John,I recently posted a new project on Instructables that you may be interested in. It is for an ESP32 breakout board with a built-in dual H bridge motor controller

• BigjBehr entered ESP32 Dual H Bridge Breakout Board in the PCB Contest contest 4 months ago
• BigjBehr commented on BigjBehr's instructable ESP32 Bluetooth BLE Remote Control5 months ago

John,Jim, not Ben.I posted the files for the ESP8266/ESP32 Breakout board to github.Use this link; https://github.com/BigJBehr/ESP-Breakout-Board

• BigjBehr commented on BigjBehr's instructable ESP32 Bluetooth BLE Remote Control5 months ago

Cute robot. The controller in the picture, is it Bluetooth ?The board that you want is part of a three board set. The other two boards are an IR blaster and an HC-11 Bluetooth module breakout board. All three are together as one layout. When you get the boards you will have to cut them apart. I use a bandsaw with a metal cutting blade to separate the boards. A hacksaw will also work, but takes longer. There are no cut lines on the board, but it is fairly obvious where to cut them apart. Order the board as one layout. This will minimize the price.I will post all the files in a day or two. If you are adept at using Eagle, you can modify the schematic to remove the other two boards and then change the board outline. You would then have to make all new files. I could do this for you, but wi...

see more »

Cute robot. The controller in the picture, is it Bluetooth ?The board that you want is part of a three board set. The other two boards are an IR blaster and an HC-11 Bluetooth module breakout board. All three are together as one layout. When you get the boards you will have to cut them apart. I use a bandsaw with a metal cutting blade to separate the boards. A hacksaw will also work, but takes longer. There are no cut lines on the board, but it is fairly obvious where to cut them apart. Order the board as one layout. This will minimize the price.I will post all the files in a day or two. If you are adept at using Eagle, you can modify the schematic to remove the other two boards and then change the board outline. You would then have to make all new files. I could do this for you, but will not be able to do it quickly due to the Holidays coming up.I usually order the headers on ebay. I use so many that I keep them on hand. I buy the forty pin snap apart headers and then break them down to the size I need. Same with the female socket strips. However, you cannot cut the female socket strips between two pins. You have to burn a pin to cut them down. So a forty pin strip will yield a 20 pin strip and a 19 pin strip, not two 20 pin strips.Let me know if you want me to separate the boards for you.

Hello John in the UK,Nice to hear from someone across the pond. The red board that you are asking about is one that I made myself. The board was designed in either Eagle or Kicad and manufactured for me in China. The bare bards are hand soldered by myself. If you are fairly good with a soldering iron then you should be able to solder the board yourself.I have designed several breakout boards for the ESP32 and ESP8266. The one you are asking about will accept ESP32 boards that have two rows of fifeteen pins that are 1.0 and 1.1 inch apart. The board has all the GPIO pins broken out to headers, a pushbutton switch, tri-color LED and a place for an IR sensor.I have other ESP32 breakout boards. All have headers for all of the GPIO pins and a tri-color LED. Some have places to connect a 5V H...

see more »

• BigjBehr commented on BigjBehr's instructable Raspberry Pi Scrolling Sign5 months ago
• BigjBehr's instructable 3D Printed Tablet Holder's weekly stats: 6 months ago
• 111 views
1 favorites
• BigjBehr entered 3D Printed Tablet Holder in the Plastics Contest contest 7 months ago
• BigjBehr commented on BigjBehr's instructable ESP32 Bluetooth BLE Remote Control10 months ago

Martin,Bad news. I have been going over the problems caused by the new SDK from Expressif. I am unable to fix what the new SDK broke. After spending time searching the Internet, it seems that lots of people are having the same or similar issues with the changes Expressif made to the SDK. It looks like the only solution is to wait for Expressif to acknowledge and fix their problems. If you can somehow download and install the previous SDK the project will compile and function. To be clear, I have corrected the issue with the code not compiling. The current issue is that a runtime error is occurring that is causing the ESP32 to do a reset. I cannot tell exactly when the error occurs. The ESP32 finds the server, connects and then crashes sometime after that. Looks like it might be a watchd...

see more »

Martin,Bad news. I have been going over the problems caused by the new SDK from Expressif. I am unable to fix what the new SDK broke. After spending time searching the Internet, it seems that lots of people are having the same or similar issues with the changes Expressif made to the SDK. It looks like the only solution is to wait for Expressif to acknowledge and fix their problems. If you can somehow download and install the previous SDK the project will compile and function. To be clear, I have corrected the issue with the code not compiling. The current issue is that a runtime error is occurring that is causing the ESP32 to do a reset. I cannot tell exactly when the error occurs. The ESP32 finds the server, connects and then crashes sometime after that. Looks like it might be a watchdog timeout that causes it to reset.

• BigjBehr commented on BigjBehr's instructable Cubic Art10 months ago

You are correct, the spacers.stl file is incorrect. I have uploaded the correct file to the github repository. If you download it again you will have the correct file. The file LedCubJig.scad has the source code for the LEDCubeSpacers.stl file. If you install OpenSCAD and comment out line 20 and change the "70" in line 21 to "0", render the object and create an STL, you will have the LedCubeSpacers.stl file (you will have to change the file name when it goes to save the stl file).I am glad to hear that someone (you are the first as far as I know) is attempting to build one of these. It is quite fascinating to watch it go through its range of effects. Let me know if you have any problems with this. I am happy to help.

• BigjBehr commented on BigjBehr's instructable ESP32 Bluetooth BLE Remote Control11 months ago

Martin,This is a little strange. The error you are having is due tothe ‘esp_ble_gattc_open’ function requiring four parameters and only beingpassed three. When I wrote this it only required three parameters. So it mustbe a library difference.The code was written for the Arduino IDE (ver 1.8.5) usingthe ESP32 add on library ver 0.0.0 (as far as I can tell). I was not awarethere was another release.Are you using the Arduino IDE ?

Martin,I was able to compile without any errors. After I realized that this is a problem with the ESP32 SDK for the Arduino, I updated to the latest version and am now getting the same error that you are getting. I made a change to the code to fix the error. The code now compiles, but generates a run-time error. I am looking into fixing the run-time error. I do not know how long it will take me. Once I have everything working correctly I will update the code on github and let you know that the new code is there.

• BigjBehr commented on BigjBehr's instructable Raspberry Pi Scrolling Sign1 year ago

Mike,New RGB-32x64.py has been posted to GitHub. New version fixes issues with options.ini, using military time format and does weather forecasts. Enjoy

Mike,I am glad that it is working for you. I had a thought thismorning, you may be having the problem because of the editor that you used toedit the options.ini file. Options.ini is a plain text (ASCII) file. It assumes thateach line of the file is terminated with a carriage return(0x0D) and a linefeed(0x0A). Most programming languages convert the CR/LF combo to what is referredto as a newline character (in ‘C’, ‘\n’ or linefeed only). When a text file isread the CR/lf is converted to newline and when written the newline characteris expanded to CR/LF.Editors like MS Word or WordPad do not do a proper job ofworking with plain text files. This is due to them being paragraph oriented andnot line oriented. They may display the text as lines, but the actual file doesn...

see more »

Mike,I took a look at what you said. The options.ini file asdownloaded from GitHub does indeed have the 0x0Ds missing from each line (onlythe 0x0A is present). I reposted the original file (with 0x0D & 0x0A) anddownloaded it again only to find that the 0x0Ds had been stripped out !!! Thismust be something that GitHub is doing. Very strange. If I download as a zip file from therepository the 0x0Ds are stripped out. If I push the repository to my computerusing GitHub Desktop the 0x0Ds are in the file.I am going to look into a proper fix for this issue and thenupload a new Python script. I will let you know when the new code is up.

• BigjBehr commented on BigjBehr's instructable Raspberry Pi Scrolling Sign1 year ago

I have attempted to reproduce the error you are seeing. Ichanged my options.ini file to have ‘military=t’. This ran without a problem. Ithen changed it to ‘military=’. This caused the exact error that you arehaving. Please check your options.ini file and make sure that you have at leastone character after the ‘=’.The problem is that the variable ‘value’ is ending up as anempty string. You can add the line; ‘print len(value)’ after the line ‘value =s[1][:len(s[1]) – 1’. If you see that value has a length of zero then yourissue is that options.ini does not have any characters after the equals sign inone of the true/false lines.You could change truefalse(str) to add a test for an emptystring.def truefalse(str): ...

see more »

I have attempted to reproduce the error you are seeing. Ichanged my options.ini file to have ‘military=t’. This ran without a problem. Ithen changed it to ‘military=’. This caused the exact error that you arehaving. Please check your options.ini file and make sure that you have at leastone character after the ‘=’.The problem is that the variable ‘value’ is ending up as anempty string. You can add the line; ‘print len(value)’ after the line ‘value =s[1][:len(s[1]) – 1’. If you see that value has a length of zero then yourissue is that options.ini does not have any characters after the equals sign inone of the true/false lines.You could change truefalse(str) to add a test for an emptystring.def truefalse(str): if len(s) > 0: s = str[0].lower() else: s = ‘t’ # or ‘f’ for default to false return ‘t’ == sThisdoes not fix the root cause of the problem you are having, but will effectivelyhide it. You will be able to run without crashing, but will always get thedefault value that you set.Abetter fix would be to trap the exception you are having and print the linethat caused it. After the lines ‘except IOError:’, print “Falure readingoptions file”’ add;wxceptIndexError: print ‘Error in options.ini: ‘ + lineLetme know if this helps.

• BigjBehr's instructable ESP32 Bluetooth BLE Remote Control's weekly stats: 1 year ago
• 175 views
1 favorites
• BigjBehr commented on BigjBehr's instructable Yet Another Weather Station (Y.A.W.S.)1 year ago

Sorry, I do not know anything about an 'aggressive mode' in the ESP8266. I do not believe that you can do what you described. If you could, then the system would be extremely vulnerable to attack.What you could try is to run the ESP8266 in station mode. That way it will be like a router with DHCP and allow you to log on to it to get the weather data. It would appear in the list of available WiFi networks. You could also try running in dual mode, station and AP (access point). Then it is part of your network and also its own network.As far as forecasts go, I know how to do that with openweathermap. I do not know how to get forecasts from other weather services.I hope this helps.

• BigjBehr commented on BigjBehr's instructable Yet Another Weather Station (Y.A.W.S.)1 year ago

There are many display driver libraries for the OLED display. I used one that was specifically for the ESP8266/ESP32 and an SSD1306 based OLED display. There are some small ESP8266 boards that are about the same size as the OLED display. Look for a Witty ESP8266 or a WeMos D1. Banggood or AliExpress should have them. I found that the BME280s that I have were reading the temperature about five degrees Fahrenheit too high, so I adjusted for it in the code. Glad to hear that you made one. I recently figured out how to get forecasts from openweathermap.com. I added forecasting to my scrolling sign projects. If you are interested in adding forecasts let me know.

• BigjBehr commented on BigjBehr's instructable Raspberry Pi Scrolling Sign1 year ago

Xavier,It looks like you changed something in the options.ini file. You are trying to use something other than 't', 'T', 'f' or 'F' for a true/false entry.If you are still having issues, show me entire options.ini file.

• BigjBehr's instructable Cubic Art's weekly stats: 1 year ago
• 314 views
7 favorites