Testing the standby current draw for the OctoPROBER. It uses a soft power switch and a real time clock which draws power when the device is turned “off”. Fortunately the power consumed is very small. At a battery voltage around 4V the standby current is under 20uA. With a 2000mAh battery we have a standby lifetime of 100000 hours or over 11 years! Don’t really have to worry about the OctoPROBER loosing its clock time anytime soon.
Above is the REV 1 of the OctoPROBER. This revision fixed allot of the issues I had with programming the propeller and the propeller resetting when the USB plug was plugged in. To fix the USB resetting the propeller when being plugged in I disconnected the reset line off the FT230X (USB chip) from the reset signal on the propeller. This breaks being able to program the propeller as it needs to upload code directly after start up. To fix this problem the code has a menu option that will reset the propeller if it sees the USB reset line so the user can control if the USB resets the propeller or not.
To enable ease of first time programing or encase the firmware gets borked there is a switch that manually connects the FT230X reset signal to the propeller reset signal.
Rev 2 of the OctoPROBER I decided to do away with the MAX31855 chips. They are very expensive ($5 a piece) and not very accurate (+-2C). Instead I am using 2 MCP3424 18-bit ADCs to do the thermocouple readings. To perform cold junction readings I am using 8 AT30TSE752 board temperature sensors. This should provide +-0.5C accuracy and the ability to use any thermocouple type.
REV 1 boards arrived today. Will be assembling one when the parts arrive. I might have to make another revision after this to add a filter to reduce the jitter on the MAX31855 thermocouple chips. Right now the ripple on the 3.3V line is around 40mV which causes the reading to fluctuate a bit. A low pass pi filter will fix this issue.
Repository contains test code and all the files so far. Board grew .15″ in height to make space for the headers.
I am using the DS1340Z-33 RTC for time keeping on the OctoPROBER. Interfaces with i2c. It has a built in trickle charger which I disabled as the RTC pulls power off the main lithium battery when the device is turned off. Last thing to test are the MAX31855K thermocouple chips….kinda the entire reason I designed this board hehe.
Finished programming the ADC which is a MCP3021. It is a 10bit i2c compatible ADC with one channel. A limited ADC but perfect for measuring battery voltages.
Operation is very simple. Just request a word from the device using 10011011 as the device ID and it will spit out the analog value. I had some issues with the i2c driver I used though.
The ADC is supposed to return the 10bit value like so 0000XXXXXXXXXX00. I was receiving XXXXXX000000XXXX. The upper and lower bytes where transposed. Fixed by swapping them around.
*With hardware fixes
I was having an issue with the FT230X being active while the 3.3V rails being turned off. The FT230X would backfeed voltage down the TXRX lines into the propeller which would power the 3.3V rail to ~2.7V causing the soft power switch circuit to turn on. I fixed this by running the RESET pin of the FT230X to the propeller and pulling it up to the switched 3.3V rail. The propeller can control whether the FT230X is in suspend mode or is active. Pulling RESET low will HI-Z the TXRX pins and allowing the propeller to turn off the soft power circuit completely without voltage backfeed.
Changed the 16×2 char display from running in 4-bit parallel mode to serial com. This saves 2 I/O lines and is much faster then the 4-bit mode.
Since the main way of charging the OctoPROBER is over USB I needed a way to disable the auto reset. Don’t want the device to reset when its taking samples and low battery warning pops up! This is cause when a computer connects to the FT230X it sends a reset signal to the FT230X which is connected to the reset line on the propeller. Disconnected that and routed the FT230X signal to a free I/O line. This way the prop can control whether or not to reset upon connecting to a computer.
Couple more hardware systems to test then REV 1 boards will be ordered!