ktossell / m4api Goto Github PK
View Code? Open in Web Editor NEWLicense: GNU Lesser General Public License v2.1
License: GNU Lesser General Public License v2.1
Trying to figure out what M4-ATX power supplies actually are, I noticed that these hyperlinks in the README file are no more valid:
git://ram.umd.edu/bits/m4api.git
Lines 6 to 11 in 9646fda
Hi there.
I know this may seem sort of silly asking someone who has made, at its core, a Linux API, but I'm having serious issues trying to get M4 ATX monitoring working on Windows 8.
Yes, I know, Windows 8. The drivers for the M4 ATX PIC18F2450 don't work - Windows detects a USB device, not the virtual COM port, and the far newer Microchip drivers don't seem to work any better.
Since you wrote the Linux API, I wondered if you might be able to assist me in getting M4 API software working under Windows 8.1 with a driver - since Mini Box are pretty insanely difficult to communicate with (I don't think they know why it doesn't work) and wherever else I've asked, no one has been able to give me a conclusive answer on why this isn't working. The existing M4 API software for Windows is as good as useless for debugging because it has no configuration, everything is just greyed out if the device fails to connect.
I don't really mind what format I get the output in, if it's directly a command line readout I won't mind, I can add a UI of my own later on. I really, really need to get this monitoring working though, otherwise I can't give battery life readouts nor properly configure the shutdown for the ATX board.
Thanks
[ 16%] Building C object CMakeFiles/m4api.dir/m4api.c.o
/home/alexandrelealjr/Downloads/m4api/m4api.c:46:8: error: variable \u2018m4CurrentVersion\u2019 has initializer but incomplete type
struct m4Version m4CurrentVersion = {
^
/home/alexandrelealjr/Downloads/m4api/m4api.c:47:5: error: unknown field \u2018major\u2019 specified in initializer
.major = 0,
^
/home/alexandrelealjr/Downloads/m4api/m4api.c:47:14: warning: excess elements in struct initializer
.major = 0,
^
/home/alexandrelealjr/Downloads/m4api/m4api.c:47:14: note: (near initialization for \u2018m4CurrentVersion\u2019)
/home/alexandrelealjr/Downloads/m4api/m4api.c:48:5: error: unknown field \u2018minor\u2019 specified in initializer
.minor = 0,
^
/home/alexandrelealjr/Downloads/m4api/m4api.c:48:14: warning: excess elements in struct initializer
.minor = 0,
^
/home/alexandrelealjr/Downloads/m4api/m4api.c:48:14: note: (near initialization for \u2018m4CurrentVersion\u2019)
/home/alexandrelealjr/Downloads/m4api/m4api.c: In function \u2018m4Init\u2019:
/home/alexandrelealjr/Downloads/m4api/m4api.c:210:7: warning: implicit declaration of function \u2018m4CheckVersion\u2019 [-Wimplicit-function-declaration]
if (m4CheckVersion(buf) < 0)
^
/home/alexandrelealjr/Downloads/m4api/m4api.c:213:3: error: invalid use of undefined type \u2018struct m4Version\u2019
printf("Firmware version %d.%d\n", m4CurrentVersion.major, m4CurrentVersion.minor);
^
/home/alexandrelealjr/Downloads/m4api/m4api.c:213:3: error: invalid use of undefined type \u2018struct m4Version\u2019
/home/alexandrelealjr/Downloads/m4api/m4api.c:215:3: error: invalid use of undefined type \u2018struct m4Version\u2019
if (m4CurrentVersion.major < 2)
^
/home/alexandrelealjr/Downloads/m4api/m4api.c: In function \u2018m4CheckVersion\u2019:
/home/alexandrelealjr/Downloads/m4api/m4api.c:241:3: error: invalid use of undefined type \u2018struct m4Version\u2019
m4CurrentVersion.major = ((buf[23]) >> 4) & 0x0f;
^
/home/alexandrelealjr/Downloads/m4api/m4api.c:242:3: error: invalid use of undefined type \u2018struct m4Version\u2019
m4CurrentVersion.minor = (buf[23]) & 0x0f;
^
/home/alexandrelealjr/Downloads/m4api/m4api.c:244:3: error: invalid use of undefined type \u2018struct m4Version\u2019
if (m4CurrentVersion.major == 0)
^
/home/alexandrelealjr/Downloads/m4api/m4api.c: In function \u2018m4ParseValue\u2019:
/home/alexandrelealjr/Downloads/m4api/m4api.c:368:10: warning: implicit declaration of function \u2018strcasecmp\u2019 [-Wimplicit-function-declaration]
if (!strcasecmp("never", strval))
^
/home/alexandrelealjr/Downloads/m4api/m4api.c: In function \u2018m4SetFloat\u2019:
/home/alexandrelealjr/Downloads/m4api/m4api.c:420:10: warning: implicit declaration of function \u2018m4SetBinary\u2019 [-Wimplicit-function-declaration]
return m4SetBinary(dev, field, binary);
^
CMakeFiles/m4api.dir/build.make:62: recipe for target 'CMakeFiles/m4api.dir/m4api.c.o' failed
make[2]: *** [CMakeFiles/m4api.dir/m4api.c.o] Error 1
CMakeFiles/Makefile2:104: recipe for target 'CMakeFiles/m4api.dir/all' failed
make[1]: *** [CMakeFiles/m4api.dir/all] Error 2
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2
I have built a new machine using the Mini-Box M4 ATX PSU and trying to use m4api. After obtaining two prequisites, I had no problem with any of the steps:
$ mkdir -p build
$ cd build
$ cmake ..
$ make
$ sudo make install
Once I try to run the command "./m4ctl -config" or any of the other suggested lines, it just hangs and does absolutely nothing.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.